On 21/02/10 09:06AM, Greg KH wrote: > On Wed, Feb 10, 2021 at 01:31:34PM +0530, Amey Narkhede wrote: > > Stack allocated buffers cannot be used for DMA > > on all architectures so allocate hci_packet buffer > > using kzalloc(). > > > > Signed-off-by: Amey Narkhede > > --- > > Changes in v2: > > - Fixed build warning > > - Fixed memory leak using kfree > > > > drivers/staging/gdm724x/gdm_usb.c | 9 +++++++-- > > 1 file changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/staging/gdm724x/gdm_usb.c b/drivers/staging/gdm724x/gdm_usb.c > > index dc4da66c3..c4a9b90c5 100644 > > --- a/drivers/staging/gdm724x/gdm_usb.c > > +++ b/drivers/staging/gdm724x/gdm_usb.c > > @@ -56,11 +56,15 @@ static int gdm_usb_recv(void *priv_dev, > > > > static int request_mac_address(struct lte_udev *udev) > > { > > - u8 buf[16] = {0,}; > > - struct hci_packet *hci = (struct hci_packet *)buf; > > + u8 *buf; > > + struct hci_packet *hci; > > struct usb_device *usbdev = udev->usbdev; > > int actual; > > int ret = -1; > > + buf = kzalloc(16, GFP_KERNEL); > > checkpatch did not complain about this? No. checkpatch shows no errors and warnings. > > And why do you need 'buf' anymore now? Why not just allocate hci and > pass that to the request instead? Saves you an extra cast and an extra > pointer. > > thanks, > > greg k-h Thanks. I'll send v3. I assume now we don't need kzalloc anymore as we initialize the hci_packet so kmalloc(sizeof(struct hci_packet),..) will do. Amey