|
@@ -538,7 +538,8 @@ static void if_usb_receive_fwload(struct urb *urb)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- syncfwheader = kmalloc(sizeof(struct fwsyncheader), GFP_ATOMIC);
|
|
|
+ syncfwheader = kmemdup(skb->data, sizeof(struct fwsyncheader),
|
|
|
+ GFP_ATOMIC);
|
|
|
if (!syncfwheader) {
|
|
|
lbtf_deb_usbd(&cardp->udev->dev, "Failure to allocate syncfwheader\n");
|
|
|
kfree_skb(skb);
|
|
@@ -546,8 +547,6 @@ static void if_usb_receive_fwload(struct urb *urb)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- memcpy(syncfwheader, skb->data, sizeof(struct fwsyncheader));
|
|
|
-
|
|
|
if (!syncfwheader->cmd) {
|
|
|
lbtf_deb_usb2(&cardp->udev->dev, "FW received Blk with correct CRC\n");
|
|
|
lbtf_deb_usb2(&cardp->udev->dev, "FW received Blk seqnum = %d\n",
|