Commit 6a6375db authored by Denis V. Lunev's avatar Denis V. Lunev Committed by Linus Torvalds
Browse files

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: default avatarDenis 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: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 79da3664
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -165,13 +165,12 @@ void __init ipc_init_proc_interface(const char *path, const char *header,
	iface->ids	= ids;
	iface->show	= show;

	pde = create_proc_entry(path,
	pde = proc_create_data(path,
			       S_IRUGO,        /* world readable */
				NULL            /* parent dir */);
	if (pde) {
		pde->data = iface;
		pde->proc_fops = &sysvipc_proc_fops;
	} else {
			       NULL,           /* parent dir */
			       &sysvipc_proc_fops,
			       iface);
	if (!pde) {
		kfree(iface);
	}
}