drivers: use non-racy method for proc entries creation (2)

Use proc_create()/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 <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: Alexey Dobriyan <[email protected]>
Cc: "Eric W. Biederman" <[email protected]>
Cc: Peter Osterlund <[email protected]>
Cc: Bartlomiej Zolnierkiewicz <[email protected]>
Cc: Dmitry Torokhov <[email protected]>
Cc: Neil Brown <[email protected]>
Cc: Mauro Carvalho Chehab <[email protected]>
Cc: Bjorn Helgaas <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
Denis V. Lunev 2008-04-29 01:02:35 -07:00 • committed by Linus Torvalds
commit c7705f3449
12 changed files with 33 additions and 68 deletions

View file

@ -108,12 +108,10 @@ void rtc_proc_add_device(struct rtc_device *rtc)
if (rtc->id == 0) {
struct proc_dir_entry *ent;
ent = create_proc_entry("driver/rtc", 0, NULL);
if (ent) {
ent->proc_fops = &rtc_proc_fops;
ent = proc_create_data("driver/rtc", 0, NULL,
&rtc_proc_fops, rtc);
if (ent)
ent->owner = rtc->owner;
ent->data = rtc;
}
}
}