diff options
| -rw-r--r-- | net/caif/caif_dev.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/caif/caif_dev.c b/net/caif/caif_dev.c index 7c2fa0a08148..7f9ac0742d19 100644 --- a/net/caif/caif_dev.c +++ b/net/caif/caif_dev.c | |||
| @@ -93,10 +93,14 @@ static struct caif_device_entry *caif_device_alloc(struct net_device *dev) | |||
| 93 | caifdevs = caif_device_list(dev_net(dev)); | 93 | caifdevs = caif_device_list(dev_net(dev)); |
| 94 | BUG_ON(!caifdevs); | 94 | BUG_ON(!caifdevs); |
| 95 | 95 | ||
| 96 | caifd = kzalloc(sizeof(*caifd), GFP_ATOMIC); | 96 | caifd = kzalloc(sizeof(*caifd), GFP_KERNEL); |
| 97 | if (!caifd) | 97 | if (!caifd) |
| 98 | return NULL; | 98 | return NULL; |
| 99 | caifd->pcpu_refcnt = alloc_percpu(int); | 99 | caifd->pcpu_refcnt = alloc_percpu(int); |
| 100 | if (!caifd->pcpu_refcnt) { | ||
| 101 | kfree(caifd); | ||
| 102 | return NULL; | ||
| 103 | } | ||
| 100 | caifd->netdev = dev; | 104 | caifd->netdev = dev; |
| 101 | dev_hold(dev); | 105 | dev_hold(dev); |
| 102 | return caifd; | 106 | return caifd; |
