Trond Myklebust [Tue, 13 Dec 2005 21:13:52 +0000 (16:13 -0500)]
RPC: Do not block on skb allocation
If we get something like the following,
[ 125.300636] [<
c04086e1>] schedule_timeout+0x54/0xa5
[ 125.305931] [<
c040866e>] io_schedule_timeout+0x29/0x33
[ 125.311495] [<
c02880c4>] blk_congestion_wait+0x70/0x85
[ 125.317058] [<
c014136b>] throttle_vm_writeout+0x69/0x7d
[ 125.322720] [<
c014714d>] shrink_zone+0xe0/0xfa
[ 125.327560] [<
c01471d4>] shrink_caches+0x6d/0x6f
[ 125.332581] [<
c01472a6>] try_to_free_pages+0xd0/0x1b5
[ 125.338056] [<
c013fa4b>] __alloc_pages+0x135/0x2e8
[ 125.343258] [<
c03b74ad>] tcp_sendmsg+0xaa0/0xb78
[ 125.348281] [<
c03d4666>] inet_sendmsg+0x48/0x53
[ 125.353212] [<
c0388716>] sock_sendmsg+0xb8/0xd3
[ 125.358147] [<
c0388773>] kernel_sendmsg+0x42/0x4f
[ 125.363259] [<
c038bc00>] sock_no_sendpage+0x5e/0x77
[ 125.368556] [<
c03ee7af>] xs_tcp_send_request+0x2af/0x375
then the socket is blocked until memory is reclaimed, and no
progress can ever be made.
Try to access the emergency pools by using GFP_ATOMIC.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Linus Torvalds [Tue, 20 Dec 2005 02:34:37 +0000 (18:34 -0800)]
Merge branch 'to_linus' of /linux/kernel/git/mchehab/v4l-dvb
Neil Brown [Tue, 20 Dec 2005 00:07:00 +0000 (11:07 +1100)]
[PATCH] md: Change case of raid level reported in sys/mdX/md/level
I had thought that keeping the reported tail level clearly different
from the module name was a good idea, but I've changed my mind.
'raid5' is better and probably less confusing than 'RAID-5'.
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ben Collins [Mon, 19 Dec 2005 19:49:24 +0000 (11:49 -0800)]
[PATCH] block: Cleanup CDROMEJECT ioctl
This is just a basic cleanup. No change in functionality.
Signed-off-by: Ben Collins <bcollins@ubuntu.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Tue, 20 Dec 2005 00:46:14 +0000 (16:46 -0800)]
Merge /pub/scm/linux/kernel/git/davem/tg3-2.6
Linus Torvalds [Tue, 20 Dec 2005 00:43:57 +0000 (16:43 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Tue, 20 Dec 2005 00:43:36 +0000 (16:43 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Tue, 20 Dec 2005 00:43:13 +0000 (16:43 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Michael Chan [Tue, 20 Dec 2005 00:27:28 +0000 (16:27 -0800)]
[TG3]: Fix ethtool memory test
Skip the memory 0xb50 to 0x1000 during "ethtool -t" memory test.
Overwriting memory in this region can cause ASF problems.
Update version and release date.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Chan [Tue, 20 Dec 2005 00:27:04 +0000 (16:27 -0800)]
[TG3]: Add tw32_wait_f() for some sensitive registers
The tw32_f() function (register write with immediate read flush) can
hang when used on some registers to switch clock frequencies and
power. A new tw32_wait_f() is added for such registers with the
delay before the read and after the read.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Chan [Tue, 20 Dec 2005 00:26:28 +0000 (16:26 -0800)]
[TG3]: Some low power fixes
Add some missing workarounds in tg3_set_power_state():
1. Workaround to prevent overdrawing current on 5714.
2. Do not power down 5700's PHY because of hw limitation.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Chan [Tue, 20 Dec 2005 00:26:02 +0000 (16:26 -0800)]
[TG3]: Fix peer device handling
Locate the pdev_peer for dual port 5714 NIC devices in addition to
5704 devices. The name is also changed to tg3_find_peer() from
tg3_find_5704_peer(). It is also necessary to call netdev_priv() to
get to the peer's private tg3 structure.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Adrian Bunk [Mon, 19 Dec 2005 22:52:24 +0000 (14:52 -0800)]
[SPARC]: Fix RTC build failure.
On sparc and sparc64, the rtc driver doesn't compile with PCI support
disabled.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Neil Horman [Mon, 19 Dec 2005 22:24:40 +0000 (14:24 -0800)]
[SCTP]: Fix sctp to not return erroneous POLLOUT events.
Make sctp_writeable() use sk_wmem_alloc rather than sk_wmem_queued to
determine the sndbuf space available. It also removes all the modifications
to sk_wmem_queued as it is not currently used in SCTP.
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 19 Dec 2005 22:23:23 +0000 (14:23 -0800)]
[IPSEC]: Perform SA switchover immediately.
When we insert a new xfrm_state which potentially
subsumes an existing one, make sure all cached
bundles are flushed so that the new SA is used
immediately.
Signed-off-by: David S. Miller <davem@davemloft.net>
Nicolas Pitre [Mon, 19 Dec 2005 22:20:51 +0000 (22:20 +0000)]
[ARM] 3210/1: add missing memory barrier helper for NPTL support
Patch from Nicolas Pitre
Strictly speaking, the NPTL kernel helpers are required for pre ARMv6
only. They are available on ARMv6+ as well for obvious compatibility
reasons. However there are cases where extra memory barriers are needed
when using an SMP ARMv6 machine but not on pre-ARMv6.
This patch adds a memory barrier kernel helper that glibc can use as
needed for pre-ARMv6 binaries to be forward compatible with an SMP
kernel on ARMv6, as well as the necessary dmb instructions to the
cmpxchg helper.
Signed-off-by: Nicolas Pitre <nico@cam.org>
Acked-by: Daniel Jacobowitz <dan@codesourcery.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Patrick McHardy [Mon, 19 Dec 2005 22:03:46 +0000 (14:03 -0800)]
[XFRM]: Handle DCCP in xfrm{4,6}_decode_session
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
YOSHIFUJI Hideaki [Mon, 19 Dec 2005 22:02:45 +0000 (14:02 -0800)]
[IPV6]: Fix route lifetime.
The route expiration time is stored in rt6i_expires in jiffies.
The argument of rt6_route_add() for adding a route is not the
expiration time in jiffies nor in clock_t, but the lifetime
(or time left before expiration) in clock_t.
Because of the confusion, we sometimes saw several strange errors
(FAILs) in TAHI IPv6 Ready Logo Phase-2 Self Test.
The symptoms were analyzed by Mitsuru Chinen <CHINEN@jp.ibm.com>.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Bart De Schuymer [Mon, 19 Dec 2005 22:00:08 +0000 (14:00 -0800)]
[BRIDGE-NF]: Fix bridge-nf ipv6 length check
A typo caused some bridged IPv6 packets to get dropped randomly,
as reported by Sebastien Chaumontet. The patch below fixes this
(using skb->nh.raw instead of raw) and also makes the jumbo packet
length checking up-to-date with the code in
net/ipv6/exthdrs.c::ipv6_hop_jumbo.
Signed-off-by: Bart De Schuymer <bdschuym@pandora.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
Kristian Slavov [Mon, 19 Dec 2005 21:54:44 +0000 (13:54 -0800)]
[RTNETLINK]: Fix RTNLGRP definitions in rtnetlink.h
I reported a problem and gave hints to the solution, but nobody seemed
to react. So I prepared a patch against 2.6.14.4.
Tested on 2.6.14.4 with "ip monitor addr" and with the program
attached, while adding and removing IPv6 address. Both programs didn't
receive any messages. Tested 2.6.14.4 + this patch, and both programs
received add and remove messages.
Signed-off-by: Kristian Slavov <kristian.slavov@nomadiclab.com>
Acked-by: Jamal Hadi salim <hadi@cyberus.ca>
ACKed-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 19 Dec 2005 21:53:26 +0000 (13:53 -0800)]
[NETFILTER]: Fix incorrect dependency for IP6_NF_TARGET_NFQUEUE
IP6_NF_TARGET_NFQUEUE depends on IP6_NF_IPTABLES, not IP_NF_IPTABLES.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 19 Dec 2005 21:53:09 +0000 (13:53 -0800)]
[NETFILTER]: Fix NAT init order
As noticed by Phil Oester, the GRE NAT protocol helper is initialized
before the NAT core, which makes registration fail.
Change the linking order to make NAT be initialized first.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mauro Carvalho Chehab [Mon, 19 Dec 2005 11:15:13 +0000 (09:15 -0200)]
[PATCH] V4L/DVB SCM Maintainers Update
- This patch updates MAINTAINERS file by replacing quilt to git SCM
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Mauro Carvalho Chehab [Mon, 19 Dec 2005 10:54:11 +0000 (08:54 -0200)]
[PATCH] V4L/DVB (3189): Fix a broken logic that didn't cover all standards.
- Fix a broken logic that didn't cover all standards.
- Fix compilation failure with gcc 2.95.3.
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Oliver Endriss [Mon, 19 Dec 2005 10:54:11 +0000 (08:54 -0200)]
[PATCH] V4L/DVB (3181): Enable SPDIF output for DVB-S rev 2.3
- Enable SPDIF output for DVB-S rev 2.3. Firmware 2623 or higher required.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Ricardo Cerqueira [Mon, 19 Dec 2005 10:54:11 +0000 (08:54 -0200)]
[PATCH] V4L/DVB (3180): Fix tuner 100 definition for hauppauge eeprom
- Tuner 100 is the TUNER_PHILIPS_FMD1216ME_MK3, not TUNER_ABSENT. This
was causing the tuner module to be skipped, and rendered boards with this
value in the eeprom (like the HVR1100) unable to tune
Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Jean Delvare [Mon, 19 Dec 2005 10:53:59 +0000 (08:53 -0200)]
[PATCH] V4L/DVB (3188): Fix compilation failure with gcc 2.95.3.
- Fix compilation failure with gcc 2.95.3.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Linus Torvalds [Mon, 19 Dec 2005 00:36:54 +0000 (16:36 -0800)]
Linux v2.6.15-rc6
Also renamed in honor of Portland being snowed in and everybody sliding
around on the highways like greased pumpkins.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Mon, 19 Dec 2005 00:31:56 +0000 (16:31 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/scjody/ieee1394
Kyungmin Park [Fri, 16 Dec 2005 02:17:29 +0000 (11:17 +0900)]
[PATCH] mtd onenand driver: use platform_device.h instead device.h
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Kyungmin Park [Fri, 16 Dec 2005 02:17:29 +0000 (11:17 +0900)]
[PATCH] mtd onenand driver: reduce stack usage
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Kyungmin Park [Fri, 16 Dec 2005 02:17:29 +0000 (11:17 +0900)]
[PATCH] mtd onenand driver: fix unlock problem in DDP
Kyungmin Park [Fri, 16 Dec 2005 02:17:29 +0000 (11:17 +0900)]
[PATCH] mtd onenand driver: check correct manufacturer
This (and the three subsequent patches) is working well on OMAP H4 with
2.6.15-rc4 kernel and passes the LTP fs test.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jean Delvare [Sat, 17 Dec 2005 22:20:55 +0000 (23:20 +0100)]
[PATCH] radeon drm: fix compilation breakage with gcc 2.95.3
Fix a typo which breaks radeon drm compilation with gcc 2.95.3.
The offending line was added back in 2.6.11-rc3, but was harmless
back then. A recent addition nearby changed it into a compilation
breaker: commit
281ab031a8c9e5b593142eb4ec59a87faae8676a.
The doubled semi-colon ends up being an empty instruction, and the
variable declaration thus ends up being in the middle of "code".
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Mark M. Hoffman <mhoffman@lightlink.com>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Sat, 17 Dec 2005 16:42:54 +0000 (11:42 -0500)]
[PATCH] Input: fix an OOPS in HID driver
This patch fixes an OOPS in HID driver when connecting simulation
devices generating unknown simulation events.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jeff Dike [Sun, 18 Dec 2005 16:50:39 +0000 (17:50 +0100)]
[PATCH] uml skas0: stop gcc's insanity
With Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
UML skas0 stub has been miscompiling for many people (incidentally not
the authors), depending on the used GCC versions.
I think (and testing on some GCC versions shows) this patch avoids the
fundamental issue which is behind this, namely gcc using the stack when
we have just replaced it, behind gcc's back. The remapping and storage
of the return value is hidden in a blob of asm, hopefully giving gcc no
room for creativity.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Sun, 18 Dec 2005 16:50:37 +0000 (17:50 +0100)]
[PATCH] uml - fix some funkiness in Kconfig
So you may have seen the miniconfig stuff wander by, which means that my
build script exits if there's a .config error, and we have this:
fs/Kconfig:1749:warning: 'select' used by config symbol 'CIFS_UPCALL'
refer to undefined symbol 'CONNECTOR'
This makes it shut up.
Signed-off-by: Rob Landley <rob@landley.net>
[ Verified it makes sense. ]
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Rob Landley [Sun, 18 Dec 2005 16:50:35 +0000 (17:50 +0100)]
[PATCH] uml: fix dynamic linking on some 64-bit distros
With Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
The current UML build assumes that on x86-64 systems, /lib is a symlink
to /lib64, but in some distributions (like PLD and CentOS) they are
separate directories, so the 64 bit library loader isn't found. This
patch inserts /lib64 at the start of the rpath on x86-64 UML builds.
Signed-off-by: Rob Landley <rob@landley.net>
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Sun, 18 Dec 2005 16:50:32 +0000 (17:50 +0100)]
[PATCH] uml: arch/um/scripts/Makefile.rules - remove duplicated code
Duplicated code - the patch adding it was probably applied twice without
enough care.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Salyzyn, Mark [Sun, 18 Dec 2005 03:26:30 +0000 (19:26 -0800)]
[PATCH] dpt_i2o fix for deadlock condition
Miquel van Smoorenburg <miquels@cistron.nl> forwarded me this fix to
resolve a deadlock condition that occurs due to the API change in
2.6.13+ kernels dropping the host locking when entering the error
handling. They all end up calling adpt_i2o_post_wait(), which if you
call it unlocked, might return with host_lock locked anyway and that
causes a deadlock.
Signed-off-by: Mark Salyzyn <aacraid@adaptec.com>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ben Collins [Sun, 18 Dec 2005 02:39:23 +0000 (18:39 -0800)]
[PATCH] i2o: Do not disable pci device when it's in use
When dpt_i2o is loaded first, i2o being loaded would cause it to call
pci_device_disable, thus breaking dpt_i2o's use of the device. Based on
similar usage of pci_disable_device in other drivers.
Signed-off-by: Ben Collins <bcollins@ubuntu.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Russell King [Sat, 17 Dec 2005 15:25:42 +0000 (15:25 +0000)]
[ARM] Fix sys_sendto and sys_recvfrom 6-arg syscalls
Rather than providing more wrappers for 6-arg syscalls, arrange for
them to be supported as standard. This just means that we always
store the 6th argument on the stack, rather than in the wrappers.
This means we eliminate the wrappers for:
* sys_futex
* sys_arm_fadvise64_64
* sys_mbind
* sys_ipc
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Linus Torvalds [Fri, 16 Dec 2005 22:43:57 +0000 (14:43 -0800)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6
Al Viro [Fri, 16 Dec 2005 22:35:23 +0000 (22:35 +0000)]
[PATCH] ppc: ppc4xx_dma DMA_MODE_{READ,WRITE} fix
DMA_MODE_{READ,WRITE} are declared in asm-powerpc/dma.h and their
declarations there match the definitions. Old declarations in
ppc4xx_dma.h are not right anymore (wrong type, to start with).
Killed them, added include of asm/dma.h where needed.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Fri, 16 Dec 2005 22:35:28 +0000 (22:35 +0000)]
[PATCH] ppc: booke_wdt compile fix
booke_wdt.c had been missed in cpu_specs[] removal sweep
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jody McIntyre [Fri, 16 Dec 2005 22:10:35 +0000 (17:10 -0500)]
Merge ... /linux/kernel/git/torvalds/linux-2.6.git
Alan Stern [Fri, 16 Dec 2005 19:09:01 +0000 (11:09 -0800)]
[PATCH] UHCI: add missing memory barriers
This patch (as617) adds a couple of memory barriers that Ben H. forgot in
his recent suspend/resume fix.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Fri, 16 Dec 2005 19:08:55 +0000 (11:08 -0800)]
[PATCH] PCI: Fix dumb bug in mmconfig fix
Use correct address when referencing mmconfig aperture while checking
for broken MCFG. This was a typo when porting the code from 64bit to
32bit. It caused oopses at boot on some ThinkPads.
Should definitely go into 2.6.15.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Milton Miller [Fri, 16 Dec 2005 19:08:48 +0000 (11:08 -0800)]
[PATCH] PCI express must be initialized before PCI hotplug
PCI express hotplug uses the pcieportbus driver so pcie must be
initialized before hotplug/. This patch changes the link order.
Signed-Off-By: Milton Miller <miltonm@bga.com>
Acked-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Mark A. Greer [Fri, 16 Dec 2005 19:08:43 +0000 (11:08 -0800)]
[PATCH] i2c: Fix i2c-mv64xxx compilation error
The busses/i2c-mv64xxx.c driver doesn't currently compile because of an
incorrect argument to dev_err(). This patch fixes that.
Signed-off-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Christoph Lameter [Mon, 12 Dec 2005 17:34:32 +0000 (09:34 -0800)]
[IA64] Add __read_mostly support for IA64
sparc64, i386 and x86_64 have support for a special data section dedicated
to rarely updated data that is frequently read. The section was created to
avoid false sharing of those rarely read data with frequently written kernel
data.
This patch creates such a data section for ia64 and will group rarely written
data into this section.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
hawkes@sgi.com [Tue, 13 Dec 2005 21:45:44 +0000 (13:45 -0800)]
[IA64-SGI] change default_sn2 to NR_CPUS==1024
Change the NR_CPUS default for ia64/sn up to 1024.
Signed-off-by: John Hawkes <hawkes@sgi.com>
Signed-off-by: John Hesterberg <jh@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Jack Steiner [Thu, 15 Dec 2005 18:41:22 +0000 (12:41 -0600)]
[IA64-SGI] Missed TLB flush
I see why the problem exists only on SN. SN uses a different hardware
mechanism to purge TLB entries across nodes.
It looks like there is a bug in the SN TLB flushing code. During context switch,
kernel threads inherit the mm of the task that was previously running on the
cpu. This confuses the code in sn2_global_tlb_purge().
The result is a missed TLB purge for the task that owns the "borrowed" mm.
(I hit the problem running heavy stress where kswapd was purging code pages of
a user task that woke kswapd. The user task took a SIGILL fault trying to
execute code in the page that had been ripped out from underneath it).
Signed-off-by: Jack Steiner <steiner@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Jes Sorensen [Fri, 16 Dec 2005 16:00:03 +0000 (11:00 -0500)]
[IA64] uncached ref count leak
Use raw_smp_processor_id() instead of get_cpu() as we don't need the
extra features of get_cpu().
Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Linus Torvalds [Fri, 16 Dec 2005 18:21:23 +0000 (10:21 -0800)]
Make sure we copy pages inserted with "vm_insert_page()" on fork
The logic that decides that a fork() might be able to avoid copying a VM
area when it can be re-created by page faults didn't know about the new
vm_insert_page() case.
Also make some things a bit more anal wrt VM_PFNMAP.
Pointed out by Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
John Hawkes [Fri, 16 Dec 2005 18:00:24 +0000 (10:00 -0800)]
[IA64] disable preemption in udelay()
The udelay() inline for ia64 uses the ITC. If CONFIG_PREEMPT is enabled
and the platform has unsynchronized ITCs and the calling task migrates
to another CPU while doing the udelay loop, then the effective delay may
be too short or very, very long.
This patch disables preemption around 100 usec chunks of the overall
desired udelay time. This minimizes preemption-holdoffs.
udelay() is now too big to be inline, move it out of line and export it.
Signed-off-by: John Hawkes <hawkes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Benjamin Herrenschmidt [Fri, 16 Dec 2005 05:52:22 +0000 (16:52 +1100)]
[PATCH] radeon drm: fix agp aperture map offset
This finally fixes the radeon memory mapping bug that was incorrectly
fixed by the previous patch. This time, we use the actual vram size as
the size to calculate how far to move the AGP aperture from the
framebuffer in card's memory space.
If there are still issues with this patch, they are due to bugs in the X
driver that I'm working on fixing too.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Mark M. Hoffman <mhoffman@lightlink.com>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Sergei Shtylylov [Thu, 15 Dec 2005 20:34:30 +0000 (12:34 -0800)]
[PATCH] Au1550 AC'97 OSS driver spinlock fixes
We have found some issues with Au1550 AC'97 OSS driver in 2.6
(sound/oss/au1550_ac97.c), though it also should concern 2.4 driver
(drivers/sound/au1550_psc.c).
start_dac() grabs a spinlock already held by its caller, au1550_write().
This doesn't show up with the standard UP spinlock impelmentation but when
the different one (mutex based) is in use, a lockup happens.
And the interrupt handlers also didn't grab the spinlock -- that's OK in
the usual kernel but not when the IRQ handlers are threaded. So, they're
grabbing the spinlock now (as every correct interrupt handler should do).
Signed-off-by: Konstantin Baidarov <kbaidarov@ru.mvista.com>
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Adrian Bunk [Thu, 15 Dec 2005 20:34:29 +0000 (12:34 -0800)]
[PATCH] drivers/base/memory.c: unexport the static (sic) memory_sysdev_class
We can't export a static struct to modules.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo Galtieri [Thu, 15 Dec 2005 20:34:28 +0000 (12:34 -0800)]
[PATCH] IPMI oops fix
While doing some testing I discovered that if the BIOS on a board does not
properly setup the DMI information it leads to a panic in the IPMI code.
The panic is due to dereferencing a pointer which is not initialized. The
pointer is initialized in port_setup() and/or mem_setup() and used in
init_one_smi() and cleanup_one_si(), however if either port_setup() or
mem_setup() return ENODEV the pointer does not get initialized.
Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com>
Acked-by: Corey Minyard <cminyard@mvista.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:19:10 +0000 (09:19 +0000)]
[PATCH] arch/powerpc/kernel/syscalls.c __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:19:05 +0000 (09:19 +0000)]
[PATCH] drivers/input/misc/wistron_btns.c NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:19:00 +0000 (09:19 +0000)]
[PATCH] mwave: missing __user in ioctl struct declaration
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:55 +0000 (09:18 +0000)]
[PATCH] drivers/atm/adummy.c NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:50 +0000 (09:18 +0000)]
[PATCH] arch/alpha/kernel/machvec_impl.h: C99 struct initializer
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:45 +0000 (09:18 +0000)]
[PATCH] dst_ca __user annotations, portability fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:40 +0000 (09:18 +0000)]
[PATCH] ia64 sn __iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:30 +0000 (09:18 +0000)]
[PATCH] Address of void __user * is void __user * *, not void * __user *
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:25 +0000 (09:18 +0000)]
[PATCH] missing prototype (mm/page_alloc.c)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:20 +0000 (09:18 +0000)]
[PATCH] __user annotations (booke_wdt.c)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:15 +0000 (09:18 +0000)]
[PATCH] arcfb __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:10 +0000 (09:18 +0000)]
[PATCH] cyber2000fb.c __iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:05 +0000 (09:18 +0000)]
[PATCH] wdrtas.c: fix __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:18:00 +0000 (09:18 +0000)]
[PATCH] dell_rbu: NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:55 +0000 (09:17 +0000)]
[PATCH] cm4000_cs: __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:50 +0000 (09:17 +0000)]
[PATCH] i386,amd64: ioremap.c __iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:44 +0000 (09:17 +0000)]
[PATCH] i386,amd64: mmconfig __iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:39 +0000 (09:17 +0000)]
[PATCH] em28xx: %zd for size_t
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:34 +0000 (09:17 +0000)]
[PATCH] auerswald.c: %zd for size_t
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:29 +0000 (09:17 +0000)]
[PATCH] s2io: __iomem annotations for recent changes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:24 +0000 (09:17 +0000)]
[PATCH] xfs: missing gfp_t annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Thu, 15 Dec 2005 09:17:19 +0000 (09:17 +0000)]
[PATCH] iscsi gfp_t annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 11:04:55 +0000 (06:04 -0500)]
[PATCH] arch/sparc/kernel/led.c __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 10:56:39 +0000 (05:56 -0500)]
[PATCH] sun4c_memerr_reg __iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 4 Dec 2005 23:48:45 +0000 (18:48 -0500)]
[PATCH] sparc: NULL noise removal (ebus.c)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 10:55:44 +0000 (05:55 -0500)]
[PATCH] sparc/kernel/time: __iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 10:54:54 +0000 (05:54 -0500)]
[PATCH] sbus/char/uctrl: missing prototypes and NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 10:51:43 +0000 (05:51 -0500)]
[PATCH] sparc: jsflash __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 10:50:56 +0000 (05:50 -0500)]
[PATCH] sparc: vfc __iomem annotations and fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Tue, 6 Dec 2005 10:44:18 +0000 (05:44 -0500)]
[PATCH] fix iomem annotations in sparc32 pcic code
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 15 Dec 2005 02:58:46 +0000 (18:58 -0800)]
Merge /pub/scm/linux/kernel/git/bart/ide-2.6
Jeff Mahoney [Wed, 14 Dec 2005 19:38:05 +0000 (14:38 -0500)]
[PATCH] reiserfs: close open transactions on error path
The following patch fixes a bug where if the journal is aborted, it can
leave a transaction open. The result will be a BUG when another code
path attempts to start a transaction and will get a "nesting into
different fs" error, since current->journal_info will be left non-NULL.
Original fix against SUSE kernel by Chris Mason <mason@suse.com>
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jeff Mahoney [Wed, 14 Dec 2005 19:38:36 +0000 (14:38 -0500)]
[PATCH] reiserfs: skip commit on io error
This should have been part of the original io error patch, but got
dropped somewhere along the way.
It's extremely important when handling the i/o error in the journal to
not commit the transaction with corrupt data. This patch adds that code
back in.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Vojtech Pavlik [Thu, 15 Dec 2005 02:47:00 +0000 (21:47 -0500)]
[PATCH] Input: ALPS - correctly report button presses on Fujitsu Siemens S6010
Without this patch Forward and Backward buttons on the touchpad do not
generate any events.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 15 Dec 2005 02:52:21 +0000 (18:52 -0800)]
Move size optimization option outside of EMBEDDED menu, mark it EXPERIMENTAL
Also, disable on sparc64 - a number of people report breakage. Probably
a compiler bug, but it's quite possible that it tickles some latent
kernel problem too.
It still defaults to 'y' everywhere else (when enabled through
EXPERIMENTAL), and Dave Jones points out that Fedora (and RHEL4) has
been building with size optimizations for a long time on x86, x86-64,
ia64, s390, s390x, ppc32 and ppc64. So it is really only moderately
experimental, but the sparc64 breakage certainly shows that it can
trigger "issues".
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 15 Dec 2005 02:46:41 +0000 (18:46 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 15 Dec 2005 02:40:02 +0000 (18:40 -0800)]
Merge /linux/kernel/git/jejb/scsi-rc-fixes-2.6
Bartlomiej Zolnierkiewicz [Thu, 15 Dec 2005 01:20:49 +0000 (02:20 +0100)]
[PATCH] ide-cd: remove write-only cmd field from struct cdrom_info
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Bartlomiej Zolnierkiewicz [Thu, 15 Dec 2005 01:20:15 +0000 (02:20 +0100)]
[PATCH] ide: cleanup ide_driver_t
Remove unused fields: ioctl, ata[pi]_prebuilder.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Bartlomiej Zolnierkiewicz [Thu, 15 Dec 2005 01:19:57 +0000 (02:19 +0100)]
[PATCH] ide: cleanup ide.h
Remove:
* stale comment
* unused HOST() macro
* unused ata_{error,control}_t types
* unused atapi_select_t type
* ide_init_subdrivers() prototype
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>