[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 4 Apr 2018 21:56:08 +0000
From: Dave Carroll <david.carroll@...rosemi.com>
To: Hans de Goede <hdegoede@...hat.com>,
dl-esc-Aacraid Linux Driver <aacraid@...rosemi.com>,
"James E.J. Bottomley" <jejb@...ux.vnet.ibm.com>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
SCSI development list <linux-scsi@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: RE: aacraid code passes GFP_DMA32 to kmalloc this will not work
> -----Original Message-----
> From: Hans de Goede [mailto:hdegoede@...hat.com]
> Sent: Thursday, March 29, 2018 8:51 AM
> To: dl-esc-Aacraid Linux Driver <aacraid@...rosemi.com>; James E.J.
> Bottomley <jejb@...ux.vnet.ibm.com>; Martin K. Petersen
> <martin.petersen@...cle.com>; SCSI development list <linux-
> scsi@...r.kernel.org>; Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
> Subject: aacraid code passes GFP_DMA32 to kmalloc this will not work
>
>
> Hi All,
>
> Since I made the same mistake myself I've done a quick grep for
> GFP_DMA32 in the kernel and drivers/scsi/aacraid/commctrl.c came up as a
> result of this grep, it does:
>
> p = kmalloc(sg_count[i], GFP_KERNEL|GFP_DMA32);
>
> But kmalloc always returns memory from the normal memory-zone, if you need
> memory from a specific memory-zone like the
> DMA32 zone, you must use the dma allocation functions (which from a quick
> glance at the code seems appropriate here) or directly call alloc_page or
> __get_free_page.
Hi Hans,
I did run into this issue myself recently ... Thanks for a reminder to send in a patch to
correct this.
-Dave
>
> Regards,
>
> Hans
Powered by blists - more mailing lists