Re: [PATCH] driver-core: don't free devt_attr till the device isreleased

From: Alan Stern
Date: Thu May 10 2007 - 11:52:41 EST


On Thu, 10 May 2007, Tejun Heo wrote:

> Currently, devt_attr for the "dev" file is freed immediately on device
> removal, but if the "dev" sysfs file is open when a device is removed,
> sysfs will access its attribute structure for further access including
> close resulting in jumping to garbled address. Fix it by postponing
> freeing devt_attr to device release time.
>
> Note that devt_attr for class_device is already freed on release.
>
> This bug is reported by Chris Rankin as bugzilla bug#8198.
>
> Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
> Cc: Chris Rankin <rankincj@xxxxxxxxx>
> ---
> Applies well to 2.6.20 and 21. As sysfs-immediate-disconnect doesn't
> seem to be included in 2.6.22, this should be included in linus#master
> too (applies well there as well).

Although sysfs-immediate-disconnect may not be included in 2.6.22, the old
attribute-orphan code by Oliver Neukum is present there and also in
2.6.21. Shouldn't that suffice?

Alan Stern

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/