From: Vasiliy Kulikov <segoon@openwall.com> Date: Sat, 22 Jan 2011 00:24:23 +0000 (-0800) Subject: atm: idt77105: fix fetch_stats() result X-Git-Tag: v2.6.38-rc3~29^2~23 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=2221eca0a2c0f7f9918efdcaa52fb8e1adff991f;p=users%2Fjedix%2Flinux-maple.git atm: idt77105: fix fetch_stats() result copy_to_user() used PRIV(dev)->stats instead of local stats variable. Zero stats were returned to user in case of (zero != 0), also memcpy() was pointless. Signed-off-by: Vasiliy Kulikov <segoon@openwall.com> Signed-off-by: David S. Miller <davem@davemloft.net> --- diff --git a/drivers/atm/idt77105.c b/drivers/atm/idt77105.c index bca9cb89a118..487a54739854 100644 --- a/drivers/atm/idt77105.c +++ b/drivers/atm/idt77105.c @@ -151,7 +151,7 @@ static int fetch_stats(struct atm_dev *dev,struct idt77105_stats __user *arg,int spin_unlock_irqrestore(&idt77105_priv_lock, flags); if (arg == NULL) return 0; - return copy_to_user(arg, &PRIV(dev)->stats, + return copy_to_user(arg, &stats, sizeof(struct idt77105_stats)) ? -EFAULT : 0; }