diff options
-rw-r--r-- | drivers/char/pcmcia/ipwireless/hardware.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/char/pcmcia/ipwireless/hardware.c b/drivers/char/pcmcia/ipwireless/hardware.c index ba6340ae98af..929101ecbae2 100644 --- a/drivers/char/pcmcia/ipwireless/hardware.c +++ b/drivers/char/pcmcia/ipwireless/hardware.c | |||
@@ -590,8 +590,10 @@ static struct ipw_rx_packet *pool_allocate(struct ipw_hardware *hw, | |||
590 | packet = kmalloc(sizeof(struct ipw_rx_packet) + | 590 | packet = kmalloc(sizeof(struct ipw_rx_packet) + |
591 | old_packet->length + minimum_free_space, | 591 | old_packet->length + minimum_free_space, |
592 | GFP_ATOMIC); | 592 | GFP_ATOMIC); |
593 | if (!packet) | 593 | if (!packet) { |
594 | kfree(old_packet); | ||
594 | return NULL; | 595 | return NULL; |
596 | } | ||
595 | memcpy(packet, old_packet, | 597 | memcpy(packet, old_packet, |
596 | sizeof(struct ipw_rx_packet) | 598 | sizeof(struct ipw_rx_packet) |
597 | + old_packet->length); | 599 | + old_packet->length); |