- 02 Dec, 2004 16 commits
-
-
Ian Campbell authored
This patch avoids a deadlock on rtnl_sem in smc_close() when bringing down an smc91x interface. The semaphore is already held by devinet_ioctl() and the pending work queue contains linkwatch_event() (scheduled by netif_carrier_off()) which also wants rtnl_sem hence it is unsafe to call flush_scheduled_work(). The solution is to track whether we have any pending work of our own and wait for that instead of flushing the entire queue. I also fixed a typo 'ence' -> 'Hence' and renamed smc_detect_phy to smc_phy_detect in order to follow the same pattern as the other smc_phy_* functions. Signed-off-by: Ian Campbell <icampbell@arcom.com> Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Geert Uytterhoeven authored
HP Lance Ethernet depends on DIO bus support Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Geert Uytterhoeven authored
M68k Ethernet drivers depend on NET_ETHERNET instead of NETDEVICES Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ingo Molnar authored
We check need_resched() _before_ disabling preemption. This opens up the following scenario: swapper: !need_resched() [IRQ context] wakes up a task marks idle task as need-resched swapper: acpi_processor_idle(); // sleeps until next irq instant 1msec latency introduced... normally default_idle() is safe because it re-checks need_resched with interrupts disabled before it truly halts the CPU. But acpi_processor_idle() doesnt seem to be doing this! Your trace clearly shows a missed preemption due to ACPI. I'm wondering why no-one has triggered this before, it's a really bad bug that should be fixed in 2.6.10. Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: "Brown, Len" <len.brown@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Anton Blanchard authored
The generic irq affinity code limits us to a single cpu target regardless of what the architecture supports. If required this should be done in the architecture specific ->set_affinity call. With this patch ppc64 is able to select all cpus affinity again. Signed-off-by: Anton Blanchard <anton@samba.org> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Thomas Spatzier <tspat@de.ibm.com> network driver changes: - qeth: Handle both VLAN_FRAME and INCLUDES_VLAN_TAG in qdio header. - qeth: Always save IP addresses registered on a card when going offline. - qeth: Check size of printk buffer to 4K for ipa_takeover, vipa & rxip. From: Thomas Spatzier <tspat@de.ibm.com>, Heiko Carstens <heiko.carstens@de.ibm.com> Thomas created the patch below which removes the hardcoded 3900 bytes limit as suggested by Jeff Garzik. Please apply. network driver changes: - qeth: Calculate end of sysfs data buffer correctly. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Thomas Spatzier <tspat@de.ibm.com> From: Peter Tiedemann <ptiedem@de.ibm.com> network driver changes: - qeth: return -EINVAL if an skb is too large. - qeth: don't call netif_stop_queue after cable pull. Drop the packets instead. - qeth: fix race between SET_IP and SET_MC kernel thread by removing SET_MC thread and let the SET_IP thread do multicast requests as well. - qeth: make it compile without CONFIG_VLAN. - ctc: avoid compiler warnings. - lcs: write package sequence number to skb->cb. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Gerald Schaefer <geraldsc@de.ibm.com> z/VM monitor stream changes: - Add monitor control element to deal with end-of-frame records. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Horst Hummel <horst.hummel@de.ibm.com> From: Stefan Weinhuber <wein@de.ibm.com> dasd driver changes: - Introduce "fixbuffers" dasd option that uses buffer pages for the dasd i/o similar to bounce buffers. - Fix I/O errors when using XRC. - Increment retry counter again if notifier callback is called with CIO_GONE. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Carsten Otte <cotte@de.ibm.com> dcss segment interface changes: - Add check when loading segments to avoid out of range mappings. - Add code to check for segment_load returning -ERANGE. - Rename segment_info to segment_type. - Restore previous segment state if reload fails. - Add segment_modify_shared() to change shared attributes of a dcss segment and use it in the dcss block device driver. - Add support for contiguous EW/EN multipart segments. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Cornelia Huck <cohuck@de.ibm.com> From: Steffen Thoss <thoss@de.ibm.com> common i/o layer changes: - Delay re-registration of a subchannel with a different subchannel id until the ccw device removal triggered from the subchannels remove function has completed. - Fix check when to call unreg_rereg. - Fix get_disc_cdev_by_devno. - Activate the time delay disablement facility. This saves a few cycles in millicode processing. - Don't ifdef reset of busy start time. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Martin Schwidefsky authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> From: Ulrich Weigand <uweigand@de.ibm.com> s390 core changes: - Remove defines for kernel_stack_size and async_stack_size. - Reserve system call number for kexec. - Add cc-option check for new gcc option packed-stack. - Fix race on no_hz_cpu_mask in stop_hz_timer. - Fix ptrace to make it send a SIGTRAP before the first instruction of a single stepped signal handler is executed. - Use force_sig_info with a full siginfo structure for illegal operation. - Remove verbatim copy of si_codes from asm-s390/siginfo.h. Use the generic definitions. - Regenerate default configuration. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Alexander Viro authored
What that patch does is making the first open _always_ assume that we need to revalidate/reread partition table and kills partition-parsing in register_disk(); instead we just have it do open/close and let the revalidation path in open do the job. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
For reasons which escape me, blockdev_get_blocks() is returning -EIO if the mapping request straddles the end of the disk. This causes reads which straddle end-of-disk to return -EIO. Fix it up so that it correctly trims the returned result down to match the size of the device, for both reads and writes. If a write attempt is fully beyond end-of-device then return -EIO. We never get this far anyway, because generic_write_checks() will return -ENOSPC if all of the write lies outside a blockdev's i_size. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
This recent fix isn't quite right: it is causing smaller-than-expected I/Os to be submitted when extending files, which causes AIO-based writes to oops. So just revert it - the bug was really over in blockdev_get_blocks() anyway. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Bjorn Helgaas authored
The DAC960 driver looks at PCI_Device->irq before calling pci_enable_device(), which means it requests the wrong IRQ and hangs. This fixes it. Thanks to Johannes Rommel for reporting the problem and testing the fix. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
- 01 Dec, 2004 24 commits
-
-
bk://gkernel.bkbits.net/libata-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Jeff Garzik authored
into pobox.com:/garz/repo/libata-2.6
-
Randy Dunlap authored
Use SET_NETDEV_DEV() so that the device works correctly with udev. Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Marc Leeman authored
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Edward Falk authored
Bug in dvd_read_manufact found by inspection. Cc: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Edward Falk authored
I've written two document files, and packaged them as a patch. Two things caught my eye while I was writing this up: The header comments for CDROMREADRAW, CDROMREADMODE1, and CDROMREADMODE2 disagree with the actual source code. The header comments imply that a cdrom_read structure is used to pass data, but the source code actually reads a cdrom_msf structure and then overwrites it with raw data. I'm not sure if there's a bug in the header comments, in the driver source, or I misread something. The CDROM_LOCKDOOR ioctl seems to lock/unlock all doors on all drives, because it uses a global variable. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Daniel Ritz authored
It turns out that just blindly enabling read prefetch is wrong for the older (and buggy) oz6833 bridge. fixed in the attached patch. - don't touch the oz6832/6833 - more verbose - only set the read prefetch and the write burst bits it broke on some old laptop with a cardbus tulip. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Thomas Gleixner authored
Simple fix to make pci_enable/disable symetric and avoid the warning on module unload. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Iacopo Spalletti authored
Added M6Ne PCI IDs in asus_hides_smbus_hostbridge() function Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Rusty Russell authored
Stephen Rothwell noted a case where one CPU was sitting in userspace, one in stop_machine() waiting for everyone to enter stopmachine(). This can happen if migration occurs at exactly the wrong time with more than 2 CPUS. Say we have 4 CPUS: 1) stop_machine() on CPU 0creates stopmachine() threads for CPUS 1, 2 and 3, and yields waiting for them to migrate to their CPUs and ack. 2) stopmachine(2) gets rebalanced (probably on exec) to CPU 1. 3) stopmachine(2) calls set_cpus_allowed on CPU 1, sleeps awaiting migration thread. 4) stopmachine(1) calls set_cpus_allowed on CPU 0, moves onto CPU1 and starts spinning. Now the migration thread never runs, and we deadlock. The simplest solution is for stopmachine() to yield until they are all in place. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Rusty Russell authored
You can't call module_param et al inside a function. It doesn't make sense, and it doesn't work. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Move this error-handling into a separate function so that its sizeable stack utilisation is avoided - generic_make_request() can be called recursively by stacking drivers. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Nathan Scott authored
Here's a patch which fixes the deadlock Brad Fitzpatrick reported here: http://lkml.org/lkml/2004/11/14/98 The meat of the problem is a locking order reversal between the XFS I/O lock and the inode semaphore (i_sem). When we mix a number of threads doing both direct reads and writes, we hit an ABBA deadlock after a while because direct-io.c is taking and dropping i_sem after the XFS read path has already taken its I/O lock. This is the wrong way around from XFS's point of view, in particular its the opposite order to the XFS write path. So this patch changes the logic for direct reads in the DIO_OWN_LOCKING case (i.e. XFS-only case), but leaves things as is for the other two types of locking. Not real pretty, but fixes up the lock ordering and deadlock. Oh, I have tested direct reads and writes on ext3 and block devices as well, to ensure they still function correctly with the change (i.e. they don't regress, should be a no-op there) which covers the other locking cases in __blockdev_direct_IO. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hirofumi Ogawa authored
When cont_prepare_write() is padding out the "hole" with zeroed pages it doesn't increase i_size at the same time. If writeback comes in during the execution of cont_prepare_write(), block_write_full_page() will think that these pages are outside i_size and will just clean the page without writing it. Fix that up by using generic_commit_write(), which will advance i_size for each page as it is dirtied. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Karsten Keil authored
This patch fix a deadlock in CAPI device driver registration code and reenable SMP for the activ AVM cards., also some minor cleanup and fixes. Signed-off-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hirokazu Takata authored
Here is a patch to update AR camera device driver. drivers/media/video/arv.c: - Remove warnings; use module_param() instead of MODULE_PARM(), because MODULE_PARM() is deprecated. - Fix white-space damages. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Machek authored
Vadim says: I was reading through the kernel/power/Kconfig file, and noticed that the wording was slightly unclear. I poked at it a bit, hopefully making the description a tad more straightforward, but you be the judge. :) Diffed against 2.6.10-rc2. From: Vadim Lobanov <vlobanov@speakeasy.net> Signed-off-by: Vadim Lobanov <vlobanov@speakeasy.net> Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
Use time_after_eq instead of >= From: Michal Schmidt <xschmi00@stud.feec.vutbr.cz> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
raid10 performs resync by reading all blocks, comparing to look for The requires re-tasking a bio that was used to read, so that it can be re-used for write. So a number of fields need to be reset. The bi_bdev field was not being reset. However when using on a partition of a device, it gets changed by generic_make_request. This patch simply resets bi_bdev to the correct value. Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jeremy Fitzhardinge authored
With Chris Wright <chrisw@osdl.org> struct task_struct.comm is defined to be 16 chars, but arch/x86_64/sys_ia32.c:sys32_ni_syscall() and sys32_vm86_warning() copy it into a static 8 byte buffer, which will surely cause problems. This patch makes lastcomm[] the right size, and makes sure it can't be overrun. Since the code also goes to the effort of getting a local copy of current in "me", we may as well use it for printing the message. Signed-off-by: Chris Wright <chrisw@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ralf Bächle authored
o General updates of MIPS to 2.6.10-rc2 o Remove the Baget platform due to lack of maintenance over several years. Some of the drivers remain and will be removed in a separate patch. o Remove the HP Laserjet platform. No user reports ever and no patches from the original submitters made this port a neat hack - and a directory full of clutter. o SMP support for the PMC-Sierra. Signed-Off-By: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://bk.arm.linux.org.uk/linux-2.6-rmkLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Holger Freyther authored
Patch from Holger Hans Peter Freyther arch/arm/mach-sa1100/KConfig had options for USB client. The related code was removed early in 2.6. releases. I think it is appropriate to remove the Config options for it itself, as they're void. Signed-off-by: Holger Hans Peter Freyther Signed-off-by: Russell King
-
Russell King authored
-