diff options
| author | Ming Lei <[email protected]> | 2013-04-04 22:22:37 +0800 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2013-04-05 15:35:52 -0700 |
| commit | bb2b0051d7b0772ea9d0b4be900c2d965093f5d7 (patch) | |
| tree | ea77b283a68b2b2a5cbcf29706d8c2d6361d18e6 /scripts/patch-kernel | |
| parent | bcfb87fb75fa3a9b96c8a73d19166897d167fe3f (diff) | |
sysfs: check if one entry has been removed before freeing
It might be a kernel disaster if one sysfs entry is freed but
still referenced by sysfs tree.
Recently Dave and Sasha reported one use-after-free problem on
sysfs entry, and the problem has been troubleshooted with help
of debug message added in this patch.
Given sysfs_get_dirent/sysfs_put are exported APIs, even inside
sysfs they are called in many contexts(kobject/attribe add/delete,
inode init/drop, dentry lookup/release, readdir, ...), it is healthful
to check the removed flag before freeing one entry and dump message
if it is freeing without being removed first.
Cc: Dave Jones <[email protected]>
Cc: Sasha Levin <[email protected]>
Signed-off-by: Ming Lei <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'scripts/patch-kernel')
0 files changed, 0 insertions, 0 deletions