diff options
Diffstat (limited to 'net/core/ethtool.c')
-rw-r--r-- | net/core/ethtool.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/net/core/ethtool.c b/net/core/ethtool.c index d5f412b3093d..be7bab1adcde 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c | |||
@@ -1404,9 +1404,12 @@ static int ethtool_get_regs(struct net_device *dev, char __user *useraddr) | |||
1404 | if (regs.len > reglen) | 1404 | if (regs.len > reglen) |
1405 | regs.len = reglen; | 1405 | regs.len = reglen; |
1406 | 1406 | ||
1407 | regbuf = vzalloc(reglen); | 1407 | regbuf = NULL; |
1408 | if (reglen && !regbuf) | 1408 | if (reglen) { |
1409 | return -ENOMEM; | 1409 | regbuf = vzalloc(reglen); |
1410 | if (!regbuf) | ||
1411 | return -ENOMEM; | ||
1412 | } | ||
1410 | 1413 | ||
1411 | ops->get_regs(dev, ®s, regbuf); | 1414 | ops->get_regs(dev, ®s, regbuf); |
1412 | 1415 | ||