Matthew Wilcox [Thu, 29 Jan 2004 06:46:48 +0000 (22:46 -0800)]
[PATCH] PCI: fix pci_get_slot() bug
On Wed, Dec 17, 2003 at 04:24:44PM -0800, Greg KH wrote:
> I've applied the pci portions of this patch to my trees and will send it
> on after 2.6.0 is out.
James Bottomley found a bug in it; could you also apply:
Matthew Wilcox [Thu, 29 Jan 2004 06:32:13 +0000 (22:32 -0800)]
[PATCH] PCI: add pci_get_slot() function
tg3.c has a bug where it can find the wrong 5704 peer on a machine with
PCI domains. The problem is that pci_find_slot() can't distinguish
whether it has the correct domain or not.
This patch fixes that problem by introducing pci_get_slot().
As discussed about six or so months ago, we agreed to hold off this
patch until fairly late, due to its ability to catch duplicate PCI
driver names. Please note that I haven't attempted to reproduce the
problem with recent kernels, and that all ARM kernel patches released
since then have had this patch in.
I'm guessing this will actually be 2.6.1 material since it probably
doesn't show for PCI drivers which are part of the kernel tree.
If pci_register_driver fails, the register the PCI driver structure
will not be registered with the driver model. pci_register_driver
returns with negative value, and we then attempt to unregister the
driver structure. This leads to an oops in the driver model.
The driver model does not return the number of devices it successfully
bound the driver to, and neither does pci_register_driver() return
this information.
Therefore, all of the code below is redundant.
(There's a little redundancy left in drivers/pci/pci-driver.c but it
is harmless unlike this block.)
Jean Delvare [Tue, 27 Jan 2004 06:38:29 +0000 (22:38 -0800)]
[PATCH] I2C: Bring lm75 and lm78 in compliance with sysfs naming conventions
Here is a patch that brings the lm75 and lm78 drivers in compliance with
sysfs naming conventions. The drivers as found in existing 2.6 kernels
do not have a digit appended to the temperature-related files names as
the sysfs naming conversion recommends (obviously because they each have
a single temperature channel). As a result, libsensors won't find the
files.
It was discussed on the list wether a '1' should be appended in this
case, and our conclusion was that it would be better to do so because it
helps automatic processing of the sysfs exported files. Please apply if
you agree with this.
Alan Stern [Tue, 27 Jan 2004 06:37:40 +0000 (22:37 -0800)]
[PATCH] USB: Update sound/usb/usbaudio.c
On Tue, 27 Jan 2004, Greg KH wrote:
> Hm, can you send me a patch to fix up snd_usb_extigy_boot_quirk() in
> sound/usb/usbaudio.c now that this patch broke that code? :)
Here it is. The problem with changing things in the core is always that
you may miss some of the repercussions. In this case the patch will
restore the code's original functionality.
However the whole thing looks a bit creaky to me. Changing device
descriptors and who knows what else without informing usbcore isn't a good
idea. What this code _really_ appears to need is some form of
usb_device_reenumerate(). Such a function would fit very nicely into the
framework I've worked out for the revised usb_device_reset(); maybe I'll
add it in there. It would do essentially the same thing as device_reset
except for skipping the actual port reset.
Alan Stern [Mon, 26 Jan 2004 09:11:51 +0000 (01:11 -0800)]
[PATCH] USB: Don't dereference NULL actconfig
This patch fixes a simple error in a couple of utility routines. They
will no longer try to dereference a NULL actconfig pointer. Also, they
will work a little better if the configuration is changed while they are
running (which should never happen anyway).
Jean Delvare [Mon, 26 Jan 2004 08:58:46 +0000 (00:58 -0800)]
[PATCH] I2C: Add ADM1025EB support to i2c-parport
The following patch adds support for the ADM1025 evaluation board to the
i2c-parport (and i2c-parport-light) driver(s). In fact, it happens that
it was already supported as an ADM1032 evaluation board, so it is just a
matter of documenting it correctly.
James Simmons [Mon, 26 Jan 2004 06:49:42 +0000 (22:49 -0800)]
[PATCH] fbdev booting fix.
[FBCON] Fixed the order of which driver is used for the console. Before
the api change the last driver loaded became the default one. Now this is
not the case.
Andrew Morton [Mon, 26 Jan 2004 05:13:21 +0000 (21:13 -0800)]
[PATCH] kbuildL fix cscope index generation
From: Sam Ravnborg <sam@ravnborg.org>
cscope expect to find the list of files used for the database in a file
named cscope.files. Generate this file as part of 'make cscope'. This
solves http://bugme.osdl.org/show_bug.cgi?id=1948.
Andi Kleen [Mon, 26 Jan 2004 00:52:24 +0000 (16:52 -0800)]
[PATCH] Fix error checking in IPC_SET
The LSM changes broke the error checking for queue lengths in IPC_SET. The LSM check would
set set err to 0, but the next check expected it to still be -EPERM. Result was that
no error was reported, but the new parameters weren't correctly set.
Hirofumi Ogawa [Sat, 24 Jan 2004 10:57:20 +0000 (05:57 -0500)]
[netdrvr 8139cp] fix NAPI race
Andreas Happe <andreashappe@gmx.net> writes:
> my notebook (hp/compaq nx7000) still crashes when using 8139cp (runs
> rock solid with 8139too driver). The computer just locks up, there is no
> dmesg output. This has happened since I've got this laptop (around
> november '03).
It seems 8139cp.c has the race condition of rx_poll and interrupt.
NOTE, since I don't have this device, patch is untested. Sorry.
I got a Wacom Graphire3 for my birthday and unfortunately it didn't
work. After some playing around, I noticed the 2.6 kernel needs a few
small modifications to make it work.
This simple patch adds support for the Wacom Graphire 3.
Mark Haverkamp [Sat, 24 Jan 2004 04:54:17 +0000 (23:54 -0500)]
[PATCH] Fix for aacraid and high memory on 2.6.1
Here is an update to use pci_set_consistent_dma_mask. But since
dma_alloc_coherent uses dma_mask instead of consistent one, I left in
setting dma_mask as well until the alloc routine changes.
Andrew Morton [Sat, 24 Jan 2004 03:36:41 +0000 (19:36 -0800)]
[PATCH] The RAW_GETBIND compat_ioctl fails
From: James Cross <jscross@veritas.com>
The RAW_GETBIND compatibility ioctl call does convert properly between the
32bit/64bit version of raw_config_request due to a trivial error, and the
ioctl call fails.
Andi Kleen [Sat, 24 Jan 2004 02:46:40 +0000 (18:46 -0800)]
[PATCH] x86-64 merge
Mainly lots of bug fixes and a few minor features. One change is that
it uses drivers/Kconfig now like i386. This requires a few minor changes in
outside Kconfig files which I am sending separately.
- Tighten/fix some code in NUMA node discovery
- Fix oopses in threaded 32bit coredumps and read correct registers.
- Merge with 2.6.2rc1
- Sync arch/x86_64/Kconfig with i386. Uses drivers/Kconfig now.
- Remove bcopy export
- Fix check for signal stack for 32bit signals
- Fix bcopy and exit prototypes for gcc 3.4
- Fix asm contraint in usercopy.c for gcc 3.4
- Use rt_sigreturn, not sigreturn for rt sigreturns.
- Pass si_fault address to 32bit
- Truncate si_error to 16bit in 32bit emulation to match i386
- Move IA32 flag switching for 32bit executables to flush_thread
(code copied from ppc64/sparc64)
- Print exception trace for strace too, share code.
- Default to 3GB address space for a.out executables
- Fix security hole in ptrace. Also fixes some problems with 32bit gdb.
- Sync mmap address selection algorithm with mm/mmap.c version
- Disable a.out coredumps completely
- Fix bug in sigaltstack 32bit emulation. Kylix IDE now works.
- Move errata 93/BIOS workaround into fault handler. This should work
around USB legacy BIOS bugs too, although not completely (we cannot fix
faults injected by SMM into user space 64bit processes)
- Quieten some unimplemented 32bit syscall warnings and avoid repeated
warnings.
- Set LDT segment limit correctly (fixes problems with some modify_ldt
user)
- Remove obsolete ldt rw lock.
- Remove sys32_modify_ldt. The standard sys_modify_ldt is equivalent.
- Remove traces of old kgdb support
- Merge CFI changes from Jim Houston and some other smaller changes The
kernel assembly functions are described with dwarf2 unwind
information now, which makes it easier for debuggers to make sense of
stack backtraces. The code is only enabled with CONFIG_DEBUG_INFO.
Note this implies that when you use CONFIG_DEBUG_INFO you may need
an binutils update.
- defconfig updated
- Readd sleep support code (Pavel Machek)
- Drop fusion and flush workarounds from IOMMU code
- Add iommu=nofullflush option
- Rewrite 32bit emulation for siginfo conversion (Joe Korty)
- Allow remapping of scatterlists after unmap. This fixes some problems
with the SCSI layer retrying previously mapped sg lists when iommu
merging was enabled (it's disabled now by default)
- Port HPET rtc device emulation code from i386
David Stevens [Sat, 24 Jan 2004 01:59:08 +0000 (17:59 -0800)]
[MULTICAST]: multicast loop with include filters fix
When sending a multicast and using looping back a copy to the
local machine, the interface filter checks can be done before the
source address is specified. For an INCLUDE filter, this won't match
the allowed sources and the packets won't be delivered locally,
even when the ultimate source address chosen is in the allowed list.
The patch below fixes the filter checks for both IGMPv3 and MLDv2
to only apply when a source address is available.
Thanks to Steven Hessing for reporting the problem and providing
a test case for reproducing it.