sysvipc: use non-racy method for proc entries creation

Use proc_create_data() to make sure that ->proc_fops and ->data be setup
before gluing PDE to main tree.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Nadia Derbey <Nadia.Derbey@bull.net>
Cc: Pierre Peiffer <peifferp@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Denis V. Lunev 2008-04-29 01:02:12 -07:00 committed by Linus Torvalds
parent 79da3664f6
commit 6a6375db13
1 changed files with 6 additions and 7 deletions

View File

@ -165,13 +165,12 @@ void __init ipc_init_proc_interface(const char *path, const char *header,
iface->ids = ids; iface->ids = ids;
iface->show = show; iface->show = show;
pde = create_proc_entry(path, pde = proc_create_data(path,
S_IRUGO, /* world readable */ S_IRUGO, /* world readable */
NULL /* parent dir */); NULL, /* parent dir */
if (pde) { &sysvipc_proc_fops,
pde->data = iface; iface);
pde->proc_fops = &sysvipc_proc_fops; if (!pde) {
} else {
kfree(iface); kfree(iface);
} }
} }