summaryrefslogtreecommitdiffstats
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2013-05-01proc: Supply a function to remove a proc entry by PDEDavid Howells5-38/+10
Supply a function (proc_remove()) to remove a proc entry (and any subtree rooted there) by proc_dir_entry pointer rather than by name and (optionally) root dir entry pointer. This allows us to eliminate all remaining pde->name accesses outside of procfs. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Grant Likely <grant.likely@linaro.or> cc: linux-acpi@vger.kernel.org cc: openipmi-developer@lists.sourceforge.net cc: devicetree-discuss@lists.ozlabs.org cc: linux-pci@vger.kernel.org cc: netdev@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-01hostap: proc: Use remove_proc_subtree()David Howells1-19/+1
Use remove_proc_subtree() rather than remove_proc_entry() to remove a device-specific proc directory and all its children. Signed-off-by: David Howells <dhowells@redhat.com> cc: Jouni Malinen <j@w1.fi> cc: Johannes Berg <johannes@sipsolutions.net> cc: linux-wireless@vger.kernel.org cc: devel@driverdev.osuosl.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-05-01drm: proc: Use remove_proc_subtree()David Howells1-15/+7
Use remove_proc_subtree() rather than remove_proc_entry() to remove a minor-specific drm proc directory and all its children. Things could theoretically be improved by storing the drm_minor pointer in the minor-specific dir proc_dir_entry struct data and then scrapping the list of proc files - but that's shared with the debugfs interface where you can't do that, so I don't see an easy way of doing it. Signed-off-by: David Howells <dhowells@redhat.com> cc: dri-devel@lists.freedesktop.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-05-01drm: proc: Use minor->index to label things, not PDE->nameDavid Howells2-9/+6
Use minor->index to label things, not the name field from the proc_dir_entry of the /proc/dwm/<minor>/ directory. Also, use "%u" not "%d" to render the value and use a 12-byte buffer in which to render the integer, not a 16-byte buffer. The longest string an unsigned int can give you is 10 chars (4294967295) plus a NUL, so round up to 12 as the stack is likely to be 4- or 8-byte aligned. Signed-off-by: David Howells <dhowells@redhat.com> cc: dri-devel@lists.freedesktop.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-05-01drm: Constify drm_proc_list[]David Howells1-3/+3
Constify drm_proc_list[] and related pointers. Signed-off-by: David Howells <dhowells@redhat.com> cc: dri-devel@lists.freedesktop.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-05-01zoran: Don't print proc_dir_entry data in debugDavid Howells1-1/+1
Don't print proc_dir_entry data in debug as we're soon to have no direct access to the contents of the PDE. Print what was put in there instead. Signed-off-by: David Howells <dhowells@redhat.com> cc: mjpeg-users@lists.sourceforge.net cc: linux-media@vger.kernel.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-05-01proc: Supply an accessor for getting the data from a PDE's parentDavid Howells3-3/+3
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-01airo: Use remove_proc_subtree()David Howells1-36/+13
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-01rtl8192u: Don't need to save device proc dir PDEDavid Howells2-13/+6
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-01rtl8187se: Use a dir under /proc/net/r8180/David Howells2-19/+8
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-01proc: Add proc_mkdir_data()David Howells3-10/+5
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-01proc: Supply PDE attribute setting accessor functionsDavid Howells6-28/+16
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-04-29Include missing linux/magic.h inclusionsDavid Howells1-0/+1
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-29Include missing linux/slab.h inclusionsDavid Howells6-1/+6
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-29megaraid: Don't use create_proc_read_entry()David Howells2-675/+382
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-29hostap: Don't use create_proc_read_entry()David Howells8-482/+662
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-29atmel: Don't use create_proc_read_entry()David Howells1-38/+31
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-29ds1620: Don't use create_proc_read_entry()David Howells1-14/+19
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-29efirtc: Don't use create_proc_read_entry()David Howells1-43/+40
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-29genrtc: Don't use create_proc_read_entry()David Howells1-25/+23
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-29hp_sdc_rtc: Don't use create_proc_read_entry()David Howells1-32/+26
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-29nubus: Don't use create_proc_read_entry()David Howells2-60/+76
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-29fsl_udc: Don't use create_proc_read_entry()David Howells1-81/+43
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-29goku_udc: Don't use create_proc_read_entry()David Howells1-50/+39
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-29wlags49_h2: Don't use create_proc_read_entry()David Howells1-159/+161
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-29cxt1e1: Don't use create_proc_read_entry()David Howells3-302/+175
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-29csr: Don't use create_proc_read_entry()David Howells3-332/+189
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-29comedi: Don't use create_proc_read_entry()David Howells1-21/+31
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-29ft1000: Don't use create_proc_read_entry()David Howells2-136/+123
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-29rtl8187se: Don't use create_proc_read_entry()David Howells1-71/+63
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-29rtl8192u: Don't use create_proc_read_entry()David Howells1-123/+91
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-29mISDN: grabbing/dropping reference to THIS_MODULE in open/release is racyAl Viro1-2/+1
... when you have no ->owner set. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29mISDN: fix mISDN_read()/mISDN_read() raceAl Viro1-9/+14
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29mISDN: fix misdn_add_timer()/misdn_del_timer() raceAl Viro1-9/+5
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-29mISDN: fix races between misdn_del_timer() and timer callbackAl Viro1-13/+9
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-29mISDN: fix the races with timers going off just as they are deletedAl Viro1-2/+12
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-29dvb_frontend: don't mess with ->f_op in ->release()Al Viro1-4/+1
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29dvb_net: don't mess with ->f_op in ->release()Al Viro1-4/+1
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29lis3lv02d: don't wank with fasync() on ->release()Al Viro1-1/+0
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29mpt3sas: don't wank with fasync on ->release()Al Viro1-14/+0
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29mpt2sas: don't wank with fasync on ->release()Al Viro1-14/+0
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29pmcraid: don't wank with fasync in ->release()Al Viro1-14/+0
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29mptctl: don't wank with fasync in ->release()Al Viro1-8/+0
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29lpfc: fix races for miscdevice open vs. rmmodAl Viro1-32/+1
mind you, I'm not sure WTF would anybody _need_ that miscdevice at all - no IO is possible for it, opening it only pins the module down and is seriously racy, at that. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-29yurex: don't wank with fasync on ->release()...Al Viro1-2/+0
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-13cx25821: sanitize cx25821_openfile_audio() a bit...Al Viro1-68/+28
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-13cx25821: sanitize cx25821_get_audio_data() a bitAl Viro1-58/+25
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09vt6655: slightly clean reading config fileAl Viro1-75/+40
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09vt6656: slightly sanitized reading configAl Viro1-43/+20
Just reading - parsing the results is left alone (and unspeakably lousy). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09pxa3xx-gcu: stop embedding file_operations into device-private objectAl Viro1-7/+8
no need to do that anymore... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>