diff options
author | Wang Chen <wangchen@cn.fujitsu.com> | 2008-02-28 17:14:58 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-02-28 17:14:58 -0500 |
commit | d45fba3625249fada590a2eea09c38e755a3a2a7 (patch) | |
tree | 0663813ee1b56adc585feb78d0b8124679d58568 /net | |
parent | 770207208e4374f013f6f49233d5c8c8df505e03 (diff) |
[8021Q]: Use proc_create() to setup ->proc_fops first
Use proc_create() to make sure that ->proc_fops be setup before gluing
PDE to main tree.
Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/8021q/vlanproc.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/net/8021q/vlanproc.c b/net/8021q/vlanproc.c index a0ec4792559..146cfb0e988 100644 --- a/net/8021q/vlanproc.c +++ b/net/8021q/vlanproc.c | |||
@@ -161,11 +161,10 @@ int __init vlan_proc_init(void) | |||
161 | if (!proc_vlan_dir) | 161 | if (!proc_vlan_dir) |
162 | goto err; | 162 | goto err; |
163 | 163 | ||
164 | proc_vlan_conf = create_proc_entry(name_conf, S_IFREG|S_IRUSR|S_IWUSR, | 164 | proc_vlan_conf = proc_create(name_conf, S_IFREG|S_IRUSR|S_IWUSR, |
165 | proc_vlan_dir); | 165 | proc_vlan_dir, &vlan_fops); |
166 | if (!proc_vlan_conf) | 166 | if (!proc_vlan_conf) |
167 | goto err; | 167 | goto err; |
168 | proc_vlan_conf->proc_fops = &vlan_fops; | ||
169 | return 0; | 168 | return 0; |
170 | 169 | ||
171 | err: | 170 | err: |
@@ -182,13 +181,11 @@ int vlan_proc_add_dev(struct net_device *vlandev) | |||
182 | { | 181 | { |
183 | struct vlan_dev_info *dev_info = vlan_dev_info(vlandev); | 182 | struct vlan_dev_info *dev_info = vlan_dev_info(vlandev); |
184 | 183 | ||
185 | dev_info->dent = create_proc_entry(vlandev->name, | 184 | dev_info->dent = proc_create(vlandev->name, S_IFREG|S_IRUSR|S_IWUSR, |
186 | S_IFREG|S_IRUSR|S_IWUSR, | 185 | proc_vlan_dir, &vlandev_fops); |
187 | proc_vlan_dir); | ||
188 | if (!dev_info->dent) | 186 | if (!dev_info->dent) |
189 | return -ENOBUFS; | 187 | return -ENOBUFS; |
190 | 188 | ||
191 | dev_info->dent->proc_fops = &vlandev_fops; | ||
192 | dev_info->dent->data = vlandev; | 189 | dev_info->dent->data = vlandev; |
193 | return 0; | 190 | return 0; |
194 | } | 191 | } |