: Use proc_create() to setup ->proc_fops first
Subsystems (2)
PATCH 1/15 : Use proc_create() to setup ->proc_fops first
As Davem mentioned in his recently patch
(d9595a7b9c777d45a74774f1428c263a0a47f4c0)
that the procfs visibility should occur after
the ->proc_fops are setup.
And also, Alexey provide proc_create() to make
sure that ->proc_fops is setup before gluing PDE
to main tree.
We use proc_create().
Signed-off-by Wang Chen <[email protected]>
--- net/appletalk/atalk_proc.c | 15 +++++++-------- 1 files changed, 7 insertions(+), 8 deletions(-)
net/appletalk/atalk_proc.c +7 -8
@@ -283,25 +283,24 @@ int __init atalk_proc_init(void) goto out; atalk_proc_dir->owner =THIS_MODULE ; - p =create_proc_entry ("interface" ,S_IRUGO , atalk_proc_dir); + p =proc_create ("interface" ,S_IRUGO , atalk_proc_dir, + &atalk_seq_interface_fops);if (!p) goto out_interface; - p->proc_fops = &atalk_seq_interface_fops; - p =create_proc_entry ("route" ,S_IRUGO , atalk_proc_dir); + p =proc_create ("route" ,S_IRUGO , atalk_proc_dir, + &atalk_seq_route_fops);if (!p) goto out_route; - p->proc_fops = &atalk_seq_route_fops; - p =create_proc_entry ("socket" ,S_IRUGO , atalk_proc_dir); + p =proc_create ("socket" ,S_IRUGO , atalk_proc_dir, + &atalk_seq_socket_fops);if (!p) goto out_socket; - p->proc_fops = &atalk_seq_socket_fops; - p =create_proc_entry ("arp" ,S_IRUGO , atalk_proc_dir); + p =proc_create ("arp" ,S_IRUGO , atalk_proc_dir, &atalk_seq_arp_fops);if (!p) goto out_arp; - p->proc_fops = &atalk_seq_arp_fops; rc =0 ; out:
Signature · 1 line
WCN
From: Wang Chen <[email protected]>
Date: Thu, 28 Feb 2008 18:54:51 +0800
Quoted 5 lines
As Davem mentioned in his recently patch
(d9595a7b9c777d45a74774f1428c263a0a47f4c0)
that the procfs visibility should occur after
the ->proc_fops are setup.
Quoted 7 lines
And also, Alexey provide
proc_create()to make
sure that ->proc_fops is setup before gluing PDE
to main tree.We use
proc_create().Signed-off-by Wang Chen <[email protected]>
Applied, thanks.