diff options
authorVinicius Costa Gomes <>2021-08-06 18:15:46 -0700
committerDavid S. Miller <>2021-08-08 12:56:41 +0100
commitd329e41a08f37c478159d5c3379a17b9c07befa3 (patch)
parent2383cb9497d113360137a2be308b390faa80632d (diff)
ptp: Fix possible memory leak caused by invalid cast
Fixes possible leak of PTP virtual clocks. The number of PTP virtual clocks to be unregistered is passed as 'u32', but the function that unregister the devices handles that as 'u8'. Fixes: 73f37068d540 ("ptp: support ptp physical/virtual clocks conversion") Signed-off-by: Vinicius Costa Gomes <> Signed-off-by: David S. Miller <>
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/ptp/ptp_sysfs.c b/drivers/ptp/ptp_sysfs.c
index b3d96b747292..41b92dc2f011 100644
--- a/drivers/ptp/ptp_sysfs.c
+++ b/drivers/ptp/ptp_sysfs.c
@@ -154,7 +154,7 @@ static int unregister_vclock(struct device *dev, void *data)
struct ptp_clock *ptp = dev_get_drvdata(dev);
struct ptp_clock_info *info = ptp->info;
struct ptp_vclock *vclock;
- u8 *num = data;
+ u32 *num = data;
vclock = info_to_vclock(info);
dev_info(dev->parent, "delete virtual clock ptp%d\n",