Linus Torvalds [Thu, 8 Sep 2005 22:55:23 +0000 (15:55 -0700)]
Merge /pub/scm/linux/kernel/git/gregkh/pci-2.6
Linus Torvalds [Thu, 8 Sep 2005 22:54:53 +0000 (15:54 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 8 Sep 2005 22:52:11 +0000 (15:52 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 8 Sep 2005 22:43:09 +0000 (15:43 -0700)]
Merge kernel.org:/home/rmk/linux-2.6-i2c manually
Old tree, so the automatic merge had some problems.
Linus Torvalds [Thu, 8 Sep 2005 22:30:14 +0000 (15:30 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Thu, 8 Sep 2005 22:28:16 +0000 (15:28 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-mmc
Linus Torvalds [Thu, 8 Sep 2005 22:26:48 +0000 (15:26 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Patrick McHardy [Thu, 8 Sep 2005 22:11:55 +0000 (15:11 -0700)]
[XFRM]: Always release dst_entry on error in xfrm_lookup
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Herbert Xu [Thu, 8 Sep 2005 22:10:52 +0000 (15:10 -0700)]
[TCP]: Fix off by one in tcp_fragment() "already sent" test.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Nicolas Pitre [Thu, 8 Sep 2005 22:07:40 +0000 (23:07 +0100)]
[ARM] 2892/1: remove gcc workaround for direct access to absolute memory addresses
Patch from Nicolas Pitre
It used to make a difference in the gcc-2.95 era. However these days
modern gcc apparently got better at not being influenced by such constructs
(which is good in general) and therefore such workaround is of no real
advantage anymore.
The good news is that gcc (from version 4.1.0) is now fixed with
regards to the defficiency this workaround was trying to address.
For those interested the patch can easily be backported to older gcc
versions and can be found here:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/arm.c.diff?r1=1.476&r2=1.478
and also here:
http://savannah.gnu.org/cgi-bin/viewcvs/gcc/gcc/gcc/config/arm/arm.c.diff?r1=text&tr1=1.476&r2=text&tr2=1.478&diff_format=u
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 8 Sep 2005 22:07:39 +0000 (23:07 +0100)]
[ARM] 2891/1: S3C2410 - update s3c2410_defconfig for 2.6.13
Patch from Ben Dooks
Updated the s3c2410_defconfig for the 2.6.13-git8
kernel release, as well as adding the Anubis
board to the list of boards built.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Tony Lindgren [Thu, 8 Sep 2005 22:07:38 +0000 (23:07 +0100)]
[ARM] 2890/1: OMAP 1/4: Update omap1 specific files, take 2
Patch from Tony Lindgren
This patch syncs the mainline kernel with linux-omap tree.
The highlights of the patch are:
- Convert more drivers to register resources in board-*.c to take
advantage of the driver model by David Brownell and Ladislav Michl
- Use set_irq_type() for GPIO interrupts instead of
omap_set_gpio_edge_ctrl() by David Brownell
- Add minimal support for handling optional add-on boards, such as
OSK Mistral board with LCD and keypad, by David Brownell
- Minimal support for loading functions to SRAM by Tony Lindgren
- Wake up from serial port by muxing RX lines temporarily into GPIO
interrupts by Tony Lindgren
- 32KHz sched_clock by Tony Lindgren and Juha Yrjola
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Brett M Russ [Mon, 15 Aug 2005 19:23:41 +0000 (15:23 -0400)]
[PATCH] PCI/libata INTx cleanup
Simple cleanup to eliminate X copies of the pci_enable_intx() function
in libata. Moved ahci.c's pci_intx() to pci.c and use it throughout
libata and msi.c.
Signed-off-by: Brett Russ <russb@emc.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Daniel Ritz [Wed, 17 Aug 2005 22:32:19 +0000 (15:32 -0700)]
[PATCH] PCI: Support PCM PM CAP version 3
- support PCI PM CAP version 3 (as defined in PCI PM Interface Spec v1.2)
- pci/probe.c sets the PM state initially to 4 which is D3cold. add a
PCI_UNKNOWN
- minor cleanups
Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Paul Mackerras [Thu, 18 Aug 2005 04:33:01 +0000 (14:33 +1000)]
[PATCH] PCI: Add pci_walk_bus function to PCI core (nonrecursive)
The PCI error recovery infrastructure needs to be able to contact all
the drivers affected by a PCI error event, which may mean traversing
all the devices under a given PCI-PCI bridge. This patch adds a
function to the PCI core that traverses all the PCI devices on a PCI
bus and under any PCI-PCI bridges on that bus (and so on), calling a
given function for each device. This provides a way for the error
recovery code to iterate through all devices that are affected by an
error event.
This version is not implemented as a recursive function. Instead,
when we reach a PCI-PCI bridge, we set the pointers to start doing the
devices on the bus under the bridge, and when we reach the end of a
bus's devices, we use the bus->self pointer to go back up to the next
higher bus and continue doing its devices.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Prarit Bhargava [Fri, 12 Aug 2005 14:13:34 +0000 (10:13 -0400)]
[PATCH] PCI Hotplug: SGI hotplug driver fixes
These fixes were suggested by pcihpd-discuss, but were dropped in the
initial checkin of the code. These fixes include cleaning up the
hotplug driver sysfs filename, and some minor code cleanups. The driver
also requires at least PROM 4.30, not 4.20.
Signed-off-by: Prarit Bhargava <prarit@sgi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jiri Slaby [Wed, 10 Aug 2005 00:09:39 +0000 (02:09 +0200)]
[PATCH] PCI: remove pci_find_device from parport_pc.c
This patch changes pci_find_device to pci_get_device (encapsulated in
for_each_pci_dev).
Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Stern [Wed, 10 Aug 2005 19:18:44 +0000 (15:18 -0400)]
[PATCH] PCI: Fix regression in pci_enable_device_bars
This patch (as552) fixes yet another small problem recently added. If an
attempt to put a PCI device back into D0 fails because the device doesn't
support PCI PM, it shouldn't count as error. Without this patch the UHCI
controllers on my Intel motherboard don't work.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Thu, 28 Jul 2005 18:37:33 +0000 (11:37 -0700)]
[PATCH] PCI: start paying attention to a lot of pci function return values
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
David S. Miller [Mon, 8 Aug 2005 20:19:08 +0000 (13:19 -0700)]
[PATCH] Make sparc64 use setup-res.c
There were three changes necessary in order to allow
sparc64 to use setup-res.c:
1) Sparc64 roots the PCI I/O and MEM address space using
parent resources contained in the PCI controller structure.
I'm actually surprised no other platforms do this, especially
ones like Alpha and PPC{,64}. These resources get linked into the
iomem/ioport tree when PCI controllers are probed.
So the hierarchy looks like this:
iomem --|
PCI controller 1 MEM space --|
device 1
device 2
etc.
PCI controller 2 MEM space --|
...
ioport --|
PCI controller 1 IO space --|
...
PCI controller 2 IO space --|
...
You get the idea. The drivers/pci/setup-res.c code allocates
using plain iomem_space and ioport_space as the root, so that
wouldn't work with the above setup.
So I added a pcibios_select_root() that is used to handle this.
It uses the PCI controller struct's io_space and mem_space on
sparc64, and io{port,mem}_resource on every other platform to
keep current behavior.
2) quirk_io_region() is buggy. It takes in raw BUS view addresses
and tries to use them as a PCI resource.
pci_claim_resource() expects the resource to be fully formed when
it gets called. The sparc64 implementation would do the translation
but that's absolutely wrong, because if the same resource gets
released then re-claimed we'll adjust things twice.
So I fixed up quirk_io_region() to do the proper pcibios_bus_to_resource()
conversion before passing it on to pci_claim_resource().
3) I was mistakedly __init'ing the function methods the PCI controller
drivers provide on sparc64 to implement some parts of these
routines. This was, of course, easy to fix.
So we end up with the following, and that nasty SPARC64 makefile
ifdef in drivers/pci/Makefile is finally zapped.
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John W. Linville [Wed, 27 Jul 2005 14:19:44 +0000 (10:19 -0400)]
[PATCH] PCI: restore BAR values after D3hot->D0 for devices that need it
Some PCI devices (e.g. 3c905B, 3c556B) lose all configuration
(including BARs) when transitioning from D3hot->D0. This leaves such
a device in an inaccessible state. The patch below causes the BARs
to be restored when enabling such a device, so that its driver will
be able to access it.
The patch also adds pci_restore_bars as a new global symbol, and adds a
correpsonding EXPORT_SYMBOL_GPL for that.
Some firmware (e.g. Thinkpad T21) leaves devices in D3hot after a
(re)boot. Most drivers call pci_enable_device very early, so devices
left in D3hot that lose configuration during the D3hot->D0 transition
will be inaccessible to their drivers.
Drivers could be modified to account for this, but it would
be difficult to know which drivers need modification. This is
especially true since often many devices are covered by the same
driver. It likely would be necessary to replicate code across dozens
of drivers.
The patch below should trigger only when transitioning from D3hot->D0
(or at boot), and only for devices that have the "no soft reset" bit
cleared in the PM control register. I believe it is safe to include
this patch as part of the PCI infrastructure.
The cleanest implementation of pci_restore_bars was to call
pci_update_resource. Unfortunately, that does not currently exist
for the sparc64 architecture. The patch below includes a null
implemenation of pci_update_resource for sparc64.
Some have expressed interest in making general use of the the
pci_restore_bars function, so that has been exported to GPL licensed
modules.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kristen Accardi [Fri, 5 Aug 2005 19:16:06 +0000 (12:16 -0700)]
[PATCH] PCI Hotplug: use bus_slot number for name
For systems with multiple hotplug controllers, you need to use more than
just the slot number to uniquely name the slot. Without a unique slot
name, the pci_hp_register() will fail. This patch adds the bus number
to the name.
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Michael S. Tsirkin [Sun, 31 Jul 2005 08:51:45 +0000 (11:51 +0300)]
[PATCH] arch/386/pci: remap_pfn_range -> io_remap_pfn_range
Convert i386/pci to use io_remap_pfn_range instead of remap_pfn_range.
This is good for Xen which reuses i386/pci/i386.c for domain 0 code.
Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Thu, 28 Jul 2005 18:37:33 +0000 (11:37 -0700)]
[PATCH] PCI: clean up pci.h and split pci register info to separate header file.
This cleans up some of the #ifdef CONFIG_PCI stuff up, and moves the pci register
info out to a separate file, where it belongs. Eventually we can stop including
this file from within pci.h, but lots of code needs to be audited first.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Andrew Morton [Wed, 27 Jul 2005 07:07:11 +0000 (00:07 -0700)]
[PATCH] PCI: fix up pretty-names removal patch
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Adrian Bunk [Sun, 17 Jul 2005 02:22:20 +0000 (04:22 +0200)]
[PATCH] PCI: remove CONFIG_PCI_NAMES
This patch removes CONFIG_PCI_NAMES.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
akpm@osdl.org [Tue, 26 Jul 2005 06:28:14 +0000 (23:28 -0700)]
[PATCH] PCI: Move PCI fixup data into r/o section
Make PCI fixup data const, so it'll end up in a r/o section.
This also fixes the conversion into ECOFF which gets broken by too many
changes between r/w and r/o sections. Call it a hack but it's a change
that's correct by itself.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Andi Kleen [Wed, 6 Jul 2005 17:56:03 +0000 (19:56 +0200)]
[PATCH] PCI: Run PCI driver initialization on local node
Run PCI driver initialization on local node
Instead of adding messy kmalloc_node()s everywhere run the
PCI driver probe on the node local to the device.
This would not have helped for IDE, but should for
other more clean drivers that do more initialization in probe().
It won't help for drivers that do most of the work
on first open (like many network drivers)
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John Rose [Mon, 25 Jul 2005 15:17:03 +0000 (10:17 -0500)]
[PATCH] PCI Hotplug: rpaphp: Purify hotplug
Currently rpaphp registers the following bus types as hotplug slots:
1) Actual PCI Hotplug slots
2) Embedded/Internal PCI slots
3) PCI Host Bridges
The second and third bus types are not actually direct parents of
removable adapters. As such, the rpaphp has special case code to fake
results for attributes like power, adapter status, etc. This patch
removes types 2 and 3 from the rpaphp module.
This patch also changes the DLPAR module so that slots can be
DLPAR-added/removed without having been designated as hotplug-capable.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John Rose [Mon, 25 Jul 2005 15:16:58 +0000 (10:16 -0500)]
[PATCH] PCI Hotplug: rpaphp: Export slot enable
This patch exports rpaphp_config_pci_adapter() for use by the rpadlpar
module. It also changes this function by removing any dependencies on
struct slot. The patch also changes the RPA DLPAR-add path to enable
newly-added slots in a separate step from that which registers them as
hotplug slots.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John Rose [Mon, 25 Jul 2005 15:16:53 +0000 (10:16 -0500)]
[PATCH] PCI Hotplug: rpaphp: Remove rpaphp_find_pci
The rpaphp module currently uses a fragile method to find a pci device
by its device node. This function is unnecessary, so this patch scraps
it.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John Rose [Mon, 25 Jul 2005 16:13:38 +0000 (11:13 -0500)]
[PATCH] PCI Hotplug: rpaphp: Change slot pci reference
The slot structure in the rpaphp module currently references the PCI
contents of the slot using the PCI device of the parent bridge. This
is unnecessary, since the module is actually interested in the
subordinate bus of the bridge. The dependency on a PCI bridge device
also prohibits the module from registering hotplug slots that have a
root bridge as a parent, since root bridges on PPC64 don't have PCI
devices.
This patch changes struct slot to reference the PCI subsystem using a
pci_bus rather than a pci_dev.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John Rose [Mon, 25 Jul 2005 15:16:42 +0000 (10:16 -0500)]
[PATCH] PCI Hotplug: rpaphp: Move VIO registration
Currently, rpaphp registers Virtual I/O slots as hotplug slots. The
only purpose of this registration is to ensure that the VIO subsystem
is notified of new VIO buses during DLPAR adds. Similarly, rpaphp
notifies the VIO subsystem when a VIO bus is DLPAR-removed. The rpaphp
module has special case code to fake results for attributes like power,
adapter status, etc.
The VIO register/unregister functions could just as easily be made from
the DLPAR module. This patch moves the VIO registration calls to the
DLPAR module, and removes the VIO fluff from rpaphp altogether.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
John Rose [Mon, 25 Jul 2005 15:16:37 +0000 (10:16 -0500)]
[PATCH] PCI Hotplug: rpaphp: Remove unused stuff
Subject line says it all :)
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Richard Purdie [Thu, 8 Sep 2005 21:48:16 +0000 (22:48 +0100)]
[MMC] Add mmc_detect_change() delay support for PXAMCI driver
Allow PXA platforms to pass an appropriate delay value to the
PXA MCI driver for delaying detection changes.
Signed-Off-By: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Linus Torvalds [Thu, 8 Sep 2005 21:47:12 +0000 (14:47 -0700)]
Fix up ARM serial driver compile failure
Proud member of Uglyhacks'R'US.
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Russell King <rmk+lkml@arm.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Russell King [Thu, 8 Sep 2005 21:46:00 +0000 (22:46 +0100)]
[MMC] Ensure correct mmc_priv() behaviour
mmc_priv() has some nasty effects if the wrong pointer type is
passed to it. Introduce type checking, which also means we get
the right type. Also add an additional member to mmc_host which
is used to align host-private data appropriately.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
David S. Miller [Thu, 8 Sep 2005 21:37:53 +0000 (14:37 -0700)]
[SPARC64]: Inline membar()'s again.
Since GCC has to emit a call and a delay slot to the
out-of-line "membar" routines in arch/sparc64/lib/mb.S
it is much better to just do the necessary predicted
branch inline instead as:
ba,pt %xcc, 1f
membar #whatever
1:
instead of the current:
call membar_foo
dslot
because this way GCC is not required to allocate a stack
frame if the function can be a leaf function.
This also makes this bug fix easier to backport to 2.4.x
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Thu, 8 Sep 2005 21:27:47 +0000 (14:27 -0700)]
[IPV6]: Don't redo xfrm_lookup for cached dst entries
The xfrm lookup is already done when the dst entry is looked up first and
stored in the cache.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Thu, 8 Sep 2005 20:52:24 +0000 (13:52 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/netdev-2.6
Jeff Garzik [Thu, 8 Sep 2005 20:44:33 +0000 (16:44 -0400)]
Kconfig: IEEE80211 should not depend on NET_RADIO
We should not restrict use of ieee80211 to only when wireless drivers
are enabled. In-development and out-of-tree drivers may wish to use it,
and by removing this restriction we eliminate a circular dependency.
Ralf Baechle [Thu, 8 Sep 2005 20:40:41 +0000 (13:40 -0700)]
[AX.25]: Make asc2ax() thread-proof
Asc2ax was still using a static buffer for all invocations which isn't
exactly SMP-safe. Change asc2ax to take an additional result buffer as
the argument. Change all callers to provide such a buffer.
This one only really is a fix for ROSE and as per recent discussions
there's still much more to fix in ROSE ...
Signed-off-by: Ralf Baechle DL5RB <ralf@linux-mips.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Andrew Morton [Thu, 8 Sep 2005 20:36:34 +0000 (13:36 -0700)]
[NETFILTER]: ip_conntrack_netbios_ns.c gcc-2.95.x build fix
gcc-2.95.x can't do this sort of initialisation
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Julian Anastasov [Thu, 8 Sep 2005 20:34:47 +0000 (13:34 -0700)]
[IPV4]: Fix refcount damaging in net/ipv4/route.c
One such place that can damage the dst refcnts is route.c with
CONFIG_IP_ROUTE_MULTIPATH_CACHED enabled, i don't see the user's
.config. In this new code i see that rt_intern_hash is called before
dst->refcnt is set to 1, dst is the 2nd arg to rt_intern_hash.
Arg 2 of rt_intern_hash must come with refcnt 1 as it is added to
table or dropped depending on error/add/update. One such example is
ip_mkroute_input where __mkroute_input return rth with refcnt 0 which
is provided to rt_intern_hash. ip_mkroute_output looks like a 2nd such
place. Appending untested patch for comments and review. The idea is
to put previous reference as we are going to return next result/error.
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Chan [Thu, 8 Sep 2005 20:15:32 +0000 (13:15 -0700)]
[BNX2]: Fix bug in irq handler and add prefetch
Fix bug in bnx2_interrupt() that caused an unnecessary register read.
The BNX2_PCICFG_MISC_STATUS should only be read when the status tag
has not changed.
Add prefetch of the status block in bnx2_msi() similar to tg3_msi().
The status block is not touched in bnx2_msi() and prefetching it will
speed up bnx2_poll() that will run on the same CPU that received the
MSI.
Update version.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Russell King [Thu, 8 Sep 2005 20:04:58 +0000 (21:04 +0100)]
[I2C] Clean up i2c-pxa debugging/printks
Fix up comments made by review by gregkh.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
David S. Miller [Thu, 8 Sep 2005 19:59:43 +0000 (12:59 -0700)]
Merge git://git.skbuff.net/gitroot/yoshfuji/linux-2.6-git-rfc3542
Stephen Hemminger [Thu, 8 Sep 2005 19:57:43 +0000 (12:57 -0700)]
[IPV6]: Need to use pskb_trim_rcsum().
Fix pskb_trim usage in ipv6. Only the udp one is really
a bug, other places are just doing equivalent code.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Thu, 8 Sep 2005 19:32:46 +0000 (12:32 -0700)]
[NET]: Need struct sock forward decl in net/compat.h
Else we get build failures like:
CC arch/sparc64/kernel/sparc64_ksyms.o
In file included from arch/sparc64/kernel/sparc64_ksyms.c:28:
include/net/compat.h:37: warning: "struct sock" declared inside parameter list
include/net/compat.h:37: warning: its scope is only this definition or declaration, which is probably not what you want
Signed-off-by: David S. Miller <davem@davemloft.net>
Stephen Hemminger [Thu, 8 Sep 2005 19:32:21 +0000 (12:32 -0700)]
[IPV4] udp: trim forgets about CHECKSUM_HW
A UDP packet may contain extra data that needs to be trimmed off.
But when doing so, UDP forgets to fixup the skb checksum if CHECKSUM_HW
is being used.
I think this explains the case of a NFS receive using skge driver
causing 'udp hw checksum failures' when interacting with a crufty
settop box.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stephen Hemminger [Thu, 8 Sep 2005 19:32:03 +0000 (12:32 -0700)]
[NET]: Optimize pskb_trim_rcsum()
Since packets almost never contain extra garbage at the end, it is
worthwhile to optimize for that case.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Thu, 8 Sep 2005 18:51:01 +0000 (11:51 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/libata-dev
Richard Purdie [Thu, 8 Sep 2005 16:53:01 +0000 (17:53 +0100)]
[MMC] Allow detection/removal to be delayed
Change mmc_detect_change() to take a delay argument such that
the detection of card insertions and removals can be delayed
according to the requirements of the host driver or platform.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Al Viro [Thu, 8 Sep 2005 01:28:51 +0000 (18:28 -0700)]
[PATCH] Fix 32bit sendmsg() flaw
When we copy 32bit ->msg_control contents to kernel, we walk the same
userland data twice without sanity checks on the second pass.
Second version of this patch: the original broke with 64-bit arches
running 32-bit-compat-mode executables doing sendmsg() syscalls with
unaligned CMSG data areas
Another thing is that we use kmalloc() to allocate and sock_kfree_s()
to free afterwards; less serious, but also needs fixing.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Russell King [Thu, 8 Sep 2005 15:04:41 +0000 (16:04 +0100)]
[SERIAL] Use an enum for serial8250 platform device IDs
Rather than hard-coding the platform device IDs, enumerate them.
We don't particularly care about the actual ID we get, just as
long as they're unique.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Kumar Gala [Thu, 8 Sep 2005 14:20:55 +0000 (09:20 -0500)]
[PATCH] ppc32: Fix head_4xx.S compile error
head_4xx.S wasn't compiling due to a missing #endif
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Russell King [Thu, 8 Sep 2005 14:32:23 +0000 (15:32 +0100)]
[ARM] Fix ARMv6 VIPT cache >= 32K
This adds the necessary changes to ensure that we flush the
caches correctly with aliasing VIPT caches.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Linus Torvalds [Thu, 8 Sep 2005 14:21:59 +0000 (07:21 -0700)]
Merge branch 'release' of /linux/kernel/git/lenb/linux-acpi-2.6
John Lenz [Thu, 8 Sep 2005 13:41:54 +0000 (14:41 +0100)]
[ARM] Add suspend/resume support to locomo.c
This adds low-level suspend/resume support to locomo.c.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Hannes Reinecke [Wed, 29 Jun 2005 00:30:38 +0000 (17:30 -0700)]
[PATCH] scan all enabled ports on ata_piix
ICH6 spec defines the PORT_ bits as:
PORT_ENABLED (R/W):
0 = Disabled. The port is in the off state and cannot detect any
devices.
1 = Enabled. The port can transition between the on, partial, and
slumber states and can detect devices.
PORT_PRESENT (R/O)
The status of this bit may change at any time. This bit is cleared
when the port is disabled via PORT_ENABLED. This bit is not cleared upon
surprise removal of a device.
So from a textual view it is not necessary that PORT_PRESENT _must_ be set,
especially if a device detection has to be done anyway. And, in fact, this
is the view that ACER has been taken with its new Laptops (e.g. Travelmate
4150).
And the definition of PORT_ENABLED / PORT_PRESENT is mixed up, btw.
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Jens Axboe <axboe@suse.de>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Garzik [Thu, 8 Sep 2005 09:37:58 +0000 (05:37 -0400)]
Merge /spare/repo/linux-2.6/
Len Brown [Thu, 8 Sep 2005 05:45:47 +0000 (01:45 -0400)]
Merge linux-2.6 with linux-acpi-2.6
Nathan Scott [Thu, 8 Sep 2005 05:38:52 +0000 (15:38 +1000)]
[XFS] Fix modular XFS builds (Makefile botch).
Signed-off-by: Nathan Scott <nathans@sgi.com>
Nathan Scott [Thu, 8 Sep 2005 05:34:58 +0000 (15:34 +1000)]
[XFS] Remove special Kconfig XFS menu, make XFS options "inline".
Signed-off-by: Eric Sandeen <sandeen@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
Nathan Scott [Thu, 8 Sep 2005 05:30:05 +0000 (15:30 +1000)]
[XFS] Cleanup some -Wundef flag warnings in the endian macros (thanks
Christoph).
SGI-PV: 942400
SGI-Modid: xfs-linux-melb:xfs-kern:23771a
Signed-off-by: Nathan Scott <nathans@sgi.com>
Linus Torvalds [Thu, 8 Sep 2005 01:44:33 +0000 (18:44 -0700)]
[SCSI] Re-do "final klist fixes"
With the previous commit that introduces the klist enhancements, we can
now re-do
2b7d6a8cb9718fc1d9e826201b64909c44a915f4 again.
James Bottomley [Tue, 6 Sep 2005 23:56:51 +0000 (16:56 -0700)]
[PATCH] fix klist semantics for lists which have elements removed on traversal
The problem is that klists claim to provide semantics for safe traversal of
lists which are being modified. The failure case is when traversal of a
list causes element removal (a fairly common case). The issue is that
although the list node is refcounted, if it is embedded in an object (which
is universally the case), then the object will be freed regardless of the
klist refcount leading to slab corruption because the klist iterator refers
to the prior element to get the next.
The solution is to make the klist take and release references to the
embedding object meaning that the embedding object won't be released until
the list relinquishes the reference to it.
(akpm: fast-track this because it's needed for the 2.6.13 scsi merge)
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
YOSHIFUJI Hideaki [Thu, 8 Sep 2005 01:19:03 +0000 (10:19 +0900)]
[IPV6]: Support IPV6_{RECV,}TCLASS socket options / ancillary data.
Based on patch from David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
YOSHIFUJI Hideaki [Thu, 8 Sep 2005 00:59:17 +0000 (09:59 +0900)]
[IPV6]: Support several new sockopt / ancillary data in Advanced API (RFC3542).
Support several new socket options / ancillary data:
IPV6_RECVPKTINFO, IPV6_PKTINFO,
IPV6_RECVHOPOPTS, IPV6_HOPOPTS,
IPV6_RECVDSTOPTS, IPV6_DSTOPTS, IPV6_RTHDRDSTOPTS,
IPV6_RECVRTHDR, IPV6_RTHDR,
IPV6_RECVHOPOPTS, IPV6_HOPOPTS
Old semantics are preserved as IPV6_2292xxxx so that
we can maintain backward compatibility.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Linus Torvalds [Thu, 8 Sep 2005 00:50:58 +0000 (17:50 -0700)]
[SCSI] Revert "final klist fixes"
Revert commit
2b7d6a8cb9718fc1d9e826201b64909c44a915f4.
The "fix" was known to not even compile. Duh. That's not a fix.
That's just stupid.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Arnaud Patard [Wed, 7 Sep 2005 20:44:48 +0000 (22:44 +0200)]
[PATCH] sata_sis: Add support for SiS182 chipset
This patch adds support for the SiS182 sata chipset. This is a
minimalistic version of the patch from
http://bugme.osdl.org/show_bug.cgi?id=4192. Basically, it add the PCI
IDs and handles the change of the 2nd port adress register.
Signed-Off-By: Arnaud Patard <apatard@mandriva.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Linus Torvalds [Thu, 8 Sep 2005 00:31:27 +0000 (17:31 -0700)]
Merge /linux/kernel/git/jejb/scsi-for-linus-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:29:07 +0000 (17:29 -0700)]
Merge branch 'drm-fixes' of /linux/kernel/git/airlied/drm-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:28:25 +0000 (17:28 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/misc-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:27:39 +0000 (17:27 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/libata-dev
Linus Torvalds [Thu, 8 Sep 2005 00:23:52 +0000 (17:23 -0700)]
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:22:43 +0000 (17:22 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/netdev-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:21:17 +0000 (17:21 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:20:11 +0000 (17:20 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:23:50 +0000 (23:23 +0100)]
[PATCH] bogus #if (simserial)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:28:32 +0000 (23:28 +0100)]
[PATCH] CHECKFLAGS on ppc64 got broken
Now that asm-powerpc/* is using ifdefs on __powerpc64__ we need to add it
to CHECKFLAGS on ppc64.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:26:35 +0000 (23:26 +0100)]
[PATCH] bogus #if (ncr53c406)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:25:15 +0000 (23:25 +0100)]
[PATCH] bogus #if (smc91x.h)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:21:11 +0000 (23:21 +0100)]
[PATCH] bogus #if (arch/um/kernel/mem.c)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:19:41 +0000 (23:19 +0100)]
[PATCH] -Wundef fixes (hisax)
CARD_... in hisax are all used with #if; CARD_FN_ENTERNOW_PCI lacks define
to 0 if corresponding config option is not set.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:18:24 +0000 (23:18 +0100)]
[PATCH] -Wundef fixes (ncr5380)
NDEBUG and NDEBUG_ABORT are almost always used as integers in NCR5380; added
define to 0 if they are not defined, switched lone ifdef NDEBUG into if.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:16:59 +0000 (23:16 +0100)]
[PATCH] -Wundef fixes (hamachi)
All uses of ADDRLEN are comparisons with 64 (it's an address width).
added define to 32 (again, we only care about comparisons with 64)
if not defined.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 21:33:51 +0000 (22:33 +0100)]
[PATCH] bogus symbol used in arch/um/os-Linux/elf_aux.c
elf_aux is userland code; it uses symbol (ELF_CLASS) that doesn't exist in
userland headers; pulled into kernel-offsets.h, switched elf_aux to using it.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 18:35:49 +0000 (19:35 +0100)]
[PATCH] updated mail address
parcelfarce is dead...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 01:06:57 +0000 (02:06 +0100)]
[PATCH] iomem annotations (sound/arm/aaci)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 01:02:22 +0000 (02:02 +0100)]
[PATCH] lost chunk of "uml: build cleanups"
A piece of the UML stubs patch got lost - it has
Killed STUBS_CFLAGS - it's not needed and the only remaining use had been
gratitious - it only polluted CFLAGS
in description and does remove it in arch/um/Makefile-x86_64, but forgets to
do the same in i386 counterpart. Lost chunk follows:
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 00:48:42 +0000 (01:48 +0100)]
[PATCH] Kconfig fix (BLK_DEV_FD dependencies)
Sanitized and fixed floppy dependencies: split the messy dependencies for
BLK_DEV_FD by introducing a new symbol (ARCH_MAY_HAVE_PC_FDC), making
BLK_DEV_FD depend on that one and taking declarations of ARCH_MAY_HAVE_PC_FDC
to arch/*/Kconfig. While we are at it, fixed several obvious cases when
BLK_DEV_FD should have been excluded (architectures lacking asm/floppy.h
are *not* going to have floppy.c compile, let alone work).
If you can come up with better name for that ("this architecture might
have working PC-compatible floppy disk controller"), you are more than
welcome - just s/ARCH_MAY_HAVE_PC_FDC/your_prefered_name/g in the patch
below...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@zenIV.linux.org.uk [Fri, 2 Sep 2005 19:15:29 +0000 (20:15 +0100)]
[PATCH] s2io u64 use for uintptr_t
u64 is not uintptr_t; unsigned long is...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 8 Sep 2005 00:02:24 +0000 (17:02 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Thu, 8 Sep 2005 00:00:53 +0000 (17:00 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Michael Krufky [Tue, 6 Sep 2005 22:19:40 +0000 (15:19 -0700)]
[PATCH] DVB: lgdt330x check callback fix
Most of the patch is whitespace cleanup, but more importantly, this patch
checks to see whether a callback is set before calling it. On cx88 boards
(currently the only boards using lgdt330x in 2.6.13) every callback is set.
However, newer drivers currently in development leave a callback undefined,
and lgdt330x must not call it if it isn't defined.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Michael Krufky [Tue, 6 Sep 2005 22:19:38 +0000 (15:19 -0700)]
[PATCH] DVB: Clarify description text for dvb-bt8xx in Kconfig
Patrick Keene wrote to the linux-dvb list, asking where in menuconfig he
can enable dvb-bt8xx for his AVerMedia DVB card. I pointed the following
out to him:
config DVB_BT8XX
tristate "Nebula/Pinnacle PCTV/Twinhan PCI cards"
It has been agreed upon that this description is extremely misleading.
This patch changes the one-liner description text of dvb-bt8xx to something
more meaningful, and adds AVerMedia to the detailed description.
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ralf Baechle [Tue, 6 Sep 2005 22:19:37 +0000 (15:19 -0700)]
[PATCH] Indycam / VINO drivers
Rewrite of the Indycam / VINO video v4l2 drivers for the SGI Indy.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Mikael Nousiainen <tmnousia@cc.hut.fi>
Cc: <video4linux-list@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Miklos Szeredi [Tue, 6 Sep 2005 22:19:36 +0000 (15:19 -0700)]
[PATCH] pivot_root() circular reference fix
Fix http://bugzilla.kernel.org/show_bug.cgi?id=4857
When pivot_root is called from an init script in an initramfs environment,
it causes a circular reference in the mount tree.
The cause of this is that pivot_root() is not prepared to handle pivoting
an unattached mount. In an initramfs environment, rootfs is the root of
the namespace, and so it is not attached.
This patch fixes this and related problems, by returning -EINVAL if either
the current root or the new root is detached.
Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Acked-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Cc: <bigfish@asmallpond.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Keshavamurthy Anil S [Tue, 6 Sep 2005 22:19:35 +0000 (15:19 -0700)]
[PATCH] kprobes: fix bug when probed on task and isr functions
This patch fixes a race condition where in system used to hang or sometime
crash within minutes when kprobes are inserted on ISR routine and a task
routine.
The fix has been stress tested on i386, ia64, pp64 and on x86_64. To
reproduce the problem insert kprobes on schedule() and do_IRQ() functions
and you should see hang or system crash.
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Acked-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>