- 02 Apr, 2006 40 commits
-
-
Michael S. Tsirkin authored
We have seen the following OOPs in cancel_mads, when restarting opensm multiple times: Call Trace: [<c010549b>] show_stack+0x9b/0xb0 [<c01055ec>] show_registers+0x11c/0x190 [<c01057cd>] die+0xed/0x160 [<c031b966>] do_page_fault+0x3f6/0x5d0 [<c010511f>] error_code+0x4f/0x60 [<f8ac4e38>] cancel_mads+0x128/0x150 [ib_mad] [<f8ac2811>] unregister_mad_agent+0x11/0x130 [ib_mad] [<f8ac2a12>] ib_unregister_mad_agent+0x12/0x20 [ib_mad] [<f8b10f23>] ib_umad_close+0xf3/0x130 [ib_umad] [<c0162937>] __fput+0x187/0x1c0 [<c01627a9>] fput+0x19/0x20 [<c0160f7a>] filp_close+0x3a/0x60 [<c0121ca8>] put_files_struct+0x68/0xa0 [<c0103cf7>] do_signal+0x47/0x100 [<c0103ded>] do_notify_resume+0x3d/0x40 [<c0103f9e>] work_notifysig+0x13/0x25 We traced this back to local_completions unlocking mad_agent_priv->lock while still keeping a pointer into local_list. A later call to list_del(&local->completion_list) would then corrupt the list. To fix this, remove the entry from local_list after looking it up but before releasing mad_agent_priv->lock, to prevent cancel_mads from finding and freeing it. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (28 commits) [ALSA] Kconfig SND_SEQUENCER_OSS help text fix [ALSA] Add Aux input switch control for Aureon Universe [ALSA] pcxhr - Fix the crash with REV01 board [ALSA] sound/pci/hda: use create_singlethread_workqueue() [ALSA] hda-intel - Add support of ATI SB600 [ALSA] cs4281 - Fix the check of timeout in probe [ALSA] cs4281 - Fix the check of right channel [ALSA] Test volume resolution of usb audio at initialization [ALSA] maestro3.c: fix BUG, optimization [ALSA] HDA/Realtek: multiple input mux definitions and pin mode additions [ALSA] AdLib FM card driver [ALSA] Fix / clean up PCM-OSS setup hooks [ALSA] Clean up PCM codes (take 2) [ALSA] Tiny clean up of PCM codes [ALSA] ISA drivers bailing on first !enable[i] [ALSA] Remove obsolete kfree_nocheck call [ALSA] Remove obsolete kfree_nocheck call [ALSA] Add snd-als300 driver for Avance Logic ALS300/ALS300+ soundcards [ALSA] Add snd-riptide driver for Conexant Riptide chip [ALSA] hda-codec - Fix noisy output wtih AD1986A 3stack model ...
-
Greg Kroah-Hartman authored
No one should be writing a PAGE_SIZE worth of data to a normal sysfs file, so properly terminate the buffer. Thanks to Al Viro for pointing out my supidity here. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Arjan van de Ven authored
This reverts the mutex conversion that was recently done to the hdaps driver; this coversion was buggy because the hdaps driver started using this semaphore in IRQ context, which mutexes do not allow. Easiest solution for now is to just revert the patch (the patch was part of a bigger GIT commit, 9a61bf63 but this only reverts this one file) Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driver [WATCHDOG] pcwd_usb.c: fix a NULL pointer dereference [WATCHDOG] pcwd.c sprintf/strcpy fix [WATCHDOG] pcwd.c general clean-up after patches [WATCHDOG] pcwd.c add debug info [WATCHDOG] pcwd.c pcwd_cleanup_module patch [WATCHDOG] pcwd.c firmware-info patch [WATCHDOG] pcwd.c control status patch
-
git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivialLinus Torvalds authored
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (48 commits) Documentation: fix minor kernel-doc warnings BUG_ON() Conversion in drivers/net/ BUG_ON() Conversion in drivers/s390/net/lcs.c BUG_ON() Conversion in mm/slab.c BUG_ON() Conversion in mm/highmem.c BUG_ON() Conversion in kernel/signal.c BUG_ON() Conversion in kernel/signal.c BUG_ON() Conversion in kernel/ptrace.c BUG_ON() Conversion in ipc/shm.c BUG_ON() Conversion in fs/freevxfs/ BUG_ON() Conversion in fs/udf/ BUG_ON() Conversion in fs/sysv/ BUG_ON() Conversion in fs/inode.c BUG_ON() Conversion in fs/fcntl.c BUG_ON() Conversion in fs/dquot.c BUG_ON() Conversion in md/raid10.c BUG_ON() Conversion in md/raid6main.c BUG_ON() Conversion in md/raid5.c Fix minor documentation typo BFP->BPF in Documentation/networking/tuntap.txt ...
-
Stefan Richter authored
sbp2util_mark_command_completed takes a lock which was already taken by sbp2scsi_complete_all_commands. This is a regression in Linux 2.6.15. Reported by Kristian Harms at https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187394 [ More complete commentary, as response to questions by Andrew: ] > This changes the call environment for all implementations of > ->Current_done(). Are they all safe to call under this lock? Short answer: Yes, trust me. ;-) Long answer: The done() callbacks are passed on to sbp2 from the SCSI stack along with each SCSI command via the queuecommand hook. The done() callback is safe to call in atomic context. So does Documentation/scsi/scsi_mid_low_api.txt say, and many if not all SCSI low-level handlers rely on this fact. So whatever this callback does, it is "self-contained" and it won't conflict with sbp2's internal ORB list handling. In particular, it won't race with the sbp2_command_orb_lock. Moreover, sbp2 already calls the done() handler with sbp2_command_orb_lock taken in sbp2scsi_complete_all_commands(). I admit this is ultimately no proof of correctness, especially since this portion of code introduced the spinlock recursion in the first place and we didn't realize it since this code's submission before 2.6.15 until now. (I have learned a lesson from this.) I stress-tested my patch on x86 uniprocessor with a preemptible SMP kernel (alas I have no SMP machine yet) and made sure that all code paths which involve the sbp2_command_orb_lock were gone through multiple times. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (49 commits) V4L/DVB (3667b): cpia2: fix function prototype V4L/DVB (3702): Make msp3400 routing defines more consistent V4L/DVB (3700): Remove obsolete commands from tvp5150.c V4L/DVB (3697): More msp3400 and bttv fixes V4L/DVB (3696): Previous change for cx2341X boards broke the remote support V4L/DVB (3693): Fix msp3400c and bttv stereo/mono/bilingual detection/handling V4L/DVB (3692): Keep experimental SLICED_VBI defines under an #if 0 V4L/DVB (3689): Kconfig: fix VP-3054 Secondary I2C Bus build configuration menu dependencies V4L/DVB (3673): Fix budget-av CAM reset V4L/DVB (3672): Fix memory leak in dvr open V4L/DVB (3671): New module parameter 'tv_standard' (dvb-ttpci driver) V4L/DVB (3670): Fix typo in comment V4L/DVB (3669): Configurable dma buffer size for saa7146-based budget dvb cards V4L/DVB (3653h): Move usb v4l docs into Documentation/video4linux V4L/DVB (3667a): Fix SAP + stereo mode at msp3400 V4L/DVB (3666): Remove trailing newlines V4L/DVB (3665): Add new NEC uPD64031A and uPD64083 i2c drivers V4L/DVB (3663): Fix msp3400c wait time and better audio mode fallbacks V4L/DVB (3662): Don't set msp3400c-non-existent register V4L/DVB (3661): Add wm8739 stereo audio ADC i2c driver ...
-
Linus Torvalds authored
* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IB/ipath: kbuild infrastructure IB/ipath: infiniband verbs support IB/ipath: misc infiniband code, part 2 IB/ipath: misc infiniband code, part 1 IB/ipath: infiniband RC protocol support IB/ipath: infiniband UC and UD protocol support IB/ipath: infiniband header files IB/ipath: layering interfaces used by higher-level driver code IB/ipath: support for userspace apps using core driver IB/ipath: sysfs and ipathfs support for core driver IB/ipath: misc driver support code IB/ipath: chip initialisation code, and diag support IB/ipath: support for PCI Express devices IB/ipath: support for HyperTransport devices IB/ipath: core driver header files IB/ipath: core device driver
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (33 commits) [PATCH] pcmcia: declare pccard_iodyn_ops (fix m8xx_pcmcia.c compilation error) [PATCH] pcmcia: fix pcmcia_device_remove oops [PATCH] pcmcia: Add support for Possio GCC AKA PCMCIA Siemens MC45 [PATCH] pcmcia: pseudo device handling update [PATCH] pcmcia: convert DEV_OK to pcmcia_dev_present [PATCH] pcmcia: use bitfield instead of p_state and state [PATCH] pcmcia: remove unused p_dev->state flags [PATCH] pcmcia: make pcmcia_release_{io,irq} static [PATCH] pcmcia: add return value to _config() functions [PATCH] pcmcia: remove dev_link_t and client_handle_t indirection [PATCH] pcmcia: embed dev_link_t into struct pcmcia_device [PATCH] pcmcia: rename pcmcia_device.state [PATCH] pcmcia: remove unneeded Vcc pseudo setting [PATCH] pcmcia: remove export of pcmcia_release_configuration [PATCH] pcmcia: default suspend and resume handling [PATCH] pcmcia: convert remaining users of pcmcia_release_io and _irq [PATCH] pcmcia: add pcmcia_disable_device [PATCH] serial_cs: add Merlin U630 IDs [PATCH] pcmcia: AT91RM9200 Compact Flash driver [PATCH] pcmcia: socket.functions starts with 1 ...
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (26 commits) Input: add support for Braille devices Input: synaptics - limit rate to 40pps on Toshiba Protege M300 Input: gamecon - add SNES mouse support Input: make modalias code respect allowed buffer size Input: convert /proc handling to seq_file Input: limit attributes' output to PAGE_SIZE Input: gameport - fix memory leak Input: serio - fix memory leak Input: zaurus keyboard driver updates Input: i8042 - fix logic around pnp_register_driver() Input: ns558 - fix logic around pnp_register_driver() Input: pcspkr - separate device and driver registration Input: atkbd - allow disabling on X86_PC (if EMBEDDED) Input: atkbd - disable softrepeat for dumb keyboards Input: atkbd - fix complaints about 'releasing unknown key 0x7f' Input: HID - fix duplicate key mapping for Logitech UltraX remote Input: use kzalloc() throughout the code Input: fix input_free_device() implementation Input: initialize serio and gameport at subsystem level Input: uinput - semaphore to mutex conversion ...
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc: [PATCH] powerpc: iSeries needs slb_initialize to be called powerpc: hook up the splice syscall [PATCH] powerpc/cell: compile fixes [PATCH] powerpc: trivial spelling fixes in fault.c [PATCH] powerpc/pseries: EEH Cleanup [PATCH] powerpc/pseries: misc lparcfg fixes [PATCH] powerpc/pseries: fix device name printing, again. [PATCH] powerpc: Extends HCALL interface for InfiniBand usage [PATCH] powerpc/pseries: Change H_StudlyCaps to H_SHOUTING_CAPS [PATCH] powerpc/pseries: print message if EEH recovery fails [PATCH] powerpc/pseries: mutex lock to serialize EEH event processing powerpc: converted embedded platforms to use new define_machine support powerpc: merge machine_check_exception between ppc32 & ppc64
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC]: Wire up sys_sync_file_range() into syscall tables. [SPARC]: Wire up sys_splice() into the syscall tables. [SPARC64]: Update defconfig. [SPARC64]: Align address in huge_pte_alloc(). [SPARC64]: Document the instruction checks we do in do_sparc64_fault(). [SPARC64]: Make tsb_sync() mm comparison more precise.
-
Linus Torvalds authored
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [NET]: Fully fix the memory leaks in sys_accept(). [NETFILTER]: iptables 32bit compat layer [NETFILTER]: {ip,nf}_conntrack_netlink: fix expectation notifier unregistration [NETFILTER]: fix ifdef for connmark support in nf_conntrack_netlink [NETFILTER]: x_tables: unify IPv4/IPv6 multiport match [NETFILTER]: x_tables: unify IPv4/IPv6 esp match [NET]: Fix dentry leak in sys_accept(). [IPSEC]: Kill unused decap state structure [IPSEC]: Kill unused decap state argument [NET]: com90xx kmalloc fix [TG3]: Update driver version and reldate. [TG3]: Revert "Speed up SRAM access"
-
Linus Torvalds authored
It doesn't make the splice itself necessarily nonblocking (because the actual file descriptors that are spliced from/to may block unless they have the O_NONBLOCK flag set), but it makes the splice pipe operations nonblocking. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Linus Torvalds authored
(We'd only added the number, which meant that actually trying to use splice just went off into la-la-land) Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Victor authored
Watchdog driver for the Atmel AT91RM9200 processor. Signed-off-by: Andrew Victor <andrew@sanpeople.com> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@osdl.org>
-
Adrian Bunk authored
The Coverity checker noted that this resulted in a NULL pointer reference if we were coming from if (usb_pcwd == NULL) { printk(KERN_ERR PFX "Out of memory\n"); goto error; } Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@osdl.org>
-
Wim Van Sebroeck authored
change sprintf(pcwd_private.fw_ver_str, "ERROR"); to strcpy... as pointed out by Andrew Morton. Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@osdl.org>
-
Wim Van Sebroeck authored
removal of includes (since we don't use kmalloc and TASK_INTERRUPTABLE anymore). Addition of missing commands. Printk that lets the user know when the module was unloaded. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
-
Wim Van Sebroeck authored
Add debugging info for the pcwd.c module. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
-
Wim Van Sebroeck authored
static void pcwd_cleanup_module doesn't need a return; Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
-
Wim Van Sebroeck authored
Get the firmware version into the private data struct of the ISA-PC watchdog card. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
-
Wim Van Sebroeck authored
Clean-up the control status code (insert tabs where relevant), Add new Control Status defines, Make sure that the R2DS bit stays the same. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
-
Martin Waitz authored
This patch updates the comments to match the actual code. Signed-off-by: Martin Waitz <tali@admingilde.org> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner, contains unlikely() and can better optimized away. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner and can better optimized away Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner and can better optimized away Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner and can better optimized away Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-
Eric Sesterhenn authored
this changes if() BUG(); constructs to BUG_ON() which is cleaner and can better optimized away Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-