aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/core/ethtool.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/ethtool.c b/net/core/ethtool.c
index 91ffce20c36b..dae2fd053c2b 100644
--- a/net/core/ethtool.c
+++ b/net/core/ethtool.c
@@ -815,7 +815,7 @@ static int ethtool_get_regs(struct net_device *dev, char __user *useraddr)
815 if (regs.len > reglen) 815 if (regs.len > reglen)
816 regs.len = reglen; 816 regs.len = reglen;
817 817
818 regbuf = kmalloc(reglen, GFP_USER); 818 regbuf = vmalloc(reglen);
819 if (!regbuf) 819 if (!regbuf)
820 return -ENOMEM; 820 return -ENOMEM;
821 821
@@ -830,7 +830,7 @@ static int ethtool_get_regs(struct net_device *dev, char __user *useraddr)
830 ret = 0; 830 ret = 0;
831 831
832 out: 832 out:
833 kfree(regbuf); 833 vfree(regbuf);
834 return ret; 834 return ret;
835} 835}
836 836