Messages in this thread | | | Date | Mon, 13 Jan 2020 20:26:16 -0800 | From | Richard Cochran <> | Subject | Re: [PATCH] ptp: free ptp device pin descriptors properly |
| |
On Mon, Jan 13, 2020 at 02:00:09PM +0100, Vladis Dronov wrote: > There is a bug in ptp_clock_unregister(), where ptp_cleanup_pin_groups() > first frees ptp->pin_{,dev_}attr, but then posix_clock_unregister() needs > them to destroy a related sysfs device. > > These functions can not be just swapped, as posix_clock_unregister() frees > ptp which is needed in the ptp_cleanup_pin_groups(). Fix this by calling > ptp_cleanup_pin_groups() in ptp_clock_release(), right before ptp is freed. > > This makes this patch fix an UAF bug in a patch which fixes an UAF bug. > > Reported-by: Antti Laakso <antti.laakso@intel.com> > Fixes: a33121e5487b ("ptp: fix the race between the release of ptp_clock and cdev") > Link: https://lore.kernel.org/netdev/3d2bd09735dbdaf003585ca376b7c1e5b69a19bd.camel@intel.com/ > Signed-off-by: Vladis Dronov <vdronov@redhat.com>
Acked-by: Richard Cochran <richardcochran@gmail.com>
| |