diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-25 15:53:15 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-25 15:53:15 -0400 |
commit | 0003230e8200699860f0b10af524dc47bf8aecad (patch) | |
tree | 8addb0c889b32111d6973c46cd3d0a5b5c17606c /drivers | |
parent | 4b478cedcdc1b2d131170f22bd3f916e53472f52 (diff) | |
parent | 4e34e719e457f2e031297175410fc0bd4016a085 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
fs: take the ACL checks to common code
bury posix_acl_..._masq() variants
kill boilerplates around posix_acl_create_masq()
generic_acl: no need to clone acl just to push it to set_cached_acl()
kill boilerplate around posix_acl_chmod_masq()
reiserfs: cache negative ACLs for v1 stat format
xfs: cache negative ACLs if there is no attribute fork
9p: do no return 0 from ->check_acl without actually checking
vfs: move ACL cache lookup into generic code
CIFS: Fix oops while mounting with prefixpath
xfs: Fix wrong return value of xfs_file_aio_write
fix devtmpfs race
caam: don't pass bogus S_IFCHR to debugfs_create_...()
get rid of create_proc_entry() abuses - proc_mkdir() is there for purpose
asus-wmi: ->is_visible() can't return negative
fix jffs2 ACLs on big-endian with 16bit mode_t
9p: close ACL leaks
ocfs2_init_acl(): fix a leak
VFS : mount lock scalability for internal mounts
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/base/devtmpfs.c | 3 | ||||
-rw-r--r-- | drivers/crypto/caam/ctrl.c | 26 | ||||
-rw-r--r-- | drivers/mtd/mtdchar.c | 2 | ||||
-rw-r--r-- | drivers/platform/x86/asus-wmi.c | 2 | ||||
-rw-r--r-- | drivers/staging/rtl8187se/r8180_core.c | 2 | ||||
-rw-r--r-- | drivers/staging/rtl8192e/ieee80211/ieee80211_module.c | 2 | ||||
-rw-r--r-- | drivers/staging/rtl8192e/r8192E_core.c | 6 | ||||
-rw-r--r-- | drivers/staging/rtl8192u/ieee80211/ieee80211_module.c | 2 | ||||
-rw-r--r-- | drivers/staging/rtl8192u/r8192U_core.c | 6 |
9 files changed, 24 insertions, 27 deletions
diff --git a/drivers/base/devtmpfs.c b/drivers/base/devtmpfs.c index 6d678c99512e..b89fffc1d777 100644 --- a/drivers/base/devtmpfs.c +++ b/drivers/base/devtmpfs.c | |||
@@ -406,9 +406,10 @@ static int devtmpfsd(void *p) | |||
406 | requests = NULL; | 406 | requests = NULL; |
407 | spin_unlock(&req_lock); | 407 | spin_unlock(&req_lock); |
408 | while (req) { | 408 | while (req) { |
409 | struct req *next = req->next; | ||
409 | req->err = handle(req->name, req->mode, req->dev); | 410 | req->err = handle(req->name, req->mode, req->dev); |
410 | complete(&req->done); | 411 | complete(&req->done); |
411 | req = req->next; | 412 | req = next; |
412 | } | 413 | } |
413 | spin_lock(&req_lock); | 414 | spin_lock(&req_lock); |
414 | } | 415 | } |
diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c index fc2d9ed22470..73988bb7322a 100644 --- a/drivers/crypto/caam/ctrl.c +++ b/drivers/crypto/caam/ctrl.c | |||
@@ -166,52 +166,52 @@ static int caam_probe(struct platform_device *pdev) | |||
166 | /* Controller-level - performance monitor counters */ | 166 | /* Controller-level - performance monitor counters */ |
167 | ctrlpriv->ctl_rq_dequeued = | 167 | ctrlpriv->ctl_rq_dequeued = |
168 | debugfs_create_u64("rq_dequeued", | 168 | debugfs_create_u64("rq_dequeued", |
169 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 169 | S_IRUSR | S_IRGRP | S_IROTH, |
170 | ctrlpriv->ctl, &perfmon->req_dequeued); | 170 | ctrlpriv->ctl, &perfmon->req_dequeued); |
171 | ctrlpriv->ctl_ob_enc_req = | 171 | ctrlpriv->ctl_ob_enc_req = |
172 | debugfs_create_u64("ob_rq_encrypted", | 172 | debugfs_create_u64("ob_rq_encrypted", |
173 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 173 | S_IRUSR | S_IRGRP | S_IROTH, |
174 | ctrlpriv->ctl, &perfmon->ob_enc_req); | 174 | ctrlpriv->ctl, &perfmon->ob_enc_req); |
175 | ctrlpriv->ctl_ib_dec_req = | 175 | ctrlpriv->ctl_ib_dec_req = |
176 | debugfs_create_u64("ib_rq_decrypted", | 176 | debugfs_create_u64("ib_rq_decrypted", |
177 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 177 | S_IRUSR | S_IRGRP | S_IROTH, |
178 | ctrlpriv->ctl, &perfmon->ib_dec_req); | 178 | ctrlpriv->ctl, &perfmon->ib_dec_req); |
179 | ctrlpriv->ctl_ob_enc_bytes = | 179 | ctrlpriv->ctl_ob_enc_bytes = |
180 | debugfs_create_u64("ob_bytes_encrypted", | 180 | debugfs_create_u64("ob_bytes_encrypted", |
181 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 181 | S_IRUSR | S_IRGRP | S_IROTH, |
182 | ctrlpriv->ctl, &perfmon->ob_enc_bytes); | 182 | ctrlpriv->ctl, &perfmon->ob_enc_bytes); |
183 | ctrlpriv->ctl_ob_prot_bytes = | 183 | ctrlpriv->ctl_ob_prot_bytes = |
184 | debugfs_create_u64("ob_bytes_protected", | 184 | debugfs_create_u64("ob_bytes_protected", |
185 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 185 | S_IRUSR | S_IRGRP | S_IROTH, |
186 | ctrlpriv->ctl, &perfmon->ob_prot_bytes); | 186 | ctrlpriv->ctl, &perfmon->ob_prot_bytes); |
187 | ctrlpriv->ctl_ib_dec_bytes = | 187 | ctrlpriv->ctl_ib_dec_bytes = |
188 | debugfs_create_u64("ib_bytes_decrypted", | 188 | debugfs_create_u64("ib_bytes_decrypted", |
189 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 189 | S_IRUSR | S_IRGRP | S_IROTH, |
190 | ctrlpriv->ctl, &perfmon->ib_dec_bytes); | 190 | ctrlpriv->ctl, &perfmon->ib_dec_bytes); |
191 | ctrlpriv->ctl_ib_valid_bytes = | 191 | ctrlpriv->ctl_ib_valid_bytes = |
192 | debugfs_create_u64("ib_bytes_validated", | 192 | debugfs_create_u64("ib_bytes_validated", |
193 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 193 | S_IRUSR | S_IRGRP | S_IROTH, |
194 | ctrlpriv->ctl, &perfmon->ib_valid_bytes); | 194 | ctrlpriv->ctl, &perfmon->ib_valid_bytes); |
195 | 195 | ||
196 | /* Controller level - global status values */ | 196 | /* Controller level - global status values */ |
197 | ctrlpriv->ctl_faultaddr = | 197 | ctrlpriv->ctl_faultaddr = |
198 | debugfs_create_u64("fault_addr", | 198 | debugfs_create_u64("fault_addr", |
199 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 199 | S_IRUSR | S_IRGRP | S_IROTH, |
200 | ctrlpriv->ctl, &perfmon->faultaddr); | 200 | ctrlpriv->ctl, &perfmon->faultaddr); |
201 | ctrlpriv->ctl_faultdetail = | 201 | ctrlpriv->ctl_faultdetail = |
202 | debugfs_create_u32("fault_detail", | 202 | debugfs_create_u32("fault_detail", |
203 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 203 | S_IRUSR | S_IRGRP | S_IROTH, |
204 | ctrlpriv->ctl, &perfmon->faultdetail); | 204 | ctrlpriv->ctl, &perfmon->faultdetail); |
205 | ctrlpriv->ctl_faultstatus = | 205 | ctrlpriv->ctl_faultstatus = |
206 | debugfs_create_u32("fault_status", | 206 | debugfs_create_u32("fault_status", |
207 | S_IFCHR | S_IRUSR | S_IRGRP | S_IROTH, | 207 | S_IRUSR | S_IRGRP | S_IROTH, |
208 | ctrlpriv->ctl, &perfmon->status); | 208 | ctrlpriv->ctl, &perfmon->status); |
209 | 209 | ||
210 | /* Internal covering keys (useful in non-secure mode only) */ | 210 | /* Internal covering keys (useful in non-secure mode only) */ |
211 | ctrlpriv->ctl_kek_wrap.data = &ctrlpriv->ctrl->kek[0]; | 211 | ctrlpriv->ctl_kek_wrap.data = &ctrlpriv->ctrl->kek[0]; |
212 | ctrlpriv->ctl_kek_wrap.size = KEK_KEY_SIZE * sizeof(u32); | 212 | ctrlpriv->ctl_kek_wrap.size = KEK_KEY_SIZE * sizeof(u32); |
213 | ctrlpriv->ctl_kek = debugfs_create_blob("kek", | 213 | ctrlpriv->ctl_kek = debugfs_create_blob("kek", |
214 | S_IFCHR | S_IRUSR | | 214 | S_IRUSR | |
215 | S_IRGRP | S_IROTH, | 215 | S_IRGRP | S_IROTH, |
216 | ctrlpriv->ctl, | 216 | ctrlpriv->ctl, |
217 | &ctrlpriv->ctl_kek_wrap); | 217 | &ctrlpriv->ctl_kek_wrap); |
@@ -219,7 +219,7 @@ static int caam_probe(struct platform_device *pdev) | |||
219 | ctrlpriv->ctl_tkek_wrap.data = &ctrlpriv->ctrl->tkek[0]; | 219 | ctrlpriv->ctl_tkek_wrap.data = &ctrlpriv->ctrl->tkek[0]; |
220 | ctrlpriv->ctl_tkek_wrap.size = KEK_KEY_SIZE * sizeof(u32); | 220 | ctrlpriv->ctl_tkek_wrap.size = KEK_KEY_SIZE * sizeof(u32); |
221 | ctrlpriv->ctl_tkek = debugfs_create_blob("tkek", | 221 | ctrlpriv->ctl_tkek = debugfs_create_blob("tkek", |
222 | S_IFCHR | S_IRUSR | | 222 | S_IRUSR | |
223 | S_IRGRP | S_IROTH, | 223 | S_IRGRP | S_IROTH, |
224 | ctrlpriv->ctl, | 224 | ctrlpriv->ctl, |
225 | &ctrlpriv->ctl_tkek_wrap); | 225 | &ctrlpriv->ctl_tkek_wrap); |
@@ -227,7 +227,7 @@ static int caam_probe(struct platform_device *pdev) | |||
227 | ctrlpriv->ctl_tdsk_wrap.data = &ctrlpriv->ctrl->tdsk[0]; | 227 | ctrlpriv->ctl_tdsk_wrap.data = &ctrlpriv->ctrl->tdsk[0]; |
228 | ctrlpriv->ctl_tdsk_wrap.size = KEK_KEY_SIZE * sizeof(u32); | 228 | ctrlpriv->ctl_tdsk_wrap.size = KEK_KEY_SIZE * sizeof(u32); |
229 | ctrlpriv->ctl_tdsk = debugfs_create_blob("tdsk", | 229 | ctrlpriv->ctl_tdsk = debugfs_create_blob("tdsk", |
230 | S_IFCHR | S_IRUSR | | 230 | S_IRUSR | |
231 | S_IRGRP | S_IROTH, | 231 | S_IRGRP | S_IROTH, |
232 | ctrlpriv->ctl, | 232 | ctrlpriv->ctl, |
233 | &ctrlpriv->ctl_tdsk_wrap); | 233 | &ctrlpriv->ctl_tdsk_wrap); |
diff --git a/drivers/mtd/mtdchar.c b/drivers/mtd/mtdchar.c index 3f92731a5b9e..f1af2228a1b1 100644 --- a/drivers/mtd/mtdchar.c +++ b/drivers/mtd/mtdchar.c | |||
@@ -1192,7 +1192,7 @@ err_unregister_chdev: | |||
1192 | static void __exit cleanup_mtdchar(void) | 1192 | static void __exit cleanup_mtdchar(void) |
1193 | { | 1193 | { |
1194 | unregister_mtd_user(&mtdchar_notifier); | 1194 | unregister_mtd_user(&mtdchar_notifier); |
1195 | mntput(mtd_inode_mnt); | 1195 | kern_unmount(mtd_inode_mnt); |
1196 | unregister_filesystem(&mtd_inodefs_type); | 1196 | unregister_filesystem(&mtd_inodefs_type); |
1197 | __unregister_chrdev(MTD_CHAR_MAJOR, 0, 1 << MINORBITS, "mtd"); | 1197 | __unregister_chrdev(MTD_CHAR_MAJOR, 0, 1 << MINORBITS, "mtd"); |
1198 | } | 1198 | } |
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c index 3c7857c71a23..65b66aa44c78 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c | |||
@@ -857,7 +857,7 @@ static mode_t asus_hwmon_sysfs_is_visible(struct kobject *kobj, | |||
857 | int err = asus_wmi_get_devstate(asus, dev_id, &value); | 857 | int err = asus_wmi_get_devstate(asus, dev_id, &value); |
858 | 858 | ||
859 | if (err < 0) | 859 | if (err < 0) |
860 | return err; | 860 | return 0; /* can't return negative here */ |
861 | } | 861 | } |
862 | 862 | ||
863 | if (dev_id == ASUS_WMI_DEVID_FAN_CTRL) { | 863 | if (dev_id == ASUS_WMI_DEVID_FAN_CTRL) { |
diff --git a/drivers/staging/rtl8187se/r8180_core.c b/drivers/staging/rtl8187se/r8180_core.c index bae7d85fe831..4c6651aac307 100644 --- a/drivers/staging/rtl8187se/r8180_core.c +++ b/drivers/staging/rtl8187se/r8180_core.c | |||
@@ -307,7 +307,7 @@ static int proc_get_stats_tx(char *page, char **start, | |||
307 | void rtl8180_proc_module_init(void) | 307 | void rtl8180_proc_module_init(void) |
308 | { | 308 | { |
309 | DMESG("Initializing proc filesystem"); | 309 | DMESG("Initializing proc filesystem"); |
310 | rtl8180_proc = create_proc_entry(RTL8180_MODULE_NAME, S_IFDIR, init_net.proc_net); | 310 | rtl8180_proc = proc_mkdir(RTL8180_MODULE_NAME, init_net.proc_net); |
311 | } | 311 | } |
312 | 312 | ||
313 | void rtl8180_proc_module_remove(void) | 313 | void rtl8180_proc_module_remove(void) |
diff --git a/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c b/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c index 663b0b8e1095..c2901b50dbfe 100644 --- a/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c +++ b/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c | |||
@@ -311,7 +311,7 @@ int __init ieee80211_rtl_init(void) | |||
311 | } | 311 | } |
312 | 312 | ||
313 | ieee80211_debug_level = debug; | 313 | ieee80211_debug_level = debug; |
314 | ieee80211_proc = create_proc_entry(DRV_NAME, S_IFDIR, init_net.proc_net); | 314 | ieee80211_proc = proc_mkdir(DRV_NAME, init_net.proc_net); |
315 | if (ieee80211_proc == NULL) { | 315 | if (ieee80211_proc == NULL) { |
316 | IEEE80211_ERROR("Unable to create " DRV_NAME | 316 | IEEE80211_ERROR("Unable to create " DRV_NAME |
317 | " proc directory\n"); | 317 | " proc directory\n"); |
diff --git a/drivers/staging/rtl8192e/r8192E_core.c b/drivers/staging/rtl8192e/r8192E_core.c index 19a9a07224a2..8550794c6b91 100644 --- a/drivers/staging/rtl8192e/r8192E_core.c +++ b/drivers/staging/rtl8192e/r8192E_core.c | |||
@@ -508,7 +508,7 @@ static int proc_get_stats_rx(char *page, char **start, | |||
508 | static void rtl8192_proc_module_init(void) | 508 | static void rtl8192_proc_module_init(void) |
509 | { | 509 | { |
510 | RT_TRACE(COMP_INIT, "Initializing proc filesystem\n"); | 510 | RT_TRACE(COMP_INIT, "Initializing proc filesystem\n"); |
511 | rtl8192_proc=create_proc_entry(RTL819xE_MODULE_NAME, S_IFDIR, init_net.proc_net); | 511 | rtl8192_proc = proc_mkdir(RTL819xE_MODULE_NAME, init_net.proc_net); |
512 | } | 512 | } |
513 | 513 | ||
514 | 514 | ||
@@ -540,9 +540,7 @@ static void rtl8192_proc_init_one(struct r8192_priv *priv) | |||
540 | struct net_device *dev = priv->ieee80211->dev; | 540 | struct net_device *dev = priv->ieee80211->dev; |
541 | struct proc_dir_entry *e; | 541 | struct proc_dir_entry *e; |
542 | 542 | ||
543 | priv->dir_dev = create_proc_entry(dev->name, | 543 | priv->dir_dev = proc_mkdir(dev->name, rtl8192_proc); |
544 | S_IFDIR | S_IRUGO | S_IXUGO, | ||
545 | rtl8192_proc); | ||
546 | if (!priv->dir_dev) { | 544 | if (!priv->dir_dev) { |
547 | RT_TRACE(COMP_ERR, "Unable to initialize /proc/net/rtl8192/%s\n", | 545 | RT_TRACE(COMP_ERR, "Unable to initialize /proc/net/rtl8192/%s\n", |
548 | dev->name); | 546 | dev->name); |
diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c b/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c index fe978f359f91..d315b256b7a7 100644 --- a/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c +++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c | |||
@@ -283,7 +283,7 @@ int __init ieee80211_debug_init(void) | |||
283 | 283 | ||
284 | ieee80211_debug_level = debug; | 284 | ieee80211_debug_level = debug; |
285 | 285 | ||
286 | ieee80211_proc = create_proc_entry(DRV_NAME, S_IFDIR, init_net.proc_net); | 286 | ieee80211_proc = proc_mkdir(DRV_NAME, init_net.proc_net); |
287 | if (ieee80211_proc == NULL) { | 287 | if (ieee80211_proc == NULL) { |
288 | IEEE80211_ERROR("Unable to create " DRV_NAME | 288 | IEEE80211_ERROR("Unable to create " DRV_NAME |
289 | " proc directory\n"); | 289 | " proc directory\n"); |
diff --git a/drivers/staging/rtl8192u/r8192U_core.c b/drivers/staging/rtl8192u/r8192U_core.c index e81b8ab6aa9d..6a1b5c179027 100644 --- a/drivers/staging/rtl8192u/r8192U_core.c +++ b/drivers/staging/rtl8192u/r8192U_core.c | |||
@@ -671,7 +671,7 @@ static int proc_get_stats_rx(char *page, char **start, | |||
671 | void rtl8192_proc_module_init(void) | 671 | void rtl8192_proc_module_init(void) |
672 | { | 672 | { |
673 | RT_TRACE(COMP_INIT, "Initializing proc filesystem"); | 673 | RT_TRACE(COMP_INIT, "Initializing proc filesystem"); |
674 | rtl8192_proc=create_proc_entry(RTL819xU_MODULE_NAME, S_IFDIR, init_net.proc_net); | 674 | rtl8192_proc = proc_mkdir(RTL819xU_MODULE_NAME, init_net.proc_net); |
675 | } | 675 | } |
676 | 676 | ||
677 | 677 | ||
@@ -706,9 +706,7 @@ void rtl8192_proc_init_one(struct net_device *dev) | |||
706 | { | 706 | { |
707 | struct proc_dir_entry *e; | 707 | struct proc_dir_entry *e; |
708 | struct r8192_priv *priv = (struct r8192_priv *)ieee80211_priv(dev); | 708 | struct r8192_priv *priv = (struct r8192_priv *)ieee80211_priv(dev); |
709 | priv->dir_dev = create_proc_entry(dev->name, | 709 | priv->dir_dev = proc_mkdir(dev->name, rtl8192_proc); |
710 | S_IFDIR | S_IRUGO | S_IXUGO, | ||
711 | rtl8192_proc); | ||
712 | if (!priv->dir_dev) { | 710 | if (!priv->dir_dev) { |
713 | RT_TRACE(COMP_ERR, "Unable to initialize /proc/net/rtl8192/%s\n", | 711 | RT_TRACE(COMP_ERR, "Unable to initialize /proc/net/rtl8192/%s\n", |
714 | dev->name); | 712 | dev->name); |