Print this page
5253 kmem_alloc/kmem_zalloc won't fail with KM_SLEEP
5254 getrbuf won't fail with KM_SLEEP
@@ -1677,20 +1677,12 @@
* Use kmem_alloc instead of ddi_dma_mem_alloc here since the latter
* may fail on x86 platform if a physically contiguous memory chunk
* cannot be found. From initial testing, we did not see performance
* degradation as seen on Sparc.
*/
- if ((reqp->dr_ibuf_kaddr = kmem_alloc(size, KM_SLEEP)) == NULL) {
- dca_error(dca, "unable to alloc request ibuf memory");
- dca_destroyreq(reqp);
- return (NULL);
- }
- if ((reqp->dr_obuf_kaddr = kmem_alloc(size, KM_SLEEP)) == NULL) {
- dca_error(dca, "unable to alloc request obuf memory");
- dca_destroyreq(reqp);
- return (NULL);
- }
+ reqp->dr_ibuf_kaddr = kmem_alloc(size, KM_SLEEP);
+ reqp->dr_obuf_kaddr = kmem_alloc(size, KM_SLEEP);
#else
/*
* We could kmem_alloc for Sparc too. However, it gives worse
* performance when transferring more than one page data. For example,
* using 4 threads and 12032 byte data and 3DES on 900MHZ Sparc system,