David Howells
e42270a19e
reiserfs: Don't access the proc_dir_entry in r_open(), r_start() r_show()
...
Don't access the proc_dir_entry in ReiserFS's r_open(), r_start() r_show()
procfs interface functions.
ReiserFS stores the ->show() method pointer in PDE->data and the super_block
pointer in PDE->parent->data. This isn't changing.
Currently, ReiserFS passes the PDE pointer into seq_file::private from
r_open() so that r_start() and r_show() can then access it. Instead, use
seq_open_private() to allocate a two-pointer struct that's passed through
seq_file::private and put the ->show() method and the sb pointers in there.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: reiserfs-devel@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:43 -04:00
David Howells
4a520d2769
proc: Supply an accessor for getting the data from a PDE's parent
...
Supply an accessor function for getting the private data from the parent
proc_dir_entry struct of the proc_dir_entry struct associated with an inode.
ReiserFS, for instance, stores the super_block pointer in the proc directory
it makes for that super_block, and a pointer to the respective seq_file show
function in each of the proc files in that directory.
This allows a reduction in the number of file_operations structs, open
functions and seq_operations structs required. The problem otherwise is that
each show function requires two pieces of data but only has storage for one
per PDE (and this has no release function).
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Jerry Chuang <jerry-chuang@realtek.com >
cc: Maxim Mikityanskiy <maxtram95@gmail.com >
cc: YAMANE Toshiaki <yamanetoshi@gmail.com >
cc: linux-wireless@vger.kernel.org
cc: linux-scsi@vger.kernel.org
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:42 -04:00
David Howells
b25f774d88
airo: Use remove_proc_subtree()
...
Use remove_proc_subtree() to remove the airo device subdir and all its
children instead of doing it manually.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: linux-wireless@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:42 -04:00
David Howells
cc87e0fff1
rtl8192u: Don't need to save device proc dir PDE
...
Don't need to save the PDE of a directory created under /proc/net/rtl8192/ as
we can use proc subtree deletion to get rid of it and all its children.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Jerry Chuang <jerry-chuang@realtek.com >
cc: linux-wireless@vger.kernel.org
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:41 -04:00
David Howells
c4558a26ff
rtl8187se: Use a dir under /proc/net/r8180/
...
Create a dir under /proc/net/r8180/ named for the device and create that
device's files under there. This means that there won't be a problem for
multiple devices in the system (if such is possible) and it means we don't
need to save the 'device directory' PDE any more as we can just do a proc
subtree removal.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Maxim Mikityanskiy <maxtram95@gmail.com >
cc: YAMANE Toshiaki <yamanetoshi@gmail.com >
cc: linux-wireless@vger.kernel.org
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:41 -04:00
David Howells
270b5ac215
proc: Add proc_mkdir_data()
...
Add proc_mkdir_data() to allow procfs directories to be created that are
annotated at the time of creation with private data rather than doing this
post-creation. This means no access is then required to the proc_dir_entry
struct to set this.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Neela Syam Kolli <megaraidlinux@lsi.com >
cc: Jerry Chuang <jerry-chuang@realtek.com >
cc: linux-scsi@vger.kernel.org
cc: devel@driverdev.osuosl.org
cc: linux-wireless@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:41 -04:00
David Howells
34db8aaf0f
proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h}
...
Move some bits from linux/proc_fs.h to linux/of.h, signal.h and tty.h.
Also move proc_tty_init() and proc_device_tree_init() to fs/proc/internal.h as
they're internal to procfs.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Acked-by: Grant Likely <grant.likely@secretlab.ca >
cc: devicetree-discuss@lists.ozlabs.org
cc: linux-arch@vger.kernel.org
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Jri Slaby <jslaby@suse.cz >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:40 -04:00
David Howells
4abfd02989
proc: Move PDE_NET() to fs/proc/proc_net.c
...
Move PDE_NET() to fs/proc/proc_net.c as that's where the only user is.
Signed-off-by: David Howells <dhowells@redhat.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:40 -04:00
David Howells
0bb80f2405
proc: Split the namespace stuff out into linux/proc_ns.h
...
Split the proc namespace stuff out into linux/proc_ns.h.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: netdev@vger.kernel.org
cc: Serge E. Hallyn <serge.hallyn@ubuntu.com >
cc: Eric W. Biederman <ebiederm@xmission.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:39 -04:00
David Howells
c3bef7bcaa
proc: Move proc_fd() to fs/proc/fd.h
...
Move proc_fd() to fs/proc/fd.h.
Signed-off-by: David Howells <dhowells@redhat.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:39 -04:00
David Howells
1dd704b617
proc: Uninline pid_delete_dentry()
...
Uninline pid_delete_dentry() as it's only used by three function pointers.
Signed-off-by: David Howells <dhowells@redhat.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:39 -04:00
David Howells
271a15eabe
proc: Supply PDE attribute setting accessor functions
...
Supply accessor functions to set attributes in proc_dir_entry structs.
The following are supplied: proc_set_size() and proc_set_user().
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com >
cc: linuxppc-dev@lists.ozlabs.org
cc: linux-media@vger.kernel.org
cc: netdev@vger.kernel.org
cc: linux-wireless@vger.kernel.org
cc: linux-pci@vger.kernel.org
cc: netfilter-devel@vger.kernel.org
cc: alsa-devel@alsa-project.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-05-01 17:29:18 -04:00
David Howells
2f96b8c1d5
proc: Split kcore bits from linux/procfs.h into linux/kcore.h
...
Split kcore bits from linux/procfs.h into linux/kcore.h.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com >
Acked-by: Ralf Baechle <ralf@linux-mips.org >
cc: linux-mips@linux-mips.org
cc: sparclinux@vger.kernel.org
cc: x86@kernel.org
cc: linux-mm@kvack.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:42:02 -04:00
David Howells
303eb7e2c9
Include missing linux/magic.h inclusions
...
Include missing linux/magic.h inclusions where the source file is currently
expecting to get magic numbers through linux/proc_fs.h.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: linux-efi@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:42:01 -04:00
David Howells
0d01ff2583
Include missing linux/slab.h inclusions
...
Include missing linux/slab.h inclusions where the source file is currently
expecting to get kmalloc() and co. through linux/proc_fs.h.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: linux-s390@vger.kernel.org
cc: sparclinux@vger.kernel.org
cc: linux-efi@vger.kernel.org
cc: linux-mtd@lists.infradead.org
cc: devel@driverdev.osuosl.org
cc: x86@kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:42:01 -04:00
David Howells
3cb5bf1bf9
proc: Delete create_proc_read_entry()
...
Delete create_proc_read_entry() as it no longer has any users.
Also delete read_proc_t, write_proc_t, the read_proc member of the
proc_dir_entry struct and the support functions that use them. This saves a
pointer for every PDE allocated.
Signed-off-by: David Howells <dhowells@redhat.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:42:00 -04:00
David Howells
526c59784c
arm: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Russell King <linux@arm.linux.org.uk >
cc: Kevin Hilman <khilman@deeprootsystems.com >
cc: Tony Lindgren <tony@atomide.com >
cc: linux-arm-kernel@lists.infradead.org
cc: linux-omap@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:42:00 -04:00
Tony Lindgren
f9368c18e9
ARM: OMAP1: Replace PM debug create_proc_read_entry() with debugfs
...
There's no need to keep this entry in proc, it is PM
related debug only entry. Let's move it into debugfs.
Based on an earlier patch David Howells <dhowells@redhat.com >
to use seq_printf and to update to use create_proc_read_entry().
Signed-off-by: Tony Lindgren <tony@atomide.com >
Signed-off-by: David Howells <dhowells@redhat.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:59 -04:00
David Howells
1eb5b23ae7
cris: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Jesper Nilsson <jesper.nilsson@axis.com >
cc: Mikael Starvik <starvik@axis.com >
cc: linux-cris-kernel@axis.com
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:59 -04:00
David Howells
210b834a96
h8300: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Yoshinori Sato <ysato@users.sourceforge.jp >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:59 -04:00
David Howells
e781c3d794
ia64: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Tony Luck <tony.luck@intel.com >
cc: Fenghua Yu <fenghua.yu@intel.com >
cc: linux-ia64@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:58 -04:00
David Howells
24270156ac
mips: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Ralf Baechle <ralf@linux-mips.org >
cc: linux-mips@linux-mips.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:58 -04:00
David Howells
28ff11882a
parisc: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: "James E.J. Bottomley" <jejb@parisc-linux.org >
cc: Helge Deller <deller@gmx.de >
cc: linux-parisc@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:57 -04:00
David Howells
64f0962c33
sh: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Paul Mundt <lethal@linux-sh.org >
cc: linux-sh@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:57 -04:00
David Howells
c7f079ca30
megaraid: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Neela Syam Kolli <megaraidlinux@lsi.com >
cc: James E.J. Bottomley <JBottomley@parallels.com >
cc: linux-scsi@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:57 -04:00
David Howells
6bbefe8679
hostap: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Jouni Malinen <j@w1.fi >
cc: John W. Linville <linville@tuxdriver.com >
cc: Johannes Berg <johannes@sipsolutions.net >
cc: linux-wireless@vger.kernel.org
cc: netdev@vger.kernel.org
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:56 -04:00
David Howells
4c4df9b91b
atmel: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Simon Kelley <simon@thekelleys.org.uk >
cc: John W. Linville <linville@tuxdriver.com >
cc: linux-wireless@vger.kernel.org
cc: netdev@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:56 -04:00
David Howells
9fb8ca5c20
ds1620: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Arnd Bergmann <arnd@arndb.de >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:55 -04:00
David Howells
788416bcee
efirtc: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Arnd Bergmann <arnd@arndb.de >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:55 -04:00
David Howells
a6d935a5b1
genrtc: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Arnd Bergmann <arnd@arndb.de >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:54 -04:00
David Howells
c18bd9a1ff
hp_sdc_rtc: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Brian S. Julin <bri@calyx.com >
cc: Helge Deller <deller@gmx.de >
cc: linux-m68k@lists.linux-m68k.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:54 -04:00
David Howells
11db656ad4
nubus: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: linux-m68k@lists.linux-m68k.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:54 -04:00
David Howells
77cd02c151
fsl_udc: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Li Yang <leoli@freescale.com >
cc: Felipe Balbi <balbi@ti.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: linux-usb@vger.kernel.org
cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:53 -04:00
David Howells
96c7a22ebd
goku_udc: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Felipe Balbi <balbi@ti.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: linux-usb@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:53 -04:00
David Howells
f1cc0444ab
wlags49_h2: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Henk de Groot <pe1dnn@amsat.org >
cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: linux-wireless@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:52 -04:00
David Howells
766d100d4e
cxt1e1: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Bob Beers <bob.beers@gmail.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:52 -04:00
David Howells
294a08e4b0
csr: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Randy Dunlap <rdunlap@xenotime.net >
cc: Priit Laes <plaes@plaes.org >
cc: devel@driverdev.osuosl.org
cc: Mikko Virkkilä <mikko.virkkila@bluegiga.com >
cc: Lauri Hintsala <Lauri.Hintsala@bluegiga.com >
cc: Riku Mettälä <riku.mettala@bluegiga.com >
cc: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:52 -04:00
David Howells
1f817b86d5
comedi: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: David Schleef <ds@schleef.org >
cc: Ian Abbott <abbotti@mev.co.uk >
cc: Mori Hess <fmhess@users.sourceforge.net >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: H Hartley Sweeten <hsweeten@visionengravers.com >
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:51 -04:00
David Howells
207e39099a
ft1000: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Marek Belisko <marek.belisko@gmail.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Ondrej Zary <linux@rainbow-software.org >
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:51 -04:00
David Howells
5ba02e355d
rtl8187se: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead. Whilst we're at it, reduce the
number of show functions where we can share them.
Question: Do any of the registers read by proc_get_registers() have side
effects upon reading? If so, locking will be required.
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: Maxim Mikityanskiy <maxtram95@gmail.com >
cc: YAMANE Toshiaki <yamanetoshi@gmail.com >
cc: Bill Pemberton <wfp5p@virginia.edu >
cc: Andrea Merello <andreamrl@tiscali.it >
cc: linux-wireless@vger.kernel.org
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:51 -04:00
David Howells
0541f9d08a
rtl8192u: Don't use create_proc_read_entry()
...
Don't use create_proc_read_entry() as that is deprecated, but rather use
proc_create_data() and seq_file instead. Whilst we're at it, reduce the
number of show functions where we can share them.
Note: proc_get_stats_ap() should probably use seq_file iteration rather than
list_for_each_entry().
Further note: There appears to be a lot of locking missing in this file to
defend against concurrent access by the driver doing normal operations.
Notably, ieee->network_list traversal and RWCAM/RCAMO command/response access.
Further, do any of the registers read have side effects upon reading?
Signed-off-by: David Howells <dhowells@redhat.com >
cc: Jerry Chuang <jerry-chuang@realtek.com >
cc: Mauro Carvalho Chehab <mchehab@redhat.com >
cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
cc: linux-wireless@vger.kernel.org
cc: devel@driverdev.osuosl.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:50 -04:00
David Howells
d0206fb555
procfs: Mark create_proc_read_entry deprecated
...
Mark create_proc_read_entry deprecated. proc_create[_data]() should be used
instead.
Signed-off-by: David Howells <dhowells@redhat.com >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:50 -04:00
Al Viro
14b872f02e
xt_hashlimit: allocate a copy of name explicitly, don't rely on procfs guts
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:49 -04:00
Al Viro
89b107adce
mISDN: grabbing/dropping reference to THIS_MODULE in open/release is racy
...
... when you have no ->owner set.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:49 -04:00
Al Viro
ebb06be16b
mISDN: fix mISDN_read()/mISDN_read() race
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:49 -04:00
Al Viro
1678ec00a6
mISDN: fix misdn_add_timer()/misdn_del_timer() race
...
do add_timer() *before* unlocking dev->lock, or unpleasant things can
happen if misdn_del_timer() on another CPU finds the sucker, calls
del_timer_sync() (which does nothing, since we hadn't started the
timer yet) and frees it, just as we get around to add_timer()...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:48 -04:00
Al Viro
1b1089561c
mISDN: fix races between misdn_del_timer() and timer callback
...
mark the victim with negative ->id if misdn_del_timer() finds it on
the list, have timer callback *not* move ones so marked to dev->expired
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:48 -04:00
Al Viro
c08c464d6f
mISDN: fix the races with timers going off just as they are deleted
...
timer callback in timerdev.c both accesses struct mISDNtimer it's
called for *and* moves it to dev->expired. We need del_timer_sync(),
or we risk kfree() freeing it right under dev_expire_timer() *and*
dev->expired getting corrupted.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:47 -04:00
Al Viro
03feee373f
dvb_frontend: don't mess with ->f_op in ->release()
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:47 -04:00
Al Viro
7caf2184f2
dvb_net: don't mess with ->f_op in ->release()
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-04-29 15:41:47 -04:00