net: dsa: microchip: ptp: Fix error code in ksz_hwtstamp_set()
We want to return negative error codes here but the copy_to/from_user()
functions return the number of bytes remaining to be copied.
Fixes: c59e12a140
("net: dsa: microchip: ptp: Initial hardware time stamping support")
Signed-off-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Link: https://lore.kernel.org/r/Y8fJxSvbl7UNVHh/@kili
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
482acbd68e
commit
a76e88c294
@ -416,9 +416,8 @@ int ksz_hwtstamp_set(struct dsa_switch *ds, int port, struct ifreq *ifr)
|
||||
|
||||
prt = &dev->ports[port];
|
||||
|
||||
ret = copy_from_user(&config, ifr->ifr_data, sizeof(config));
|
||||
if (ret)
|
||||
return ret;
|
||||
if (copy_from_user(&config, ifr->ifr_data, sizeof(config)))
|
||||
return -EFAULT;
|
||||
|
||||
ret = ksz_set_hwtstamp_config(dev, prt, &config);
|
||||
if (ret)
|
||||
@ -426,7 +425,10 @@ int ksz_hwtstamp_set(struct dsa_switch *ds, int port, struct ifreq *ifr)
|
||||
|
||||
memcpy(&prt->tstamp_config, &config, sizeof(config));
|
||||
|
||||
return copy_to_user(ifr->ifr_data, &config, sizeof(config));
|
||||
if (copy_to_user(ifr->ifr_data, &config, sizeof(config)))
|
||||
return -EFAULT;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static ktime_t ksz_tstamp_reconstruct(struct ksz_device *dev, ktime_t tstamp)
|
||||
|
Loading…
Reference in New Issue
Block a user