summaryrefslogtreecommitdiff
path: root/drivers/staging
AgeCommit message (Collapse)Author
2013-05-01proc: Supply an accessor for getting the data from a PDE's parentDavid Howells
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-01rtl8192u: Don't need to save device proc dir PDEDavid Howells
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 Howells
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 Howells
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-04-29Include missing linux/slab.h inclusionsDavid Howells
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-29hostap: Don't use create_proc_read_entry()David Howells
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-29wlags49_h2: Don't use create_proc_read_entry()David Howells
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 Howells
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 Howells
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 Howells
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 Howells
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 Howells
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 Howells
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-09vt6655: slightly clean reading config fileAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09vt6656: slightly sanitized reading configAl Viro
Just reading - parsing the results is left alone (and unspeakably lousy). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom-bypass: Remove device_open/close()David Howells
Remove device_open/close() functions as they don't really do anything and remove Device_Open as it isn't counted atomically and the value isn't used. Signed-off-by: David Howells <dhowells@redhat.com>
2013-04-09wlags49_h2: Don't use create_proc_entry()David Howells
create_proc_entry() shouldn't be used. Rather proc_create_data() should be used. The proc_write() function is only used by #if'd out code, so delete it for now. Signed-off-by: David Howells <dhowells@redhat.com>
2013-04-09constify a bunch of struct file_operations instancesAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09procfs: new helper - PDE_DATA(inode)Al Viro
The only part of proc_dir_entry the code outside of fs/proc really cares about is PDE(inode)->data. Provide a helper for that; static inline for now, eventually will be moved to fs/proc, along with the knowledge of struct proc_dir_entry layout. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09rtl8192u: switch to proc_create()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09keucr: switch to ->show_info()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09rts5139: switch to ->show_info()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom: bury bp_proc.cAl Viro
It's a seriously rotten copy of parts of bp_mod.c; had been ifdefed out all along, lacks a bunch of declarations that would be needed if ifdef had been removed, all stuff in it is duplicated in bp_mod.c anyway... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom: switch to create_proc_data(), clean procfs side of things upAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom: untangle module_initAl Viro
Helper functions are often useful. So are local variables... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom: get_bypass_slave_pfs() open-codes lookup_port()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom: unobfuscate get_{status,master}_port_fn()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09silicom: helper functions are often useful...Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09get rid of a bunch of open-coded create_proc_read_entry()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09rtl8192u: don't play with reassigning ->proc_fops, just use proc_create()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09dgrp procfs fixes, part 6: just use proc_create{,_data}Al Viro
->permission() of its own is a rudiment of sysctl imitation; normal procfs logics will do just fine here, no need to mess with ->proc_iops at all. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09dgrp procfs fixes, part 5: per-node filesAl Viro
this "hooks" scheme is pointless - just make file_operations non-static and consolidate initialiazation bits. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09dgrp procfs fixes, part 4: get rid of sysctl-like machineryAl Viro
racy and very overblown... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09dgrp procfs fixes, part 3: kill dead codeAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09dgrp procfs fixes, part 2Al Viro
All table entries either have non-NULL ->proc_file_fops or non-NULL child. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09dgrp procfs fixes, part 1Al Viro
proc_create() has shat upon fops argument when mode is S_IFDIR. Good thing, too, since fops passed to it is completely useless for any directory. Just use proc_mkdir(), damnit. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09The rtl8192e procfs-based debug interface seems very brokenSean MacLennan
The procfs debug code in rtl_debug.c is, ironically, very buggy: it lacks proper locking. Since the most useful part of the code (the stats) are available through more standard APIs, I think it is best to just delete the whole mess. Signed-off-by: Sean MacLennan <seanm@seanm.ca> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09rtl8192e: switch to proc_create()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09rtl8192e: don't use create_proc_entry() for directoriesAl Viro
proc_mkdir() is there for purpose... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09mode_t, whack-a-mole at 11...Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-04-09ccg: don't bother with fops->ownerAl Viro
filesystem module as whole is pinned down by its superblock, no need to have opened files on it to add anything to that. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-03-13Merge branch 'akpm' (fixes from Andrew)Linus Torvalds
Merge misc fixes from Andrew Morton: - A bunch of fixes - Finish off the idr API conversions before someone starts to use the old interfaces again. * emailed patches from Andrew Morton <akpm@linux-foundation.org>: idr: idr_alloc() shouldn't trigger lowmem warning when preloaded UAPI: fix endianness conditionals in M32R's asm/stat.h UAPI: fix endianness conditionals in linux/raid/md_p.h UAPI: fix endianness conditionals in linux/acct.h UAPI: fix endianness conditionals in linux/aio_abi.h decompressors: fix typo "POWERPC" mm/fremap.c: fix oops on error path idr: deprecate idr_pre_get() and idr_get_new[_above]() tidspbridge: convert to idr_alloc() zcache: convert to idr_alloc() mlx4: remove leftover idr_pre_get() call workqueue: convert to idr_alloc() nfsd: convert to idr_alloc() nfsd: remove unused get_new_stid() kernel/signal.c: use __ARCH_HAS_SA_RESTORER instead of SA_RESTORER signal: always clear sa_restorer on execve mm: remove_memory(): fix end_pfn setting include/linux/res_counter.h needs errno.h
2013-03-13tidspbridge: convert to idr_alloc()Tejun Heo
idr_get_new*() and friends are about to be deprecated. Convert to the new idr_alloc() interface. There are some peculiarities and possible bugs in the converted functions. This patch preserves those. * drv_insert_node_res_element() returns -ENOMEM on alloc failure, -EFAULT if id space is exhausted. -EFAULT is at best misleading. * drv_proc_insert_strm_res_element() is even weirder. It returns -EFAULT if kzalloc() fails, -ENOMEM if idr preloading fails and -EPERM if id space is exhausted. What's going on here? * drv_proc_insert_strm_res_element() doesn't free *pstrm_res after failure. Only compile tested. Signed-off-by: Tejun Heo <tj@kernel.org> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Víctor Manuel Jáquez Leal <vjaquez@igalia.com> Cc: Rene Sapiens <rene.sapiens@ti.com> Cc: Armando Uribe <x0095078@ti.com> Cc: Omar Ramirez Luna <omar.ramirez@ti.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-03-13zcache: convert to idr_alloc()Tejun Heo
idr_get_new*() and friends are about to be deprecated. Convert to the new idr_alloc() interface. Only compile tested. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Dan Magenheimer <dan.magenheimer@oracle.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-03-13Merge tag 'staging-3.9-rc2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging Pull staging tree fixes from Greg Kroah-Hartman: "Here are some drivers/staging and drivers/iio fixes for 3.9 (the two are still pretty intertwined, hence them coming both from my tree still.) Nothing major, just a few things that have been reported by users, all of these have been in linux-next for a while." * tag 'staging-3.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: staging: comedi: dt9812: use CR_CHAN() for channel number staging/vt6656: Fix too large integer constant warning on 32-bit staging: comedi: drivers: usbduxsigma.c: fix DMA buffers on stack staging: imx/drm: request irq only after adding the crtc staging: comedi: drivers: usbduxfast.c: fix for DMA buffers on stack staging: comedi: drivers: usbdux.c: fix DMA buffers on stack staging: vt6656: Fix oops on resume from suspend. iio:common:st_sensors fixed all warning messages about uninitialized variables iio: Fix build error seen if IIO_TRIGGER is defined but IIO_BUFFER is not iio/imu: inv_mpu6050 depends on IIO_BUFFER iio:ad5064: Initialize register cache correctly iio:ad5064: Fix off by one in DAC value range check iio:ad5064: Fix address of the second channel for ad5065/ad5045/ad5025
2013-03-11staging: comedi: dt9812: use CR_CHAN() for channel numberIan Abbott
As pointed out by Dan Carpenper in <http://driverdev.linuxdriverproject.org/pipermail/devel/2013-February/036025.html>, the dt9812 comedi driver's use of the `chanspec` member of `struct comedi_insn` as a channel number is incorrect. Change it to use `CR_CHAN(insn->chanspec)` as the channel number (where `insn` is a pointer to the `struct comedi_insn` being processed). Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: stable <stable@vger.kernel.org> # 3.8 onwards Cc: Anders Blomdell <anders.blomdell@control.lth.se> Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-11staging/vt6656: Fix too large integer constant warning on 32-bitGeert Uytterhoeven
drivers/staging/vt6656/card.c: In function ‘CARDqGetNextTBTT’: drivers/staging/vt6656/card.c:793: warning: integer constant is too large for ‘unsigned long’ type Commit c7b7cad0d8df823ea063c86a54316bbcbfa04a7c ("staging/vt6656: Fix sparse warning constant 0xffffffff00000000U is so big it is unsigned long") changed the constant to "0xffffffff00000000UL", but that only works on 64-bit. Change it "0xffffffff00000000ULL" to fix it for 32-bit, too. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Reviewed-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-11staging: comedi: drivers: usbduxsigma.c: fix DMA buffers on stackKumar Amit Mehta
This patch fixes an instance of DMA buffer on stack(being passed to usb_control_msg)for the USB-DUXsigma Board driver. Found using smatch. Signed-off-by: Kumar Amit Mehta <gmate.amit@gmail.com> Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-11staging: imx/drm: request irq only after adding the crtcPhilipp Zabel
If the bootloader already enabled the display, the interrupt handler will be called as soon as it is registered. If the CRTC is not already added at this time, the call to imx_drm_handle_vblank will result in a NULL pointer dereference. The patch fixes a kernel panic [1], which has been on linux-next since Jan 8 [2]. [1] http://thread.gmane.org/gmane.linux.ports.arm.kernel/218858 [2] http://thread.gmane.org/gmane.linux.ports.arm.kernel/208192 Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Tested-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-11staging: comedi: drivers: usbduxfast.c: fix for DMA buffers on stackKumar Amit Mehta
fix for instances of DMA buffer on stack(being passed to usb_control_msg) for the USB-DUXfast Board driver. Signed-off-by: Kumar Amit Mehta <gmate.amit@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>