commit e0f2e3a06be513352cb4955313ed7e55909acd84 Author: Linus Torvalds Date: Sun Mar 25 15:56:23 2007 -0700 Linux 2.6.21-rc5 .. hopefully most of the fallout of the timer changes is contained now. Signed-off-by: Linus Torvalds commit 948ac6d71cf868b431adb3139d8dfbd9c4e4a6ca Author: Thomas Gleixner Date: Sun Mar 25 14:42:51 2007 +0200 [PATCH] clocksource: Fix thinko in watchdog selection The watchdog implementation excludes low res / non continuous clocksources from being selected as a watchdog reference unintentionally. Allow using jiffies/PIT as a watchdog reference as long as no better clocksource is available. This is necessary to detect TSC breakage on systems, which have no pmtimer/hpet. The main goal of the initial patch (preventing to switch to highres/nohz when no reliable fallback clocksource is available) is still guaranteed by the checks in clocksource_watchdog(). Signed-off-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 9501b6cf5541f0d576d566a463f1e7d3eaaab4eb Author: Thomas Gleixner Date: Sun Mar 25 14:31:17 2007 +0200 [PATCH] dynticks: fix hrtimer rounding error in next_timer_interrupt The rework of next_timer_interrupt() fixed the timer wheel bugs, but invented a rounding error versus the next hrtimer event. This is caused by the conversion of the hrtimer internal representation to relative jiffies. This causes bug #8100: http://bugzilla.kernel.org/show_bug.cgi?id=8100 next_timer_interrupt() returns "now" in such a case and causes the code in tick_nohz_stop_sched_tick() to trigger the timer softirq, which is bogus as no timer is due for expiry. This results in an endless context switching between idle and ksoftirqd until a timer is due for expiry. Modify the hrtimer evaluation so that, it returns now + 1, when the conversion results in a delta < 1 jiffie. It's confirmed to resolve bug #8100 Reported-by: Emil Karlson Signed-off-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 0fa7d868ca456ddf4f41b700fd9dee186f8f4e12 Author: Patrick Ringl Date: Sat Mar 24 23:56:58 2007 +0100 [PATCH] fix typos in net/ieee80211/Kconfig This is just a QA / cosmetic fix .. [ "a modules" => "a module" ] Signed-off-by: Linus Torvalds commit f5ae29e284b328e0976789d5c199bbbe80e4b005 Author: Michael Krufky Date: Sat Mar 24 13:21:53 2007 -0400 [PATCH] cx88-dvb: fix nxt200x rf input switching After dvb tuner refactoring, the pllbuff has been altered such that the pll address is now stored in buf[0]. Instead of sending buf to set_pll_input, we should send buf+1. Signed-off-by: Michael Krufky Cc: Mauro Carvalho Chehab Cc: Ivan Andrewjeski Signed-off-by: Linus Torvalds commit 53698d2537bc8c2b8fedc788b8b927da9a004f9b Author: Guennadi Liakhovetski Date: Thu Mar 22 13:06:55 2007 +0100 [ARM] 4278/1: configure pxa27x I2C SCL as "input" It has been reported by Julian Deng that configuring the pxa27x i2c SCL line as output generates a short negative pulse on it during the call to pxa_gpio_mode(GPIO117_I2CSCL_MD); as it first switches it to output and then configures it for the alternate function. The SCL line is in fact bidirectional and can also be configured as 117 | GPIO_ALT_FN_1_IN, in which case the pulse is not generated. This is exactly what this patch does. Author: Julian Deng Signed-off-by: G. Liakhovetski Signed-off-by: Russell King commit d9a5c0a4e0b4c84850a1a5bbacba3f7858b67037 Author: Thomas Gleixner Date: Sat Mar 24 23:02:49 2007 +0100 [PATCH] i386: Prevent early access to TSC to avoid crash on TSCless systems commit f9690982b8c2f9a2c65acdc113e758ec356676a3 removed the check for cpu_khz from sched_clock(), which prevented early access to the TSC by non obvious magic. This is harmless as long as the CPU has a TSC. On TSCless systems this results in an illegal instruction trap. Replace tsc_disabled and tsc_unstable by tsc_enabled, which is only set when the tsc is available and not unstable. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 8fb303c7f1118b0a82aa08e33429adf9b5ad192c Author: Ralf Baechle Date: Sat Mar 24 14:26:13 2007 +0000 [MIPS] SB1250: Fix bugs/warnings by creative use of volatile. Signed-off-by: Ralf Baechle commit 41a8198f61d858bcad7ef705d5d3ec3e3a8dea4a Author: Ralf Baechle Date: Sat Mar 24 14:09:59 2007 +0000 [MIPS] SB1: Fix pile of gcc's bogus format string warnings. CC arch/mips/mm/cerr-sb1.o arch/mips/mm/cerr-sb1.c: In function 'sb1_cache_error': arch/mips/mm/cerr-sb1.c:235: warning: format '%010llx' expects type 'long long unsigned int', but argument 2 has type 'uint64_t' arch/mips/mm/cerr-sb1.c: In function 'extract_ic': arch/mips/mm/cerr-sb1.c:385: warning: format '%016llx' expects type 'long long unsigned int', but argument 3 has type 'uint64_t' arch/mips/mm/cerr-sb1.c:385: warning: format '%016llX' expects type 'long long unsigned int', but argument 6 has type 'uint64_t' arch/mips/mm/cerr-sb1.c: In function 'extract_dc': arch/mips/mm/cerr-sb1.c:523: warning: format '%010llx' expects type 'long long unsigned int', but argument 3 has type 'uint64_t' arch/mips/mm/cerr-sb1.c:523: warning: format '%016llX' expects type 'long long unsigned int', but argument 7 has type 'uint64_t' arch/mips/mm/cerr-sb1.c:570: warning: format '%016llX' expects type 'long long unsigned int', but argument 3 has type 'uint64_t' LD arch/mips/mm/built-in.o Signed-off-by: Ralf Baechle commit bf9f88a2192aaee6f1bbff50175aa68ff107355e Author: Ralf Baechle Date: Sat Mar 24 13:28:58 2007 +0000 [MIPS] Jazz: Fix warning. arch/mips/jazz/jazzdma.c:70: warning: assignment makes integer from pointer without a cast Signed-off-by: Ralf Baechle commit e007566d138167f325a4f382bdb93e5d6552f86c Author: Ralf Baechle Date: Sat Mar 24 13:20:15 2007 +0000 [MIPS] R3000: local_flush_data_cache_page take a pointer argument. Signed-off-by: Ralf Baechle commit ce486cd810a42572a91cada0be2538e433715449 Author: Ralf Baechle Date: Sat Mar 24 13:06:43 2007 +0000 [MIPS] ARC: Fix warning. The missing cast did result a warning when calling an 32-bit ARC firmware function that takes 5 arguments where the 5th argument is a pointer from a 64-bit kernel. Signed-off-by: Ralf Baechle commit 7575a49f209190ca640e0da792565a1bcb641f3e Author: Ralf Baechle Date: Fri Mar 23 21:36:37 2007 +0000 [MIPS] Implement flush_anon_page(). Signed-off-by: Ralf Baechle commit 80e89593e5a574a572f4e45e157733b5ea5ddfdb Author: Atsushi Nemoto Date: Wed Mar 21 00:56:28 2007 +0900 [MIPS] SPARSEMEM: The first pfn of zone should be min_low_pfn, not 0. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 7605b3906192a171e651076325b1ed1d5ea57ec9 Author: Ralf Baechle Date: Tue Mar 20 13:56:50 2007 +0000 [MIPS] Fix pipeline hazard. In the the sequence: ei .. mfc0 $x, $status the mfc0 may not see the SR_IE bit set. This was a deliberate bug in the kernel code because we knew this was a safe thing to do on all R2 silicon so far but new silicon is changing this. Signed-off-by: Ralf Baechle commit 83598f1cb06101e972b1f5aaf3408eb729622fa8 Author: Deepak Saxena Date: Mon Mar 19 16:49:45 2007 -0700 [MIPS] Make MIPS udelay() preempt safe under DEBUG_PREEMPT Signed-off-by: Manish Lachwani Signed-off-by: Deepak Saxena Signed-off-by: Ralf Baechle commit c9d06962233bd0ce9bf46b007900eb88e716e948 Author: Franck Bui-Huu Date: Mon Mar 19 17:36:42 2007 +0100 [MIPS] Always use virt_to_phys() when translating kernel addresses This patch fixes two places where we used plain 'x - PAGE_OFFSET' to achieve virtual to physical address convertions. This type of convertion is no more allowed since commit 6f284a2ce7b8bc49cb8455b1763357897a899abb. Reported-by: Maxime Bizon Signed-off-by: Franck Bui-Huu [Build fixes for machines that don't use the generic dma-coherence.h] Signed-off-by: Ralf Baechle commit f33bc55c472295966e520c9347822fdd8b1082cd Author: Thomas Gleixner Date: Fri Mar 23 17:14:37 2007 -0700 [PATCH] x86_64: avoid sending LOCAL_TIMER_VECTOR IPI to itself Ray Lee reported, that on an UP kernel with "noapic" command line option set, the box locks hard during boot. Adding some debug printks revealed, that the last action on the box before stalling was "Send IPI" - a debug printk which was put into smp_send_timer_broadcast_ipi(). It seems that send_IPI_mask(mask, LOCAL_TIMER_VECTOR) fails when "noapic" is set on the command line on an UP kernel. Aside of that it does not make much sense to trigger an interrupt instead of calling the function directly on the CPU which gets the PIT/HPET interrupt in case of broadcasting. Reported-by: Ray Lee Signed-off-by: Thomas Gleixner Acked-by: Ray Lee Signed-off-by: Linus Torvalds commit 6ea65ff79ceb36a1195761be857da1fdf9878450 Author: Roland McGrath Date: Fri Mar 23 14:26:33 2007 -0700 [PATCH] i386: clear segment register padding in core dumps The segment register slots in struct pt_regs are padded to 32 bits. Some of these are stored with instructions like "pushl %es", which leaves the high 16 bits as they were. So the high bits of these fields in struct pt_regs contain kernel stack garbage. These bits are ignored by everything and never leak to user space, except in core dumps. The user struct pt_regs is always at the base of the thread's kernel stack and so it seems unlikely the information that leaks from here is ever worthwhile so as to be a security concern, but I'm not sure about that. It has been this way for ages; userland consumers of core dumps all mask off these high bits themselves. So it is not urgent. This change masks off the padding bits of the segment register slots in core dumps. ptrace already masks off these high bits, so this makes the values in core dumps consistent with what ptrace would report just before the process died. As I read the processor manuals, the cs and ss values will always be padded with zero bits rather than stack garbage. But unlike "pushl %es", this is not simple to test with a userland program. So I added the two instructions rather than wonder if they are really never necessary. I think that x86_64 does not have this problem (for either 32-bit or 64-bit processes). It only uses "mov" instructions from segment registers, which zero-extend. Signed-off-by: Roland McGrath Signed-off-by: Linus Torvalds commit 2e7c28382b8426c6b7ac6f147177a664065f95f4 Author: Linus Torvalds Date: Fri Mar 23 11:32:31 2007 -0700 x86-64: add "local_apic_timer_c2_ok" here too Needed for any architecture that claims ARCH_APICTIMER_STOPS_ON_C3, not just i386. I'm hoping Thomas will clean this up a bit later.. Signed-off-by: Linus Torvalds commit 105fd108a66ceff2b0fb710582b97d61ee4c9d40 Author: Andrew Morton Date: Fri Mar 23 00:10:02 2007 -0700 [PATCH] "ext[34]: EA block reference count racing fix" performance fix A little mistake in 8a2bfdcbfa441d8b0e5cb9c9a7f45f77f80da465 is making all transactions synchronous, which reduces ext3 performance to comical levels. Cc: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cee9e8c5cb1554e9e85ad764d27b6c808555ed89 Author: Guido Guenther Date: Fri Mar 23 00:10:01 2007 -0700 [PATCH] rivafb: fix initial brightness This is the rivafb equivalent of 238576e12fef1d52751c6e08db2d0bdb0e248caf. It fixes rivafb having a default backlight brightness of 0 (no picture at all) on a PBook 6,1. Signed-off-by: Guido Guenther Cc: "Antonino A. Daplas" Acked-by: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6149dd5cfaea9889060f2c039eaf45e2b39f7fb3 Author: Danny Kukawka Date: Fri Mar 23 00:10:01 2007 -0700 [PATCH] add Fujitsu Siemens Tablet PC devices to 8250_pnp.c Adds device ids of two Fujitsu Siemens Tablet PCs to pnp_dev_table Signed-off-by: Danny Kukawka Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa289b47231c95abe53a75223906fdfb79ae368e Author: David Howells Date: Fri Mar 23 00:10:00 2007 -0700 [PATCH] FDPIC: fix the /proc/pid/stat representation of executable boundaries Fix the /proc/pid/stat representation of executable boundaries. It should show the bounds of the executable, but instead shows the bounds of the loader. Before the patch is applied, the bug can be seen by examining, say, inetd: # ps | grep inetd 610 root 0 S /usr/sbin/inetd -i # cat /proc/610/maps c0bb0000-c0bba788 r-xs 00000000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so c3180000-c31dede4 r-xs 00000000 00:0b 14582179 /lib/libuClibc-0.9.28.so c328c000-c328ea00 rw-p 00008000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so c3290000-c329b6c0 rw-p 00000000 00:00 0 c32a0000-c32c0000 rwxp 00000000 00:00 0 c32d4000-c32d8000 rw-p 00000000 00:00 0 c3394000-c3398000 rw-p 00000000 00:00 0 c3458000-c345f464 r-xs 00000000 00:0b 16384612 /usr/sbin/inetd c3470000-c34748f8 rw-p 00004000 00:0b 16384612 /usr/sbin/inetd c34cc000-c34d0000 rw-p 00000000 00:00 0 c34d4000-c34d8000 rw-p 00000000 00:00 0 c34d8000-c34dc000 rw-p 00000000 00:00 0 # cat /proc/610/stat 610 (inetd) S 1 610 610 0 -1 256 0 0 0 0 0 8 0 0 19 0 1 0 94392000718 950272 0 4294967295 3233480704 3233523592 3274440352 3274439976 3273467584 0 0 4096 90115 3221712796 0 0 17 0 0 0 0 The code boundaries are 3233480704 to 3233523592, which are: (gdb) p/x 3233480704 $1 = 0xc0bb0000 (gdb) p/x 3233523592 $2 = 0xc0bba788 Which corresponds to this line in the maps file: c0bb0000-c0bba788 r-xs 00000000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so Which is wrong. After the patch is applied, the maps file is pretty much identical (there's some minor shuffling of the location of some of the anonymous VMAs), but the stat file is now: # cat /proc/610/stat 610 (inetd) S 1 610 610 0 -1 256 0 0 0 0 0 7 0 0 18 0 1 0 94392000722 950272 0 4294967295 3276111872 3276141668 3274440352 3274439976 3273467584 0 0 4096 90115 3221712796 0 0 17 0 0 0 0 The code boundaries are then 3276111872 to 3276141668, which are: (gdb) p/x 3276111872 $1 = 0xc3458000 (gdb) p/x 3276141668 $2 = 0xc345f464 And these correspond to this line in the maps file instead: c3458000-c345f464 r-xs 00000000 00:0b 16384612 /usr/sbin/inetd Which is now correct. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0444b3035e5f4981f4d1d96f9f0c3cbada1e6d69 Author: James Morris Date: Fri Mar 23 00:09:58 2007 -0700 [PATCH] time: fix formatting in /proc/timer_list Fix the print formatting of three unsigned long fields in /proc/timer_list, which are currently being formatted as signed long. Signed-off-by: James Morris Acked-by: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e585bef815c0315f2730d7bb4e15b82602454efd Author: Thomas Gleixner Date: Fri Mar 23 16:08:01 2007 +0100 [PATCH] i386: add command line option "local_apic_timer_c2_ok" It turned out that it is almost impossible to trust ACPI, BIOS & Co. regarding the C states. This was the reason to switch the local apic timer off in C2 state already. OTOH there are sane and well behaving systems, which get punished by that decision. Allow the user to confirm that the local apic timer is trustworthy in C2 state. This keeps the default behaviour on the safe side. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 296d93cd0205433489b0689533426ce0a8cf2dec Author: Linus Torvalds Date: Fri Mar 23 08:03:47 2007 -0700 Revert "ACPI: Only use IPI on known broken machines (AMD, Dothan/BaniasPentium M)" This reverts commit 25496caec111481161e7f06bbfa12a533c43cc6f, which broke bootup on at least Ingo's ThinkPad T60. Need to figure out exactly what is wrong before we can re-do the logic. Requested-by: Ingo Molnar Acked-by: Thomas Gleixner Cc: Thomas Renninger Cc: Len Brown Signed-off-by: Linus Torvalds commit 7a9eeb2fa1b3a3a83670b9ba08dd396beedb88f8 Author: Stefan Richter Date: Tue Mar 20 22:43:22 2007 +0100 ieee1394: fix oops on "modprobe -r ohci1394" after network class_device conversion The networking subsystem has been converted from class_device to device but ieee1394 hasn't. This results in a 100% reproducible NULL pointer dereference if the ohci1394 driver module is unloaded while the eth1394 module is still loaded. http://lkml.org/lkml/2006/11/16/147 http://lkml.org/lkml/2007/3/14/4 This is a regression in 2.6.21-rc1. Signed-off-by: Stefan Richter Tested-by: Ismail Dönmez commit 991b5557f7f04602b3b161341dee85971e0b6be6 Author: Jeff Garzik Date: Fri Mar 23 02:03:29 2007 -0400 [netdrvr] ewrk3: correct card detection bug Arwin Vosselman pointed out: > The ewrk3-driver doesn't function with 2.6.16-kernels (used 2.6.16.41 for > my tests). Cards will never be detected due to this bug. > > drivers/net/ewrks3.c: > Line 417 reads: > > if (nicsr == (CSR_TXD | CSR_RXD)) > > that should be: > > if (nicsr != (CSR_TXD | CSR_RXD)) > > Comparison with the same line in v2.4 shows why: > > 2.4: > if (nicsr == (CSR_TXD | CSR_RXD)){ > > blah, blah > ========== > 2.6: > if (nicsr == (CSR_TXD | CSR_RXD)) > return -ENXIO; > > blah, blah > ========== > > blah,blah will not, but should, be executed in 2.6 with a card being present. > > The fix mentioned above solves this bug. Signed-off-by: Jeff Garzik commit 194c1fbe43af532a7921d483bc2a553b2f361256 Author: Divy Le Ray Date: Wed Mar 21 19:21:00 2007 -0700 cxgb3 - fix white spaces in drivers/net/Kconfig Use tabs instead of white spaces for CHELSIO_T3 entry. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 2ea34672f8cec20b22ccb6ba78e3fe61b44e734a Author: Brice Goglin Date: Wed Mar 21 19:47:32 2007 +0100 myri10ge: update driver version to 1.3.0-1.226 Driver version is now 1.3.0-1.226. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit b52a8b7f0aeff5b91921cd53728ac781cdb4cccf Author: Brice Goglin Date: Wed Mar 21 19:46:57 2007 +0100 myri10ge: fix management of >4kB allocated pages Fix management of allocated physical pages when the architecture page size is not 4kB since the firmware cannot cross 4K boundary. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit f761fae1ae1e6e35ae15fce99d225d08d6cff1e7 Author: Brice Goglin Date: Wed Mar 21 19:45:56 2007 +0100 myri10ge: update wcfifo and intr_coal_delay default values Update the default value of 2 module parameters: * wcfifo disabled * intr_coal_delay 75us Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit aafa70eb56edd1cd5332c978bf9b5e224373c980 Author: Brice Goglin Date: Wed Mar 21 19:45:18 2007 +0100 myri10ge: Serverworks HT2100 provides aligned PCIe completion [PATCH 1/4] myri10ge: Serverworks HT2100 provides aligned PCIe completion Use the regular firmware on Serverworks HT2100 PCIe ports since this chipset provides aligned PCIe completion. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit d57ab6fdde30816581f7b0a4fe3c015b3f41f9ca Author: Dale Farnsworth Date: Tue Mar 20 16:38:04 2007 -0700 mv643xx_eth: add mv643xx_eth_shutdown function mv643xx_eth_shutdown is needed for kexec. Signed-off-by: Dale Farnsworth Signed-off-by: Jeff Garzik commit 69a43ac0cf40577157111bbe25500e2b98e801ea Author: Ralf Baechle Date: Tue Mar 20 12:40:09 2007 +0000 SAA9730: Fix large pile of warnings The SAA9730 driver doesn't quite grok what the difference between an ioport and memory mapped I/O is. It just happened to work on the one Linux system the SAA9730 happens to spend it's misserable existence on. drivers/net/saa9730.c: In function 'evm_saa9730_enable_lan_int': drivers/net/saa9730.c:68: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:70: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:72: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'evm_saa9730_disable_lan_int': drivers/net/saa9730.c:78: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:80: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'evm_saa9730_clear_lan_int': drivers/net/saa9730.c:85: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'evm_saa9730_block_lan_int': drivers/net/saa9730.c:91: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'evm_saa9730_unblock_lan_int': drivers/net/saa9730.c:97: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'show_saa9730_regs': drivers/net/saa9730.c:150: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_allocate_buffers': drivers/net/saa9730.c:292: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:295: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:302: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:305: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:312: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_cam_load': drivers/net/saa9730.c:329: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:332: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_mii_init': drivers/net/saa9730.c:369: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:395: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:403: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:410: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:432: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_control_init': drivers/net/saa9730.c:470: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:474: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:478: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:484: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:487: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:490: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:493: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_stop': drivers/net/saa9730.c:505: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:508: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:510: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_dma_init': drivers/net/saa9730.c:536: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_start': drivers/net/saa9730.c:556: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:560: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:564: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:567: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_tx': drivers/net/saa9730.c:590: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_rx': drivers/net/saa9730.c:664: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:729: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_write': drivers/net/saa9730.c:848: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c: In function 'lan_saa9730_set_multicast': drivers/net/saa9730.c:943: warning: passing argument 2 of 'outl' makes integer from pointer without a cast drivers/net/saa9730.c:949: warning: passing argument 2 of 'outl' makes integer from pointer without a cast Fixed by using writel instead of outl. 42 warnings less. Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit 6f6881b846e3d97ee15f6ab1f6529cd1cc2f4c28 Author: Li Yang Date: Mon Mar 19 11:58:02 2007 +0800 Revert "ucc_geth: returns NETDEV_TX_BUSY when BD ring is full" This reverts commit 18babd38547a042a4bfd4154a014d1ad33373eb0. Michael Barkowski points out that it's wrong, and I agree. The patch causes a problem rather than fixes one after another patch "ucc_geth: Fix BD processing" was applied. Before that patch, current packet should be blocked. However after the patch current packet is ok and we only need to block next. Reported-by: Michael Barkowski Signed-off-by: Li Yang Signed-off-by: Jeff Garzik commit e4d08359ffb6580ee7a014d162162b2d18aa4ec0 Author: Divy Le Ray Date: Sun Mar 18 13:10:17 2007 -0700 cxgb3 - T3B2 pcie config space T3B2 does not lose its pcie config space on reset. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit fc90664e3438c990d280f179ccb0642711d5c553 Author: Divy Le Ray Date: Sun Mar 18 13:10:12 2007 -0700 cxgb3 - Fix potential MAC hang Under rare conditions, the MAC might hang while generating a pause frame. This patch fine tunes the MAC settings to avoid the issue, allows for periodic MAC state check, and triggers a recovery if hung. Also fix one MAC statistics counter for the rev board T3B2. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 2e2839627a957714808f98a802d137a7a2a1df46 Author: Divy Le Ray Date: Sun Mar 18 13:10:06 2007 -0700 cxgb3 - Auto-load FW if mismatch detected The driver attempts to upgrade the FW if the card has the wrong version. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 05b97b30b09ed245d376035cddf669532e5cca67 Author: Divy Le Ray Date: Sun Mar 18 13:10:01 2007 -0700 cxgb3 - fix ethtool cmd on multiple queues port Limit ethtool -g/-G to the given port's queues. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 5c4851ccb6b12ff29e28b84e7515a18006b19fdf Author: Anton Blanchard Date: Fri Mar 16 17:00:21 2007 -0500 Fix return code in pci-skeleton.c We assign the return value of register_netdev to i, but return rc later on. Fix it. Signed-off-by: Anton Blanchard Signed-off-by: Jeff Garzik commit 9cbe330f1fbbc8de15a5914aa6e91d89eb9daac4 Author: Stephen Hemminger Date: Fri Mar 16 14:01:28 2007 -0700 skge: use per-port phy locking Rather than a workqueue and a per-board mutex to control PHY, use a tasklet and spinlock. Tasklet is lower overhead and works just as well for this. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 4ebabfcb1d6af5191ef5c8305717ccbc24979f6c Author: Stephen Hemminger Date: Fri Mar 16 14:01:27 2007 -0700 skge: mask irqs when device down Wheen a port on the skge driver is not used, it should mask off interrupts from theat port. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e3a1b99fb60dab1b39d5022d1d8f47bebfe6d8c6 Author: Stephen Hemminger Date: Fri Mar 16 14:01:26 2007 -0700 skge: deadlock on tx timeout The skge driver will deadlock if gets a transmit timeout because the netif_tx_lock() is already held. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 4edc5db83f574dfcc8be35b7b96760ded543b360 Author: Ingo Molnar Date: Thu Mar 22 10:31:19 2007 +0100 [PATCH] setup_boot_APIC_clock() irq-enable fix latest -git triggers an irqtrace/lockdep warning of a leaked irqs-off condition: BUG: at kernel/fork.c:1033 copy_process() after some debugging it turns out that commit ca1b940c accidentally left interrupts disabled - which trickled down all the way to the first time we fork a kernel thread and triggered the warning. the fix is to re-enable interrupts in the 'else' branch of setup_boot_APIC_clock()'s pmtimers calibration path. Reported-by: Michal Piotrowski Signed-off-by: Ingo Molnar Acked-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 9c35dd7f8bda1849dcb430be99325504221048df Author: Jarek Poplawski Date: Thu Mar 22 00:11:28 2007 -0800 [PATCH] lockdep: debug_show_all_locks & debug_show_held_locks vs. debug_locks lockdep's data shouldn't be used when debug_locks == 0 because it's not updated after this, so it's more misleading than helpful. PS: probably lockdep's current-> fields should be reset after it turns debug_locks off: so, after printing a bug report, but before return from exported functions, but there are really a lot of these possibilities (e.g. after DEBUG_LOCKS_WARN_ON), so, something could be missed. (Of course direct use of this fields isn't recommended either.) Reported-by: Folkert van Heusden Inspired-by: Oleg Nesterov Signed-off-by: Jarek Poplawski Acked-by: Peter Zijlstra Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b43376927ab0f7b64c4fb304568ecfaea10446e2 Author: Rafael J. Wysocki Date: Thu Mar 22 00:11:27 2007 -0800 [PATCH] Make XFS workqueues nonfreezable Since freezable workqueues are broken in 2.6.21-rc (cf. http://marc.theaimsgroup.com/?l=linux-kernel&m=116855740612755, http://marc.theaimsgroup.com/?l=linux-kernel&m=117261312523921&w=2) it's better to change the only user of them, which is XFS, to use "normal" nonfreezable workqueues. Signed-off-by: Rafael J. Wysocki Cc: Pavel Machek Cc: David Chinner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3a55fd18deab758a2970e0dfcd60a677a920426 Author: Jarek Poplawski Date: Thu Mar 22 00:11:26 2007 -0800 [PATCH] lockdep: lockdep_depth vs. debug_locks lockdep found a bug during a run of workqueue function - this could be also caused by a bug from other code running simultaneously. lockdep really shouldn't be used when debug_locks == 0! Reported-by: Folkert van Heusden Inspired-by: Oleg Nesterov Signed-off-by: Jarek Poplawski Cc: Ingo Molnar Acked-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 058560fbd70190ea6b50b5df4d814bc30911d06b Author: Pavel Machek Date: Thu Mar 22 00:11:25 2007 -0800 [PATCH] fix extra BIOS invocation during resume It causes extra moon icons blinking on x60, and breaks at least two other systems. During resume, we do not know that "reboot"/"shutdown" method was used, so we assume "plaform" and call BIOS, anyway... This is 2.6.21 material, and should fix 2 or 3 regressions from 2.6.20. Signed-off-by: Pavel Machek Acked-by: "Rafael J. Wysocki" Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 165b239270be610a1e3999cb0d2e4e2c1f2a8fd4 Author: David Howells Date: Thu Mar 22 00:11:24 2007 -0800 [PATCH] NOMMU: make SYSV SHM nattch work correctly Make the SYSV SHM nattch counter work correctly by forcing multiple VMAs to be produced to represent MAP_SHARED segments, even if they overlap exactly. Using this test program: http://people.redhat.com/~dhowells/doshm.c Run as: doshm sysv I can see nattch going from one before the patch: # /doshm sysv Command: sysv shmid: 65536 memory: 0xc3700000 c0b00000-c0b04000 rw-p 00000000 00:00 0 c0bb0000-c0bba788 r-xs 00000000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so c3180000-c31dede4 r-xs 00000000 00:0b 14582179 /lib/libuClibc-0.9.28.so c3520000-c352278c rw-p 00000000 00:0b 13763417 /doshm c3584000-c35865e8 r-xs 00000000 00:0b 13763417 /doshm c3588000-c358aa00 rw-p 00008000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so c3590000-c359b6c0 rw-p 00000000 00:00 0 c3620000-c3640000 rwxp 00000000 00:00 0 c3700000-c37fa000 rw-S 00000000 00:06 1411 /SYSV00000000 (deleted) c3700000-c37fa000 rw-S 00000000 00:06 1411 /SYSV00000000 (deleted) nattch 1 To two after the patch: # /doshm sysv Command: sysv shmid: 0 memory: 0xc3700000 c0bb0000-c0bba788 r-xs 00000000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so c3180000-c31dede4 r-xs 00000000 00:0b 14582179 /lib/libuClibc-0.9.28.so c3320000-c3340000 rwxp 00000000 00:00 0 c3530000-c35325e8 r-xs 00000000 00:0b 13763417 /doshm c3534000-c353678c rw-p 00000000 00:0b 13763417 /doshm c3538000-c353aa00 rw-p 00008000 00:0b 14582157 /lib/ld-uClibc-0.9.28.so c3590000-c359b6c0 rw-p 00000000 00:00 0 c35a4000-c35a8000 rw-p 00000000 00:00 0 c3700000-c37fa000 rw-S 00000000 00:06 1369 /SYSV00000000 (deleted) c3700000-c37fa000 rw-S 00000000 00:06 1369 /SYSV00000000 (deleted) nattch 2 That's +1 to nattch for each shmat() made. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d56e03cd275486eb8141116a7af2df7457cb0115 Author: David Howells Date: Thu Mar 22 00:11:23 2007 -0800 [PATCH] NOMMU: supply get_unmapped_area() to fix NOMMU SYSV SHM Supply a get_unmapped_area() to fix NOMMU SYSV SHM support. Signed-off-by: David Howells Acked-by: Adam Litke Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8da38d7bac802ed2a09a79aaae9961c806a1847c Author: David Howells Date: Thu Mar 22 00:11:22 2007 -0800 [PATCH] FRV: fix unannotated variable declarations Fix unannotated variable declarations. Variables that have allocation section annotations (such as __meminitdata) on their definitions must also have them on their declarations as not doing so may affect the addressing mode used by the compiler and may result in a linker error. Signed-off-by: David Howells Acked-by: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad62ca2bd89f72e9b80dfaffc463e87bec5e75cb Author: Thomas Gleixner Date: Thu Mar 22 00:11:21 2007 -0800 [PATCH] i386: disable local apic timer via command line or dmi quirk The local APIC timer stops to work in deeper C-States. This is handled by the ACPI code and a broadcast mechanism in the clockevents / tick managment code. Some systems do not expose the deeper C-States to the kernel, but switch into deeper C-States behind the kernels back. This delays the local apic timer interrupts for ever and makes the systems unusable. Add a command line option to disable the local apic timer and a dmi quirk for known broken systems. Andi sayeth: While not wrong by itself i think it is still better to use some heuristic -- like "has battery in ACPI" With the DMI table if the problem is more wide spread we will just continue extending it. But anyways should be ok now for .21 although I'm not really happy with it. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Cc: john stultz Grudgingly-acked-by: Andi Kleen Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93c9a7ff50a5b39dbdf80129c5da89e6d6256bea Author: Rafael J. Wysocki Date: Thu Mar 22 00:11:20 2007 -0800 [PATCH] swsusp: Fix SNAPSHOT_S2RAM ioctl The SNAPSHOT_S2RAM ioctl does not disable the nonboot CPUs before entering the suspend, although it should do this. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit acf11faeb1ba1179f695c83c47716e4f6ffdebd8 Author: Johannes Weiner Date: Thu Mar 22 00:11:18 2007 -0800 [PATCH] Documentation/sysrq.txt: added short description for 'Q' (timerlist) I added the 'Q' to list. A short description in the `Ok, so what can I use them for'-section, on when or why to use it would be nice! Signed-off-by: Johannes Weiner Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 47ebea8351061f763089f6c3e2d2403715b510e1 Author: Adrian Bunk Date: Thu Mar 22 00:11:16 2007 -0800 [PATCH] drivers/video/s3fb.c: fix a use-before-check NULL checks should be before the first dereference. Spotted by the Coverity checker. Signed-off-by: Adrian Bunk Acked-by: Ondrej Zajicek Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b3964cde70cfe6db79d35b42137431ef7d2f7e4 Author: Thomas Gleixner Date: Thu Mar 22 22:46:18 2007 +0100 [PATCH] i386: clockevents fix breakage on Geode/Cyrix PIT implementations The PIT has no dedicated mode for shut down. The only way to disable PIT is to put it into one shot mode. AMD implementations of PIT on Geode (also observed on Cyrix) are confused by an "empty" transition from CLOCK_EVT_MODE_UNUSED to CLOCK_EVT_MODE_SHUTDOWN, which puts the PIT into one shot mode momentarily. I realized after staring helpless at the bug report http://bugzilla.kernel.org/show_bug.cgi?id=8027 for quite a while, that the only change, which might influence the bogomips calibration, is the above transition during the PIT initialization. Avoiding the unnecessary switch to oneshot and later to periodic mode fixes the weird bogomips value and also the resulting slowness. The fix is confirmed on OLPC and another Geode based box. Note: this is unrelated to the Dual Core problem discussed here: http://lkml.org/lkml/2007/3/17/48 Signed-off-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 066fcb06d3e27c258bc229bb688ced2b16daa6c2 Author: Steve French Date: Fri Mar 23 00:45:08 2007 +0000 [CIFS] Allow reset of file to ATTR_NORMAL when archive bit not set When a file had a dos attribute of 0x1 (readonly - but dos attribute of archive was not set) - doing chmod 0777 or equivalent would try to set a dos attribute of 0 (which some servers ignore) rather than ATTR_NORMAL (0x20) which most servers accept. Does not affect servers which support the CIFS Unix Extensions. Acked-by: Prasad Potluri Acked-by: Shirish Pargaonkar Signed-off-by: Steve French commit 77d8e1efea0e313edc710160c232a6fd2dc9f907 Author: Michael S. Tsirkin Date: Wed Mar 21 15:45:05 2007 +0200 IB/ipoib: Fix thinko in packet length checks The packet length checks in ipoib are broken: we add 4 bytes (IPoIB encapsulation header) when sending a packet, not 20 bytes (hardware address length) to each packet. Therefore, if connected mode is enabled so that the interface MTU is larger than the multicast MTU, IPoIB may end up trying to send too-long multicast packets. For example, multicast is broken if a message of size 2048 bytes is sent on an interface with UD MTU 2048, because 2048 is bigger than the real limit of 2044 but the code tests against the wrong limit of 2060. This patch fixes , submitted by Scott Weitzenkamp . Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit d04d01b113be5b88418eb30087753c3de0a39fd8 Author: Michael S. Tsirkin Date: Thu Mar 22 14:40:16 2007 -0700 IPoIB: Fix use-after-free in path_rec_completion() The connected mode code added the possibility that an neigh struct gets freed in the list_for_each_entry() loop in path_rec_completion(), which causes a use-after-free. Fix this by changing to the _safe variant of the list walking macro. This was spotted by the Coverity checker (CID 1567). Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 73b9e9870f5780cb554b68bbcfa47782b27a3e04 Author: Joachim Fenkes Date: Thu Mar 22 16:52:13 2007 +0100 IB/ehca: Make scaling code work without CPU hotplug eHCA scaling code must not depend on register_cpu_notifier() if CONFIG_HOTPLUG_CPU is not set, so put all related code into #ifdefs. Signed-off-by: Joachim Fenkes Signed-off-by: Roland Dreier commit d60134718820892853e8be7141ef7f6cdb455ea6 Author: Steve Wise Date: Thu Mar 22 10:38:20 2007 -0500 RDMA/cxgb3: Handle build_phys_page_list() failure in iwch_reregister_phys_mem() Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit fae8773b737d03f94ba83f0b78a891f385f35f98 Author: Bryan O'Sullivan Date: Wed Mar 21 15:18:14 2007 -0700 IB/ipath: Check return value of lookup_one_len This fixes kernel.org bug 8003. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit e07832b66285124038a96b25a2056e91a55d8b1e Author: Sean Hefty Date: Mon Mar 19 14:31:36 2007 -0800 IPoIB: Fix race in detaching from mcast group before attaching There's a race between ipoib_mcast_leave() and ipoib_mcast_join_finish() where we can try to detach from a multicast group before we've attached to it. Fix this by reordering the code in ipoib_mcast_leave to free the multicast group first, which waits for the multicast callback thread (which calls ipoib_mcast_join_finish()) to complete before detaching from the group. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 60a596dab7c82bdfa5ee7abcee8e0ce385d4ef21 Author: Michael S. Tsirkin Date: Thu Mar 22 14:32:09 2007 -0700 IPoIB/cm: Fix reaping of stale connections The sense of the time_after_eq() test in ipoib_cm_stale_task() is reversed so that only non-stale connections are reaped. Fix this by changing to time_before_eq(). Noticed by Pradeep Satyanarayana . Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 848c29fd648e78fa87d0e399223826ce5dfc1b7a Author: Patrick McHardy Date: Thu Mar 22 12:30:29 2007 -0700 [NETFILTER]: nat: avoid rerouting packets if only XFRM policy key changed Currently NAT not only reroutes packets in the OUTPUT chain when the routing key changed, but also if only the non-routing part of the IPsec policy key changed. This breaks ping -I since it doesn't use SO_BINDTODEVICE but IP_PKTINFO cmsg to specify the output device, and this information is lost. Only do full rerouting if the routing key changed, and just do a new policy lookup with the old route if only the ports changed. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ca8fbb859c42c9a402c5c19fd0588d89ae4988ba Author: Patrick McHardy Date: Thu Mar 22 12:29:57 2007 -0700 [NETFILTER]: nf_conntrack_netlink: add missing dependency on NF_NAT NF_CT_NETLINK=y, NF_NAT=m results in: LD .tmp_vmlinux1 net/built-in.o: dans la fonction « nfnetlink_parse_nat_proto »: nf_conntrack_netlink.c:(.text+0x28db9): référence indéfinie vers « nf_nat_proto_find_get » nf_conntrack_netlink.c:(.text+0x28dd6): référence indéfinie vers « nf_nat_proto_put » net/built-in.o: dans la fonction « ctnetlink_new_conntrack »: nf_conntrack_netlink.c:(.text+0x29959): référence indéfinie vers « nf_nat_setup_info » nf_conntrack_netlink.c:(.text+0x29b35): référence indéfinie vers « nf_nat_setup_info » nf_conntrack_netlink.c:(.text+0x29cf7): référence indéfinie vers « nf_nat_setup_info » nf_conntrack_netlink.c:(.text+0x29de2): référence indéfinie vers « nf_nat_setup_info » make: *** [.tmp_vmlinux1] Erreur 1 Reported by Kevin Baradon Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b6f99a211957910a07437f46ce54dcfb1755cf84 Author: Dave Jones Date: Thu Mar 22 12:27:49 2007 -0700 [NET]: fix up misplaced inlines. Turning up the warnings on gcc makes it emit warnings about the placement of 'inline' in function declarations. Here's everything that was under net/ Signed-off-by: Dave Jones Signed-off-by: David S. Miller commit 289f42492c0958871b6045050474c752ec99704f Author: Vlad Yasevich Date: Thu Mar 22 12:26:25 2007 -0700 [SCTP]: Correctly reset ssthresh when restarting association Reset ssthresh to the correct value (peer's a_rwnd) when restarting association. Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit b19cbe2a1695c09c74f83646c4b82b51123b3690 Author: Patrick McHardy Date: Thu Mar 22 12:25:20 2007 -0700 [BRIDGE]: Fix fdb RCU race br_fdb_get use atomic_inc to increase the refcount of an element found on a RCU protected list, which can lead to the following race: CPU0 CPU1 br_fdb_get: rcu_read_lock __br_fdb_get: find element fdb_delete: hlist_del_rcu br_fdb_put br_fdb_put: atomic_dec_and_test call_rcu(fdb_rcu_free) br_fdb_get: atomic_inc rcu_read_unlock fdb_rcu_free: kmem_cache_free Use atomic_inc_not_zero instead. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ec25615b9ddd5c584b4066652840581fdb6c5e7a Author: Patrick McHardy Date: Thu Mar 22 12:24:38 2007 -0700 [NET]: Fix fib_rules dump race fib_rules_dump needs to use list_for_each_entry_rcu to protect against concurrent changes to the rules list. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 0ca9493b4c0f4fb7796add422ba5ecc672c9fa16 Author: Cyrill V. Gorcunov Date: Thu Mar 22 19:49:01 2007 +0100 i2c/ds1374: Check workqueue creation status Check if workqueue creation failed. Further usage of NULL pointed workqueue is not good I guess ;) Signed-off-by: Cyrill V. Gorcunov Signed-off-by: Andrew Morton Signed-off-by: Jean Delvare commit a5aaea37858fb56d624227408d1dde4cb78c9a6c Author: Jean Delvare Date: Thu Mar 22 19:49:01 2007 +0100 i2c-i801: Restore the device state before leaving Restore the original host configuration on driver unload and on suspend. In particular this returns the SMBus master in I2C mode if it was originally in I2C mode, which should help with suspend/resume if the BIOS expects to find the SMBus master in I2C mode. This fixes bug #6449 (for real this time.) http://bugzilla.kernel.org/show_bug.cgi?id=6449 Signed-off-by: Jean Delvare Tested-by: Tommi Kyntola commit 58791fd81dabdd0552c63625f231d16c9060ec84 Author: Jean Delvare Date: Thu Mar 22 19:49:00 2007 +0100 i2c-amd8111: Missed cleanup I missed one cleanup in my previous patch. Signed-off-by: Jean Delvare commit 4f5fa2fb1259f506d20e8af447117ec3ec426a53 Author: Anton Blanchard Date: Tue Mar 20 14:29:54 2007 -0500 [POWERPC] Bypass hcall stats until cpu features have run I noticed that we execute hcalls before cpu feature code has run (eg for setting up the bolted kernel region). This means that we may be executing code that is not appropriate for the processor we have. Create an unconditional branch that we nop out all the time to fix this. Signed-off-by: Anton Blanchard Signed-off-by: Paul Mackerras commit b4aea36b7956eeebfc56314ce0944db1441255ce Author: Mohan Kumar M Date: Wed Mar 21 11:21:32 2007 +0530 [POWERPC] Avoid hypervisor statistics calculation in real mode kexec invokes plpar_hcall hypervisor call in real mode. plpar_hcall refers to per cpu variables for accounting hypervisor statistics. These variables may not be in the RMO region, so accesses to them in real mode may result in a data storage exception. This fixes this problem by using a new plpar_hcall_raw function which does not update the hypervisor call statistics. Thanks to Anton for suggesting this idea. Signed-off-by: Mohan Kumar M Signed-off-by: Paul Mackerras commit b1dfe1f1457a85b42544ef8b9c83c7cf9d9c3a16 Author: Krzysztof Helt Date: Mon Mar 19 15:10:20 2007 +0100 [ARM] 4272/1: Missing symbol h1940_pm_return fix Added missing ifdefs, to make kernel linkable without the PM support. Signed-off-by: Krzysztof Helt Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 7bc301e97b96597df967f11b9fa9cf391109893a Author: Sebastian Siewior Date: Wed Mar 21 08:58:43 2007 +1100 [CRYPTO] tcrypt: Fix error checking for comp allocation This patch fixes loading the tcrypt module while deflate isn't available at all (isn't build). Signed-off-by: Sebastian Siewior Signed-off-by: Herbert Xu commit 58e40308f329275ccf556312a9cd788522f7c224 Author: Johannes Schlumberger Date: Wed Mar 21 08:55:58 2007 +1100 [CRYPTO] doc: Fix typo in hash example there is a tiny bug in Documentation/crypto/api-intro.txt. The file has the following example code: struct scatterlist sg[2]; [...] if (crypto_hash_digest(&desc, &sg, 2, result)) which does not match the declaration of crypto_hash_digest() in include/linux/crypto.h. (static inline int crypto_hash_digest(struct hash_desc *desc, struct scatterlist *sg, unsigned int nbytes, u8 *out) The code in the example passes the address of a pointer (an array actually) as the second argument, while the function expects the pointer itself. I have attached a patch to fix this. Signed-off-by: Herbert Xu commit f70ee5ec8fc59ba2d905e6daf0d395edf6fb461d Author: J. Bruce Fields Date: Wed Mar 21 08:50:12 2007 +1100 [CRYPTO] api: scatterwalk_copychunks() fails to advance through scatterlist In the loop in scatterwalk_copychunks(), if walk->offset is zero, then scatterwalk_pagedone rounds that up to the nearest page boundary: walk->offset += PAGE_SIZE - 1; walk->offset &= PAGE_MASK; which is a no-op in this case, so we don't advance to the next element of the scatterlist array: if (walk->offset >= walk->sg->offset + walk->sg->length) scatterwalk_start(walk, sg_next(walk->sg)); and we end up copying the same data twice. It appears that other callers of scatterwalk_{page}done first advance walk->offset, so I believe that's the correct thing to do here. This caused a bug in NFS when run with krb5p security, which would cause some writes to fail with permissions errors--for example, writes of less than 8 bytes (the des blocksize) at the start of a file. A git-bisect shows the bug was originally introduced by 5c64097aa0f6dc4f27718ef47ca9a12538d62860, first in 2.6.19-rc1. Signed-off-by: "J. Bruce Fields" Signed-off-by: Herbert Xu commit 58a69c367c02a165004a5ce5dd55ce03b59ba43d Author: Bernhard Walle Date: Wed Mar 14 19:07:47 2007 +0100 [IA64] Fix wrong /proc/iomem on SGI Altix In sn_io_slot_fixup(), the parent is re-set from the bus to io(port|mem)_resource because the address is changed in a way that it's not child of the bus any more. However, only the root is set but not the parent/child/sibling relationship in the resource tree which causes 'cat /proc/iomem' to stop after this memory area. Depding on the poition in the tree the iomem may be nearly completely empty. Signed-off-by: Bernhard Walle Acked-by: John Keller Signed-off-by: Tony Luck commit 0bdfc1900705dadef6286d69de7da0feef841734 Author: John Keller Date: Tue Mar 20 13:50:10 2007 -0500 [IA64] Altix: ioremap vga_console_iobase When booting an SN system without specifing a console (i.e., no "console=" on boot line), the system will hang during boot at the point where /sbin/init is run. The problem is that vga_console_iobase is not converted to a virtual address before storing in io_space[0].mmio_base. The conversion was happening in sn_scan_pcdp(), but not in setup_vga_console(). Signed-off-by: John Keller Signed-off-by: Tony Luck commit 60b548dfe4ad178dbf0fa8c2a50e36aaa42d603a Author: Jay Lan Date: Tue Mar 20 13:47:47 2007 -0700 [IA64] Fix typo/thinko in crash.c Clearly should be checking for "val == DIE_INIT_SLAVE_ENTER". Signed-off-by: Jay Lan Acked-by: Simon Horman Signed-off-by: Tony Luck commit c5e83e3f42938c0a84047e125edb98d6513f985b Author: Jack Steiner Date: Mon Mar 12 08:07:49 2007 -0500 [IA64] Fix get_model_name() for mixed cpu type systems If a system consists of mixed processor types, kmalloc() can be called before the per-cpu data page is initialized. If the slab contains sufficient memory, then kmalloc() works ok. However, if the slabs are empty, slab calls the memory allocator. This requires per-cpu data (NODE_DATA()) & the cpu dies. Also noted by Russ Anderson who had a very similar patch. Signed-off-by: Jack Steiner Signed-off-by: Tony Luck commit a3f5c338b9f30f328276739d9589beae19254936 Author: Zou Nan hai Date: Tue Mar 20 13:41:57 2007 -0700 [IA64] min_low_pfn and max_low_pfn calculation fix We have seen bad_pte_print when testing crashdump on an SN machine in recent 2.6.20 kernel. There are tons of bad pte print (pfn < max_low_pfn) reports when the crash kernel boots up, all those reported bad pages are inside initmem range; That is because if the crash kernel code and data happens to be at the beginning of the 1st node. build_node_maps in discontig.c will bypass reserved regions with filter_rsvd_memory. Since min_low_pfn is calculated in build_node_map, so in this case, min_low_pfn will be greater than kernel code and data. Because pages inside initmem are freed and reused later, we saw pfn_valid check fail on those pages. I think this theoretically happen on a normal kernel. When I check min_low_pfn and max_low_pfn calculation in contig.c and discontig.c. I found more issues than this. 1. min_low_pfn and max_low_pfn calculation is inconsistent between contig.c and discontig.c, min_low_pfn is calculated as the first page number of boot memmap in contig.c (Why? Though this may work at the most of the time, I don't think it is the right logic). It is calculated as the lowest physical memory page number bypass reserved regions in discontig.c. max_low_pfn is calculated include reserved regions in contig.c. It is calculated exclude reserved regions in discontig.c. 2. If kernel code and data region is happen to be at the begin or the end of physical memory, when min_low_pfn and max_low_pfn calculation is bypassed kernel code and data, pages in initmem will report bad. 3. initrd is also in reserved regions, if it is at the begin or at the end of physical memory, kernel will refuse to reuse the memory. Because the virt_addr_valid check in free_initrd_mem. So it is better to fix and clean up those issues. Calculate min_low_pfn and max_low_pfn in a consistent way. Signed-off-by: Zou Nan hai Acked-by: Jay Lan Signed-off-by: Tony Luck commit 9d5cf5adcbb703a4c794232840c25a65a372c357 Author: Uwe Kleine-König Date: Fri Feb 23 20:52:19 2007 +0100 [ARM] 4235/1: ns9xxx: declare the clock functions as "const" This patch removes some "const"s that I introduced thinking they mean the same thing as the "const"s introduced here. So it fixes three warnings. Signed-off-by: Uwe Kleine-König Signed-off-by: Russell King commit 961995582e3752e983dc3906a57546a188007440 Author: Joy Latten Date: Mon Mar 19 18:47:26 2007 -0700 [XFRM]: ipsecv6 needs a space when printing audit record. This patch adds a space between printing of the src and dst ipv6 addresses. Otherwise, audit or other test tools may fail to process the audit record properly because they cannot find the dst address. Signed-off-by: Joy Latten Signed-off-by: David S. Miller commit e4ce837de96d58509f5f815ab37a46889788e701 Author: Adrian Bunk Date: Mon Mar 19 17:04:56 2007 -0700 [X25] x25_forward_call(): fix NULL dereferences This patch fixes two NULL dereferences spotted by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 749bf9215ed1a8b6edb4bb03693c2b62c6b9c2a4 Author: Vlad Yasevich Date: Mon Mar 19 17:02:30 2007 -0700 [SCTP]: Reset some transport and association variables on restart If the association has been restarted, we need to reset the transport congestion variables as well as accumulated error counts and CACC variables. If we do not, the association will use the wrong values and may terminate prematurely. This was found with a scenario where the peer restarted the association when lksctp was in the last HB timeout for its association. The restart happened, but the error counts have not been reset and when the timeout occurred, a newly restarted association was terminated due to excessive retransmits. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit fb78525ae1b75bfac1da600ceb008aef4d293649 Author: Vlad Yasevich Date: Mon Mar 19 17:02:03 2007 -0700 [SCTP]: Increment error counters on user requested HBs. 2960bis states (Section 8.3): D) Request an on-demand HEARTBEAT on a specific destination transport address of a given association. The endpoint should increment the respective error counter of the destination transport address each time a HEARTBEAT is sent to that address and not acknowledged within one RTO. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 0b58a811461ccf3cf848aba4cc192538fd3b0516 Author: Vlad Yasevich Date: Mon Mar 19 17:01:17 2007 -0700 [SCTP]: Clean up stale data during association restart During association restart we may have stale data sitting on the ULP queue waiting for ordering or reassembly. This data may cause severe problems if not cleaned up. In particular stale data pending ordering may cause problems with receive window exhaustion if our peer has decided to restart the association. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit c577c2b99387b5ff8607d42d6eaff9ec024d4773 Author: Samuel Ortiz Date: Fri Mar 16 20:31:03 2007 -0700 [IrDA]: Calling ppp_unregister_channel() from process context We need to call ppp_unregister_channel() when IrNET disconnects, and this must be done from a process context. Bug reported and patch tested by Guennadi Liakhovetski. Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 7bb1bbe615de25d955b974cb47d40fa198154bb9 Author: G. Liakhovetski Date: Fri Mar 16 20:30:03 2007 -0700 [IrDA]: irttp_dup spin_lock initialisation Without this initialization one gets kernel BUG at kernel/rtmutex_common.h:80! This patch should also be included in the -stable kernel. Signed-off-by: G. Liakhovetski Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 2e360d81ea1fe1a7701e05cdefd3a91c11c3b13f Author: Nigel Williams Date: Fri Mar 16 20:28:36 2007 -0700 [IrDA]: Delay needed when uploading firmware chunks With 42101001.sb firmwares, we need a 10 ms delay between firmware chunks upload on irda-usb. Patch from Nigel Williams Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 0cd4554df0c261f7ba74786e471ccaa0e3725fb9 Author: Len Brown Date: Mon Mar 19 23:51:36 2007 -0400 ACPI: IA64: fix %ll build warnings acpi_integer is 64-bits on all platforms, and so was defined as a u64. i386 and x86_64 define u64 as unsigned long long. ia64 defines u64 as long. While these are all 64-bits, the kernel build warns about formating a "long" with %ll: drivers/ata/libata-acpi.c:176: warning: long long unsigned int format, acpi_integer arg (arg 5) So skip using "u64" and define acpi_integer as "unsigned long long" to make gcc happy with %ll. Signed-off-by: Len Brown commit 8140a90ec180192b202af086e7a582e5937c5580 Author: Len Brown Date: Fri Mar 16 22:00:43 2007 -0400 ACPI: IA64: fix allnoconfig build The evils of Kconfig's select bite us once again... ia64/Kconfig selects ACPI, which depends on PM. But select ignores dependencies, allnoconfig chooses CONFIG_PM=n, and thus the menu of sub-options under ACPI vanish, which breaks the build. Manually select PM along with ACPI for now. Some day, we should delete them both, or fix select. Cc: Tony Luck Signed-off-by: Len Brown commit 69806d5631b79ed0c442ae5b15c46bcfd8662476 Author: Greg Kroah-Hartman Date: Mon Mar 19 13:39:51 2007 -0700 USB: new Novatel device ids for option driver This moves all of the Novatel device ids to the option driver, where they belong. Thanks to Novatel for providing a list of all supported devices. Signed-off-by: Greg Kroah-Hartman commit 24d559cac4d741d60ec85e927974408020a2f060 Author: David S. Miller Date: Mon Mar 19 13:27:33 2007 -0700 [SPARC64]: store-init needs trailing membar. The manual says that it is required and we actually have crash reports where loads see stale data due to not having membars here. In one case the networking does: memset(skb, 0, offsetof(struct sk_buff, truesize)); and then some code later checks skb->nohdr for zero, but it's still the value that was there before the memset(). Note that arch/sparc64/lib/xor.S already got this right. Signed-off-by: David S. Miller commit 7df4246117cb0adc6c3ed54bdb2d2faf4656d9cd Author: Ralf Baechle Date: Mon Mar 19 15:29:39 2007 +0000 [MIPS] Export except_vec_vi_{mori,lui,ori} as text symbols. Otherwise objdump will screw up disassembly. Signed-off-by: Ralf Baechle commit 43e3c885d0e120a749ec7fe204aaec8f46c1d5b6 Author: Thiemo Seufer Date: Mon Mar 19 00:05:06 2007 +0000 [MIPS] mips-boards: More liberal check for mips-board console Allows overriding the MALTA/ATLAS/etc. default console setting with non-serial console devices. Signed-Off-By: Thiemo Seufer Signed-off-by: Ralf Baechle commit 119537c092638bf8a0672415024639353c773bb1 Author: Thiemo Seufer Date: Mon Mar 19 00:13:37 2007 +0000 [MIPS] Misc fixes for plat_irq_dispatch functions o adds missing ST0_IM masks, which caused the logging of valid interrupts as spurious o stops pnx8550 to log every interrupt as spurious o adds cause register masks for ip22/ip32, which caused handling of masked interrupts o removes some superfluous parentheses in the SNI interrupt code Signed-Off-By: Thiemo Seufer Signed-off-by: Ralf Baechle commit 72ede9b18967e7a8a62a88f164f003193f6d891f Author: Atsushi Nemoto Date: Sun Mar 18 01:01:39 2007 +0900 [MIPS] Qemu: Fix Symmetric Uniprocessor support. Might be useful for SMP debugging. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle [Rewritten Kconfig bits to deal better fit in the usual pattern of doing things - Ralf] Signed-off-by: Ralf Baechle commit 8c3644350f4105a9b55fbfc6bbba567b79cdf72a Author: Ralf Baechle Date: Sat Mar 17 16:21:28 2007 +0000 [MIPS] VI: TRACE_IRQS_OFF clobbers $v0, so save & restore around call. Signed-off-by: Ralf Baechle commit 774f78cf3b81c553c087ca0e8740e9cd779df578 Author: Ken L Johnson Date: Fri Mar 16 10:17:31 2007 -0600 USB: berry_charge: correct dbg string for second magic command I was testing the berry_charge module with my Blackberry 8700c and had great success, thanks. Looking at the code for my own learning I noticed the following cut and paste error... just a nit. Signed-off-by: Ken L Johnson Signed-off-by: Greg Kroah-Hartman commit 5ec71db59ac07eeac89a54b35a90c181bbd3c445 Author: Alan Stern Date: Fri Mar 16 15:53:07 2007 -0400 usblp: quirk flag and device entry for Seiko Epson M129C printer This patch (as872) adds a device table entry and a new quirk flag to the usblp driver for the Seiko Epson Receipt printer. This printer returns Vendor-Specific values for bInterfaceClass and bInterfaceSubClass, but the bInterfaceProtocol value is valid and it works with usblp. The new quirks flag tells the driver to ignore the Class and SubClass values in the interface descriptor. Signed-off-by: Alan Stern Cc: Vojtech Pavlik Signed-off-by: Greg Kroah-Hartman commit e5740b5d75af4ad9423911fe77d687f47e880a4d Author: Mark Glines Date: Wed Mar 14 11:55:28 2007 -0700 airprime: USB ID for Novatel EV620 mini PCI-E card Add an ID to recognise the Novatel EV620 wireless adapter. http://www.novatelwireless.com/products/expedite/ev620.html It looks like a mini PCI-Express adapter. The mPCIE connector includes USB pins... the card shows up to the system as a USB device, and powers itself from the PCI bus. The card I have isn't activated yet, so I can't get a PPP session up yet, but I have tested basic serial communication successfully in both 2.6.18 and 2.6.20 kernels, once the product ID was added. (the driver changed quite a bit between the two revs.) In both drivers, it responds to AT commands and such. Signed-off-by: Mark Glines Cc: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit e8e30c765c5cfa5219918d3e5017fc563cf7ea03 Author: Oliver Neukum Date: Wed Mar 14 11:11:08 2007 +0100 USB: necessary update for mos7720 driver these devices have a shared interrupt endpoint. For serialcore to pass an interrupt endpoint to a subdriver, the subdriver must define and _export_ a fitting callback. The mos7720 driver failed to do so. This led invariably to an oops upon open. This patch fixes it. The driver is useless without it. Please try to get this into 2.6.21 and the stable kernels that have this driver. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit a7f3dd5d4b74030964c80fb1b7f2131986fe2d67 Author: Pete Zaitcev Date: Sat Mar 10 15:17:16 2007 -0800 USB: RAZR v3i unusual_devs This adds an unusual_devs entry for the Motorola RAZR 3vi. From: Pete Zaitcev Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit 6dc477f3e4dd456122fdb231a1c57393659b93b5 Author: Jon Dowland Date: Sun Mar 11 20:03:03 2007 +0000 USB: two more device ids for dm9601 usbnet driver This patch for the linux-usb-devel tree adds two more product ids to the dm9601 driver. These ids were found on rebadged dm9601 devices in the wild. Signed-off-by: Jon Dowland Acked-by: Peter Korsgaard Signed-off-by: Greg Kroah-Hartman commit 521b85ae66ad40a670b27b0596312d347a89b669 Author: Jim Radford Date: Tue Mar 13 08:30:50 2007 -0700 USB: fix usb-serial regression This patch reverts d9a7ecacac5f8274d2afce09aadcf37bdb42b93a since it breaks drivers that need to access the ->port[] array in shutdown (most of them). Signed-Off: Jim Radford Acked-by: Mark Lord Signed-off-by: Greg Kroah-Hartman commit 282c6b9c7a344ce6436bb61a006b9c2a373b9626 Author: Alessandro Zummo Date: Sun Mar 18 15:23:33 2007 +0100 pata_ixp4xx_cf: fix interrupt As per compact flash specifications, the default irq mode upon cf insertion is pulse mode. this patch fixes the driver to cope with that. Signed-off-by: Alessandro Zummo Signed-off-by: Jeff Garzik commit 2ab302b3579b76b8c575f0858a8e4b82f6dfca52 Author: Tejun Heo Date: Sun Mar 18 04:55:23 2007 +0900 pata_ixp4xx_cf: fix oops on detach pata_ixp4xx_cf dodged dont-clear-drvdata-in-LLD bombing run as it used platform_set_drvdata() instead of dev_set_drvdata(). This causes OOPS on devres host release. Kill it. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit cc261267dfbced100eb10832aaabb03bf993745d Author: Randy Dunlap Date: Fri Mar 16 19:55:47 2007 -0700 libata: kernel-doc fix Warning(linux-2621-rc3g7/drivers/ata/libata-core.c:842): No description found for parameter 'unknown' Signed-off-by: Randy Dunlap Signed-off-by: Jeff Garzik commit e1251d01452d2f8e91c898b3828444b279cef047 Author: Tejun Heo Date: Fri Mar 16 01:59:42 2007 +0900 sata_inic162x: kill double region requests Regions are requested twice during initialization causing the second one to fail. This is regression introduced during iomap conversion. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit aeb9362a4844d7a4e43c7d4e4ef1461850346b0c Author: Akira Iguchi Date: Thu Mar 15 14:32:58 2007 +0900 drivers/ata/Kconfig: PATA_SCC depends on wrong platform PATA_SCC depends on PPC_CELLEB. (not PPC_IBM_CELL_BLADE) Signed-off-by: Kou Ishizaki Signed-off-by: Akira Iguchi Signed-off-by: Jeff Garzik commit 722d67b6208bd56faa6d731246117a3e4660ce88 Author: Jamie Clark Date: Tue Mar 13 12:48:00 2007 +0800 sata_sil24: Add Adaptec 1220SA PCI ID Add Adaptec 1220SA (SIL3132) to devices claimed by sata_sil24 Patch generated against 2.6.20.2 Signed-off-by: Jamie Clark Signed-off-by: Jeff Garzik commit 4aa9ab67fb9c0dfdb1692f4ec413120832a22ddc Author: Tejun Heo Date: Mon Mar 12 17:24:08 2007 +0900 libata: don't whine if ->prereset() returns -ENOENT ->prereset() returns -ENOENT to tell libata that the port is empty and reset sequencing should be stopped. This is not an error condition. Update ata_eh_reset() such that it sets device classes to ATA_DEV_NONE and return success in on -ENOENT. This makes spurious error message go away. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 43a867a2d2a119c744bab6dc8d3e1da6809d7141 Author: Ralph Wuerthner Date: Mon Mar 19 13:19:19 2007 +0100 [S390] zcrypt: fix possible race when unloading zcrypt driver modules Move try_module_get() call into spin protected block to prevent zcrypt driver module unload while submitting a request to driver. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit cf352ce0b9104dc6a1c11df52db9f910f1f6cd2e Author: Ralph Wuerthner Date: Mon Mar 19 13:19:14 2007 +0100 [S390] zcrypt: fix possible dead lock in AP bus module AP bus module uses bus_for_each_dev() in software interrupt context to poll for completed requests which might cause dead locks. Solution: use private AP device list for polling in software interrupt context. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit fb1c171992041e1d4bfb8c010548fa97f2106827 Author: Heiko Carstens Date: Mon Mar 19 13:19:07 2007 +0100 [S390] Wire up sys_utimes. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit fbb04f38cf85ae8691cf3049ec62636ad968479b Author: Michael Holzheu Date: Mon Mar 19 13:19:03 2007 +0100 [S390] reboot from and dump to SCSI under z/VM fails. We used wrong length values for ipl and dump hardware structures. Since z/VM checks the ipl parameters more accurately than LPAR, the operations fail there. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 10c16a37e32b74abe088c303f600746e73f5b7e2 Author: Heiko Carstens Date: Mon Mar 19 13:18:56 2007 +0100 [S390] Wire up compat_sys_epoll_pwait. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 20cb9e79b963b8f5142e4dd946baf44a75e7935f Author: Jean Delvare Date: Mon Mar 19 13:18:53 2007 +0100 [S390] strlcpy is smart enough strlcpy already accounts for the trailing zero in its length computation, so there is no need to substract one to the buffer size. Signed-off-by: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Martin Schwidefsky commit 257c6e1ce8f875dd02220e90cf38e615e47788fe Author: Heiko Carstens Date: Mon Mar 19 13:18:50 2007 +0100 [S390] memory detection: fix off by one bug. diag 260 returns the address of the last addressable byte and not the size of memory. Since we want the size we have to add 1 to the return value. Disable diag 260 for non z/Arch mode since it doesn't work there anyway. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit dcc49d460c4052d2fa7ba44e81d3b814b799f802 Author: Ursula Braun Date: Mon Mar 19 13:18:12 2007 +0100 [S390] cio: qdio slsb setup Make sure set_slsb problems are handled correctly in qdio_do_qdio_fill_input() and qdio_do_qdio_fill_output. Signed-off-by: Ursula Braun Signed-off-by: Martin Schwidefsky commit 5851fadce8824d5d4b8fd02c22ae098401f6489e Author: Ralf Baechle Date: Sun Mar 18 12:58:08 2007 +0000 [PATCH] Fix build error due to not including Since d9a9cdfb078d755e648d53ec25b7370f84ee5729 is using ENOSYS without including if CONFIG_SYSFS is disabled. Fixed by including . Signed-off-by: Ralf Baechle Signed-off-by: Linus Torvalds commit d9c1e9a8fff512bb6c43461181d4360f1c8cfd6d Author: Eric W. Biederman Date: Sun Mar 18 12:45:44 2007 -0600 [PATCH] tty: Fix two reported pid leaks These leaks were reported by: Catalin Marinas and I have been able to very by inspection they are possible. When converting tty_io.c to store pids as struct pid pointers instead of pid_t values it appears I overlooked two places where we stop using the pid value. The very obvious one is in do_tty_hangup, and the one the less obvious one in __proc_set_tty. When looking into the code __proc_set_tty only has pids that need to be put because of failures of other parts of the code to properly perform hangup processing. Fixing the leak here in __proc_set_tty is easy and obviously correct so I am doing that first. Fixing the places that should be performing hangup processing is much less obviously correct. So those I'm aiming those patches at -mm. for now, so the can age a while before they are merged. Signed-off-by: Eric W. Biederman Signed-off-by: Linus Torvalds commit aeb3f6d10ebfd5607f4bd3920b3b730a992ab82c Author: David Brownell Date: Sun Mar 18 01:26:13 2007 -0800 [PATCH] gpio_direction_output-needs-an-initial-value fix Build fix: sa1100/generic.c should already have included , but it didn't ... causing a build problem with a recent patch. Signed-off-by: David Brownell Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca1b940ce6495541efe76499b3de39aa5e4941ed Author: Thomas Gleixner Date: Sun Mar 18 01:26:13 2007 -0800 [PATCH] i386: trust the PM-Timer calibration of the local APIC timer When PM-Timer is available for local APIC timer calibration we can skip the verification of the calibrated time value. The resulting error is quite small on a bunch of evaluated platforms and is less harming than the observed false positives. We need to keep the verification on systems, which have no PM-Timer to avoid bogus local APIC timer calibrations in the range of factor 2-10, which can be observed when swicthing off the PM-timer support in the kernel configuration. The wrong calibration values are probably caused by SMM code trying to emulate a PS/2 keyboard from a (maybe connected or not) USB keyboard. This prohibits the accurate delivery of PIT interrupts, which are used to calibrate the local APIC timer. Unfortunately we have no way to disable this BIOS misfeature in the early boot process. Add also the dropped cpu_relax() back to the wait loops. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 303cd1535f6257b9fd8214534ca87b1a1567a2c5 Author: Mathieu Desnoyers Date: Sun Mar 18 01:26:11 2007 -0800 [PATCH] Fix atomicity of TIF update in flush_thread() for x86_64 Fix atomicity of TIF update in flush_thread() for x86_64 Race : parent process executing : sys_ptrace() (lock_kernel()) (ptrace_get_task_struct(pid)) arch_ptrace() ptrace_detach() ptrace_disable(child); clear_singlestep(child); clear_tsk_thread_flag(child, TIF_SINGLESTEP); (which clears the TIF_SINGLESTEP flag atomically from a different process) (put_task_struct(child)) (unlock_kernel()) And at the same time, in the child process : sys_execve() do_execve() search_binary_handler() load_elf_binary() flush_old_exec() flush_thread() doing a non-atomic thread flag update Signed-off-by: Rebecca Schultz Signed-off-by: Mathieu Desnoyers Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bad77057ed59892bd5c7807dcf0c2500e5ff1fe7 Author: Andrew Morton Date: Sun Mar 18 01:26:10 2007 -0800 [PATCH] machzwd warning fix drivers/char/watchdog/machzwd.c: In function 'zf_ioctl': drivers/char/watchdog/machzwd.c:327: warning: passing argument 1 of 'zf_ping' makes integer from pointer without a cast Also some coding-style repairs. Signed-off-by: Andrew Morton Cc: Al Viro Acked-by: Wim Van Sebroeck Signed-off-by: Linus Torvalds commit 6a3d039078b337856bd3cfa436be3b1b223440a5 Author: John Keller Date: Sun Mar 18 01:26:09 2007 -0800 [PATCH] ia64: platform_kernel_launch_event is noop on generic kernel Add a missing #define for the platform_kernel_launch_event. Without this fix, a call to platform_kernel_launch_event() becomes a noop on generic kernels. SN systems require this fix to successfully kdump/kexec from certain hardware errors. [bwalle@suse.de: fix it] Signed-off-by: John Keller Cc: Bernhard Walle Acked-by: Simon Horman Acked-by: Jay Lan Acked-by: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 647157255915b76ddfbea87ca396ace364d158c5 Author: Bernhard Walle Date: Sun Mar 18 01:26:08 2007 -0800 [PATCH] Fix wrong /proc/iomem on SGI Altix In sn_io_slot_fixup(), the parent is re-set from the bus to io(port|mem)_resource because the address is changed in a way that it's not child of the bus any more. However, only the root is set but not the parent/child/sibling relationship in the resource tree which causes 'cat /proc/iomem' to stop after this memory area. Depding on the poition in the tree the iomem may be nearly completely empty. Signed-off-by: Bernhard Walle Cc: John Keller Cc: Jay Lan Acked-by: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4f78bb289f4ca57b93385b4df4d0defe5804588b Author: Adrian Bunk Date: Sun Mar 18 01:26:07 2007 -0800 [PATCH] X86_P4_CLOCKMOD must select CPU_FREQ_TABLE CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_TABLE=m CONFIG_X86_P4_CLOCKMOD=y arch/x86_64/kernel/built-in.o: In function `cpufreq_p4_verify':p4-clockmod.c:(.text.cpufreq_p4_verify+0x8): undefined reference to `cpufreq_frequency_table_verify' arch/x86_64/kernel/built-in.o: In function `cpufreq_p4_cpu_exit':p4-clockmod.c:(.text.cpufreq_p4_cpu_exit+0x8): undefined reference to `cpufreq_frequency_table_put_attr' arch/x86_64/kernel/built-in.o: In function `cpufreq_p4_cpu_init':p4-clockmod.c:(.text.cpufreq_p4_cpu_init+0x13b): undefined reference to `cpufreq_frequency_table_get_attr' Signed-off-by: Adrian Bunk Acked-by: Dave Jones Cc: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27aba76615eeb36af84118e8ea6d35ffa51fd1e3 Author: Avi Kivity Date: Fri Mar 9 13:04:31 2007 +0200 KVM: MMU: Fix host memory corruption on i386 with >= 4GB ram PAGE_MASK is an unsigned long, so using it to mask physical addresses on i386 (which are 64-bit wide) leads to truncation. This can result in page->private of unrelated memory pages being modified, with disasterous results. Fix by not using PAGE_MASK for physical addresses; instead calculate the correct value directly from PAGE_SIZE. Also fix a similar BUG_ON(). Acked-by: Ingo Molnar Signed-off-by: Avi Kivity commit ac1b714e78c8f0b252f8d8872e6ce6f898a123b3 Author: Avi Kivity Date: Thu Mar 8 17:13:32 2007 +0200 KVM: MMU: Fix guest writes to nonpae pde KVM shadow page tables are always in pae mode, regardless of the guest setting. This means that a guest pde (mapping 4MB of memory) is mapped to two shadow pdes (mapping 2MB each). When the guest writes to a pte or pde, we intercept the write and emulate it. We also remove any shadowed mappings corresponding to the write. Since the mmu did not account for the doubling in the number of pdes, it removed the wrong entry, resulting in a mismatch between shadow page tables and guest page tables, followed shortly by guest memory corruption. This patch fixes the problem by detecting the special case of writing to a non-pae pde and adjusting the address and number of shadow pdes zapped accordingly. Acked-by: Ingo Molnar Signed-off-by: Avi Kivity commit f5b42c3324494ea3f9bf795e2a7e4d3cbb06c607 Author: Avi Kivity Date: Tue Mar 6 12:05:53 2007 +0200 KVM: Fix guest sysenter on vmx The vmx code currently treats the guest's sysenter support msrs as 32-bit values, which breaks 32-bit compat mode userspace on 64-bit guests. Fix by using the native word width of the machine. Signed-off-by: Avi Kivity commit ca45aaae1ef98890ac4e3ee48d65aa22401fd1dc Author: Avi Kivity Date: Thu Mar 1 19:21:03 2007 +0200 KVM: Unset kvm_arch_ops if arch module loading failed Otherwise, the core module thinks the arch module is loaded, and won't let you reload it after you've fixed the bug. Signed-off-by: Avi Kivity commit 094f127588679591a871eb20b136f6b2f2796c98 Author: Dan Williams Date: Fri Mar 16 19:31:06 2007 +0100 [ARM] 4271/1: iop32x: fix ep80219 detection (support iq80219 platforms) An iq80219 is a board with an iq31244 layout and an 80219 processor. It breaks the current assumption that all 80219 processors run on ep80219 platforms. This patch adds the "force_ep80219" option to the kernel to override boot loaders that have passed in the iq31244 id, and adds the MACHINE_START definition for ep80219. [ patch assumes that EP80219 has been added to mach-types ] Signed-off-by: Dan Williams Signed-off-by: Russell King commit 5455a51e6f333d43e0b6b52d1712557475d8eb9d Author: Graeme Gregory Date: Fri Mar 16 17:11:43 2007 +0100 [ARM] 4270/2: mach-s3c2443/irq.c off by one error in dma irqs This patch corrects an error when demuxing the DMA irq's DMA1 was used as a base and this should have been DMA0. Without this fix we do not process DMA0 irq's and the system effectively locks up in a loop trying the process the irq it never can. Signed-off-by: Graeme Gregory Acked-by: Ben Dooks Signed-off-by: Russell King commit db2f9f6d916e0e3d8666fa9c23f1b0bc0c954b2a Author: David S. Miller Date: Sat Mar 17 15:23:22 2007 -0700 [SPARC64]: Use Kconfig.preempt Signed-off-by: David S. Miller commit 120b9cfddff2e398fece07c5e127f3fdbb660441 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 17 21:57:41 2007 +0100 ide: remove CONFIG_IDEDMA_{ICS,PCI}_AUTO config options All modern distributions have been setting these options to "y" for ages. (additionally "n" cases have been obsoleted for few years). Therefore use DMA by default and remove CONFIG_IDEDMA_{ICS,PCI}_AUTO (also remove no longer needed CONFIG_IDEDMA_AUTO). This fixes DMA support for rare configurations where CONFIG_IDEDMA_{ICS,PCI}_AUTO was set to "n" but "hdparm -d 1" was used to enable DMA support and which were forced to PIO mode by "ide: don't allow DMA to be enabled if CONFIG_IDEDMA_{ICS,PCI}_AUTO=n" patch. There is no functionality loss because "ide=nodma" kernel option is still available. Cc: Patrick Horn Cc: Sergei Shtylyov Cc: Russell King Signed-off-by: Bartlomiej Zolnierkiewicz commit 6f5050a96c9e0521f42a3a1d676c7ad9815f62ad Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 17 21:57:39 2007 +0100 ide: don't allow DMA to be enabled if CONFIG_IDEDMA_{ICS,PCI}_AUTO=n For CONFIG_IDEDMA_{ICS,PCI}_AUTO=n and/or "ide=nodma" option the host/device are not programmed for DMA and it is also explicitly disabled by ide_set_dma() (->ide_dma_check returns "-1"). However the code responsible for manually enabling DMA ("hdparm -d 1") has a bug which results in DMA being erroneously enabled - ide_set_dma() incorrectly passes "0" return value to set_using_dma(). This may work if BIOS/firmware configured the host/device for DMA and chipset allows independent configuration of DMA/PIO modes but won't work after suspend and is generally unsafe on many chipsets (possibly including data corruption if the same registers are used for DMA/PIO timings). This patch fixes kernel bugzilla bug #8169 (piix host driver fixes for setting PIO mode exposed the problem described above). The side-effect of the fix is that some rare configuration may be forced to PIO mode when DMA mode was previously used - this is addressed by the next patch which removes CONFIG_IDEDMA_{PCI,ICS}_AUTO config option completely. Thanks goes out to Patrick Horn for reporting the issue, narrowing it down to the specific commit and testing the fix. Also thanks to Sergei Shtylyov for help in debugging the problem. Cc: Patrick Horn Cc: Sergei Shtylyov Cc: Russell King Signed-off-by: Bartlomiej Zolnierkiewicz commit a1067db8ebae6817a66fd4e40e34699f402c2544 Author: Kou Ishizaki Date: Sat Mar 17 21:57:25 2007 +0100 scc_pata: dependency fix This patch fixes: * the dependency of scc_pata on BLK_DEV_IDEDMA_PCI * incorrect link to ide-core * move scc_pata from ide/ppc to ide/pci Signed-off-by: Kou Ishizaki Signed-off-by: Akira Iguchi Cc: Al Viro , Signed-off-by: Bartlomiej Zolnierkiewicz commit ebbc2031362cfac7f325f051c619dc39ef4892ed Author: Tejun Heo Date: Sat Mar 17 21:57:25 2007 +0100 jmicron: make ide jmicron driver play nice with libata ones When libata is configured, the device is configured such that SATA and PATA ports live in separate functions with different programming interfaces. pata_jmicron and ide jmicron drivers can drive only the PATA part. This patch makes jmicron match PCI class code such that it doesn't attach itself to the SATA part preventing the proper ahci driver from attaching. This change is suggested by Bartlomiej. Signed-off-by: Tejun Heo Cc: Jeff Garzik Cc: justin@jmicron.com Signed-off-by: Bartlomiej Zolnierkiewicz commit 9c67cd146084040648b72933f138eeb72104be9d Author: Daniel Mack Date: Sat Mar 17 21:57:24 2007 +0100 ide: remove static prototypes from include/asm-mips/mach-au1x00/au1xxx_ide.h This patch removes the static prototypes from the au1xxx_ide.h, some of them were not even implemented. Also, they caused build breakage since they differed from the functions actually implemented in drivers/ide/mips/au1xxx-ide.c. Signed-off-by: Daniel Mack Signed-off-by: Bartlomiej Zolnierkiewicz commit 1918fd63de6d222c049cdeae4aa113a6f0593187 Author: Ralf Baechle Date: Sat Mar 17 21:57:24 2007 +0100 ide: au1xxx: fix use of mixed declarations and code drivers/ide/mips/au1xxx-ide.c:684: warning: ISO C90 forbids mixed declarations and code Signed-off-by: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit e277a1aaa97abdc1b0a0b8a8c062e29220b00440 Author: Sergei Shtylyov Date: Sat Mar 17 21:57:24 2007 +0100 cmd64x: fix recovery time calculation (take 3) The driver wrongly takes the address setup time into account when calculating the PIO recovery time -- this leads to slight overclocking of the PIO modes 0 and 1 (so, the prayers failed to help, as usual :-). Rework the code to be calculating recovery clock count as a difference between the total cycle count and the active count (we don't need to calculate the recovery time itself since it's not specified for the PIO modes 0 to 2, and for modes 3 and 4 this formula gives enough recovery time anyway in the chip's supported PCI frequency range). This patch has been inspired by reading the datasheets and looking at what the libata driver does; it has been compile-tested only (as usual :-) but anyway, the new code gives the same or longer recovery times than the old one... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 25496caec111481161e7f06bbfa12a533c43cc6f Author: Thomas Renninger Date: Tue Feb 27 12:13:00 2007 -0500 ACPI: Only use IPI on known broken machines (AMD, Dothan/BaniasPentium M) Use IPI for blacklisted CPUs, add parameter IPI vs LAPIC Currently, Linux disables lapic timer for all machines with C2 and higher C-state support. According to Intel only specific Intel models (Banias/Dothan) are broken in respect of not waking up from C2 with lapic. However, I am not sure about the naming of the parameter and how it could/should get integrated into the dyntick part (CONFIG_GENERIC_CLOCKEVENTS). There, a more fine grained check (TSC still running?, ..) is needed? Does this make sense (always use CLOCK_EVT_NOTIFY_BROADCAST_ON, but use OFF if forced by use_ipi=0: clockevents_notify(use_ipi ? CLOCK_EVT_NOTIFY_BROADCAST_ON : CLOCK_EVT_NOTIFY_BROADCAST_OFF, &pr->id); Signed-off-by: Thomas Renninger Signed-off-by: Len Brown commit cd05a1f818073a623455a58e756c5b419fc98db9 Author: Thomas Gleixner Date: Sat Mar 17 00:25:52 2007 +0100 [PATCH] clockevents: Fix suspend/resume to disk hangs I finally found a dual core box, which survives suspend/resume without crashing in the middle of nowhere. Sigh, I never figured out from the code and the bug reports what's going on. The observed hangs are caused by a stale state transition of the clock event devices, which keeps the RCU synchronization away from completion, when the non boot CPU is brought back up. The suspend/resume in oneshot mode needs the similar care as the periodic mode during suspend to RAM. My assumption that the state transitions during the different shutdown/bringups of s2disk would go through the periodic boot phase and then switch over to highres resp. nohz mode were simply wrong. Add the appropriate suspend / resume handling for the non periodic modes. Signed-off-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 5379058b718ac6354ba99cc74d10c28d632dc28a Author: Thomas Gleixner Date: Fri Mar 16 14:15:57 2007 -0800 [PATCH] fix MTIME_SEC_MAX on 32-bit The maximum seconds value we can handle on 32bit is LONG_MAX. Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 014efb1df74fe5a30bb10102404428fd4229726e Author: Jeremy Fitzhardinge Date: Fri Mar 16 13:38:37 2007 -0800 [PATCH] i386: fix typo in sync_constant_test_bit()'s name Fix typo in sync_constant_test_bit()'s name, so sync_bitops.h is consistent with bitops.h Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Chris Wright Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c912a3d3356e5e51917941ce8505531c6fab003 Author: Arnaud Patard (Rtp Date: Fri Mar 16 13:38:36 2007 -0800 [PATCH] spi_s3c24xx.c: warning fix The set_cs field of struct s3c24xx_spi is declared as returning a int but the value returned but set_cs is never fixed. Moreover, the default function for set_cs and the set_cs defintion in the platform data are returning void. I'm proposing to change the prototype to void (*set_cs)(...). By doing this, I'm also fixing 2 build warnings: drivers/spi/spi_s3c24xx.c: In function 's3c24xx_spi_probe': drivers/spi/spi_s3c24xx.c:330: warning: assignment from incompatible pointer type drivers/spi/spi_s3c24xx.c:335: warning: assignment from incompatible pointer type Signed-off-by: Arnaud Patard Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1cabd63262707ad5d6bb730f25b7a2852734595 Author: James Bottomley Date: Fri Mar 16 13:38:35 2007 -0800 [PATCH] fix process crash caused by randomisation and 64k pages This bug was seen on ppc64, but it could have occurred on any architecture with a page size of 64k or above. The problem is that in fs/binfmt_elf.c:randomize_stack_top() randomizes the stack to within 0x7ff pages. On 4k page machines, this is 8MB; on 64k page boxes, this is 128MB. The problem is that the new binary layout (selected in arch_pick_mmap_layout) places the mapping segment 128MB or the stack rlimit away from the top of the process memory, whichever is larger. If you chose an rlimit of less than 128MB (most defaults are in the 8Mb range) then you can end up having your entire stack randomized away. The fix is to make randomize_stack_top() only steal at most 8MB, which this patch does. However, I have to point out that even with this, your stack rlimit might not be exactly what you get if it's > 128MB, because you're still losing the random offset of up to 8MB. The true fix should be to leave an explicit gap for the randomization plus a buffer when determining mmap_base, but that would involve fixing all the architectures. Cc: Arjan van de Ven Cc: Ingo Molnar Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e29e175b0f40cffc86068156733def14a7a533ab Author: Zilvinas Valinskas Date: Fri Mar 16 13:38:34 2007 -0800 [PATCH] initialise pi_lock if CONFIG_RT_MUTEXES=N Fixes a bogus lockdep warning which causes lockdep to disable itself. Acked-by: Ingo Molnar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35ae834fa02ba89cfbd4a80892c0e458fd6d5c0b Author: Ankita Garg Date: Fri Mar 16 13:38:33 2007 -0800 [PATCH] oom fix: prevent oom from killing a process with children/sibling unkillable Looking at oom_kill.c, found that the intention to not kill the selected process if any of its children/siblings has OOM_DISABLE set, is not being met. Signed-off-by: Ankita Garg Acked-by: Nick Piggin Acked-by: William Irwin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5d480ff17f9220cd6198b5c91e8c75329f5594f Author: Johannes Berg Date: Fri Mar 16 13:38:32 2007 -0800 [PATCH] change misleading EFI partition support description Remove the misleading "Presently only useful on the IA-64 platform" text from the EFI partition Kconfig. EFI partitions are also used by Apple on their Intel-based machines and thus you need EFI partition support if you (for example) want to attach such a machine in target disk mode. Signed-off-by: Johannes Berg Acked-by: Matt Domsch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21778867b1c8e0feb567addb6dc0a7e2ca6ecdec Author: Ingo Molnar Date: Fri Mar 16 13:38:31 2007 -0800 [PATCH] futex: PI state locking fix Testing of -rt by IBM uncovered a locking bug in wake_futex_pi(): the PI state needs to be locked before we access it. Signed-off-by: Ingo Molnar Acked-by: Thomas Gleixner Cc: Chuck Ebbert Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d3a7b6df4951170079252402fd0c2dc70cb0ca2a Author: Marcel Selhorst Date: Fri Mar 16 13:38:31 2007 -0800 [PATCH] tpm_infineon: maintainer Signed-off-by: Marcel Selhorst Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c2c88f109eebb940ddca17472d2e149560bcf7eb Author: Bernhard Walle Date: Fri Mar 16 13:38:30 2007 -0800 [PATCH] Initialise SAK member for each virtual console to prevent oops Initialise the SAK member of the vc_cons variable on all virtual terminals, not only the first one. This prevents an oops when trying Sysrq-C on e.g. the second virtual terminal: kernel BUG at kernel/workqueue.c:212! invalid opcode: 0000 [1] SMP CPU 0 Modules linked in: i915 drm deflate zlib_deflate twofish twofish_common serpent blowfish des ce Pid: 0, comm: swapper Not tainted 2.6.21-rc3-default #15 RIP: 0010:[] [] queue_work+0x32/0x51 RSP: 0018:ffffffff805fada8 EFLAGS: 00010013 RAX: ffffffff80683f38 RBX: ffffffff804ae700 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff80683f30 RDI: ffff81000134a840 RBP: 0000000000000001 R08: 0000000000000005 R09: 0000000000000002 R10: ffffffff805990e0 R11: ffff810037f4c0f0 R12: 000000000000006b R13: ffff81007aa23000 R14: 0000000000000001 R15: 0000000000000096 FS: 0000000000000000(0000) GS:ffffffff804d8000(0000) knlGS:0000000000000000 CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b CR2: 00002b72026e9000 CR3: 0000000079175000 CR4: 00000000000006e0 Process swapper (pid: 0, threadinfo ffffffff8059e000, task ffffffff80490840) Stack: 0000000000000096 ffffffff803635db ffffffff805fadf8 0000000000000001 ffff8100013c2e40 0000000000000025 ffff81007c931c00 ffff81007aa23000 0000000000000001 ffffffff8035e3ee 0000000000000092 ffff810037cc8000 Call Trace: [] __handle_sysrq+0x98/0x129 [] kbd_event+0x32e/0x56a [] input_event+0x422/0x44a [] atkbd_interrupt+0x449/0x503 [] serio_interrupt+0x37/0x6f [] i8042_interrupt+0x1f4/0x20a [] smp_send_timer_broadcast_ipi+0x2d/0x4e [] handle_IRQ_event+0x25/0x53 [] handle_edge_irq+0xe4/0x128 [] call_softirq+0x1c/0x28 [] do_IRQ+0x6c/0xd3 [] mwait_idle+0x0/0x45 [] ret_from_intr+0x0/0xa [] datagram_poll+0x0/0xc8 [] mwait_idle+0x42/0x45 [] cpu_idle+0x8b/0xae [] start_kernel+0x2b9/0x2c5 [] _sinittext+0x15e/0x162 Code: 0f 0b eb fe 48 8b 07 48 63 d2 48 f7 d0 48 8b 3c d0 e8 13 ff RIP [] queue_work+0x32/0x51 RSP Kernel panic - not syncing: Aiee, killing interrupt handler! Signed-off-by: Bernhard Walle Acked-by: Eric Biederman Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a5e6bc29aca331267dfc9f49129b9432ac84d70 Author: Stefano Brivio Date: Fri Mar 16 13:38:29 2007 -0800 [PATCH] hwmon: Build fix for SENSORS_W83793 We need vid_which_vrm and vid_from_reg in the w83793 module. Signed-off-by: Stefano Brivio Signed-off-by: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 634707388baa440d9c9d082cfc4c950500c8952b Author: Trond Myklebust Date: Fri Mar 16 13:38:28 2007 -0800 [PATCH] nfs: nfs_getattr() can't call nfs_sync_mapping_range() for non-regular files Looks like we need a check in nfs_getattr() for a regular file. It makes no sense to call nfs_sync_mapping_range() on anything else. I think that should fix your problem: it will stop the NFS client from interfering with dirty pages on that inode's mapping. Signed-off-by: Trond Myklebust Acked-by: Olof Johansson Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89a09141df6ac1c3821fbe44ca8384eb37692965 Author: Peter Zijlstra Date: Fri Mar 16 13:38:26 2007 -0800 [PATCH] nfs: fix congestion control The current NFS client congestion logic is severly broken, it marks the backing device congested during each nfs_writepages() call but doesn't mirror this in nfs_writepage() which makes for deadlocks. Also it implements its own waitqueue. Replace this by a more regular congestion implementation that puts a cap on the number of active writeback pages and uses the bdi congestion waitqueue. Also always use an interruptible wait since it makes sense to be able to SIGKILL the process even for mounts without 'intr'. Signed-off-by: Peter Zijlstra Acked-by: Trond Myklebust Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b74a2f0913694556a027795d2954d30523fac4c5 Author: suzuki Date: Fri Mar 16 13:38:25 2007 -0800 [PATCH] fix rescan_partitions to return errors properly The only error code which comes from the partition checkers is -1, when they finds an EIO. As per the discussion, ENOMEM values were ignored, as they might scare the users. So, with the current code, we end up returning -1 and not EIO for the ioctl() calls. Which doesn't give any clue to the user of what went wrong. Signed-off-by: Suzuki K P Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b257bc051f06607beb3004d9a1c297085e728bec Author: Andrew Johnson Date: Fri Mar 16 13:38:24 2007 -0800 [PATCH] swsusp: fix suspend when console is in VT_AUTO+KD_GRAPHICS mode When the console is in VT_AUTO+KD_GRAPHICS mode, switching to the SUSPEND_CONSOLE fails, resulting in vt_waitactive() waiting indefinitely or until the task is interrupted. This patch tests if a console switch can occur in set_console() and returns early if a console switch is not possible. [akpm@linux-foundation.org: cleanup] Signed-off-by: Andrew Johnson Acked-by: Pavel Machek Cc: "Antonino A. Daplas" Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1174cf730179d8f029b9e93cb9a4d5bfb08d1202 Author: Vasily Averin Date: Fri Mar 16 13:38:24 2007 -0800 [PATCH] smbfs: double free memory corruption smbfs allocates rq_trans2buffer to handle server's multi transaction2 response messages. As struct smb_request may be reused, rq_trans2buffer is freed before each new request. However if last servers's response is not multi but single trans2 message then new rq_trans2buffer is not allocated but last smb_rput still tries to free it again. To prevent this issue rq_trans2buffer pointer should be set to NULL after kfree. Signed-off-by: Vasily Averin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 833f80627d10d370ea91b96de254850361c3a2fc Author: Geert Uytterhoeven Date: Fri Mar 16 13:38:23 2007 -0800 [PATCH] bool fbdevs must depend on FB = y Frame buffer device drivers that cannot be built as modules must depend on `FB = y'. Correct the 3 remaining offenders. Signed-off-by: Geert Uytterhoeven Cc: Al Viro Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b228b8e5bf96b740a70871c1a248bb65c267f5f2 Author: Michael Halcrow Date: Fri Mar 16 13:38:22 2007 -0800 [PATCH] eCryptfs: fix possible NULL ptr deref in ecryptfs_d_release() ecryptfs_d_release() first dereferences a pointer (via ecryptfs_dentry_to_lower()) and then afterwards checks to see if the pointer it just dereferenced is NULL (via ecryptfs_dentry_to_private()). This patch moves all of the work done on the dereferenced pointer inside a block governed by the condition that the pointer is non-NULL. Signed-off-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad28d94abb1313bdf27e196676292c493f92f824 Author: Thomas Gleixner Date: Fri Mar 16 13:38:21 2007 -0800 [PATCH] hrtimer: fix up unlocked access to wall_to_monotonic commit f4304ab21513b834c8fe3403927c60c2b81a72d7 (HZ free NTP) moved the access to wall_to_monotonic in hrtimer_get_softirq_time() out of the xtime_lock protection. Move it back into the seq_lock section. Signed-off-by: Thomas Gleixner Acked-by: John Stultz Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c6ca97d26a7efe9488174336bc67fdaea01aad49 Author: Atsushi Nemoto Date: Fri Mar 16 13:38:20 2007 -0800 [PATCH] SPI: at25: do not use pointer before assignment Prevents a potential oops with CONFIG_SPI_DEBUG given flakey hardware or incorrect configuration. Signed-off-by: Atsushi Nemoto Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13788ccc41ceea5893f9c747c59bc0b28f2416c2 Author: Thomas Gleixner Date: Fri Mar 16 13:38:20 2007 -0800 [PATCH] hrtimer: prevent overrun DoS in hrtimer_forward() hrtimer_forward() does not check for the possible overflow of timer->expires. This can happen on 64 bit machines with large interval values and results currently in an endless loop in the softirq because the expiry value becomes negative and therefor the timer is expired all the time. Check for this condition and set the expiry value to the max. expiry time in the future. The fix should be applied to stable kernel series as well. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d8ad7e0b84bde480d295ef1e0381c0c6050f57b3 Author: Antonino A. Daplas Date: Fri Mar 16 13:38:18 2007 -0800 [PATCH] savagefb: Fix compile error if debugging is enabled SavagePrintRegs() requires struct savagefb_par. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b600464f0514efd49d24182daf0e9d62cf8bb8f Author: Antonino A. Daplas Date: Fri Mar 16 13:38:18 2007 -0800 [PATCH] savagefb: Fix black screen on load in Savage IX This is a hack that seems to kick start the 2D engine of the Savage IX in some Toshiba laptops. Without this, the laptop starts with a black screen and occasionally crashes X. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e52e15d3c153b88c4536cf18214fac18481c888a Author: Ondrej Zajicek Date: Fri Mar 16 13:38:16 2007 -0800 [PATCH] sstfb: fix pixclock setting on Voodoo 1/2 cards Pixclock setting in sstfb didn't work with my Voodoo 2 card with ICS 5342 DAC (this DAC requires two consecutive writes to one of its registers to program pixclock - maybe first write merged with second). Signed-off-by: Ondrej Zajicek Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28735a7253a6c24364765e80a5428b4a151fccc2 Author: David Brownell Date: Fri Mar 16 13:38:14 2007 -0800 [PATCH] gpio_direction_output() needs an initial value It's been pointed out that output GPIOs should have an initial value, to avoid signal glitching ... among other things, it can be some time before a driver is ready. This patch corrects that oversight, fixing - documentation - platforms supporting the GPIO interface - users of that call (just one for now, others are pending) There's only one user of this call for now since most platforms are still using non-generic GPIO setup code, which in most cases already couples the initial value with its "set output mode" request. Note that most platforms are clear about the hardware letting the output value be set before the pin direction is changed, but the s3c241x docs are vague on that topic ... so those chips might not avoid the glitches. Signed-off-by: David Brownell Acked-by: Andrew Victor Acked-by: Milan Svoboda Acked-by: Haavard Skinnemoen Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a836f5856ae46ccb2464ea76031ea05ae967b832 Author: Chris Lesiak Date: Fri Mar 16 13:38:13 2007 -0800 [PATCH] spi: destroy workqueue after spi_unregister_master Fix a bug in the cleanup of an spi_bitbang bus. The workqueue associated with the bus was destroyed before the call to spi_unregister_master. That meant that spi devices on that bus would be unable to do IO in their remove method. The shutdown flag should have been able to prevent a segfault, but was never getting set. By waiting to destroy the workqueue until after the master is unregistered, devices are able to do IO in their remove methods. An added benefit is that neither the shutdown flag nor a wait for the queue of messages to empty is needed. Signed-off-by: Chris Lesiak Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65b8291c4000e5f38fc94fb2ca0cb7e8683c8a1b Author: Zach Brown Date: Fri Mar 16 13:38:11 2007 -0800 [PATCH] dio: invalidate clean pages before dio write This patch fixes a user-triggerable oops that was reported by Leonid Ananiev as archived at http://lkml.org/lkml/2007/2/8/337. dio writes invalidate clean pages that intersect the written region so that subsequent buffered reads go to disk to read the new data. If this fails the interface tries to tell the caller that the cache is inconsistent by returning EIO. Before this patch we had the problem where this invalidation failure would clobber -EIOCBQUEUED as it made its way from fs/direct-io.c to fs/aio.c. Both fs/aio.c and bio completion call aio_complete() and we reference freed memory, usually oopsing. This patch addresses this problem by invalidating before the write so that we can cleanly return -EIO before ->direct_IO() has had a chance to return -EIOCBQUEUED. There is a compromise here. During the dio write we can fault in mmap()ed pages which intersect the written range with get_user_pages() if the user provided them for the source buffer. This is a crazy thing to do, but we can make it mostly work in most cases by trying the invalidation again. The compromise is that we won't return an error if this second invalidation fails if it's an AIO write and we have -EIOCBQUEUED. This was tested by having two processes race performing large O_DIRECT and buffered ordered writes. Within minutes ext3 would see a race between ext3_releasepage() and jbd holding a reference on ordered data buffers and would cause invalidation to fail, panicing the box. The test can be found in the 'aio_dio_bugs' test group in test.kernel.org/autotest. After this patch the test passes. Signed-off-by: Zach Brown Signed-off-by: Benjamin LaHaise Cc: Leonid Ananiev Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00e9fa2d6421fbbefb4c02821a1e779a3ce47781 Author: Nick Piggin Date: Fri Mar 16 13:38:10 2007 -0800 [PATCH] mm: fix madvise infinine loop madvise(MADV_REMOVE) can go into an infinite loop or cause an oops if the call covers a region from the start of a vma, and extending past that vma. Signed-off-by: Nick Piggin Cc: Badari Pulavarty Acked-by: Hugh Dickins Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0465fc0a1c42e18438d391f3a7e661493a9ad68e Author: Evgeniy Dushistov Date: Fri Mar 16 13:38:09 2007 -0800 [PATCH] ufs2: tindirect truncate fix During modification of code to support UFS2 writing, the case with "three indirect" blocks in truncate path was missed, this patch fixes this situation. Signed-off-by: Evgeniy Dushistov Acked-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b25a37e2093146c1f9aa436b832b7d4ef880ca4 Author: Evgeniy Dushistov Date: Fri Mar 16 13:38:09 2007 -0800 [PATCH] ufs: zeroize the rest of block in truncate This patch fix behaviour in such test scenario: lseek(fd, BIG_OFFSET) write(fd, buf, sizeof(buf)) truncate(BIG_OFFSET) truncate(BIG_OFFSET + sizeof(buf)) read(fd, buf...) Because of if file big enough(BIG_OFFSET) we start allocate space by block, ordinary block size > page size, so we should zeroize the rest of block in truncate(except last framgnet, about which VFS should care), to not get garbage, when we extend file. Also patch corrects conversion from pointer to block to physical block number, this helps in case of not common used UFS types. And add to debug output inode number. Signed-off-by: Evgeniy Dushistov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5431bf97ce69065ed07de1ff12543d0800817b83 Author: Evgeniy Dushistov Date: Fri Mar 16 13:38:08 2007 -0800 [PATCH] ufs: prepare write + change blocks on the fly This fixes "change blocks numbers on the fly" in case when "prepare write page" is in the call chain, in this case some buffers may be not uptodate and not mapped, we should care to map them and load from disk. This patch was tested with: - ufs regressions simple tests - fsx-linux - ltp(20060306) - untar and build kernel Signed-off-by: Evgeniy Dushistov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2189850f42beff23af32d847bd043cd1d1811a80 Author: Evgeniy Dushistov Date: Fri Mar 16 13:38:07 2007 -0800 [PATCH] ufs2: more correct work with time This patch corrects work with time in UFS2 case. 1) According to UFS2 disk layout modification/access and so on "time" should be hold in two variables one 64bit for seconds and another 32bit for nanoseconds, at now for some unknown reason we suppose that "inode time" holds in three variables 32bit for seconds, 32bit for milliseconds and 32bit for nanoseconds. 2) We set amount of nanoseconds in "VFS inode" to 0 during read, instead of getting values from "on disk inode"(this should close http://bugzilla.kernel.org/show_bug.cgi?id=7991). Signed-off-by: Evgeniy Dushistov Cc: Bjoern Jacke Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 94985134b7b46848267ed6b734320db01c974e72 Author: Rafael J. Wysocki Date: Fri Mar 16 13:38:06 2007 -0800 [PATCH] swsusp: disable nonboot CPUs before entering platform suspend Prevent the WARN_ON() in arch/x86_64/kernel/acpi/sleep.c:init_low_mapping() from triggering by disabling nonboot CPUs before we finally enter the platform suspend. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 886c5952950ffed0e8ca3eb9efdc2728bfc144d3 Author: Rafael J. Wysocki Date: Fri Mar 16 13:38:06 2007 -0800 [PATCH] swsusp: Fix resume error path in platform mode If swsusp is using the platform mode during the resume and the image cannot be read, the platform mode should be switched off before software_resume() returns. Make it happen. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 765e3d8a71bbc1f3400667d5cfcfd7b03382d587 Author: David Brownell Date: Fri Mar 16 13:38:05 2007 -0800 [PATCH] rm pointless dmaengine exports This removes several pointless exports from drivers/dma/dmaengine.c; the dma_async_memcpy_*() functions are inlined by so those exports are inappropriate. It also moves the existing EXPORT_SYMBOL declarations next to their functions, so it's now trivial to confirm one-to-one correspondence between exports and nonstatic symbols. Signed-off-by: David Brownell Signed-off-by: Dan Williams Acked-by: Chris Leech Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bed31ed9e1cd71d98ff0bc9212100adee523a10a Author: Andy Isaacson Date: Fri Mar 16 13:38:04 2007 -0800 [PATCH] fix read past end of array in md/linear.c When iterating through an array, one must be careful to test one's index variable rather than another similarly-named variable. The loop will read off the end of conf->disks[] in the following (pathological) case: % dd bs=1 seek=840716287 if=/dev/zero of=d1 count=1 % for i in 2 3 4; do dd if=/dev/zero of=d$i bs=1k count=$(($i+150)); done % ./vmlinux ubd0=root ubd1=d1 ubd2=d2 ubd3=d3 ubd4=d4 # mdadm -C /dev/md0 --level=linear --raid-devices=4 /dev/ubd[1234] adding some printks, I saw this: [42949374.960000] hash_spacing = 821120 [42949374.960000] cnt = 4 [42949374.960000] min_spacing = 801 [42949374.960000] j=0 size=820928 sz=820928 [42949374.960000] i=0 sz=820928 hash_spacing=820928 [42949374.960000] j=1 size=64 sz=64 [42949374.960000] j=2 size=64 sz=128 [42949374.960000] j=3 size=64 sz=192 [42949374.960000] j=4 size=1515870810 sz=1515871002 Cc: Gautham R Shenoy Acked-by: Neil Brown Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48670a1e018a9c0b83dc78e3b71ffb26391ee4b6 Author: David Brownell Date: Fri Mar 16 13:38:02 2007 -0800 [PATCH] reduce pnp syslog spam Make some normal code paths in PNP stop issuing syslog spam. Since PNP issues calls regardless of device capablities, it's no surprise when some of those devices don't support those calls! Signed-off-by: David Brownell Cc: Adam Belay Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f510aa3bdb095c5253f6bee9e0f5a3a9ac69ded4 Author: Ralf Baechle Date: Fri Mar 16 21:58:37 2007 +0000 [MIPS] Kconfig: Move missplaced NR_CPUS default from SMTC to VSMP. Signed-off-by: Ralf Baechle commit 49edd098e298b1f94748b7eb9c76374eeca7fb93 Author: Ralf Baechle Date: Fri Mar 16 16:10:36 2007 +0000 [MIPS] Lockdep: Fix recursion bug. trace_hardirqs_off -> atomic_inc -> local_irq_restore -> trace_hardirqs_off Signed-off-by: Ralf Baechle commit 46230aa6ea1671690e3e5efa2a961fc0745fe9b5 Author: Ralf Baechle Date: Fri Mar 16 12:16:27 2007 +0000 [MIPS] RTLX: Handle copy_*_user return values. Signed-off-by: Ralf Baechle commit bc4809e939b91c9642f1ddaea732e2d432ee6af6 Author: Ralf Baechle Date: Thu Mar 15 17:13:47 2007 +0000 [MIPS] RTLX: Protect rtlx_{read,write} with mutex. Signed-off-by: Ralf Baechle commit 61dcc6f4d9ed5db71f4f0be9026bdd09f1a7dc06 Author: Ralf Baechle Date: Thu Mar 15 17:10:16 2007 +0000 [MIPS] RTLX: Harden against compiler reordering and optimization. RTLX communication is based on lock-free shared memory buffers. It happened to be working by luck so far but relies on the optimizer doing certain optimizations but no reordering. Fixed by inserting proper barriers in rtlx_read and rtlx_write, and careful pointer dereferencing. Signed-off-by: Ralf Baechle commit 9e34682026572f07328208f7d2b2c611d2001844 Author: Ralf Baechle Date: Thu Mar 15 17:08:28 2007 +0000 [MIPS] RTLX: Don't use volatile; it's fragile. Signed-off-by: Ralf Baechle commit 080e948c079f7aa7c4dce7f14b046519886ccabc Author: Ralf Baechle Date: Tue Mar 13 08:59:54 2007 +0000 [MIPS] Lasat: Downgrade 64-bit kernel from experimental to broken. Signed-off-by: Ralf Baechle commit 65f8ebe0630ffadce19a3ed11c7eb41bc6cfabce Author: Ralf Baechle Date: Sat Mar 10 18:22:25 2007 +0000 [MIPS] Compat: Fix build if CONFIG_SYSVIPC is disabled. Signed-off-by: Ralf Baechle commit 2c35f813f3e98f70534b5c2d82e5e2079034fc50 Author: Ralf Baechle Date: Sat Mar 10 04:56:33 2007 +0000 [CHAR] lcd: Fix two warnings. In file included from drivers/char/lcd.c:23: include/linux/mc146818rtc.h:104:1: warning: "RTC_IO_EXTENT" redefined drivers/char/lcd.c:15:1: warning: this is the location of the previous definition drivers/char/lcd.c:35: warning: 'lcd_lock' defined but not used c316eb1eee2c803c33b1f826fe744c922d2e354f deleted the last code using lcd_lock, so delete definition of lcd_lock. The definition of RTC_IO_EXTENT is unused and probably always was only debree copied from drivers/char/rtc.c. Signed-off-by: Ralf Baechle commit 53dc80287da43b75df2fe2658651d3c5160dad8e Author: Atsushi Nemoto Date: Sat Mar 10 01:07:45 2007 +0900 [MIPS] FPU ownership management & preemption fixes Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit c6a2f4679331206ef5d353fc9a6cda2fa4aef8c6 Author: Atsushi Nemoto Date: Sat Mar 10 01:03:48 2007 +0900 [MIPS] Check FCSR for pending interrupts, alternative version Commit 6d6671066a311703bca1b91645bb1e04cc983387 is incomplete and misses non-r4k CPUs. This patch reverts the commit and fixes in other way. o Do FCSR checking in caller of restore_fp_context. o Send SIGFPE if the signal handler set any FPU exception bits. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit f1dbf8e718ef0ddb196a28bcc71925ac7da881af Author: Ralf Baechle Date: Sat Mar 10 03:26:56 2007 +0000 [MIPS] IP27, IP35: Fix warnings. include/asm-mips/mach-ip27/dma-coherence.h:22: warning: 'plat_map_dma_mem' defined but not used include/asm-mips/mach-ip27/dma-coherence.h:41: warning: 'plat_unmap_dma_mem' defined but not used include/asm-mips/mach-ip32/dma-coherence.h:30: warning: 'plat_map_dma_mem' defined but not used include/asm-mips/mach-ip32/dma-coherence.h:63: warning: 'plat_unmap_dma_mem' defined but not used These functions are meant to be inlined anyway. Signed-off-by: Ralf Baechle commit d1acb4210aaa9bdc413d276dbc96d0a23ada97ba Author: David S. Miller Date: Fri Mar 16 17:20:28 2007 -0700 [SPARC64]: Get DEBUG_PAGEALLOC working again. We have to make sure to use base-pagesize TLB entries even during the early transition period where we need TLB miss handling but don't have the kernel page tables setup yet for the linear region. Also, it is necessary therefore to not use the 4MB TSB for these translations, and instead use the normal kernel TSB. This allows us to also get rid of the 4MB tsb for debug builds which shrinks the kernel a little bit. Signed-off-by: David S. Miller commit d35690beda1429544d46c8eb34b2e3a8c37ab299 Author: Masayuki Nakagawa Date: Fri Mar 16 16:14:03 2007 -0700 [IPV6]: ipv6_fl_socklist is inadvertently shared. The ipv6_fl_socklist from listening socket is inadvertently shared with new socket created for connection. This leads to a variety of interesting, but fatal, bugs. For example, removing one of the sockets may lead to the other socket's encountering a page fault when the now freed list is referenced. The fix is to not share the flow label list with the new socket. Signed-off-by: Masayuki Nakagawa Signed-off-by: David S. Miller commit 53cdcc04c1e85d4e423b2822b66149b6f2e52c2c Author: John Heffner Date: Fri Mar 16 15:04:03 2007 -0700 [TCP]: Fix tcp_mem[] initialization. Change tcp_mem initialization function. The fraction of total memory is now a continuous function of memory size, and independent of page size. Signed-off-by: John Heffner Signed-off-by: David S. Miller commit 3e6b3b2e34ac2c72fa05b5e4b20bd88d64c298dc Author: Alexey Dobriyan Date: Fri Mar 16 15:00:46 2007 -0700 [NET]: Copy mac_len in skb_clone() as well ANK says: "It is rarely used, that's wy it was not noticed. But in the places, where it is used, it should be disaster." Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit d5cc4a73a5b5c8374b810d5371e9e7ed05c1e02c Author: Robert Olsson Date: Fri Mar 16 15:00:07 2007 -0700 [IPV4]: Do not disable preemption in trie_leaf_remove(). Hello, Just discussed this Patrick... We have two users of trie_leaf_remove, fn_trie_flush and fn_trie_delete both are holding RTNL. So there shouldn't be need for this preempt stuff. This is assumed to a leftover from an older RCU-take. > Mhh .. I think I just remembered something - me incorrectly suggesting > to add it there while we were talking about this at OLS :) IIRC the > idea was to make sure tnode_free (which at that time didn't use > call_rcu) wouldn't free memory while still in use in a rcu read-side > critical section. It should have been synchronize_rcu of course, > but with tnode_free using call_rcu it seems to be completely > unnecessary. So I guess we can simply remove it. Signed-off-by: Robert Olsson Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 92b35e910fe14e6e3a5d498157375fb55ea5fd03 Author: Andi Kleen Date: Fri Mar 16 21:07:36 2007 +0100 [PATCH] x86: Export _proxy_pda for gcc 4.2 The symbol is not actually used, but the compiler unforunately generates a (unused) reference to it. This can happen even in modules. So export it. Signed-off-by: Andi Kleen commit 28f36f8fbf5f3718f7095055c1911a67d200dda1 Author: Guillaume Chazarain Date: Fri Mar 16 21:07:36 2007 +0100 [PATCH] i386: Don't use the TSC in sched_clock if unstable http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f9690982b8c2f9a2c65acdc113e758ec356676a3 caused a regression by letting sched_clock use the TSC even when cpufreq disabled it. This caused scheduling weirdnesses. Signed-off-by: Guillaume Chazarain Signed-off-by: Andi Kleen commit 43999d9e4e3133bfe0a55589037796386b012a68 Author: Sam Ravnborg Date: Fri Mar 16 21:07:36 2007 +0100 [PATCH] x86-64: fix section mismatch warnings Fix the following section mismatch warnings on x86_64: (build using defconfig) WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:mtrr_bp_init from .text between 'identify_cpu' (at offset 0x65eb) and 'IRQ0x20_interrupt' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data: from .text between 'finish_e820_parsing' (at offset 0x7dc2) and 'early_panic' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:e820_print_map from .text between 'finish_e820_parsing' (at offset 0x7de1) and 'early_panic' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:num_processors from .text between 'acpi_unmap_lsapic' (at offset 0xc88f) and 'acpi_register_ioapic' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:disabled_cpus from .text between 'MP_processor_info' (at offset 0x11f35) and 'mp_register_lapic' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:num_processors from .text between 'MP_processor_info' (at offset 0x11f6e) and 'mp_register_lapic' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:num_processors from .text between 'MP_processor_info' (at offset 0x11f93) and 'mp_register_lapic' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:fix_aperture from .text between 'gart_parse_options' (at offset 0x15517) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:fix_aperture from .text between 'gart_parse_options' (at offset 0x1552c) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:iommu_aperture_allowed from .text between 'gart_parse_options' (at offset 0x1553d) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:iommu_aperture_allowed from .text between 'gart_parse_options' (at offset 0x15552) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:iommu_aperture_allowed from .text between 'gart_parse_options' (at offset 0x15561) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:iommu_aperture_allowed from .text between 'gart_parse_options' (at offset 0x15577) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:fallback_aper_force from .text between 'gart_parse_options' (at offset 0x1558a) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:fallback_aper_order from .text between 'gart_parse_options' (at offset 0x155bf) and 'iommu_full' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:timer_over_8254 from .text between 'ati_bugs' (at offset 0x16344) and 'via_bugs' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:timer_over_8254 from .text between 'ati_bugs' (at offset 0x16356) and 'via_bugs' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:iommu_aperture_allowed from .text between 'via_bugs' (at offset 0x16380) and 'nvidia_bugs' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:iommu_aperture_disabled from .text between 'via_bugs' (at offset 0x16397) and 'nvidia_bugs' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:acpi_use_timer_override from .text between 'nvidia_bugs' (at offset 0x163a7) and 'arch_unregister_cpu' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:nvidia_hpet_check from .text between 'nvidia_bugs' (at offset 0x163b1) and 'arch_unregister_cpu' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data: from .text between 'nvidia_bugs' (at offset 0x163be) and 'arch_unregister_cpu' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data: from .text between 'nvidia_bugs' (at offset 0x163d1) and 'arch_unregister_cpu' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.data:acpi_skip_timer_override from .text between 'nvidia_bugs' (at offset 0x163e1) and 'arch_unregister_cpu' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:quirk_intel_irqbalance from .text between 'intel_bugs' (at offset 0x1633c) and 'ati_bugs' But adds: WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:get_mtrr_state from .text between 'mtrr_bp_init' (at offset 0xb887) and 'ipi_handler' The warnings does not show up during a normal build due to kbuild failing to check for section mismatch in vmlinux. To see these warnings run: scripts/mod/modpost arch/x86_64/kernel/built-in.o kbuild will be fixed but the 'noise-level' had to be decresed first. There remains a few section mismatch warnigns for x86_64 for areas where I did not feel confident. Signed-off-by: Sam Ravnborg Signed-off-by: Andi Kleen commit 302cf930cbcc6ca24d7e00cffde3d93534ea5405 Author: Andi Kleen Date: Fri Mar 16 21:07:36 2007 +0100 [PATCH] i386: Enforce GPLness of VMI ROM VMI ROMs are pretty intimate to the kernel, so enforce their GPLness. No \0 tricks checking for now This rules out BSD/MIT modules for now, sorry -- the trouble is those could come without source. Acked-by: Zachary Amsden Acked-by: Ingo Molnar Signed-off-by: Andi Kleen commit a9bc3bfd1226c3f09cf321374f934b3892929872 Author: Alexandr Andreev Date: Fri Mar 16 21:07:36 2007 +0100 [PATCH] x86-64: wire up compat sched_rr_get_interval(2) sys32_sched_rr_get_interval() uses compat_timespec but wasn't used itself. Signed-off-by: Alexandr Andreev Signed-off-by: Alexey Dobriyan Signed-off-by: Andi Kleen commit 33a40bfd4f41af71231192b8024efba79123f198 Author: Andi Kleen Date: Fri Mar 16 21:07:36 2007 +0100 [PATCH] i386: Update defconfig Signed-off-by: Andi Kleen commit e9781093b59e97a6b216415263e3bee710ef3eb0 Author: Andi Kleen Date: Fri Mar 16 21:07:35 2007 +0100 [PATCH] x86-64: Update defconfig Signed-off-by: Andi Kleen commit 4d881901b8c2167884d213eb546ffffc9e5e35ac Author: Michal Schmidt Date: Fri Mar 16 12:42:59 2007 +0100 [PATCH] airo: Fix an error path memory leak The airo driver leaks memory if request_irq() fails. Signed-off-by: Michal Schmidt Signed-off-by: John W. Linville commit 21665a69e6c0c3e383eaef417f0ddbd16bdb69e3 Author: Larry Finger Date: Wed Mar 14 10:32:07 2007 -0500 [PATCH] bcm43xx: MANUALWLAN fixes During testing of bcm43xx interference mitigation, two problems were discovered: (1) When the MANUALWLAN mode was set, routines _stack_save and _stack_restore generated assertions that were traced to saving ILT registers with addresses > 0xFFF. This problem was fixed by adding one bit to the field used for the offset, and subtracting one bit from the space used for the id. (2) In MANUALWLAN mode, the IRQ XMIT errors are generated. The cause of these errors has not yet been located. Any suggestions on debugging this problem would be greatly appreciated. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 5f1545bc45a33361d6bb2fb44af7c35bcd733b9d Author: Joachim Deguara Date: Fri Mar 16 15:01:36 2007 +0100 [ALSA] hda-intel - Fix HDA buffer alignment From the HDA spec it appears that the buffers written to the BDL and sent to a codec must be 128 byte aligned (section 4.5.1). The alignment was not happening especially when playing 6 channels. This patch set the alignment of buffers and periods to 128 bytes. Signed-off-by: Joachim Deguara Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f144e7c7272bf527c380bffaa5e789dc28a09d8d Author: Mathieu Desnoyers Date: Sat Mar 10 03:23:03 2007 -0500 [POWERPC] Fix atomicity of TIF update in flush_thread() Fix atomicity of TIF update in flush_thread() for powerpc Fixes it correctly with *_ti_thread_flag. Race : parent process executing : sys_ptrace() (lock_kernel()) (ptrace_get_task_struct(pid)) arch_ptrace() ptrace_detach() ptrace_disable(child); clear_singlestep(child); clear_tsk_thread_flag(child, TIF_SINGLESTEP); (which clears the TIF_SINGLESTEP flag atomically from a different process) (put_task_struct(child)) (unlock_kernel()) And at the same time, in the child process : sys_execve() do_execve() search_binary_handler() load_elf_binary() flush_old_exec() flush_thread() doing a non-atomic thread flag update Applies on 2.6.20. Signed-off-by: Mathieu Desnoyers Signed-off-by: Paul Mackerras commit 38e2aff670b681b6cc267aca307633cbcb48864b Author: Steve French Date: Fri Mar 16 05:12:53 2007 +0000 [CIFS] Do not negotiate new POSIX_PATH_OPERATIONS_CAP yet Samba server now expects that clients which send the new POSIX_PATH_OPERATIONS_CAP send all opens with this new SMB - and expects that clients that could send the new posix open/create but don't as indicating that they really want Windows semantics on that handle (which allows Samba to support clients which want to support both types of behaviors on different handles on the same mount) We will put this capability back in the SetFSInfo negotiation with servers like Samba when the new POSIXCreate (create/open/mkdir) code is finished. Signed-off-by: Steve French commit 96e89afe6da630dc54cfbca33c2c6a7ab9b6c11b Author: Henrique de Moraes Holschuh Date: Thu Mar 15 16:15:06 2007 -0300 ACPI: ibm-acpi: allow module to load when acpi notifiers can't be set (v2) This patch allows for ibm-acpi to coexist (with diminished functionality) with other drivers like ACPI_BAY. ibm-acpi will simply disable the functions it is not able to register ACPI notifiers for. Signed-off-by: Henrique de Moraes Holschuh Cc: Chris Wedgwood Cc: Kristen Carlson Accardi Signed-off-by: Len Brown commit 0803c30c23d39e1db88d06ef59c30fa5ef6c3ada Author: Stelian Pop Date: Thu Mar 15 16:54:27 2007 +0100 [ARM] 4264/1: ldrex/strex syntax errors with recent compilers Trying to build some code using atomic_clear_mask() on a ARM v6 processor with a recent compiler (tried with gcc version 4.1.1 (CodeSourcery ARM Sourcery G++ 2006q3-26), but all gcc > 4.1 might be affected) results in the following: /tmp/ccWKLJV8.s: Assembler messages: /tmp/ccWKLJV8.s:581: Error: instruction does not accept this addressing mode -- `ldrex r0,r3' /tmp/ccWKLJV8.s:583: Error: instruction does not accept this addressing mode -- `strex r1,r0,r3' Older gcc (like gcc version 4.0.0 (DENX ELDK 4.1 4.0.0)) have no problem with this. The patch below fixes the compile error. I also verified that gcc-4.0.0 generates identical code using both forms. Signed-off-by: Stelian Pop Acked-by: Catalin Marinas Signed-off-by: Russell King commit a8a5d06775f54ab2d23ad6455db399c15a664feb Author: Takashi Iwai Date: Thu Mar 15 15:10:28 2007 +0100 [ALSA] hda-codec - Add model for HP Compaq d5750 Added model=hp-3013 for HP Compaq d5750 with ALC260 codec chip. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6f0778d8726ab647ff80c98c1545fdf839f7bcac Author: Nicolas Boichat Date: Thu Mar 15 12:38:15 2007 +0100 [ALSA] hda-codec - Add support for MacBook Pro 1st generation Fix audio on Macbook Pro 1st generation. Signed-off-by: Nicolas Boichat Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 09fe58356d148ff66901ddf639e725ca1a48a0af Author: Len Brown Date: Sun Mar 11 03:32:00 2007 -0400 ACPI: parse 2nd MADT by default http://bugzilla.kernel.org/show_bug.cgi?id=7465 Signed-off-by: Len Brown commit a8f4af6dc6600980885c594f52eecd60edd62013 Author: Len Brown Date: Thu Mar 15 04:10:36 2007 -0400 ACPICA: revert "acpi_serialize" changes This reverts 977a6226feae3e2c10a4d8227625ff0f04b49239 and reverts 1ba753acb372c2955a4843302e92e49ce82e2fea and updates acpi_ev_queue_notify_request() to restore the previous implementation of the "acpi_serialize" workaround. http://bugzilla.kernel.org/show_bug.cgi?id=8171 Signed-off-by: Len Brown commit 717aa9fd26ea89631c946bd42562fa07a91f3133 Author: Jaroslav Kysela Date: Wed Mar 14 08:25:52 2007 +0100 [ALSA] version 1.0.14rc3 Signed-off-by: Jaroslav Kysela commit 9720b718f6b92fec07b2408ab7ca60d5146f07e2 Author: Takashi Iwai Date: Tue Mar 13 21:46:23 2007 +0100 [ALSA] hda-codec - Add model for HP Compaq d5700 Added model=hp-3013 for HP Compaq d5700 desktop with ALC260 codec. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 883be7936747f35479ecf94aebf3daf418b7f449 Author: Takashi Iwai Date: Tue Mar 13 21:52:36 2007 +0100 [ALSA] intel8x0 - Fix Oops at kdump crash kernel Fixed Oops at crash kernel from intel8x0 driver that is triggered from interrupt handler. Proper irqsave version seems needed for kexec/kdump. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 0a07acafd6127117db0c20e04302dd8ac9402bc0 Author: Takashi Iwai Date: Tue Mar 13 10:40:23 2007 +0100 [ALSA] hda-codec - Fix speaker output on MacPro Initialize the first line-out widget as the output pin in stac92xx_init(). Some devices like MacPro seem to set this widget as INPUT as default, and confuses the driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 187689913d92b5b3b595486a0cb82706f9175dc6 Author: Tobin Davis Date: Mon Mar 12 22:20:51 2007 +0100 [ALSA] hda-codec - more systems for Analog Devices This patch adds support for more systems using Analog Devices codecs. Asus P5B-DLX - AD1988 Toshiba U205 - AD1981 Lenovo M55 - AD1986 Samsung R55 - AD1986 Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a9995a3557ebf09721fd111744ff8b6e498797a6 Author: Takashi Iwai Date: Mon Mar 12 21:30:46 2007 +0100 [ALSA] hda-intel - Fix codec probe with ATI contorllers ATI controllers may have up to 4 codecs while ICH up to 3. Thus the earlier fix to change AZX_MAX_CODECS to 3 cause a regression on some devices that have the audio codec at bit#3. Now max codecs is defined according to the driver type, either 3 or 4. Currently 4 is set only to ATI chips. Other might need the same change, too. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a64c8cd6e22bbc6a101da5b827e720fff35a5ab9 Author: Tobin Davis Date: Mon Mar 12 11:36:00 2007 +0100 [ALSA] hda-codec - Add suppoprt for Asus M2N-SLI motherboard This patch adds a cfg_tbl to the ad1988 code with the Asus M2N-SLI as it's first member. Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 19bfafb2ed1a59efb979b6725ab7626a94f7e078 Author: Tommi Kyntola Date: Fri Mar 9 16:15:06 2007 +0100 [ALSA] intel8x0 - Fix speaker output after S2RAM Fixed the mute speaker problem after S2RAM on some laptops: http://bugme.osdl.org/show_bug.cgi?id=6181 Signed-off-by: Tommi Kyntola Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit c26a8de23a4417f556250c4c099b048b26c430be Author: Randy Cushman Date: Fri Mar 9 11:32:22 2007 +0100 [ALSA] ac97 - fix AD shared shared jack control logic This patch fixes the control logic for shared Microphone in/Center+LFE out and Line in/Surround out jacks for Analog Devices AD1888, AD1980 and AD1985 AC '97 CODECs. Signed-off-by: Randy Cushman Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1fc273b88e59092466b6503e46d9227976254e10 Author: Takashi Iwai Date: Thu Mar 8 12:53:02 2007 +0100 [ALSA] soc - Fix dependencies in Kconfig files Fixed dependencies in Kconfig files of soc drivers. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 0b3d4ef6fe43b75d4b2a6fc4b814cf03aa248e13 Author: Paul Mundt Date: Wed Mar 14 13:22:37 2007 +0900 serial: Fix sh-sci break interrupt/sysrq handling. The sh-sci sci_br_interrupt() handler was failing to call in to uart_handle_break(), which was something that only the SH-3 path was doing, fix that up. Additionally, SUPPORT_SYSRQ seems to have moved down too far, move it back to the top so uart_handle_break() and friends aren't no-ops. Signed-off-by: Paul Mundt commit 3afb209a43a4216ad4f1411922d47a44252926c6 Author: Paul Mundt Date: Wed Mar 14 13:03:35 2007 +0900 sh: Fix bogus regs pointer in do_IRQ(). SH-3 and SH-4 were trampling the register, and SH-2 wasn't even setting it in the first place. This ended up with some rather broken behaviour in the sysrq show_regs(). Signed-off-by: Paul Mundt commit 66fb8bd209926140844830762164a44afdbf44ef Author: Russell King Date: Tue Mar 13 09:54:21 2007 +0000 [ARM] Fix breakage caused by 72486f1f8f0a2bc828b9d30cf4690cf2dd6807fc 72486f1f8f0a2bc828b9d30cf4690cf2dd6807fc inverted the sense for enabling hotplug CPU controls without reference to any other architecture other than i386, ia64 and PowerPC. This left everyone else without hotplug CPU control. Fix ARM for this brain damage. Signed-off-by: Russell King commit 5b18167d6b7c63e2787cd9a68f0620a9c363fc85 Author: Mattia Dongili Date: Mon Mar 12 21:43:57 2007 +0100 sony-laptop: MAINTAINERS fix entry, add L: and W: Signed-off-by: Mattia Dongili Signed-off-by: Len Brown commit 1d99967badac599c0d1db0b45c99e073e8e98cd4 Author: Alexey Starikovskiy Date: Mon Mar 12 14:49:26 2007 -0400 ACPI: resolve HP nx6125 S3 immediate wakeup regression Moving disable GPEs from enter_sleep up into sleep_prepare fixed the disabled SCI on S4 on Acer laptops. However, it caused an immediate S3 resume on the HP nx6125. Apparently, on the HP, a GPE was getting re-enabled after the prepare, but before the enter. Close that window by restoring the GPE disable on enter. This is redundant in most cases, but closes this window, where S3 and S4 paths differ. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown Acked-by: Ray Lee commit ffe1b4e9f436fd7bb784f3bf7ee963c149fbca5f Author: Paul Mundt Date: Mon Mar 12 16:15:22 2007 +0900 sh: Fix SH-3 cache entry_mask and way_size calculation. The code for performing the calculation was only in the SH-4 probe path, move it out to the common path so the other parts get this right too. Signed-off-by: Paul Mundt commit fbd168461e65e73016c34b2eacd76d87218c8a9f Author: Mike Frysinger Date: Mon Mar 12 16:12:45 2007 +0900 sh: Convert struct ioctls to static defines. This fixes up some compile failures for cases where we don't include all of the headers. There's not much point in keeping the struct references around anyways, most of the others have been converted already. Signed-off-by: Mike Frysinger Signed-off-by: Paul Mundt commit 72a121ba6d1a264b1d42892ec5d3ccd2b2af6b74 Author: Paul Mundt Date: Mon Mar 12 15:55:19 2007 +0900 sh: Define missing __NR_readahead. For some reason sh was missing __NR_readahead, even though the syscall was wired up, and the slot was reserved. Caught with dwmw2's missing syscall checker. Signed-off-by: Paul Mundt commit bb68660943fc0dc2a5fa634243f3c6b7fb715626 Author: Hideo Saito Date: Mon Mar 12 14:50:49 2007 +0900 sh: Fix PCI BAR address-space wraparound. When a SH7751R system includes a card that has wide range space like a graphics card, the pci-pci bridge controller can't set the correct address range. For example, when *lower_limit is 0xfd000000 and bar_size is 0x4000000, in the following code at arch/sh/drivers/pci/pci-auto.c, 0x0 is set in bar_value. pciauto_setup_bars() { ... bar_value = ((*lower_limit - 1) & ~(bar_size - 1)) + bar_size; ... *lower_limit = bar_value + bar_size; } As a result, 0x4000000 is set in *lower_limit, but this value is wrong. The following patch avoids this problem by checking the range of the value and refusing to update the BAR if the calculated value ends up being bogus. Signed-off-by: Hideo Saito Signed-off-by: Paul Mundt commit a1fdcc0d2714b6622e3fd5c00db1635213d6c41a Author: Len Brown Date: Sun Mar 11 03:26:14 2007 -0400 ACPI: Add support to parse 2nd MADT When a BIOS bug presents multiple APIC/MADTs, Linux currently uses the 1st and ignores the 2nd. But some machines work better if we use the 2nd. http://bugzilla.kernel.org/show_bug.cgi?id=7465 Add a warning and boot parameter "acpi_apic_instance=2" to allow parsing the 2nd. No change to default behaviour in this patch. Signed-off-by: Len Brown commit f5c1e2ea71603bc2962041fef9dd902cb8626a1d Author: Alan Tyson Date: Sat Mar 10 06:05:14 2007 +0000 [CIFS] reset mode when client notices that ATTR_READONLY is no longer set Signed-off-by: Alan Tyso Signed-off-by: Jeff Layton Signed-off-by: Steve French