commit 09b56adc98e0f8a21644fcb4d20ad367c3fceb55 Author: Linus Torvalds Date: Mon Dec 3 20:26:10 2007 -0800 Linux 2.6.24-rc4 commit a6733f2e146a5f4884bc23023bf56f3a2698b547 Author: Ralf Baechle Date: Sun Dec 2 12:09:11 2007 +0000 [MIPS] BCM1480: Fix interrupt routing. The old code did did only work as long as CFE and the kernel were using the same interrupt numbering ... Signed-off-by: Ralf Baechle commit 17d57a9206b4de6ad082ac9f2d2346985abbd2aa Author: Eric W. Biederman Date: Sat Dec 1 18:34:06 2007 -0700 x86: fix x86-32 early fixmap initialization. pageexec@freemail.hu writes: > i've just noticed that the chunk in i386/kernel/head.S ended up in a > weird place, namely, it's not going to be executed as it's just after > a 'jmp 3f' and before startup_32_smp, probably not what you intended. > on a sidenote, the whole thing can be done in a single insn, like: > > movl $(swapper_pg_pmd - __PAGE_OFFSET + 0x067), (swapper_pg_dir - > __PAGE_OFFSET+ 4092) Thanks for the reminder I thought we had fixed this problem a while ago. Needed to get fixed virtual address for USB debug and earlycon with mmio. Signed-off-by: "Eric W. Biederman" Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 0c1b2724069951b1902373e688042b2ec382f68f Author: OGAWA Hirofumi Date: Mon Dec 3 17:17:10 2007 +0100 x86: disable hpet legacy replacement for kdump we should also add hpet_disable() for kdump. Signed-off-by: OGAWA Hirofumi Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit c86c7fbc829e27e2a4093f98ded9fbd75e515adb Author: OGAWA Hirofumi Date: Mon Dec 3 17:17:10 2007 +0100 x86: disable hpet on shutdown If HPET was enabled by pci quirks, we use i8253 as initial clockevent because pci quirks doesn't run until pci is initialized. The above means the kernel (or something) is assuming HPET legacy replacement is disabled and can use i8253 at boot. If we used kexec, it isn't true. So, this patch disables HPET legacy replacement for kexec in machine_shutdown(). Signed-off-by: OGAWA Hirofumi Acked-by: Venkatesh Pallipadi Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 4200b66cbf6f4970dd7e192cc929cbccae12a4ca Author: Vivek Goyal Date: Sat Dec 1 12:16:30 2007 -0800 Update Kdump Maintainer's details Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce3b642d42f36406112ab474c03d81c5941d9398 Author: Jeff Dike Date: Sat Dec 1 12:16:30 2007 -0800 uml: work around host tcsetattr bug Under the conditions that UML uses it, tcgetattr is guaranteed to return -EINTR when the console is attached to /dev/ptmx, making generic_console_write hang because it loops, calling tcgetattr until it succeeds. This is a host bug - see http://marc.info/?l=linux-kernel&m=119618990807182&w=2 for the details. This patch works around it by blocking SIGIO while the terminal attributes are being fiddled. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a765329ed656ef08915c8be4aba9031ba467ee4 Author: Jeff Dike Date: Sat Dec 1 12:16:29 2007 -0800 uml: after_sleep_interval should return something I forgot to have an int-returning function actually return something. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b00296fb781acfafa93687000cdef72b8922bb40 Author: Al Viro Date: Sat Dec 1 12:16:29 2007 -0800 uml: add !UML dependencies The previous commit ("uml: keep UML Kconfig in sync with x86") is not enough, unfortunately. If we go that way, we need to add dependencies on !UML for several options. Signed-off-by: Al Viro Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 54d67ee22c1ed12ff595defdf89e3d07b430497d Author: Jeff Dike Date: Sat Dec 1 12:16:28 2007 -0800 uml: keep UML Kconfig in sync with x86 Fix a UML build breakage introduced by commit 1032c0ba9da5c5b53173ad2dcf8b2a2da78f8b17 - it introduces X86_32, with many things which UML needs depending on it. This patch adds definitions of X86_32 and RWSEM_XCHGADD_ALGORITHM to the UML/i386 Kconfig. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eafe1aa37e6ec2d56f14732b5240c4dd09f0613a Author: Karsten Keil Date: Sat Dec 1 12:16:15 2007 -0800 I4L: fix isdn_ioctl memory overrun vulnerability Fix possible memory overrun issue in the isdn ioctl code. Found by ADLAB Signed-off-by: Karsten Keil Cc: ADLAB Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d523a328fb0271e1a763e985a21f2488fd816e7e Author: Herbert Xu Date: Mon Dec 3 15:51:25 2007 +1100 [INET]: Fix inet_diag dead-lock regression The inet_diag register fix broke inet_diag module loading because the loaded module had to take the same mutex that's already held by the loader in order to register the new handler. This patch fixes it by introducing a separate mutex to protect the handling of handlers. Signed-off-by: Herbert Xu commit b80fa3cce7390185e43ea22e9b3c38ab138bc580 Author: Grant Likely Date: Tue Nov 20 17:08:49 2007 +1100 [POWERPC] Remove xmon from ml300 and ml403 defconfig in arch/ppc xmon is broken under arch/ppc so remove it from the defconfig. Signed-off-by: Grant Likely Signed-off-by: Paul Mackerras commit 8f51506164655ce9af14970ce4f765f28c7970e9 Author: Paul Mackerras Date: Mon Dec 3 09:30:04 2007 +1100 Revert "[POWERPC] Fix RTAS os-term usage on kernel panic" This reverts commit a2b51812a4dc5db09ab4d4638d4d8ed456e2457e. It turns out that this change caused some machines to fail to come back up when being rebooted, and generated an error in the hypervisor error log on some machines. The platform architecture (PAPR) is a little unclear on exactly when the RTAS ibm,os-term function should be called. Until that is clarified I'm reverting this commit. Signed-off-by: Paul Mackerras commit 152c300d007c70c4a1847dad39ecdaba22e7d457 Author: Bob Moore Date: Wed Oct 17 16:10:18 2007 -0400 ACPICA: fix acpi-cpufreq boot crash due to _PSD return-by-reference Changed resolution of named references in packages Fixed a problem with the Package operator where all named references were created as object references and left otherwise unresolved. According to the ACPI specification, a Package can only contain Data Objects or references to control methods. The implication is that named references to Data Objects (Integer, Buffer, String, Package, BufferField, Field) should be resolved immediately upon package creation. This is the approach taken with this change. References to all other named objects (Methods, Devices, Scopes, etc.) are all now properly created as reference objects. http://bugzilla.kernel.org/show_bug.cgi?id=5328 http://bugzilla.kernel.org/show_bug.cgi?id=9429 Signed-off-by: Bob Moore Signed-off-by: Len Brown commit d842de871c8c5e2110c7e4f3f29bbe7b1a519ab8 Author: Srivatsa Vaddagiri Date: Sun Dec 2 20:04:49 2007 +0100 sched: cpu accounting controller (V2) Commit cfb5285660aad4931b2ebbfa902ea48a37dfffa1 removed a useful feature for us, which provided a cpu accounting resource controller. This feature would be useful if someone wants to group tasks only for accounting purpose and doesnt really want to exercise any control over their cpu consumption. The patch below reintroduces the feature. It is based on Paul Menage's original patch (Commit 62d0df64065e7c135d0002f069444fbdfc64768f), with these differences: - Removed load average information. I felt it needs more thought (esp to deal with SMP and virtualized platforms) and can be added for 2.6.25 after more discussions. - Convert group cpu usage to be nanosecond accurate (as rest of the cfs stats are) and invoke cpuacct_charge() from the respective scheduler classes - Make accounting scalable on SMP systems by splitting the usage counter to be per-cpu - Move the code from kernel/cpu_acct.c to kernel/sched.c (since the code is not big enough to warrant a new file and also this rightly needs to live inside the scheduler. Also things like accessing rq->lock while reading cpu usage becomes easier if the code lived in kernel/sched.c) The patch also modifies the cpu controller not to provide the same accounting information. Tested-by: Balbir Singh Tested the patches on top of 2.6.24-rc3. The patches work fine. Ran some simple tests like cpuspin (spin on the cpu), ran several tasks in the same group and timed them. Compared their time stamps with cpuacct.usage. Signed-off-by: Srivatsa Vaddagiri Signed-off-by: Balbir Singh Signed-off-by: Ingo Molnar commit 357dc4c3f13cb5c1e3b40a09cbe6ff1b0df2c7c3 Author: Zhao Yakui Date: Thu Nov 29 16:22:43 2007 +0800 ACPI: Delete the IRQ operation in throttling controll via PTC The IRQ operation(enable/disable) should be avoided when throttling is controlled via PTC method. It is replaced by the migration of task. This fixes an oops on T61 -- a regression due to f79f06ab9f86 b/c FixedHW support tried to read remote MSR with interrupts disabled. Signed-off-by: Zhao Yakui Signed-off-by: Len Brown commit 02a121da5a53d415b6596bc19cc6999d295d32a4 Author: Mark Lord Date: Sat Dec 1 13:07:22 2007 -0500 sata_mv: Fix broken Marvell 7042 support. sata_mv: Fix broken Marvell 7042 support. The Marvell 7042 chip is more or less the same as the 6042 internally, but sports a PCIe bus. Despite having identical SATA cores, the 7042 does differ from its PCI bus counterparts in placment and layout of certain bus related registers. This patch fixes sata_mv to distinguish between the PCI bus registers of earlier chips, and the PCIe bus registers of the 7042. Specifically, move the offsets and bit patterns for the PCI/PCIe interrupt cause/mask registers into the struct mv_host_priv, as these values differ between the 6xxx and 7xxx series chips. This fixes the driver to not access reserved PCI addresses, and prevents the lockups reported in linux-2.6.24 with 7042 boards. Also add a new PCI ID for the Highpoint 2300 7042-based board that I'm using for testing this stuff here. Tested with Marvell 6081 + 7042 chips, on x86 & x86_64. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 0f9fe9b7148f95f018ae2c97f7fa1a35364ea785 Author: Alan Cox Date: Fri Nov 30 15:23:16 2007 +0000 libata: Fix early use of port printk. (Was Re: ata4294967295: failed to start port (errno=-19)) On Fri, 30 Nov 2007 14:34:11 +0200 (EET) Meelis Roos wrote: > > Can you stick a stack trace in at that point ? That would help diagnose > > it a great deal quicker. > > Finally done - found out hard way that BUG() is too bad and > dump_st5ack() suits me better. Thanks. This should fix the real cause, and also allow for port start to fail politely with -ENODEV. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 04d86d6fc0477f217d60667adfc26f1f56264cc9 Author: Peter Schwenke Date: Fri Nov 30 15:28:29 2007 +0900 ata_piix: add more toshiba laptops to broken suspend list Add more toshiba laptops to broken suspend list. This is from OSDL bugzilla bug 7780. tj: re-formatted patch and added description and SOB. Signed-off-by: Peter Schwenke Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit e9f3340673c1da32041f2a282b166c72cd78632e Author: Peter Missel Date: Tue Nov 27 18:04:42 2007 +0100 libata: More IVB horkage from TSST libata: Add more TSST (Samsung/Toshiba) IDE drives with broken cable detection validation bits. signed-off-by: Peter Missel (peter.missel@onlinehome.de) Acked-by: Alan Cox Signed-off-by: Jeff Garzik commit abb6a88974a8c92b049eddf37685899c4021cf0a Author: Tejun Heo Date: Wed Nov 28 23:16:09 2007 +0900 libata: report protocol and full CDB on error Protocol and CDB allocation size field are important in determining what went wrong with ATAPI commands. Report them on failure. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 1c20a493caa30c5d47a394f9dbd86e6282323db9 Author: Kristoffer Nyborg Gregertsen Date: Thu Nov 29 12:01:51 2007 +0100 Several fixes for the AVR32 PATA driver Several fixes for the AVR32 PATA driver: * Updated to use new AVR32 SMC timing API. This removes the need for "magic" constants in signal timing. * Removed the ATA_FLAG_PIO_POLLING, the driver should use interrupts. * Removed .port_disable and .irq_ack as these are no longer needed. * Improved some comments. Signed-off-by: Kristoffer Nyborg Gregertsen Signed-off-by: Jeff Garzik commit 2d79ab8fd7a7bf3a45d0e948ae27b3dd95ce95ea Author: Saeed Bishara Date: Tue Nov 27 17:26:08 2007 +0200 sata_mv: fix compilation error when enabling DEBUG use sstatus instead status. Signed-off-by: Saeed Bishara Signed-off-by: Jeff Garzik commit f88c480dac88a754f84e943cb5539d59cda3c089 Author: sonic zhang Date: Tue Nov 27 12:47:39 2007 +0800 Set proper ATA UDMA mode for bf548 according to system clock. UDMA Mode - Frequency compatibility UDMA5 - 100 MB/s - SCLK = 133 MHz UDMA4 - 66 MB/s - SCLK >= 80 MHz UDMA3 - 44.4 MB/s - SCLK >= 50 MHz UDMA2 - 33 MB/s - SCLK >= 40 MHz Signed-off-by: Sonic Zhang Signed-off-by: Jeff Garzik commit 9ec46c6dae343688ff1136a0899b6a3c5e95e44b Author: Thomas Bogendoerfer Date: Fri Nov 30 23:13:16 2007 +0100 LIB82596: correct data types for hardware addresses dma_addr_t is 64bit wide on some architectures (for example 64bit MIPS), so it's not a good idea to use it for 32bit wide addresses in descriptors. Signed-off-by: Thomas Bogendoerfer Signed-off-by: Jeff Garzik commit 48f6b053613b62fed7a2fe3255e5568260a8d615 Author: Stephen Hemminger Date: Wed Nov 28 14:20:16 2007 -0800 via-velocity: don't oops on MTU change (resend) The VIA veloicty driver needs the following to allow changing MTU when down. The buffer size needs to be computed when device is brought up, not when device is initialized. This also fixes a bug where the buffer size was computed differently on change_mtu versus initial setting. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit dda93b486a25009456fca6b9c925ab4d7c6b6d6a Author: David Woodhouse Date: Wed Nov 28 19:56:34 2007 +0000 Stop phy code from returning success to unknown ioctls. This kind of sucks, and prevents the Fedora installer from using the device for network installs... [root@efika phy]# iwconfig eth0 Warning: Driver for device eth0 has been compiled with an ancient version of Wireless Extension, while this program support version 11 and later. Some things may be broken... eth0 ESSID:off/any Nickname:"" NWID:0 Channel:0 Access Point: 00:00:BF:81:14:E0 Bit Rate:-1.08206e+06 kb/s Sensitivity=0/0 RTS thr:off Fragment thr:off Encryption key: Power Management:off Signed-off-by: David Woodhouse Signed-off-by: Jeff Garzik commit 3d26e69533e4df45d03c0b9fa0b3f7e84980b873 Author: David Woodhouse Date: Wed Nov 28 18:04:31 2007 +0000 SET_NETDEV_DEV() in fec_mpc52xx.c This helps to allow the Fedora installer to use the built-in Ethernet on the Efika for a network install. Signed-off-by: David Woodhouse Signed-off-by: Jeff Garzik commit 0313d9884f3aaa540ec387125dde58bba01f10a5 Author: Paul Mundt Date: Wed Nov 28 18:24:59 2007 +0900 net: smc911x: only enable for mpr2 on sh. The smc911x.h is a bit of a mess, not supporting any sort of generic configuration. For the moment only ARCH_PXA and SH_MAGIC_PANEL_R2 have suitable definitions, so we reflect this in the Kconfig also. While there are other SH boards that will likely turn this on in the 2.6.25 time frame, it's not worth trying to stub around at the moment. Fixes up the allmodconfig build, as noted by akpm. Signed-off-by: Paul Mundt Signed-off-by: Jeff Garzik commit f7bbb9098315d712351aba7861a8c9fcf6bf0213 Author: Auke Kok Date: Tue Nov 27 16:26:36 2007 -0800 e1000: Fix NAPI state bug when Rx complete Don't exit polling when we have not yet used our budget, this causes the NAPI system to end up with a messed up poll list. Signed-off-by: Auke Kok Signed-off-by: Jeff Garzik commit e970d1f8106514ea619d7a9005b1dc92c6049b32 Author: Stephen Hemminger Date: Tue Nov 27 11:02:07 2007 -0800 sky2: turn of dynamic Tx watermark workaround (FE+ only) Add workaround for issues FE+ (A0) transmit watermark. This is copied verbatim from vendor driver sk98lin (10.22.4.3). Don't have that chip version and no more information seems to be available. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 7782c8c4d764dfe1b96e02e73d4d5f622fb4a389 Author: Stephen Hemminger Date: Tue Nov 27 11:02:32 2007 -0800 sky2: don't use AER routines Using PCIE advanced error recovery stuff creates more user problems than it's worth. The AER stuff depends on MMCONFIG and in many configurations it just doesn't work. Plus it doesn't add any real functionality to the driver. The sky2 driver handles its own errors fine as is. This reverts 555382cbfc6d2187b53888190755e56f52308cd6 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit b32f40c4853cdbe3d722a959fb0dd1ea048b50d0 Author: Stephen Hemminger Date: Tue Nov 27 10:57:27 2007 -0800 sky2: revert to access PCI config via device space Using the hardware window into PCI config space is more reliable and smaller/faster than using the pci_config routines. It avoids issues with MMCONFIG etc. Reverts: 167f53d05fccb47b6eeadac7f6705b3f2f042d03 Please apply for 2.6.24 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e0348b9ae5374f9a24424ae680bcd80724415f60 Author: Divy Le Ray Date: Tue Nov 27 13:30:20 2007 -0800 cxgb - fix stats Fix MAC stats accounting. Fix get_stats. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 445cf803ca757a5c43f4e11fdfba70355d510841 Author: Divy Le Ray Date: Tue Nov 27 13:30:15 2007 -0800 cxgb - fix NAPI netif_rx_complete() should be called only when work_done < budget. Signed-off-by: Divy Le ray Signed-off-by: Jeff Garzik commit 7832ee034b6ef78aab020c9ec1348544cd65ccbd Author: Divy Le Ray Date: Tue Nov 27 13:30:09 2007 -0800 cxgb - fix T2 GSO The patch ensures that a GSO skb has enough headroom to push an encapsulating cpl_tx_pkt_lso header. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit bd0ceaab86d3f0e3916b3b7868cfe20de490eebc Author: Kim Phillips Date: Mon Nov 26 16:17:58 2007 -0600 ucc_geth: handle passing of RX-only and TX-only internal delay PHY connection type parameters Extend the RGMII-Internal Delay specification case to include TX-only and RX-only variants. Signed-off-by: Kim Phillips Tested-by: Anton Vorontsov Acked-by: Li Yang Signed-off-by: Jeff Garzik commit 9daf5a7695f70b60c498aac079f908c81ffe4d15 Author: Kim Phillips Date: Mon Nov 26 16:17:52 2007 -0600 phylib: marvell: add support for TX-only and RX-only Internal Delay Previously, Internal Delay specification implied the delay be applied to both TX and RX. This patch allows for separate TX/RX-only internal delay specification. Signed-off-by: Kim Phillips Tested-by: Anton Vorontsov Acked-by: Li Yang Signed-off-by: Jeff Garzik commit 7d400a4c589749bf5b5e544aee07b3c489b54d02 Author: Kim Phillips Date: Mon Nov 26 16:17:48 2007 -0600 phylib: add PHY interface modes for internal delay for tx and rx only Allow phylib specification of cases where hardware needs to configure PHYs for Internal Delay only on either RX or TX (not both). Signed-off-by: Kim Phillips Tested-by: Anton Vorontsov Acked-by: Li Yang Signed-off-by: Jeff Garzik commit 1a8098be987d3fa00c9fe9d2b68154675df49112 Author: Stephen Hemminger Date: Wed Nov 28 14:25:05 2007 -0800 skge: MTU changing fix The code to change MTU doesn't correctly handle all the chip variations and requirements for restarting. On Genesis chips changing MTU would just cause receiver to hang. Use a simpler approach of just taking link down/up if needed. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 44c7fccec4098772b9451a252d162faea4f0cc34 Author: Stephen Hemminger Date: Wed Nov 28 14:23:01 2007 -0800 skge: serial mode register values For compatiablity with sk98lin, make sure and set same values in serial mode register. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit bf9f56d585c1e4cab6c44270fa5865237751dbda Author: Stephen Hemminger Date: Mon Nov 26 11:54:53 2007 -0800 skge version 1.13 Version for 2.6.24 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 485982a99a8a0b547aebedc3d0017dbffc3a44c0 Author: Stephen Hemminger Date: Mon Nov 26 11:54:52 2007 -0800 skge: increase TX threshold for Jumbo Need to increase TX threshold when doing Jumbo frames on dual port board to avoid underruns. (Code from sk98lin). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 21d7f67700ad7a4523d35d43ce95755e40eae5b7 Author: Stephen Hemminger Date: Mon Nov 26 11:54:51 2007 -0800 skge: fiber link up/down fix The driver would not work over fibre if other end when down then came back up (would require reloading driver). The correct way to manage the link the same way for both TP and fibre. Resloves problem described in: http://lkml.org/lkml/2007/11/6/395 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 799b21d2bddd43145130e509efb92339eabafef9 Author: Stephen Hemminger Date: Mon Nov 26 11:54:50 2007 -0800 skge: retry on MAC shutdown Make sure and retry when shutting down the MAC. This code is copied from sk98lin driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit d08b9bdf0264a8134677373f97641712062c603f Author: Stephen Hemminger Date: Mon Nov 26 11:54:49 2007 -0800 skge: receive flush logic Receive FIFO overrun is not catastrophic condition, so don't flush when it happens. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 29816d9aa55c99d463bd5507a46535b5fe79c33a Author: Stephen Hemminger Date: Mon Nov 26 11:54:48 2007 -0800 skge: FIFO Ram calculation error The calculation of usable FIFO RAM is wrong in the skge driver. First, is doesn't take into account the reserved area on the original SysKonnect Genesis boards. Second it has an off-by-one error because hw->ports is either 1 or 2. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1c1478859017452a1179dbbdf7b9eb5b48438746 Author: Peter Tiedemann Date: Thu Nov 29 17:36:27 2007 +0100 ctc: make use of alloc_netdev() Currently ctc-device initialization is broken (kernel bug in ctc_new_device). The new network namespace code reveals a deficiency of the ctc driver. It should make use of alloc_netdev() as described in Documentation/networking/netdevices.txt. Signed-off-by: Peter Tiedemann Signed-off-by: Ursula Braun Signed-off-by: Jeff Garzik commit 9f74ffdebf3f81cb69e6c90026c6cff89e57c262 Author: Sreenivasa Honnur Date: Fri Nov 30 01:46:08 2007 -0500 S2io: Fixed the case when the card initialization fails on mtu change Fix the case when the card initialization fails on a mtu change and then close is called (due to ifdown), which frees non existent rx buffers. - Returning appropriate error codes in init_nic function. - In s2io_close function s2io_card_down is called only when device is up. - In s2io_change_mtu function return value of s2io_card_up function is checked and returned if it failed. Signed-off-by: Surjit Reang Signed-off-by: Sreenivasa Honnur Signed-off-by: Ramkrishna Vepa Signed-off-by: Jeff Garzik commit 2b1e300a9dfc3196ccddf6f1d74b91b7af55e416 Author: Eric W. Biederman Date: Sun Dec 2 00:33:17 2007 +1100 [NETNS]: Fix /proc/net breakage Well I clearly goofed when I added the initial network namespace support for /proc/net. Currently things work but there are odd details visible to user space, even when we have a single network namespace. Since we do not cache proc_dir_entry dentries at the moment we can just modify ->lookup to return a different directory inode depending on the network namespace of the process looking at /proc/net, replacing the current technique of using a magic and fragile follow_link method. To accomplish that this patch: - introduces a shadow_proc method to allow different dentries to be returned from proc_lookup. - Removes the old /proc/net follow_link magic - Fixes a weakness in our not caching of proc generic dentries. As shadow_proc uses a task struct to decided which dentry to return we can go back later and fix the proc generic caching without modifying any code that uses the shadow_proc method. Signed-off-by: Eric W. Biederman Cc: "Rafael J. Wysocki" Cc: Pavel Machek Cc: Pavel Emelyanov Cc: "David S. Miller" Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit e6a1bb725eab1348d4a985b7faeff8186210d7b4 Author: Ralf Baechle Date: Wed Nov 28 15:07:42 2007 +0000 [MIPS] Fix build. Signed-off-by: Ralf Baechle commit 54fd6441e04696c046d93e4407a9e1ee9b874e51 Author: Pavel Kiryukhin Date: Tue Nov 27 19:20:47 2007 +0300 [MIPS] Fix use of smp_processor_id() in preemptible code. Freeing prom memory: 956kb freed Freeing firmware memory: 978944k freed Freeing unused kernel memory: 180k freed BUG: using smp_processor_id() in preemptible [00000000] code: swapper/1 caller is r4k_dma_cache_wback_inv+0x144/0x2a0 Call Trace: [<80117af8>] r4k_dma_cache_wback_inv+0x144/0x2a0 [<802e4b84>] debug_smp_processor_id+0xd4/0xf0 [<802e4b7c>] debug_smp_processor_id+0xcc/0xf0 ... CONFIG_DEBUG_PREEMPT is enabled. -- Bug cause is blast_dcache_range() in preemptible code [in r4k_dma_cache_wback_inv()]. blast_dcache_range() is constructed via __BUILD_BLAST_CACHE_RANGE that uses cpu_dcache_line_size(). It uses current_cpu_data that use smp_processor_id() in turn. In case of CONFIG_DEBUG_PREEMPT smp_processor_id emits BUG if we are executing with preemption enabled. Cpu options of cpu0 are assumed to be the superset of all processors. Can I make the same assumptions for cache line size and fix this issue the following way: Signed-off-by: Ralf Baechle commit b1812582ba94b5f377d5d3cec7646cc17d84e733 Author: Joachim Fenkes Date: Fri Nov 30 16:19:41 2007 -0800 IB/ehca: Fix static rate if path faster than link The formula would yield -1 if the path is faster than the link, which is wrong in a bad way (max throttling). Clamp to 0, which is the correct value. Signed-off-by: Joachim Fenkes Signed-off-by: Roland Dreier commit 80cbd911ca25535f6bb66bbcbb98950ec328eb40 Author: Matthew Wilcox Date: Thu Nov 29 12:05:13 2007 -0700 Fix kmem_cache_free performance regression in slab The database performance group have found that half the cycles spent in kmem_cache_free are spent in this one call to BUG_ON. Moving it into the CONFIG_SLAB_DEBUG-only function cache_free_debugcheck() is a performance win of almost 0.5% on their particular benchmark. The call was added as part of commit ddc2e812d592457747c4367fb73edcaa8e1e49ff with the comment that "overhead should be minimal". It may have been minimal at the time, but it isn't now. [ Quoth Pekka Enberg: "I don't think the BUG_ON per se caused the performance regression but rather the virt_to_head_page() changes to virt_to_cache() that were added later." ] Signed-off-by: Matthew Wilcox Acked-by: Pekka J Enberg Signed-off-by: Linus Torvalds commit e03ba84adb62fbc6049325a5bc00ef6932fa5e39 Author: Pablo Neira Ayuso Date: Sat Dec 1 00:03:52 2007 +1100 [TEXTSEARCH]: Do not allow zero length patterns in the textsearch infrastructure If a zero length pattern is passed then return EINVAL. Avoids infinite loops (bm) or invalid memory accesses (kmp). Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: Herbert Xu commit 67b4af297033f5f65999885542f95ba7b562848a Author: Jan Engelhardt Date: Sat Dec 1 00:01:50 2007 +1100 [NETFILTER]: fix forgotten module release in xt_CONNMARK and xt_CONNSECMARK Fix forgotten module release in xt_CONNMARK and xt_CONNSECMARK When xt_CONNMARK is used outside the mangle table and the user specified "--restore-mark", the connmark_tg_check() function will (correctly) error out, but (incorrectly) forgets to release the L3 conntrack module. Same for xt_CONNSECMARK. Fix is to move the call to acquire the L3 module after the basic constraint checks. Signed-off-by: Jan Engelhardt Signed-off-by: Patrick McHardy Signed-off-by: Herbert Xu commit 9dc0564e862b1b9a4677dec2c736b12169e03e99 Author: Patrick McHardy Date: Fri Nov 30 23:58:03 2007 +1100 [NETFILTER]: xt_TCPMSS: remove network triggerable WARN_ON ipv6_skip_exthdr() returns -1 for invalid packets. don't WARN_ON that. Signed-off-by: Patrick McHardy Signed-off-by: Herbert Xu commit 3ccd86241b277249d5ac08e91eddfade47184520 Author: Pavel Emelyanov Date: Fri Nov 30 23:43:31 2007 +1100 [DECNET]: dn_nl_deladdr() almost always returns no error As far as I see from the err variable initialization the dn_nl_deladdr() routine was designed to report errors like "EADDRNOTAVAIL" and probaby "ENODEV". But the code sets this err to 0 after the first nlmsg_parse and goes on, returning this 0 in any case. Signed-off-by: Pavel Emelyanov Acked-by: Steven Whitehouse Signed-off-by: Herbert Xu commit d31c7b8fa303eb81311f27b80595b8d2cbeef950 Author: Evgeniy Polyakov Date: Fri Nov 30 23:36:08 2007 +1100 [IPV6]: Restore IPv6 when MTU is big enough Avaid provided test application, so bug got fixed. IPv6 addrconf removes ipv6 inner device from netdev each time cmu changes and new value is less than IPV6_MIN_MTU (1280 bytes). When mtu is changed and new value is greater than IPV6_MIN_MTU, it does not add ipv6 addresses and inner device bac. This patch fixes that. Tested with Avaid's application, which works ok now. Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit d5a784b3719ae364f49ecff12a0248f6e4252720 Author: David Howells Date: Fri Nov 30 23:06:40 2007 +1100 [RXRPC]: Add missing select on CRYPTO AF_RXRPC uses the crypto services, so should depend on or select CRYPTO. Signed-off-by: David Howells Signed-off-by: Herbert Xu commit b0d98dc504c3f29cc4647fff87a5061be5f0f3d7 Author: Nobuhiro Iwamatsu Date: Fri Nov 30 12:36:13 2007 +0900 sh: Support PCI IO access of SH7780 base boards. The IO access of PCI is not supported in R7780RP and the MS7780SE board now. The support of the IO access mode of e100 and a lot of IDE chips becomes possible by fixing the code. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit 78ffeec462adf4c631f879c523e9ef5b2c8d0b14 Author: Nobuhiro Iwamatsu Date: Fri Nov 30 12:35:24 2007 +0900 sh: Fix PCI IO space base address of SH7780. PCI IO space base address of SH7780 was wrong. Change from 0xFE400000 to 0xFE200000. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit 3ae6a054553ee8b7f74bf7de8904022b26705778 Author: Joonwoo Park Date: Thu Nov 29 10:43:16 2007 +0900 iwlwifi 4965 Fix race conditional panic. Signed-off-by: Joonwoo Park Signed-off-by: John W. Linville commit e47eb6ad41e8fc4c2696665512b70d1fd4cf3f22 Author: Joonwoo Park Date: Thu Nov 29 10:42:49 2007 +0900 iwlwifi 3945 Fix race conditional panic. Signed-off-by: Joonwoo Park Signed-off-by: John W. Linville commit 864792e3d93a89496e02ca21b2e2eeba0aa857ad Author: Tomas Winkler Date: Tue Nov 27 21:00:52 2007 +0200 iwlwifi: fix iwl_mac_add_interface handler This patch fixes iwl_mac_add_interface. 1. Currently only one interface is supported, instead of silently retuning 0 now it returns -EOPNOTSUPP (By Johannes Berg) 2. It enables changing mac address from user space (By Ian Schram) Signed-off-by: Tomas Winkler Cc: Zhu Yi Cc: Reinette Chatre Cc: linux-wireless Cc: Johannes Berg Signed-off-by: John W. Linville commit 6591e36a1c52445f95f26738394909ee9bf94390 Author: Holger Schurig Date: Mon Nov 26 09:35:44 2007 +0100 libertas: let more than one MAC event through lbs_mac_event_disconnected() was called once and then never again upon a hardware MAC event. The reason was that the driver didn't clean the correct bit in the interrupt cause register of the chip. Signed-off-by: Holger Schurig Acked-by: Dan Williams Signed-off-by: John W. Linville commit d0a689575102641149e67595e45ab006dbbb4a0d Author: David Woodhouse Date: Sat Nov 24 19:48:17 2007 +0000 libertas: Don't set NETIF_F_IPV6_CSUM in dev->features I'm not sure why it was doing this, and I'm not sure I _want_ to know why. But calling it NETIF_F_DYNALLOC doesn't change the fact that the kernel believes it to be NETIF_F_IPV6_CSUM, and that IPv6 communication is hence buggered. Signed-off-by: David Woodhouse Acked-by: Dan Williams Signed-off-by: John W. Linville commit 8376e7a3c2cbf2c91215c35fec9988f581fc699a Author: Joe Perches Date: Mon Nov 19 17:48:27 2007 -0800 drivers/net/wireless: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 354807e0dd24fa6ad25df614419c1ae8f1a23b47 Author: Stefano Brivio Date: Mon Nov 19 20:21:31 2007 +0100 b43/b43legacy: fix left-over URLs and ifdefs Fix some left-over URLs and ifdefs in b43 and b43legacy drivers. Signed-off-by: Stefano Brivio Signed-off-by: John W. Linville commit c4ba9621f4f241f8c4d4f620ad4257af59d21f3e Author: Saleem Abdulrasool Date: Sun Nov 18 23:59:08 2007 -0800 iwlwifi: fix possible NULL dereference in iwl_set_rate() Signed-off-by: Saleem Abdulrasool Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 53cb4791c156908ae634de31949f7f25f8de002b Author: Adel Gadllah Date: Thu Nov 29 17:09:41 2007 +0100 mac80211: rate limit wep decrypt failed messages The attached patch rate limits "WEP decrypt failed (ICV)" to avoid flooding the logfiles. Signed-off-by: Adel Gadllah Signed-off-by: John W. Linville commit 7f4c534178722ac9ffb4feae3a4d54e3fbe3f22c Author: Michael Buesch Date: Wed Nov 28 17:49:34 2007 +0100 rfkill: fix double-mutex-locking rfkill_toggle_radio is called from functions where rfkill->mutex is already aquired. Remove the lock from rfkill_toggle_radio() and add it to the only calling function that calls it without the lock held. Signed-off-by: Michael Buesch Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8312512e81ab16d845b49d1ec695fad1c72f19f6 Author: Johannes Berg Date: Wed Nov 28 11:07:57 2007 +0100 mac80211: drop unencrypted frames if encryption is expected This patch fixes a regression I (most likely) introduced, namely that unencrypted frames are right now accepted even if we have a key for that specific sender. That has very bad security implications. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8b393f1dc76acbe65a97a4e51f8144f4a65fa1c9 Author: Michael Wu Date: Wed Nov 28 01:57:08 2007 -0500 mac80211: Fix behavior of ieee80211_open and ieee80211_close This patch fixes: - Incorrect calls to ieee80211_hw_config when the radiotap flag is set. - Failure to actually unset the radiotap flag when all monitors are down. - Failure to call ieee80211_hw_config after successful interface start. Signed-off-by: Michael Wu Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 01e1f045e65b683fe7203b1e16a915bbb94c15fe Author: Daniel Drake Date: Thu Nov 22 22:03:42 2007 +0000 ieee80211: fix unaligned access in ieee80211_copy_snap There is no guarantee that data+SNAP_SIZE will reside on an even numbered address, so doing a 16 bit read will cause an unaligned access in some situations. Based on a patch from Jun Sun. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit a10605e599a7873417043fe2bb559abe719f8a1a Author: Zhu Yi Date: Thu Nov 22 11:10:22 2007 +0800 mac80211: free ifsta->extra_ie and clear IEEE80211_STA_PRIVACY_INVOKED I'm not sure if this is best choice, someone might have better solutions. But this patch fixed the connection problem when switching from a WPA enabled AP (using wpa_supplicant) to an open AP (using iwconfig). The root cause is when we connect to a WPA enabled AP, wpa_supplicant sets the ifsta->extra_ie thru SIOCSIWGENIE. But if we stop wpa_supplicant and connect to an open AP with iwconfig, there is no way to clear the extra_ie so that mac80211 keeps connecting with that. Someone could argue wpa_supplicant should clear the extra_ie during its shutdown. But mac80211 should also handle the unexpected shutdown case (ie. killall -9 wpa_supplicant). On Wed, 2007-11-21 at 16:19 +0100, Johannes Berg wrote: > Yeah. Can you amend the patch to also clear the > IEEE80211_STA_PRIVACY_INVOKED flag? Signed-off-by: Zhu Yi Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 98aa686494f92e881869f76bfb734cbb1f53cb13 Author: Roel Kluin <12o3l@tiscali.nl> Date: Thu Nov 29 14:25:21 2007 +0100 [ARM] 4680/1: parentheses around NR_IRQS definition If NR_IRQS is defined as a sum without surrounding parentheses, this may lead to problems when used in multiplications. This may lead to problems in: arch/ia64/sn/kernel/irq.c:516 arch/x86/kernel/io_apic_32.c:693, 694, 699, 700 fs/proc/proc_misc.c:464 Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Acked-by: Lennert Buytenhek Signed-off-by: Russell King commit e7032700a277bf8e263086be94c8b791a668f694 Author: Andrew Victor Date: Thu Nov 29 08:11:54 2007 +0100 [ARM] 4679/1: AT91: Change maintainer email address Change email address of AT91 maintainer. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 008f6d2a2817b4a36d477fe969840bb0ef1351a8 Author: eric miao Date: Tue Nov 27 03:14:09 2007 +0100 [ARM] 4675/1: pxa: fix mfp address definition error for pxa320 Signed-off-by: bridge wu Signed-off-by: eric miao Signed-off-by: Russell King commit 4a78942d0b7655d120f28f2160bc4fa40c6da9ff Author: eric miao Date: Tue Nov 27 03:13:31 2007 +0100 [ARM] 4674/1: pxa: increase LCD PCLK drive strength to fast 2mA for PXA300/PXA310 Some platforms (e.g. Littleton) requires LCD PCLK drive strength to be higher than default to cope with the fast PCLK frequency. Signed-off-by: eric miao Signed-off-by: Russell King commit 399c153f430958da436e0b6a8290fb607def2549 Author: eric miao Date: Tue Nov 27 03:12:52 2007 +0100 [ARM] 4673/1: pxa: add missing IRQ_SSP4 definitions for PXA3xx Signed-off-by: eric miao Signed-off-by: Russell King commit 7267d1ccdb5ef08289323461db3551570fa1ab27 Author: eric miao Date: Tue Nov 27 03:12:19 2007 +0100 [ARM] 4672/1: pxa: fix DRCMR(n) to support PXA27x and later processors Signed-off-by: eric miao Signed-off-by: Russell King commit a960d5dc71102d33f257cbc26d87b15015586672 Author: Andre Haupt Date: Wed Nov 21 12:33:45 2007 +0100 sdio_uart: fix sign of paramter status in sdio_uart_receive_chars() This also fixes a sparse warning about different signedness. Only compile tested, because i do not have the hardware. Signed-off-by: Andre Haupt Acked-by: Nicolas Pitre Signed-off-by: Pierre Ossman commit f97b8954953ba8e692dbb92d99e26b721f7068cd Author: Jeremy Fitzhardinge Date: Wed Nov 28 16:22:11 2007 -0800 x86/paravirt: revert exports to restore old behaviour Subdividing the paravirt_ops structure caused a regression in certain non-GPL modules which try to use mmu_ops and cpu_ops. This restores the old behaviour, and makes it consistent with the non-CONFIG_PARAVIRT case. Takashi Iwai adds: > I took at this problem (as I have an nvidia card on one of my > workstations), and found out that the following suffer from > EXPORT_SYMBOL_GPL changes: > > * local_disable_irq(), local_irq_save*(), etc. > * MSR-related macros like rdmsr(), wrmsr(), read_cr0(), etc. > wbinvd(), too. > * pmd_val(), pgd_val(), etc are all involved with pv_mm_ops. > pmd_large() and pmd_bad() is also indirectly involved. > __flush_tlb() and friends suffer, too. Christoph Hellwig objects to this patch on the grounds that modules shouldn't be using these operations anyway. I don't think this is a particularly good reason to reject the patch, for several reasons: 1. These operations are still available to modules when not using CONFIG_PARAVIRT, since they are implicitly exported as inline functions via the kernel headers. Exporting the same functionality as GPL-only symbols just adds a gratuitious difference between CONFIG_PARAVIRT and non-CONFIG_PARAVIRT configurations. If we really think these operations are not for module use (or non-GPL module use), then we should solve the problem in a general way. 2. It's a regression from previous kernels, which would work these modules even with CONFIG_PARAVIRT enabled. 3. The operations in question seem pretty reasonable for modules to use. The control registers/MSRs can be accessed directly anyway, so there's no benefit in preventing modules from using standard interfaces. And it seems reasonable to allow a graphics driver to create its own mappings if it wants. Therefore, I think this patch should go in for 2.6.24. If people really think that these operations should not be available to modules, then we can address that separately. Signed-off-by: Jeremy Fitzhardinge Cc: Tobias Powalowski Cc: Christoph Hellwig Cc: Takashi Iwai Cc: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b8415ec34fd63c6260497b2f8aaf3ce7a61eaa8a Author: Randy Dunlap Date: Wed Nov 28 16:22:09 2007 -0800 lguest: prevent VISWS or VOYAGER randconfigs Keep lguest from being enabled on VISWS or VOYAGER configs, just as is already done for VMI and XEN. Otherwise randconfigs with VISWS and LGUEST have this problem: In file included from arch/x86/kernel/setup_32.c:61: include/asm-x86/mach-visws/setup_arch.h:8:1: warning: "ARCH_SETUP" redefined In file included from include/asm/msr.h:80, from include/asm/processor_32.h:17, from include/asm/processor.h:2, from include/asm/thread_info_32.h:16, from include/asm/thread_info.h:2, from include/linux/thread_info.h:21, from include/linux/preempt.h:9, from include/linux/spinlock.h:49, from include/linux/seqlock.h:29, from include/linux/time.h:8, from include/linux/timex.h:57, from include/linux/sched.h:53, from arch/x86/kernel/setup_32.c:24: include/asm/paravirt.h:458:1: warning: this is the location of the previous definition (and of course, this happens because kconfig does not follow dependencies when [evil] select is used...) Signed-off-by: Randy Dunlap Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbb43ab03c1fa7587476910d346ee11882b4cc62 Author: Christoph Lameter Date: Wed Nov 28 16:22:08 2007 -0800 ACPI: avoid references to impossible processors. ACPI uses NR_CPUS in various loops and in some it accesses per cpu data of processors that are not present(!) and that will never be present. The pointers to per cpu data are typically not initialized for processors that are not present. So we seem to be reading something here from offset 0 in memory. Make ACPI use nr_cpu_ids instead. That stops at the end of the possible processors. Convert one loop to NR_CPUS to use the cpu_possible map instead. That way ranges of processor that can never be brought online are skipped during the loop. Signed-off-by: Christoph Lameter Cc: Len Brown Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81257def2ab8ae1680583ce1e5f018dc6c8ed98d Author: Heiko Carstens Date: Wed Nov 28 16:22:07 2007 -0800 tty: add the new termios2 ioctls to the compatible list. Make them depend on TCGETS2. If that one is implemented the rest should be there as well. Acked-by: Alan Cox Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6ceb32aa25fc33f21af84cc7a32fe289b3e860c Author: Scott James Remnant Date: Wed Nov 28 16:22:07 2007 -0800 wait_task_stopped(): pass correct exit_code to wait_noreap_copyout() In wait_task_stopped() exit_code already contains the right value for the si_status member of siginfo, and this is simply set in the non WNOWAIT case. If you call waitid() with a stopped or traced process, you'll get the signal in siginfo.si_status as expected -- however if you call waitid(WNOWAIT) at the same time, you'll get the signal << 8 | 0x7f Pass it unchanged to wait_noreap_copyout(); we would only need to shift it and add 0x7f if we were returning it in the user status field and that isn't used for any function that permits WNOWAIT. Signed-off-by: Scott James Remnant Signed-off-by: Oleg Nesterov Cc: Roland McGrath Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 14816b1e2b0eb24ef41dbe37dcb558338e54a603 Author: Mike Christie Date: Wed Nov 28 16:22:06 2007 -0800 add Mike Christie to MAINTAINERS Signed-off-by: Mike Christie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c835670ab5f72a4ea2d0db232b1acc07924f186 Author: David Howells Date: Wed Nov 28 16:22:05 2007 -0800 FRV: arrange things such that BRA can reach from the trap table Arrange the sections in the FRV arch so that a BRA instruction with a 16-bit displacement can always reach from the trap table to entry.S, tlb-miss.S and break.S. The problem otherwise is that the linker can insert sufficient code between the slots in the trap table and the targets of the branch instructions in those slots that the displacement field in the instruction isn't sufficiently large. This is because the branch targets were in the .text section along with most of the other code in the kernel. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e6c1e633355b69803094ecbac4cecc96e00965c Author: David Howells Date: Wed Nov 28 16:22:04 2007 -0800 FRV: fix the extern declaration of kallsyms_num_syms Fix the extern declaration of kallsyms_num_syms to indicate that the symbol does not reside in the small-data storage space, and so may not be accessed relative to the small data base register. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8853c202b4a91713dbfb4d9b6e1c87cc2aa12392 Author: Jiri Kosina Date: Wed Nov 28 16:22:03 2007 -0800 RTC: convert mutex to bitfield RTC code is using mutex to assure exclusive access to /dev/rtc. This is however wrong usage, as it leaves the mutex locked when returning into userspace, which is unacceptable. Convert rtc->char_lock into bit operation. Signed-off-by: Jiri Kosina Acked-by: Alessandro Zummo Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08b633070ad5fa17a837428a601c32cf3db6aafd Author: Miklos Szeredi Date: Wed Nov 28 16:22:03 2007 -0800 fuse: fix attribute caching after rename Invalidate attributes on rename, since some filesystems may update st_ctime. Reported by Szabolcs Szakacsits Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbee36b92abc965d3fc2862aa60fd0dfcf779d0b Author: John Muir Date: Wed Nov 28 16:22:02 2007 -0800 fuse: fix uninitialized field in fuse_inode I found problems accessing (executing) previously existing files, until I did chmod on them (or setattr). If the fi->attr_version is not initialized, then it could be larger than fc->attr_version until a setattr is executed, and as a result the inode attributes would never be set. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d0186b25e65d4d786727a03044b8aafe2ba118ee Author: Miklos Szeredi Date: Wed Nov 28 16:22:01 2007 -0800 fuse: fix FUSE_FILE_OPS sending FUSE_FILE_OPS is meant to signal that the kernel will send the open file to to the userspace filesystem for operations on open files, so that sillyrenaming unlinked files becomes unnecessary. However this needs VFS changes, which won't make it into 2.6.24. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6643094e73247c1ebd36816f494f631fa7be348 Author: Miklos Szeredi Date: Wed Nov 28 16:22:00 2007 -0800 fuse: pass open flags to read and write Some open flags (O_APPEND, O_DIRECT) can be changed with fcntl(F_SETFL, ...) after open, but fuse currently only sends the flags to userspace in open. To make it possible to correcly handle changing flags, send the current value to userspace in each read and write. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7dca9fd39f7d4605ac178a67bb1772381056917d Author: Miklos Szeredi Date: Wed Nov 28 16:21:59 2007 -0800 fuse: cleanup: add fuse_get_attr_version() Extract repeated code into helper function, as suggested by Akpm. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bcb4be809d2a804ff040d95db4a664113833e702 Author: Miklos Szeredi Date: Wed Nov 28 16:21:59 2007 -0800 fuse: fix reading past EOF Currently reading a fuse file will stop at cached i_size and return EOF, even though the file might have grown since the attributes were last updated. So detect if trying to read past EOF, and refresh the attributes before continuing with the read. Thanks to mpb for the report. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6fd6ecb830444636bc4e9d626f214082c91fffe Author: KAMEZAWA Hiroyuki Date: Wed Nov 28 16:21:58 2007 -0800 memory hotplug x86_64: fix section mismatch in init_memory_mapping() Changes __meminit to __init_refok. WARNING: vmlinux.o(.text+0x1d07c): Section mismatch: reference to .init.text:find_e820_area (between 'init_memory_mapping' and 'arch_add_memory') Signed-off-by: KAMEZAWA Hiroyuki Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0dc3a53def41efeabb3f39ad8e9f67e81ca1025 Author: KAMEZAWA Hiroyuki Date: Wed Nov 28 16:21:57 2007 -0800 memory hotplug fix: fix section mismatch in vmammap_allock_block() Fixes section mismatch below. WARNING: vmlinux.o(.text+0x946b5): Section mismatch: reference to .init.text:' __alloc_bootmem_node (between 'vmemmap_alloc_block' and 'vmemmap_pgd_populate') Signed-off-by: KAMEZAWA Hiroyuki Cc: Kamalesh Babulal Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 164e217cec236f84718676543659181ea300a862 Author: Huang, Ying Date: Wed Nov 28 16:21:56 2007 -0800 x86_64 EFI boot support: EFI boot document This patch adds document for EFI x86_64 boot support. The setup and operation guide of EFI based system is documented in Documentation/x86_64/uefi.txt. Signed-off-by: Chandramouli Narayanan Signed-off-by: Huang Ying Cc: "H. Peter Anvin" Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7c83172b98e569d9aabf947d8b3b089dadb2ff46 Author: Huang, Ying Date: Wed Nov 28 16:21:55 2007 -0800 x86_64 EFI boot support: EFI frame buffer driver This patch adds Graphics Output Protocol support to the kernel. UEFI2.0 spec deprecates Universal Graphics Adapter (UGA) protocol and only Graphics Output Protocol (GOP) is produced. Therefore, the boot loader needs to query the UEFI firmware with appropriate Output Protocol and pass the video information to the kernel. As a result of GOP protocol, an EFI framebuffer driver is needed for displaying console messages. The patch adds a EFI framebuffer driver. The EFI frame buffer driver in this patch is based on the Intel Mac framebuffer driver. The ELILO bootloader takes care of passing the video information as appropriate for EFI firmware. The framebuffer driver has been tested in i386 kernel and x86_64 kernel on EFI platform. Signed-off-by: Chandramouli Narayanan Signed-off-by: Huang Ying Cc: "H. Peter Anvin" Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Andi Kleen Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f78ba15705a5ef36b55c4e3142724e2211cb1733 Author: Andrew Morton Date: Wed Nov 28 16:21:54 2007 -0800 revert "keyspan: init termios properly" Revert 7eea436433b7b18045f272562e256976f593f7c0. Lucy said: This patch will work with the 19HS but WILL BREAK all other Keyspan adapters. It will take me a few days to get to looking at a correct fix but that keyspan_send_setup(port, 1) (and the '1' is the important part) must happen once when the port is first opened. The cflag can just be set to whatever the normal default is for your serial environment. So revert this again pending the proper fix. Cc: Borislav Petkov Cc: Greg KH Cc: Alan Cox Cc: Lucy McCoy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db573b241eb1259f749e88f54105d7fa946cb9b2 Author: Andrew Morton Date: Wed Nov 28 16:21:52 2007 -0800 imacfb: remove reference to otherwise-unused, non-existent screen_info.imacpm_seg Cc: Edgar Hucek Cc: "Antonino A. Daplas" Cc: Kamalesh Babulal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12429bf9327d41a0692e275bbfce4997f07432f6 Author: Miklos Szeredi Date: Wed Nov 28 16:21:52 2007 -0800 leak in do_ubd_request Signed-off-by: Miklos Szeredi Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 364e3a3d8a26aae058cf1c257457ad1f6b1cfe4c Author: Jeff Dike Date: Wed Nov 28 16:21:51 2007 -0800 uml: fix !NO_HZ busy-loop With NO_HZ disabled, the UML idle loop effectively becomes a busy loop, as it will sleep for no time. The cause was forgetting to restart the tick after waking up from sleep. It was disabled before sleeping, and the remaining time used as the interval to sleep. So, the tick needs to be restarted when nanosleep finishes. This is done by introducing after_sleep_interval, which is empty in the NO_HZ case, but which sets the tick starting in the !NO_HZ case. Signed-off-by: Jeff Dike Cc: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9fc89c2dea7ca7915e6606e49167cdca2f3c4e30 Author: Ingo Molnar Date: Wed Nov 28 16:21:50 2007 -0800 isdn: bootup crash fix got this HiSax bootup crash on a "make randconfig" bzImage bootup: Calling initcall 0xc0bb1320: HiSax_init+0x0/0x380() HiSax: Linux Driver for passive ISDN cards HiSax: Version 3.5 (kernel) HiSax: Layer1 Revision 2.46.2.5 HiSax: Layer2 Revision 2.30.2.4 HiSax: TeiMgr Revision 2.20.2.3 HiSax: Layer3 Revision 2.22.2.3 HiSax: LinkLayer Revision 2.59.2.4 HiSax: Total 1 card defined HiSax: Card 1 Protocol EDSS1 Id=HiSax (0) HiSax: HFC-S driver Rev. 1.10.2.4 HFCS: defined at 0x500 IRQ 5 HZ 250 Teles 16.3c: IRQ 5 count 0 HFCS: resetting card Teles 16.3c: IRQ 5 count 0 Teles 16.3c: IRQ(5) getting no interrupts during init 1 HFCS: resetting card ------------[ cut here ]------------ kernel BUG at include/linux/timer.h:145! invalid opcode: 0000 [#1] PREEMPT DEBUG_PAGEALLOC Modules linked in: Pid: 1, comm: swapper Not tainted (2.6.24-rc3 #2045) EIP: 0060:[] EFLAGS: 00010286 CPU: 0 EIP is at hfcs_card_msg+0x15f/0x180 EAX: c0cf2e5c EBX: 000000f2 ECX: 00000000 EDX: ffff1193 ESI: f76e8000 EDI: f76e8000 EBP: f7c23ec4 ESP: f7c23eac DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 Process swapper (pid: 1, ti=f7c22000 task=f7c0e000 task.ti=f7c22000) Stack: 00000000 f7c23ec4 c011703b 00000002 f76e8000 00000000 f7c23ef8 c060c3e5 c0a7c9c0 c0a315dc 00000005 00000001 00000000 f7c23f34 00000000 c0b5c9c0 f7c23f34 00000000 c0f5a8e0 f7c23f80 c0bb154f 00000000 00000001 c0a9b5b9 Call Trace: [] show_trace_log_lvl+0x1a/0x40 [] show_stack_log_lvl+0xa9/0xe0 [] show_registers+0xbf/0x200 [] die+0x104/0x220 [] do_trap+0x83/0xc0 [] do_invalid_op+0x88/0xa0 [] error_code+0x6a/0x70 [] checkcard+0x4a5/0x620 [] HiSax_init+0x22f/0x380 [] kernel_init+0x97/0x2a0 [] kernel_thread_helper+0x7/0x20 ======================= Code: e8 43 ae ff 8b 57 3c 85 d2 0f 84 ef fe ff ff b8 a0 99 ad c0 b9 02 00 00 00 e8 ce 11 ae ff 83 c4 0c b8 00 00 00 00 5b 5e 5f c9 c3 <0f> 0b eb fe 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 EIP: [] hfcs_card_msg+0x15f/0x180 SS:ESP 0068:f7c23eac Kernel panic - not syncing: Attempted to kill init! The box has no HiSax card installed. the reason for the crash is add_timer() done on an already running timer. This happens because for some reason CARD_INIT is called twice. this patch works this problem around by using mod_timer() - this gets a booting system - but it would be nice to figure out why CARD_INIT is done twice. the ISDN config section (generated via make randconfig) is this: # # ISDN feature submodules # # CONFIG_ISDN_DRV_LOOP is not set CONFIG_ISDN_DIVERSION=y # # ISDN4Linux hardware drivers # # # Passive cards # CONFIG_ISDN_DRV_HISAX=y # # D-channel protocol features # CONFIG_HISAX_EURO=y CONFIG_DE_AOC=y # CONFIG_HISAX_NO_SENDCOMPLETE is not set # CONFIG_HISAX_NO_LLC is not set # CONFIG_HISAX_NO_KEYPAD is not set CONFIG_HISAX_1TR6=y CONFIG_HISAX_NI1=y CONFIG_HISAX_MAX_CARDS=8 # # HiSax supported cards # CONFIG_HISAX_16_0=y # CONFIG_HISAX_16_3 is not set # CONFIG_HISAX_TELESPCI is not set CONFIG_HISAX_S0BOX=y # CONFIG_HISAX_AVM_A1 is not set CONFIG_HISAX_FRITZPCI=y CONFIG_HISAX_AVM_A1_PCMCIA=y CONFIG_HISAX_ELSA=y CONFIG_HISAX_IX1MICROR2=y CONFIG_HISAX_DIEHLDIVA=y # CONFIG_HISAX_ASUSCOM is not set # CONFIG_HISAX_TELEINT is not set CONFIG_HISAX_HFCS=y # CONFIG_HISAX_SEDLBAUER is not set CONFIG_HISAX_SPORTSTER=y # CONFIG_HISAX_MIC is not set # CONFIG_HISAX_NETJET is not set # CONFIG_HISAX_NETJET_U is not set # CONFIG_HISAX_NICCY is not set # CONFIG_HISAX_ISURF is not set # CONFIG_HISAX_HSTSAPHIR is not set # CONFIG_HISAX_BKM_A4T is not set # CONFIG_HISAX_SCT_QUADRO is not set # CONFIG_HISAX_GAZEL is not set # CONFIG_HISAX_HFC_PCI is not set # CONFIG_HISAX_W6692 is not set # CONFIG_HISAX_HFC_SX is not set # CONFIG_HISAX_DEBUG is not set # # HiSax PCMCIA card service modules # # # HiSax sub driver modules # CONFIG_HISAX_ST5481=y CONFIG_HISAX_HFCUSB=y # CONFIG_HISAX_HFC4S8S is not set CONFIG_HISAX_FRITZ_PCIPNP=y CONFIG_HISAX_HDLC=y # # Active cards # CONFIG_ISDN_DRV_ICN=m CONFIG_ISDN_DRV_PCBIT=m CONFIG_ISDN_DRV_SC=y # CONFIG_ISDN_DRV_ACT2000 is not set CONFIG_HYSDN=m # CONFIG_ISDN_DRV_GIGASET is not set # CONFIG_ISDN_CAPI is not set CONFIG_PHONE=y CONFIG_PHONE_IXJ=m Signed-off-by: Ingo Molnar Cc: Karsten Keil Cc: Kai Germaschewski Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8ec2328f1138a58eaea55ec6150985a1623b01c5 Author: Serge E. Hallyn Date: Wed Nov 28 16:21:47 2007 -0800 file capabilities: don't prevent signaling setuid root programs An unprivileged process must be able to kill a setuid root program started by the same user. This is legacy behavior needed for instance for xinit to kill X when the window manager exits. When an unprivileged user runs a setuid root program in !SECURE_NOROOT mode, fP, fI, and fE are set full on, so pP' and pE' are full on. Then cap_task_kill() prevents the user from signaling the setuid root task. This is a change in behavior compared to when !CONFIG_SECURITY_FILE_CAPABILITIES. This patch introduces a special check into cap_task_kill() just to check whether a non-root user is signaling a setuid root program started by the same user. If so, then signal is allowed. Signed-off-by: Serge E. Hallyn Cc: Andrew Morgan Cc: Stephen Smalley Cc: Chris Wright Cc: James Morris Cc: Casey Schaufler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d0eec99ce50baa5cc2ac02363cdb2a771ed4e1e2 Author: Randy Dunlap Date: Wed Nov 28 16:21:46 2007 -0800 hexdump: don't print bytes with bit 7 set As Herbert Xu pointed out, bytes (chars) with bit 7 (0x80) set are true with isprint() but they may not be isascii() but be Unicode instead, so don't try to print them in hex dumps. Signed-off-by: Randy Dunlap Cc: Herbert Xu Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6454d1f9038f708d7deef6270ed4ba5bb6e55869 Author: Tobias Poschwatta Date: Wed Nov 28 16:21:45 2007 -0800 fix up ext2_fs.h for userspace after reservations backport In commit a686cd898bd999fd026a51e90fb0a3410d258ddb: "Val's cross-port of the ext3 reservations code into ext2." include/linux/ext2_fs.h got a new function whose return value is only defined if __KERNEL__ is defined. Putting #ifdef __KERNEL__ around the function seems to help, patch below. Signed-off-by: Eric Sandeen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68576cf122bc5195c758ed295e78b5858472378a Author: Thomas Bogendoerfer Date: Wed Nov 28 16:21:44 2007 -0800 IP22ZILOG: fix lockup and sysrq - fix lockup when switching from early console to real console - make sysrq reliable - fix panic, if sysrq is issued before console is opened Signed-off-by: Thomas Bogendoerfer Acked-by: Ralf Baechle Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d4f5879b6f4da50bde94e1cae73755978ed048f Author: Haavard Skinnemoen Date: Wed Nov 28 16:21:43 2007 -0800 dmaengine: correct invalid assumptions in the Kconfig text This patch corrects recently changed (and now invalid) Kconfig descriptions for the DMA engine framework: - Non-Intel(R) hardware also has DMA engines; - DMA is used for more than memcpy and RAID offloading. In fact, on most platforms memcpy and RAID aren't factors, and DMA exists so that peripherals can transfer data to/from memory while the CPU does other work. Signed-off-by: Haavard Skinnemoen Signed-off-by: David Brownell Signed-off-by: Dan Williams Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e593f070b40887dc0415646a4c0720eb8630c722 Author: Anti Sullin Date: Wed Nov 28 16:21:40 2007 -0800 atmel_lcdfb: LCDC startup fix This patch adds an additional loop, that delays turning off the DMA until the LCDC core has been turned off. This prevents the picture to be shifted some random length when the kernel re-initializes the LCDC. Without this patch, the LCDC keeps running for some small time after the PWRCON:LCD_PWR has been cleared ; the FIFO suffers an underrun and on re-starting the LCDC the FIFO data stays shifted. This behavior has been seen and fixed on AT91SAM9261-EK and two custom AT91SAM9261 boards, all of them having different LCD panels. Thanks a lot to Anti Sullin for submitting this patch (long time ago). Signed-off-by: Anti Sullin Signed-off-by: Andrew Victor Signed-off-by: Nicolas Ferre Acked-by: Haavard Skinnemoen Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2868f89fc43d16441a90714d4676089bdfc4255a Author: Pavel Emelyanov Date: Wed Nov 28 16:21:39 2007 -0800 The namespaces compatibility list doc People discuss how the namespaces are working/going-to-work together. Ted Ts'o proposed to create some document that describes what problems user may have when he/she creates some new namespace, but keeps others shared. I liked this idea, so here's the initial version of such a document with the problems I currently have in mind and can describe somewhat audibly - the "namespaces compatibility list". The Documentation/namespaces/ directory is about to contain more docs about the namespaces stuff. Thanks to Cedirc for notes and spell checks on the doc, to Daniel for additional info about IPC and User namespaces interaction and to Randy, who alluded me to using a spell checker before sending the documentation :) Signed-off-by: Pavel Emelyanov Cc: Randy Dunlap Cc: Daniel Lezcano Cc: Theodore Tso Cc: Cedric Le Goater Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32df81cbd5b41d281cc3d7e7ff6a98ac6201e197 Author: Pavel Emelyanov Date: Wed Nov 28 16:21:38 2007 -0800 Isolate the UTS namespace's domainname and hostname back Commit 7d69a1f4a72b18876c99c697692b78339d491568 ("remove CONFIG_UTS_NS and CONFIG_IPC_NS") by Cedric Le Goater accidentally removed the code that prevented the uts->hostname and uts->domainname values from being overwritten from another namespace. In other words, setting hostname/domainname via sysfs (echo xxx > /proc/sys/kernel/(host|domain)name) cased the new value to be set in init UTS namespace only. Return the isolation back. Signed-off-by: Pavel Emelyanov Acked-by: Cedric Le Goater Acked-by: Serge Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48986f06b6bc6f435debcfad0a748ce35f0a52df Author: Ben Dooks Date: Wed Nov 28 16:21:37 2007 -0800 MFD: SM501 debug typo fix Remove errnoeous x character from dev_dbg() call that stops the driver compiling under debug. Signed-off-by: Ben Dooks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8ea50a3f0b70977939d2d9d3671b8173482afff2 Author: Julia Lawall Date: Wed Nov 28 16:21:36 2007 -0800 drivers/pnp/resource.c: Add missing pci_dev_put There should be a pci_dev_put when breaking out of a loop that iterates over calls to pci_get_device and similar functions. This was fixed using the following semantic patch. // @@ identifier d; type T; expression e; iterator for_each_pci_dev; @@ T *d; ... for_each_pci_dev(d) {... when != pci_dev_put(d) when != e = d ( return d; | + pci_dev_put(d); ? return ...; ) ...} // Signed-off-by: Julia Lawall Cc: Greg KH Cc: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b64d70825abbf706bbe80be1b11b09514b71f45e Author: Jean Delvare Date: Wed Nov 28 16:21:35 2007 -0800 fb_ddc: fix DDC lines quirk The code in fb_ddc_read() is said to be based on the implementation of the radeon driver: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=fc5891c8a3ba284f13994d7bc1f1bfa8283982de However, comparing the old radeon driver code with the new fb_ddc code reveals some differences. Most notably, the I2C bus lines are held at the end of the function, while the original code was releasing them (as the comment above correctly says.) There are a few other differences, which appear to be responsible for read failures on my system. While tracing low-level I2C code in i2c-algo-bit, I noticed that the initial attempt to read the EDID always failed. It takes one retry for the read to succeed. As we are about to remove this automatic retry property from i2c-algo-bit, reading the EDID would really fail. As a summary, the I2C lines quirk which is supposedly needed to read EDID on some older monitors is currently breaking the (first) read on all other monitors (and might not even work with older ones - did anyone try since October 2006?) After applying the patch below, which makes the code in fb_ddc_read() really similar to what the radeon driver used to have, the first EDID read succeeds again. On top of that, as it appears that this code has been broken for one year now and nobody seems to have complained, I'm curious if it makes sense to keep this quirk in place. It makes the code more complex and slower just for the sake of monitors which I guess nobody uses anymore. Can't we just get rid of it? Signed-off-by: Jean Delvare Acked-by: Benjamin Herrenschmidt Tested-by: Roger Leigh Tested-by: Michael Buesch Cc: "Antonino A. Daplas" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e482179d547ff250cab487859b6fc91995bbdbb5 Author: Geert Uytterhoeven Date: Wed Nov 28 16:21:33 2007 -0800 m68k: zorro7xx needs m68k: zorro7xx needs if !CONFIG_AMIGA_PCMCIA Reported by Ingo Juergensmann Signed-off-by: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 79288f5e935cb445220eef83f3f793159555f9ae Author: David Woodhouse Date: Wed Nov 28 16:21:32 2007 -0800 Fix usage in userspace For reasons unclear to me, glibc's deliberately defeats the attempt we make in to include For now, change the one instance of __u32 to 'unsigned int' instead because it's breaking userspace. We should probably also remove our inclusion of , since we don't use it -- but that's not a change to make in -rc. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: David Woodhouse Cc: Samuel Thibault Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd79b77117f16264206ed2618199d42e93cc8f09 Author: Pavel Emelyanov Date: Wed Nov 28 16:21:31 2007 -0800 ipc: lost unlock and fput in mqueue.c on error path The error path in sys_mq_getsetattr() after the call to audit_mq_getsetattr() is wrong - the info->lock is not unlocked and the struct file *filp is not put. Fix them both. Signed-off-by: Pavel Emelyanov Cc: Pierre Peiffer Cc: Nadia Derbey Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 75d427982fef672b3608ae809b8819ec6358edfe Author: David Brownell Date: Wed Nov 28 16:21:30 2007 -0800 spi: S3C2410: add bus number to SPI GPIO driver Allow passing a bus number through the platform data for the S3C2410 SPI GPIO driver. This is needed to support multiple SPI busses. Signed-off-by: Ben Dooks Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 438ae1ae7bef17026127b66b1ee16efde93bbcb0 Author: Ben Dooks Date: Wed Nov 28 16:21:29 2007 -0800 S3C24XX: ensure we only configure valid GPIOs If we specify an GPIO which cannot be used for the purpose, then assume that the GPIO is not to be used and do not try and configure it. This can be the case where the SPI bus is TX only. Signed-off-by: Ben Dooks Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3ac40b9b5e62528d407e0e780b65c21c0247bc7c Author: Alan Cox Date: Wed Nov 28 16:21:28 2007 -0800 termios: document callback more clearly Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05a462afe80553550bc77afc724ce60b42ad587e Author: Marcel Selhorst Date: Wed Nov 28 16:21:27 2007 -0800 TPM: fix TIS device driver locality request During the initialization of the TPM TIS driver, the necessary locality has to be requested earlier in the init-process. Depending on the used TPM chip, this leads to wrong information. For example: Lenovo X61s with Atmel TPM: tpm_tis 00:0a: 1.2 TPM (device-id 0xFFFF, rev-id 255) But correct is: tpm_tis 00:0c: 1.2 TPM (device-id 0x3203, rev-id 9) This short patch fixes this issue. Signed-off-by: Marcel Selhorst Cc: Kylene Jo Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19fd4bb2a0cfede054e4904e0b167e0ca4f36cc7 Author: Eric W. Biederman Date: Wed Nov 28 16:21:26 2007 -0800 proc: remove races from proc_id_readdir() Oleg noticed that the call of task_pid_nr_ns() in proc_pid_readdir is racy with respect to tasks exiting. After a bit of examination it also appears that the call itself is completely unnecessary. So to fix the problem this patch modifies next_tgid() to return both a tgid and the task struct in question. A structure is introduced to return these values because it is slightly cleaner and easier to optimize, and the resulting code is a little shorter. Signed-off-by: "Eric W. Biederman" Cc: Oleg Nesterov Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c895078355b6b6e05c60aa205892526dd3390f0a Author: Oleg Nesterov Date: Wed Nov 28 16:21:24 2007 -0800 wait_task_stopped(): don't use task_pid_nr_ns() lockless wait_task_stopped(WNOWAIT) does task_pid_nr_ns() without tasklist/rcu lock, we can read an already freed memory. Use the cached pid_t value. Signed-off-by: Oleg Nesterov Looks-good-to: Roland McGrath Acked-by: Pavel Emelyanov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c2319540cd7330fa9066e5b9b84d357a2c8631a2 Author: Alexey Dobriyan Date: Wed Nov 28 16:21:23 2007 -0800 proc: fix NULL ->i_fop oops proc_kill_inodes() can clear ->i_fop in the middle of vfs_readdir resulting in NULL dereference during "file->f_op->readdir(file, buf, filler)". The solution is to remove proc_kill_inodes() completely: a) we don't have tricky modules implementing their tricky readdir hooks which could keeping this revoke from hell. b) In a situation when module is gone but PDE still alive, standard readdir will return only "." and "..", because pde->next was cleared by remove_proc_entry(). c) the race proc_kill_inode() destined to prevent is not completely fixed, just race window made smaller, because vfs_readdir() is run without sb_lock held and without file_list_lock held. Effectively, ->i_fop is cleared at random moment, which can't fix properly anything. BUG: unable to handle kernel NULL pointer dereference at virtual address 00000018 printing eip: c1061205 *pdpt = 0000000005b22001 *pde = 0000000000000000 Oops: 0000 [#1] PREEMPT SMP Modules linked in: foo af_packet ipv6 cpufreq_ondemand loop serio_raw sr_mod k8temp cdrom hwmon amd_rng Pid: 2033, comm: find Not tainted (2.6.24-rc1-b1d08ac064268d0ae2281e98bf5e82627e0f0c56 #2) EIP: 0060:[] EFLAGS: 00010246 CPU: 0 EIP is at vfs_readdir+0x47/0x74 EAX: c6b6a780 EBX: 00000000 ECX: c1061040 EDX: c5decf94 ESI: c6b6a780 EDI: fffffffe EBP: c9797c54 ESP: c5decf78 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 Process find (pid: 2033, ti=c5dec000 task=c64bba90 task.ti=c5dec000) Stack: c5decf94 c1061040 fffffff7 0805ffbc 00000000 c6b6a780 c1061295 0805ffbc 00000000 00000400 00000000 00000004 0805ffbc 4588eff4 c5dec000 c10026ba 00000004 0805ffbc 00000400 0805ffbc 4588eff4 bfdc6c70 000000dc 0000007b Call Trace: [] filldir64+0x0/0xc5 [] sys_getdents64+0x63/0xa5 [] sysenter_past_esp+0x5f/0x85 ======================= Code: 49 83 78 18 00 74 43 8d 6b 74 bf fe ff ff ff 89 e8 e8 b8 c0 12 00 f6 83 2c 01 00 00 10 75 22 8b 5e 10 8b 4c 24 04 89 f0 8b 14 24 53 18 f6 46 1a 04 89 c7 75 0b 8b 56 0c 8b 46 08 e8 c8 66 00 EIP: [] vfs_readdir+0x47/0x74 SS:ESP 0068:c5decf78 hch: "Nice, getting rid of this is a very good step formwards. Unfortunately we have another copy of this junk in security/selinux/selinuxfs.c:sel_remove_entries() which would need the same treatment." Signed-off-by: Alexey Dobriyan Acked-by: Christoph Hellwig Cc: Al Viro Cc: Stephen Smalley Cc: James Morris Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a7839e960675b549f06209d18283d5cee2ce9261 Author: Zhao Yakui Date: Wed Nov 28 16:21:21 2007 -0800 PNP: increase the maximum number of resources On some systems the number of resources(IO,MEM) returnedy by PNP device is greater than the PNP constant, for example motherboard devices. It brings that some resources can't be reserved and resource confilicts. This will cause PCI resources are assigned wrongly in some systems, and cause hang. This is a regression since we deleted ACPI motherboard driver and use PNP system driver. [akpm@linux-foundation.org: fix text and coding-style a bit] Signed-off-by: Li Shaohua Signed-off-by: Zhao Yakui Cc: Bjorn Helgaas Cc: Thomas Renninger Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c80b01beae3db9f99a161ec216405dd694bc4c2 Author: Jeremy Fitzhardinge Date: Wed Nov 28 16:21:20 2007 -0800 xen: mask _PAGE_PCD from ptes _PAGE_PCD maps a page with caching disabled, which is typically used for mapping harware registers. Xen never allows it to be set on a mapping, and unprivileged guests never need it since they can't see the real underlying hardware. However, some uncached mappings are made early when probing the (non-existent) APIC, and its OK to mask off the PCD flag in these cases. This became necessary because Xen started checking for this bit, rather than silently masking it off. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c06869d660ceffec7dc0fca19ed9646ed5845c7f Author: WANG Cong Date: Wed Nov 28 16:21:16 2007 -0800 UML: build fix include/asm-um/arch points to the non-existed include/asm-i386 directory. Signed-off-by: WANG Cong Cc: Jeff Dike Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba72cb8cb0cdc0a65b3abe9a387f1a26bfd49b8a Author: Mel Gorman Date: Wed Nov 28 16:21:13 2007 -0800 Fix boot problem with iSeries lacking hugepage support Ordinarily the size of a pageblock is determined at compile-time based on the hugepage size. On PPC64, the hugepage size is determined at runtime based on what is supported by the machine. With legacy machines such as iSeries that do not support hugepages, HPAGE_SHIFT is 0. This results in pageblock_order being set to -PAGE_SHIFT and a crash results shortly afterwards. This patch adds a function to select a sensible value for pageblock order by default when HUGETLB_PAGE_SIZE_VARIABLE is set. It checks that HPAGE_SHIFT is a sensible value before using the hugepage size; if it is not MAX_ORDER-1 is used. This is a fix for 2.6.24. Credit goes to Stephen Rothwell for identifying the bug and testing candidate patches. Additional credit goes to Andy Whitcroft for spotting a problem with respects to IA-64 before releasing. Additional credit to David Gibson for testing with the libhugetlbfs test suite. Signed-off-by: Mel Gorman Tested-by: Stephen Rothwell Cc: Benjamin Herrenschmidt Acked-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee592a5bd5180cc1ffaf5acd7bf1e91e0d854a08 Author: Geert Uytterhoeven Date: Wed Nov 28 16:21:11 2007 -0800 ps3fb: video memory size cleanups - Limit video memory size to avoid crossing a 256 MiB boundary in IOIF space. - Pass the actual amount of video memory used to lv1_gpu_memory_allocate(). Signed-off-by: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 248285501ea251379dd449316bf5af78362ae638 Author: Geert Uytterhoeven Date: Wed Nov 28 16:21:11 2007 -0800 ps3: prefix all ps3-specific kernel modules with `ps3-' - vuart.ko -> ps3-vuart.ko - sys-manager.ko -> ps3-sys-manager.ko Signed-off-by: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65f97a56944b797f5df714d677b541cca0829669 Author: David Brownell Date: Wed Nov 28 16:21:10 2007 -0800 atmel_spi: label GPIOs better Make the atmel_spi driver label GPIOs according to the device for which they're acting as a chipselect. This way the debugfs dump of gpio state is more informative. Signed-off-by: David Brownell Cc: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8905a67c63ff3facadad10aa53a8bb159f3ace7b Author: Andy Whitcroft Date: Wed Nov 28 16:21:06 2007 -0800 update checkpatch.pl to version 0.12 This version brings a new terse output mode as well as many improvements to the unary detection and bare type regcognition. It also brings the usual updates for false positives, though these seem to be slowing markedly now that the unary detector is no longer just putting its finger in the air and guessing. Of note: - new --terse mode producing a single line per report - loosening of the block brace checks - new checks for enum/union/struch brace placements - hugely expanded "bare type" detection - checks for inline usage - better handling of already open comment blocks - handle patches which introduce or remove lines without newlines Andy Whitcroft (19): Version: 0.12 style fixes as spotted by checkpatch add a --terse options of a single line of output per report block brace checks should only apply for single line blocks all new bare type detector check spacing for open braces with enum, union and struct check for LINUX_VERSION_CODE macros definition bracketing checks need to ignore -ve context clean up the mail-back mode, -q et al expand possible type matching to declarations allow const and sparse annotations on possible types handle possible types as regular types everywhere prefer plain inline over __inline__ and __inline all new open comment detection fix up conditional extraction for if assignment checks add const to the possible type matcher unary checks: a for loop is a conditional too possible types: detect function pointer definitions handle missind newlines at end of file, report addition Signed-off-by: Andy Whitcroft Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b7e0fe9f81e19c4f2a1369b324c3c062c1738be4 Author: Vlad Yasevich Date: Thu Nov 29 09:53:52 2007 -0500 SCTP: Fix build issues with SCTP AUTH. SCTP-AUTH requires selection of CRYPTO, HMAC and SHA1 since SHA1 is a MUST requirement for AUTH. We also support SHA256, but that's optional, so fix the code to treat it as such. Signed-off-by: Vlad Yasevich commit 555d3d5d2be13675490a80df0d7961551822ef1f Author: Vlad Yasevich Date: Thu Nov 29 08:56:16 2007 -0500 SCTP: Fix chunk acceptance when no authenticated chunks were listed. In the case where no autheticated chunks were specified, we were still trying to verify that a given chunk needs authentication and doing so incorrectly. Add a check for parameter length to make sure we don't try to use an empty auth_chunks parameter to verify against. Signed-off-by: Vlad Yasevich commit 8ee4be37e8ac28e79ae673d441e83c1f51e7ecfd Author: Vlad Yasevich Date: Thu Nov 29 08:50:35 2007 -0500 SCTP: Fix the supported extensions paramter Supported extensions parameter was not coded right and ended up over-writing memory or causing skb overflows. First, remove the FWD_TSN support from as it shouldn't be there and also fix the paramter encoding. Signed-off-by: Vlad Yasevich commit 9baffaa689a50ef9480ecd9017ffd1480c807328 Author: Vlad Yasevich Date: Thu Nov 29 08:44:34 2007 -0500 SCTP: Fix SCTP-AUTH to correctly add HMACS paramter. There was a typo that cleared the HMACS parameters when no authenticated chunks were specified. We whould be clearing the chunks pointer instead of the hmacs. Signed-off-by: Vlad Yasevich commit fd10279bc7405c4f1e47a008686d3d9ad71d7f6d Author: Vlad Yasevich Date: Thu Nov 15 12:13:32 2007 -0500 SCTP: Fix the number of HB transmissions. Our treatment of Heartbeats is special in that the inital HB chunk counts against the error count for the association, where as for other chunks, only retransmissions or timeouts count against us. As a result, we had an off-by-1 situation with a number of Heartbeats we could send. Signed-off-by: Vlad Yasevich commit a357dde9df33f28611e6a3d4f88265e39bcc8880 Author: Stephen Hemminger Date: Fri Nov 30 01:10:55 2007 +1100 [TCP] illinois: Incorrect beta usage Lachlan Andrew observed that my TCP-Illinois implementation uses the beta value incorrectly: The parameter beta in the paper specifies the amount to decrease *by*: that is, on loss, W <- W - beta*W but in tcp_illinois_ssthresh() uses beta as the amount to decrease *to*: W <- beta*W This bug makes the Linux TCP-Illinois get less-aggressive on uncongested network, hurting performance. Note: since the base beta value is .5, it has no impact on a congested network. Signed-off-by: Stephen Hemminger Signed-off-by: Herbert Xu commit 5e5234ff17ef98932688116025b30958bd28a940 Author: Herbert Xu Date: Fri Nov 30 00:50:31 2007 +1100 [IPSEC]: Fix uninitialised dst warning in __xfrm_lookup Andrew Morton reported that __xfrm_lookup generates this warning: net/xfrm/xfrm_policy.c: In function '__xfrm_lookup': net/xfrm/xfrm_policy.c:1449: warning: 'dst' may be used uninitialized in this function This is because if policy->action is of an unexpected value then dst will not be initialised. Of course, in practice this should never happen since the input layer xfrm_user/af_key will filter out all illegal values. But the compiler doesn't know that of course. So this patch fixes this by taking the conservative approach and treat all unknown actions the same as a blocking action. Thanks to Andrew for finding this and providing an initial fix. Signed-off-by: Herbert Xu commit 076931989fe96823a577259cc6bc205d7ec31754 Author: Pavel Emelyanov Date: Fri Nov 30 00:08:14 2007 +1100 [INET]: Fix inet_diag register vs rcv race The following race is possible when one cpu unregisters the handler while other one is trying to receive a message and call this one: CPU1: CPU2: inet_diag_rcv() inet_diag_unregister() mutex_lock(&inet_diag_mutex); netlink_rcv_skb(skb, &inet_diag_rcv_msg); if (inet_diag_table[nlh->nlmsg_type] == NULL) /* false handler is still registered */ ... netlink_dump_start(idiagnl, skb, nlh, inet_diag_dump, NULL); cb = kzalloc(sizeof(*cb), GFP_KERNEL); /* sleep here freeing memory * or preempt * or sleep later on nlk->cb_mutex */ spin_lock(&inet_diag_register_lock); inet_diag_table[type] = NULL; ... spin_unlock(&inet_diag_register_lock); synchronize_rcu(); /* CPU1 is sleeping - RCU quiescent * state is passed */ return; /* inet_diag_dump is finally called: */ inet_diag_dump() handler = inet_diag_table[cb->nlh->nlmsg_type]; BUG_ON(handler == NULL); /* OOPS! While we slept the unregister has set * handler to NULL :( */ Grep showed, that the register/unregister functions are called from init/fini module callbacks for tcp_/dccp_diag, so it's OK to use the inet_diag_mutex to synchronize manipulations with the inet_diag_table and the access to it. Besides, as Herbert pointed out, asynchronous dumps should hold this mutex as well, and thus, we provide the mutex as cb_mutex one. Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 82de382ce8e1c7645984616728dc7aaa057821e4 Author: Pavel Emelyanov Date: Thu Nov 29 23:58:58 2007 +1100 [BRIDGE]: Properly dereference the br_should_route_hook This hook is protected with the RCU, so simple if (br_should_route_hook) br_should_route_hook(...) is not enough on some architectures. Use the rcu_dereference/rcu_assign_pointer in this case. Fixed Stephen's comment concerning using the typeof(). Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 17efdd45755c0eb8d1418a1368ef7c7ebbe98c6e Author: Pavel Emelyanov Date: Thu Nov 29 23:41:43 2007 +1100 [BRIDGE]: Lost call to br_fdb_fini() in br_init() error path In case the br_netfilter_init() (or any subsequent call) fails, the br_fdb_fini() must be called to free the allocated in br_fdb_init() br_fdb_cache kmem cache. Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 0a11225887fe6cbccd882404dc36ddc50f47daf9 Author: Florian Zumbiehl Date: Thu Nov 29 23:19:23 2007 +1100 [UNIX]: EOF on non-blocking SOCK_SEQPACKET I am not absolutely sure whether this actually is a bug (as in: I've got no clue what the standards say or what other implementations do), but at least I was pretty surprised when I noticed that a recv() on a non-blocking unix domain socket of type SOCK_SEQPACKET (which is connection oriented, after all) where the remote end has closed the connection returned -1 (EAGAIN) rather than 0 to indicate end of file. This is a test case: | #include | #include | #include | #include | #include | #include | #include | | int main(){ | int sock; | struct sockaddr_un addr; | char buf[4096]; | int pfds[2]; | | pipe(pfds); | sock=socket(PF_UNIX,SOCK_SEQPACKET,0); | addr.sun_family=AF_UNIX; | strcpy(addr.sun_path,"/tmp/foobar_testsock"); | bind(sock,(struct sockaddr *)&addr,sizeof(addr)); | listen(sock,1); | if(fork()){ | close(sock); | sock=socket(PF_UNIX,SOCK_SEQPACKET,0); | connect(sock,(struct sockaddr *)&addr,sizeof(addr)); | fcntl(sock,F_SETFL,fcntl(sock,F_GETFL)|O_NONBLOCK); | close(pfds[1]); | read(pfds[0],buf,sizeof(buf)); | recv(sock,buf,sizeof(buf),0); // <-- this one | }else accept(sock,NULL,NULL); | exit(0); | } If you try it, make sure /tmp/foobar_testsock doesn't exist. The marked recv() returns -1 (EAGAIN) on 2.6.23.9. Below you find a patch that fixes that. Signed-off-by: Florian Zumbiehl Signed-off-by: Herbert Xu commit 6ab3b487db77fa98a24560f11a5a8e744b98d877 Author: Joonwoo Park Date: Thu Nov 29 22:16:41 2007 +1100 [VLAN]: Fix nested VLAN transmit bug Fix misbehavior of vlan_dev_hard_start_xmit() for recursive encapsulations. Signed-off-by: Joonwoo Park Signed-off-by: Herbert Xu commit dde655c9df02ee07ed090dfdb7ae8741bf299e14 Author: Johannes Berg Date: Thu Nov 29 21:51:36 2007 +1100 [SUNGEM]: Fix NAPI regression with reset work sungem's gem_reset_task() will unconditionally try to disable NAPI even when it's called while the interface is not operating and hence the NAPI struct isn't enabled. Make napi_disable() depend on gp->running. Also removes a superfluous test of gp->running in the same function. Signed-off-by: Johannes Berg Signed-off-by: Herbert Xu commit 16252da654800461e0e1c32697cb59f4cda15aa9 Author: Jens Rottmann Date: Tue Nov 27 12:35:13 2007 +0100 x86 setup: don't recalculate ss:esp unless really necessary In order to work around old LILO versions providing an invalid ss register, the current setup code always sets up a new stack, immediately following .bss and the heap. But this breaks LOADLIN. This rewrite of the workaround checks for an invalid stack (ss!=ds) first, and leaves ss:sp alone otherwise (apart from aligning esp). [hpa note: LOADLIN has a number of arbitrary hard-coded limits that are being pushed up against. Without some major revision of LOADLIN itself it will not be sustainable keeping it alive. This gives it another brief lease on life, however. This patch also helps the cmdline truncation problem with old versions of SYSLINUX.] Signed-off-by: Jens Rottmann Signed-off-by: H. Peter Anvin commit 26e6c66e47fe7f69ef6ddb078e312204a1f17823 Author: Randy Dunlap Date: Wed Nov 28 09:04:30 2007 -0800 pci hotplug: kernel-doc fixes acpiphp.h: not using kernel-doc, so change /** to /* acpiphp_core.c: lots of kernel-doc cleanups acpiphp_glue.c: lots of kernel-doc cleanups acpiphp_ibm.c: lots of kernel-doc cleanups cpqphp_core.c: lots of kernel-doc cleanups cpqphp_ctrl.c: lots of kernel-doc cleanups fakephp.c: correct kernel-doc notation pciehp_ctrl.c: correct kernel-doc notation rpadlpar_core.c: correct function names & kernel-doc notation rpaphp_core.c: correct kernel-doc notation shpchp_ctrl.c: correct kernel-doc notation Signed-off-by: Randy Dunlap Cc: Kristen Accardi Signed-off-by: Greg Kroah-Hartman commit d885c6b75b60e0df8ab65c82d0c81f4238e664ce Author: Randy Dunlap Date: Wed Nov 28 09:04:23 2007 -0800 pci-aer: fix kernel-doc mistakes Fix kernel-doc parameter names and ending block comments (change **/ to */). Signed-off-by: Randy Dunlap Acked-by: Linas Vepstas Signed-off-by: Greg Kroah-Hartman commit 151fc5dfc87964e85a1cbbb9cc2c0703c017c2ed Author: Julia Lawall Date: Tue Nov 20 08:41:16 2007 +0100 PCI: drivers/pci/pci-sysfs.c: Add missing pci_dev_put There should be a pci_dev_put when breaking out of a loop that iterates over calls to pci_get_device and similar functions. This was fixed using the following semantic patch. // @@ identifier d; type T; expression e; iterator for_each_pci_dev; @@ T *d; ... for_each_pci_dev(d) {... when != pci_dev_put(d) when != e = d ( return d; | + pci_dev_put(d); ? return ...; ) ...} // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit bf164410d08dc83df416e3a6a43ab29bf88890ed Author: Linas Vepstas Date: Fri Nov 2 15:14:28 2007 -0500 PCI: pcie portdriver: initialize returned value The pcie protdrv status can be returned uninitialized, if there are no children under a device. This leads to bad responses downstream. Fix this. Signed-off-by: Linas Vepstas Signed-off-by: Greg Kroah-Hartman commit 5f629ad7e5f9b99c6d025bf199d402734bd72d0f Author: Ben Dooks Date: Mon Nov 19 22:28:15 2007 +0000 USB: s3c2410 gadget: ensure vbus pin in input mode during read Some CPUs in the S3C24XX series do not support readback of the value of a pin when the pin has been configured to an IRQ. Signed-off-by: Ben Dooks Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 8802bca4feed9e60d22a91cc5ccb1c4a1d8e3d71 Author: Ben Dooks Date: Mon Nov 19 22:28:14 2007 +0000 USB: s3c2410 gadget: allow sharing of vbus irq If another driver wants to claim the vbus pin, say to notify the user of an connect/disconnect then allow the IRQ to be shared by specifiying IRQ_SHARED in the flags. Signed-off-by: Ben Dooks Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 899d566a6e7533cb5ad613a656c7f53a2b88abcd Author: Ben Dooks Date: Mon Nov 19 22:28:13 2007 +0000 USB: s3c2410 gadget: Header move fixups Fixup the fallout from the arch moves earlier in the kernel series. Signed-off-by: Ben Dooks Acked-by: David Brownell commit f1e8de0dbb9ee30cd6eb9c510249847d28443cb1 Author: Alan Stern Date: Mon Nov 26 10:23:05 2007 -0500 USB: usb-storage: unusual_devs entry for JetFlash TS1GJF2A This patch (as1018) adds an unusual_devs entry for the JetFlash TS1GJF2A. This device doesn't like read requests for more than 188 sectors. Setting max_sectors down to 64 is overkill, but at least it will work without errors. For the torturous debugging history, see this thread: http://marc.info/?t=118745764700005&r=1&w=2 Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1cb52658b4f5b10a9e91f8e1c21ca2bcc1b9a3ca Author: David Brownell Date: Tue Nov 13 16:22:30 2007 -0800 USB: fix up EHCI startup synchronization A recent patch added software synchronization during EHCI startup, so ports aren't switched away from the companion controllers after resets have started. This patch adds a short delay letting hardware finish that port switching before any new resets begin ... so both ends of that hardware race window are closed. Signed-off-by: David Brownell Cc: Dave Miller Cc: Dely Sy Cc: stable Cc: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 5cf1973a44bd298e3cfce6f6af8faa8c9d0a6d55 Author: Oliver Neukum Date: Mon Nov 12 14:08:43 2007 +0100 USB: make the microtek driver and HAL cooperate to make HAL like the microtek driver's devices the parent must be correctly set. Signed-off-by: Oliver Neukum Cc: stable Signed-off-by: Greg Kroah-Hartman commit 4a9bee8256a2dec26290a3bfff86ab86b8992547 Author: Alan Stern Date: Tue Nov 6 15:01:52 2007 -0500 USB: uevent environment key fix This patch (as1010) was written by both Kay Sievers and me. It solves the problem of duplicated keys in USB uevent structures by refactoring the uevent subroutines, taking advantage of the way the hotplug core calls uevent handlers for the device's bus and for the device's type. Keys needed for both USB-device and USB-interface events are added in usb_uevent(), which is the bus handler. Keys appropriate only for USB-device or USB-interface events are added in usb_dev_uevent() or usb_if_uevent() respectively, the type handlers. In addition, unnecessary tests for NULL pointers are removed as are duplicated debugging log statements. Signed-off-by: Alan Stern Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 7e61559f6199bb387037abfc7d10a893973561fc Author: Alan Stern Date: Tue Nov 6 11:43:42 2007 -0500 USB: keep track of whether interface sysfs files exist This patch (as1009) solves the problem of multiple registrations for USB sysfs files in a more satisfying way than the existing code. It simply adds a flag to keep track of whether or not the files have been created; that way the files can be created or removed as needed. Signed-off-by: Alan Stern commit 5fdcd0396be443e36a4e2128f51818acca570ee7 Author: agilmore@wirelessbeehive.com Date: Tue Nov 20 13:39:03 2007 -0700 USB: sierra: new product id Per the maintainer of the usbserial/sierra.c driver, the patch below adds a new id to the list of supported cards for the sierra driver. Tested and working for me on Fedora 8, kernel 2.6.23 and on the more recent sierra.c available in http://www.sierrawireless.com/resources/support/Software/Linux/v.1.2.6b(kernel2.6.21).zip Hardware is a MiniPCI card in a Lenovo T61p. Signed-off-by: Andrew Gilmore Cc: Kevin Lloyd Signed-off-by: Greg Kroah-Hartman commit ddc1fd6ac1f3ad3275e19451fb07d2eff249161c Author: Alan Stern Date: Wed Nov 21 15:13:10 2007 -0800 USB HCD: avoid duplicate local_irq_disable() Arnd Bergmann wrote: usb_hcd_flush_endpoint() has a retry loop that starts with a spin_lock_irq(), but only gives up the spinlock, not the irq_disable before jumping to the rescan label. Alan Stern: I agree with your sentiment, but it would be better to solve this problem without using local_irq_disable(). Signed-off-by: Alan Stern Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 6372594ac1779261926f2f2c4ef5e79936e4faef Author: Greg Kroah-Hartman Date: Wed Nov 21 15:16:59 2007 -0700 USB: mailing lists have changed The linux-usb-devel and linux-usb-users are now hosted in the same list at vger.kernel.org Signed-off-by: Greg Kroah-Hartman commit ddac0da4dce2e115633493725601da202359872a Author: David Brownell Date: Wed Nov 7 12:59:54 2007 -0800 USB: remove USB HUB entry from MAINTAINERS Digging through old mail, I found a note about needing to remove the separate entry for the USB HUB driver. It's not been separable from usbcore (host side!) since quite early in the 2.4 kernel series. And Johanness certainly isn't involved with it any more. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 9e3e31046fc4e994583b1197eeefb26811bc9364 Author: Dirk Hohndel Date: Wed Nov 7 16:27:23 2007 -0800 USB: fix directory references in usb/README Another one in the "ok, this is trivial to fix" list... :-) [PATCH] fix directory references in usb/README Signed-off-by: Dirk Hohndel Signed-off-by: Greg Kroah-Hartman commit 034fec2e75e97a5429512a6daf2c605a4829853d Author: Mike Pagano Date: Thu Nov 1 10:53:43 2007 -0700 USB: add support for an older firmware revision for the Nikon D200 This is a resubmission of the patch to upgrade the unusual_devs.h file to support an older firmware revision of the Nikon D200. This patch includes the requested /proc/bus/usb/devices information. T: Bus=01 Lev=01 Prnt=01 Port=09 Cnt=02 Dev#= 6 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=04b0 ProdID=040f Rev= 1.00 S: Manufacturer=NIKON S: Product=NIKON DSC D200 S: SerialNumber=0000000 C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms Signed-off-by: Mike Pagano Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit f08812d5eb8f8cd1a5bd5f5c26a96eb93d97ab69 Author: Pete Zaitcev Date: Wed Oct 31 15:59:30 2007 -0700 USB: FIx locks and urb->status in adutux (updated) Two main issues fixed here are: - An improper use of in-struct lock to protect an open count - Use of urb status for -EINPROGRESS Also, along the way: - Change usb_unlink_urb to usb_kill_urb. Apparently there's no need to use usb_unlink_urb whatsoever in this driver, and the old use of usb_kill_urb was outright racy (it unlinked and immediately freed). - Fix indentation in adu_write. Looks like it was damaged by a script. - Vitaly wants -EBUSY on multiply opens. - bInterval was taken from a wrong endpoint. Signed-off-by: Pete Zaitcev Signed-off-by: Vitaliy Ivanov Tested-by: Vitaliy Ivanov Signed-off-by: Greg Kroah-Hartman commit 3c886c50486cfbef2a2382b99bf4083a465c970a Author: Alan Stern Date: Fri Nov 16 11:58:15 2007 -0500 USB: power-management documenation update This patch (as1014) was partly written by Tilman Schmidt. It clarifies the USB power-management documentation by explaining that when a disconnect occurs, a suspend method call might not be followed by either a resume or a reset_resume call. Signed-off-by: Alan Stern Signed-off-by: Tilman Schmidt Signed-off-by: Greg Kroah-Hartman commit bc59462b80c694670fbb5d0bb1a8450ffc353080 Author: Phil Endecott Date: Mon Oct 29 20:40:30 2007 +0000 USB: Fix signr comment in usbdevice_fs.h This trivial documentation patch corrects a comment in usbdevice_fs.h; it previously suggested that the signal would only be sent on error, but I am told that it is sent on both successful and unsuccessful completion, and that zero indicates that no signal should be sent. Signed-off-by: Phil Endecott Signed-off-by: Greg Kroah-Hartman commit bfaeafcfc2242277e31cc1cfae687afaac0cd9ec Author: Borislav Petkov Date: Sun Oct 28 13:24:16 2007 +0100 usbserial: fix inconsistent lock state In commit acd2a847e7fee7df11817f67dba75a2802793e5d usb_serial_generic_write() disables interrupts when taking &port->lock which is also taken in usb_serial_generic_read_bulk_callback() resulting in an inconsistent lock state due to the latter not disabling interrupts on the local cpu. Fix that by disabling interrupts in the latter call site also. Signed-off-by: Borislav Petkov Acked-by: Jiri Kosina Signed-off-by: Greg Kroah-Hartman commit ed206ec9ab398e1c3756ff0eb9507db1d009e65f Author: Oliver Neukum Date: Sun Oct 28 08:21:59 2007 +0100 USB: fix usbled disconnect read race #2 usbled has a race where show methods for attributes in sysfs can follow a NULL pointer during disconnect. The correct ordering fixes it. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 7ced46c3ad1dfaaabf9ec6c98cbb0a48e080fb11 Author: Roel Kluin <12o3l@tiscali.nl> Date: Sat Oct 27 03:36:37 2007 +0200 USB: free memory when writing fails in usb/serial/mos7840.c Free buffer when writing ZLP_REG5 failed Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Greg Kroah-Hartman commit 2e2c5eea95cfe4f36d708e6f124d9ac050b19fa1 Author: Roel Kluin <12o3l@tiscali.nl> Date: Fri Oct 26 23:54:35 2007 +0200 USB: Fix priority mistakes in drivers/usb/core/hub.c Fixes priority mistakes similar to '!x & y' Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f09e495df27d80ae77005ddb2e93df18ec24d04a Author: Mauro Carvalho Chehab Date: Wed Oct 10 16:29:02 2007 -0400 usb-storage: always set the allow_restart flag This patch (as1000) sets the SCSI allow_restart flag for USB disk devices. In theory this should never hurt, and there definitely are devices out there (such as the Seagate 250-GB external drive) which need the flag to be set. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 9e3285dba5cac12d656da66fd7d420ff1bc0ecc0 Author: Magnus Damm Date: Thu Nov 8 16:45:46 2007 +0900 USB: pl2303: add support for Corega CG-USBRS232R pl2303: add support for Corega CG-USBRS232R This patch adds support for Corega CG-USBRS232R Serial Adapters. Signed-off-by: Magnus Damm Signed-off-by: Greg Kroah-Hartman commit 9cfbba73118e45d935577389976f0d6af1a8e58b Author: David Brownell Date: Fri Oct 26 13:42:18 2007 -0700 USB: omap_udc build fix This fixes some build errors ... unclear how this got past earlier tests. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1011b326b1e7ab86a480c99b4718d16e6d9f1d11 Author: Adrian Bunk Date: Sat Oct 27 03:06:47 2007 +0200 USB: fix USB_OHCI_HCD_SSB dependencies This patch fixes a bug introduced by commit b22817b3c81cdb18ffe3d2debfee968731a8b5f4. Signed-off-by: Adrian Bunk Cc: Ingo Molnar Cc: Michael Buesch Signed-off-by: Greg Kroah-Hartman commit 8118a859dc7abd873193986c77a8d9bdb877adc8 Author: Miao Xie Date: Wed Nov 21 14:55:19 2007 -0800 sysfs: fix off-by-one error in fill_read_buffer() I found that there is a off-by-one problem in the following code. Version: 2.6.24-rc2 File: fs/sysfs/file.c:118-122 Function: fill_read_buffer -------------------------------------------------------------------- count = ops->show(kobj, attr_sd->s_attr.attr, buffer->page); sysfs_put_active_two(attr_sd); BUG_ON(count > (ssize_t)PAGE_SIZE); -------------------------------------------------------------------- Because according to the specification of the sysfs and the implement of the show methods, the show methods return the number of bytes which would be generated for the given input, excluding the trailing null.So if the return value of the show methods equals PAGE_SIZE - 1, the buffer is full in fact. And if the return value equals PAGE_SIZE, the resulting string was already truncated,or buffer overflow occurred. This patch fixes an off-by-one error in fill_read_buffer. Signed-off-by: Miao Xie Signed-off-by: Andrew Morton Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit 71409a498e96a421bdc20e7275ebc4fab8b14cdc Author: Johannes Berg Date: Mon Nov 5 13:59:11 2007 +0100 kobject: two typo fixes This fixes two typos from commit 34358c26a2c96b2a068dc44e0ac602106a466bce. Signed-off-by: Johannes Berg Signed-off-by: Greg Kroah-Hartman commit 1f4ebbbf188805036afc915eb759f4b294815857 Author: Hans J Koch Date: Mon Nov 26 22:10:35 2007 +0100 UIO: add UIO documentation target to DocBook Makefile Add the DocBook documentation for the Userspace I/O framework to the Makefile. Signed-off-by: Satoru Takeuchi Signed-off-by: Hans J Koch Signed-off-by: Greg Kroah-Hartman commit ed423c24a8f749e2d6207128a91c724f2f7d82ce Author: Hans J Koch Date: Mon Nov 26 22:03:29 2007 +0100 UIO: fix up the UIO documentation Remove references to the old uio_dummy demo module from UIO documentation. Add a small paragraph to make it clearer that UIO is not a universal driver interface. Signed-off-by: Hans J Koch Signed-off-by: Greg Kroah-Hartman commit dec13c15445fec29ca9087890895718450e80b95 Author: Daniel Drake Date: Wed Nov 21 14:55:18 2007 -0800 create /sys/.../power when CONFIG_PM is set The CONFIG_SUSPEND changes in 2.6.23 caused a regression under certain configuration conditions (SUSPEND=n, USB_AUTOSUSPEND=y) where all USB device attributes in sysfs (idVendor, idProduct, ...) silently disappeared, causing udev breakage and more. The cause of this is that the /sys/.../power subdirectory is now only created when CONFIG_PM_SLEEP is set, however, it should be created whenever CONFIG_PM is set to handle the above situation. The following patch fixes the regression. Signed-off-by: Daniel Drake Acked-by: Rafael J. Wysocki Cc: Alan Stern Cc: Kay Sievers Cc: stable Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 345ee8392dc149ca529f80e40583928977ad592e Author: Kay Sievers Date: Wed Nov 14 23:39:42 2007 +0100 allow LEGACY_PTYS to be set to 0 The count of legacy pty devices can be set by a kernel commandline parameter. For the distro kernel, we would like to disable all pty's by default, but keep the opportunity to request devices on the kernel commandline. Signed-off-by: Kay Sievers Acked-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 09f345da758fca1222b0971b65b2fddbdf78bb83 Author: Hugh Dickins Date: Wed Nov 28 18:57:12 2007 +0000 prep_zero_page: remove bogus BUG_ON 2.6.11 gave __GFP_ZERO's prep_zero_page a bogus "highmem may have to wait" assertion. Presumably added under the misconception that clear_highpage uses nonatomic kmap; but then and now it uses kmap_atomic, so no problem. Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit e84e2e132c9c66d8498e7710d4ea532d1feaaac5 Author: Hugh Dickins Date: Wed Nov 28 18:55:10 2007 +0000 tmpfs: restore missing clear_highpage tmpfs was misconverted to __GFP_ZERO in 2.6.11. There's an unusual case in which shmem_getpage receives the page from its caller instead of allocating. We must cover this case by clear_highpage before SetPageUptodate, as before. Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit c46f739dd39db3b07ab5deb4e3ec81e1c04a91af Author: Ingo Molnar Date: Wed Nov 28 13:59:18 2007 +0100 vfs: coredumping fix fix: http://bugzilla.kernel.org/show_bug.cgi?id=3043 only allow coredumping to the same uid that the coredumping task runs under. Signed-off-by: Ingo Molnar Acked-by: Alan Cox Acked-by: Christoph Hellwig Acked-by: Al Viro Signed-off-by: Linus Torvalds commit f95e0d1c2ad668c77aa4b272c076faf3aa0d631c Author: Ingo Molnar Date: Wed Nov 28 15:52:56 2007 +0100 sched: clean up kernel/sched_stat.h clean up kernel/sched_stat.h. Signed-off-by: Ingo Molnar commit c1a89740da168d3431f2f4e7c3b03daacbb55be1 Author: Ingo Molnar Date: Wed Nov 28 15:52:56 2007 +0100 sched: clean up overlong line in kernel/sched_debug.c clean up overlong line in kernel/sched_debug.c. Signed-off-by: Ingo Molnar commit deaf2227ddf657a260e923db44b6f0974d9bb782 Author: Ingo Molnar Date: Wed Nov 28 15:52:56 2007 +0100 sched: clean up, move __sched_text_start/end to sched.h move __sched_text_start/end to sched.h. No code changed: text data bss dec hex filename 26582 2310 28 28920 70f8 sched.o.before 26582 2310 28 28920 70f8 sched.o.after Signed-off-by: Ingo Molnar commit 9a4e715914f07e56cbfa6f2b544a68365d51c3ef Author: Ingo Molnar Date: Wed Nov 28 15:52:56 2007 +0100 sched: clean up sd_alloc_ctl_cpu_table() definition clean up sd_alloc_ctl_cpu_table() definition. Signed-off-by: Ingo Molnar commit d3938204468dccae16be0099a2abf53db4ed0505 Author: Thomas Gleixner Date: Wed Nov 28 15:52:56 2007 +0100 softlockup: fix false positives on CONFIG_NOHZ David Miller reported soft lockup false-positives that trigger on NOHZ due to CPUs idling for more than 10 seconds. The solution is touch the softlockup watchdog when we return from idle. (by definition we are not 'locked up' when we were idle) http://bugzilla.kernel.org/show_bug.cgi?id=9409 Reported-by: David Miller Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit b1967d0eddeef4869ee283e692735cb994f3745a Author: Mark Fasheh Date: Tue Nov 20 11:56:39 2007 -0800 ocfs2: reverse inline-data truncate args ocfs2_truncate() and ocfs2_remove_inode_range() had reversed their "set i_size" arguments to ocfs2_truncate_inline(). Fix things so that truncate sets i_size, and punching a hole ignores it. This exposed a problem where punching a hole in an inline-data file wasn't updating the page cache, so fix that too. Signed-off-by: Mark Fasheh commit 0d8a4e0cd688ad0de6430ce3425c7849cfec1c2d Author: Mark Fasheh Date: Tue Nov 20 11:48:41 2007 -0800 ocfs2: Fix comparison in ocfs2_size_fits_inline_data() This was causing us to prematurely push out inline data by one byte. Signed-off-by: Mark Fasheh commit bccb9dad8949cd0df1d3d2188a1fdb4b1936d537 Author: Mark Fasheh Date: Wed Nov 7 16:35:14 2007 -0800 ocfs2: Remove bug statement in ocfs2_dentry_iput() The existing bug statement didn't take into account unhashed dentries which might not have a cluster lock on them. This could happen if a node exporting the file system via NFS is rebooted, re-exported to nfs clients and then unmounted. It's fine in this case to not have a dentry cluster lock. Just remove the bug statement and replace it with an error print, which does the proper checks. Though we want to know if something has happened which might have prevented a cluster lock from being created, it's definitely not necessary to panic the machine for this. Signed-off-by: Mark Fasheh commit 5a58c3ef22d6e5b84ff651a7d27ae2cbea9f9870 Author: Jan Kara Date: Tue Nov 13 19:59:33 2007 +0100 [PATCH] ocfs2: Remove expensive bitmap scanning Enable expensive bitmap scanning only if DEBUG option is enabled. The bitmap scanning quite loads the CPU and on my machine the write throughput of dd if=/dev/zero of=/ocfs2/file bs=1M count=500 conv=sync improves from 37 MB/s to 45.4 MB/s in local mode... Signed-off-by: Jan Kara Signed-off-by: Mark Fasheh commit a46043e08f300982c51df317e2f8fb919dedadcd Author: Mark Fasheh Date: Mon Nov 19 18:40:16 2007 -0800 ocfs2: log valid inode # on bad inode If the inode block isn't valid then we don't want to print the value from that, instead print the block number which was passed in (which should always be correct). Also, turn this into a debug print for now - folks who hit an actual problem always have other logs indicating what the source is. Signed-off-by: Mark Fasheh commit ef9f86ceb63f2803c9aada249986b84d2f99c635 Author: Mark Fasheh Date: Mon Nov 19 18:31:17 2007 -0800 ocfs2: Filter -ENOSPC in mlog_errno() It's almost never worth printing in that situation and we keep forgetting to manually filter it out. Signed-off-by: Mark Fasheh commit 2759236f8415ccc0f275b57bd8142c2c81fd2177 Author: Joe Perches Date: Mon Nov 19 17:53:34 2007 -0800 [PATCH] fs/ocfs2: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: Mark Fasheh commit e001e796e47d29c470de6c2cd36400e03c66118b Author: Mark Fasheh Date: Wed Nov 7 14:21:45 2007 -0800 ocfs2: Reset journal parameters after s_mount_opt update Right now we're just setting them from the existing parameters, not the new ones that a remount specified. Signed-off-by: Mark Fasheh commit 1401b53acc0328d96bacb2a3393d2852699df96b Author: Jack Morgenstein Date: Mon Nov 26 10:41:19 2007 +0200 IPoIB: Fix oops if xmit is called when priv->broadcast is NULL If a port goes down, ipoib_ib_dev_down() is invoked -- which flushes the mcasts (clearing priv->broadcast) and clearing the path record cache. If ipoib_start_xmit() is then invoked (before the broadcast group is rejoined), a kernel oops results from attempting to access priv->broadcast, which is still unset. Returning NULL from path_rec_create() if priv->broadcast is NULL is a harmless way of bypassing the problem -- the offending packet is simply discarded "without prejudice." Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit 6413f08666830afec21e41e50c28a2c5105ede69 Author: Denis Cheng Date: Tue Nov 27 21:35:58 2007 +0100 ide-scsi: use print_hex_dump from these utilities implemented in lib/hexdump.c are more handy, please use this. Bart: - s/KERN_DEBUG/KERN_CONT/ as pointed out by Randy - s/DUMP_PREFIX_OFFSET/DUMP_PREFIX_NONE/ - don't include ASCII dump - respect 80-columns limit Signed-off-by: Denis Cheng Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit e97564f362a93f8c248246c19828895950341252 Author: Peter Missel Date: Tue Nov 27 21:35:57 2007 +0100 ide: More TSST drives with broken cable detection Add more TSST (Toshiba/Samsung) drives to the 'broken cable detection' blacklist. Signed-off-by: Peter Missel (peter.missel@onlinehome.de) Cc: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 498f26b45cfc2e16d15f0416a40bc01156c43e92 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:57 2007 +0100 ali14xx: constify __initdata Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 0546cb045ea487d8702c5ae4da6e0eab7baa17ba Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:57 2007 +0100 ide: remove bogus ide_fix_driveid() comment Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 8a82387cd235d5251890d53c57bf953d24a76831 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 trm290: remove bogus init_hwif_trm290() comment Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit dd0fd40d5488aadfc54a50919471469a31407322 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 piix: add HP compaq laptop to short cable list Port of Jeff's libata commit 54174db300ee1bac632d62e4ac37fe02e47d1f18 ("[libata] ata_piix: add HP compaq laptop to short cable list"). Cc: Jeff Garzik Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit d151456a71e2757da4169a6be2eb68ac115b05b0 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 alim15x3: add Mitac 8317 and derivatives to ali_cable_override() Port of Alan's patch for pata_ali.c. Cc: Alan Cox Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit b0bc65b9aa7d9eb8af4895ed772ef7fe2c10687c Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 ide: add TORiSAN model: CD-ROM CDR_U200 fw: 1.09 to DMA blacklist Based on the report from snowbat@gmail.com. Fixes kernel bugzilla bug #9195. Tested-by: snowbat@gmail.com Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 9130201003cf3a9f3afe830fe8e544018beab61b Author: Andrew Morton Date: Tue Nov 27 21:35:56 2007 +0100 amd74xx: arm hack drivers/ide/pci/amd74xx.c: In function `init_hwif_amd74xx': drivers/ide/pci/amd74xx.c:387: error: implicit declaration of function `pci_get_legacy_ide_irq' Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit aca38a5157dec0090ad800d52c138fb83674481f Author: Joe Perches Date: Tue Nov 27 21:35:55 2007 +0100 drivers/ide: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: Bartlomiej Zolnierkiewicz commit e816056210941e9886e447e331b7fdbe133cb5f0 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:55 2007 +0100 ide-cris: don't override ide_register_hw() result * Don't override ide_register_hw() result and check if there is a hwif available to use. * MAX_HWIFS is user configurable nowadays so replace it by hard-coded value. * Remove the comment about ide_hwifs[]. Acked-by: Mikael Starvik Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit c03a9278ad96e1e7d144f5f626c6794f050c0ae7 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:55 2007 +0100 ide: move CONFIG_IDE_ETRAX to drivers/ide/Kconfig * Move ETRAX_IDE and friends from arch/cris/arch-{v10,v32}/drivers/Kconfig to drivers/ide/Kconfig. * Don't force selecting ide-disk and ide-cd device drivers (please handle this through defconfig if necessary). * Make ETRAX_IDE depend on BROKEN for the time being (it doesn't even compile currently). Cc: Mikael Starvik Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit acfad6e186664fa8521662bb7992ff6508f9357b Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:54 2007 +0100 ide: add CONFIG_IDE_H8300 config option Add a separate config option for ide-8300 host driver instead of depending on CONFIG_H8300. This change is a preparation for the future changes and also allows ide-h8300 to be disabled if needed. Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit c5d252cbe9044054476498df163d99cb5a6d0ba8 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:54 2007 +0100 ide/Kconfig: fix mpc8xx host driver dependencies Only LWMON, IVMS8, IVML24 and TQM8xxL platforms have the needed defines (IDE0_BASE_OFFSET and friends) in the platform header file. Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 355bd12f4aba2f6acaf5e8dd9c85e0cc7dbae965 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:54 2007 +0100 macide/q40ide: add missing __init tag to {macide,q40ide}_init() Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit b48d08177fe635a549aaf63eef508be1de069ebf Author: Aleksandar Radovanovic Date: Tue Nov 27 21:35:53 2007 +0100 aec62xx: Fix kernel oops in driver's probe function Add pci_enable_device() to aec62xx probe function before doing any I/O. Original probe function tries to read from device's PCI region 4 before calling ide_setup_pci_device(). Since the device is not enabled at this point, on machines that have no firmware PCI initialization (e.g. ASUS WL-700gE router), corresponding PCI BAR is 0 and the following inb() causes a kernel oops. Signed-off-by: Aleksandar Radovanovic Cc: Linus Torvalds , Signed-off-by: Bartlomiej Zolnierkiewicz commit 8266105b15192177ac732ab8a27b315dc9291100 Author: Jonas Stare Date: Tue Nov 27 21:35:53 2007 +0100 ide: skip ide_wait_not_busy() on noprobe-disks There is a problem in some hardware where the kernel will stall for 35 seconds waiting for disks that don't exist. This patch will skip waiting for the BSY-bit on IDE drives to go away if you set "hdx=noprobe" as a kernel option and the disk is not marked as 'present' (like when you set the geometry by hand). If no noprobe-option is set the code will work (more or less) as the original but if set the code will skip the ide_wait_not_busy() for that drive. Even if there would be a drive there and it is still busy afterwards it should not matter since it isn't probed for later. The code also honors the MAX_DRIVES variable instead of assuming that there will be two harddrives on the bus. Bart: minor cleanups Signed-off-by: Jonas Stare CC: Andrew Morton , Cc: Linus Torvalds Cc: Alan Cox Cc: Benjamin Herrenschmidt Signed-off-by: Bartlomiej Zolnierkiewicz commit 8ac98ce17cf318f6ceb1eb88053917001f5ca60a Author: Sergei Shtylyov Date: Tue Nov 27 21:35:53 2007 +0100 siimage: remove resetproc() method The intent behind siimage_reset() was probably to hard reset the interface and the SATA PHY but as the code writes to two reserved bits instead, it obviously has been ineffective from the start. So, just remove it. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 89613e667f7539defb053795f18653003179cf7e Author: Sergei Shtylyov Date: Tue Nov 27 21:35:52 2007 +0100 ide: don't set PIO mode on pre-EIDE drives Fix handling of the PIO modes for the pre-EIDE drives that did not support the PIO Flow Control Transfer Mode value (00001 nnn) of the Set Transfer Mode feature by skipping the actual mode programming. Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit a1d85864d30181a71243193ed01d322dc0618dc6 Author: Gabriel Craciunescu Date: Tue Nov 27 21:35:52 2007 +0100 sis5513.c: Add Packard Bell EasyNote K5305 to laptops With newer kernels HDD in my old laptop is limited to UDMA 33. With this patch I get UDMA 100 again. Signed-off-by: Gabriel Craciunescu Signed-off-by: Bartlomiej Zolnierkiewicz commit c37a33035720a0faf1f609dc7c2c07080ed83629 Author: Hirokazu Takata Date: Wed Sep 12 17:51:35 2007 +0900 m32r: Update sys_rt_sigsuspend Update sys_rt_sigsuspend() of arch/m32r/signal.c. This modification is derived from generic one of kernel/signal.c. Signed-off-by: Hirokazu Takata commit 52fda4870e74b43fa5ef5171cc89ac40e5b53ed1 Author: Hirokazu Takata Date: Thu Sep 13 18:31:34 2007 +0900 m32r: Ignore warnings for unused syscalls checksyscalls.sh reports warnings for missing syscalls. But, on m32r, some legacy syscalls were removed elaborately. This patch kills warnings for obsolete syscalls, which are no longer used in the m32r kernel. Signed-off-by: Hirokazu Takata commit 59ce3df3e107f80c5c849f06bb9da149b1ceb349 Author: Hirokazu Takata Date: Wed Sep 12 17:46:53 2007 +0900 m32r: Add missing syscalls Add the following 39 syscalls for m32r: sys_add_key, sys_request_key, sys_keyctl, sys_ioprio_set, sys_ioprio_get, sys_inotify_init, sys_inotify_add_watch, sys_inotify_rm_watch, sys_migrate_pages, sys_openat, sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_fstatat64, sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat, sys_fchmodat, sys_faccessat, sys_pselect6, sys_ppoll, sys_unshare, sys_set_robust_list, sys_get_robust_list, sys_splice, sys_sync_file_range, sys_tee, sys_vmsplice, sys_move_pages, sys_getcpu, sys_epoll_pwait, sys_utimensat, sys_signalfd, sys_timerfd, sys_eventfd, sys_fallocate Signed-off-by: Hirokazu Takata commit 404fb881b82cf0cf6981832f8d31a7484e4dee81 Author: Amit Shah Date: Mon Nov 19 17:57:35 2007 +0200 KVM: SVM: Fix FPU leak while emulating clts The clts code didn't use set_cr0 properly, so our lazy FPU processing wasn't being done by the clts instruction at all. (this isn't called on Intel as the hardware does the decode for us) Signed-off-by: Amit Shah Signed-off-by: Avi Kivity commit 8d379a7c069179a98616c9cac6bb2a06a500de49 Author: Avi Kivity Date: Tue Nov 27 15:33:10 2007 +0200 KVM: SVM: Unload guest fpu on vcpu_put() Not unloading the guest fpu can cause fpu leaks from guest to guest (or host to guest). Signed-off-by: Avi Kivity commit 00b2ef475d4728ca53a2bc788c7978042907e354 Author: Amit Shah Date: Sun Nov 18 22:25:40 2007 +0530 KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std emulator_write_std() is not implemented, and calling write_emulated should work just as well in place of write_std. Fixes emulator failures with the push r/m instruction. Signed-off-by: Amit Shah Signed-off-by: Avi Kivity commit 2a738e20a11b44219aa83073d625ff1a7004e463 Author: Izik Eidus Date: Sun Nov 11 14:46:34 2007 +0200 KVM: x86 emulator: fix the saving of of the eip value this make sure that no matter what is the operand size, all the value of the eip will be saved Signed-off-by: Izik Eidus Signed-off-by: Avi Kivity commit e826ec9ae2baf9980402e85f0bbe1dac53ceb110 Author: Izik Eidus Date: Sun Nov 11 14:40:48 2007 +0200 KVM: x86 emulator: fix JMP_REL Change JMP_REL to call to register_address_increment(): the operands size should not effect the calculation of the eip, instead the ad_bytes should affect it. Signed-off-by: Izik Eidus Signed-off-by: Avi Kivity commit 645a8d94629fd812a220d54876339a1ddafd9bc2 Author: Tejun Heo Date: Tue Nov 27 09:30:39 2007 +0100 scatterlist: add more safeguards Add more safeguards to protect against misinterpreting a chain entry as a normal scatterlist and vice-versa. * Make sure the entry isn't a chain when assigning and reading a normal sg. * Clear offset and length when chaining. Signed-off-by: Tejun Heo Signed-off-by: Jens Axboe commit 7c9f29b128aab5ac95af553e8d8e0e372647f1d5 Author: Jens Axboe Date: Tue Nov 27 09:23:51 2007 +0100 Revert "ll_rw_blk: temporarily enable max_segments tweaking" This was a temporary debugging thing for sg chaining testing, revert it now as it has served its purpose. This reverts commit 563063a808de6b2004d5b8a09ddcb6125481f4b2. Signed-off-by: Jens Axboe commit 05e5b136459b11cd9559370d5756719e08074fe0 Author: Haavard Skinnemoen Date: Fri Nov 23 10:19:00 2007 +0100 mmc: Add missing sg_init_table() call mmc_init_queue only initializes the scatterlists with sg_init_table() when using a bounce buffer. This leads to a BUG() when CONFIG_DEBUG_SG is set. Signed-off-by: Haavard Skinnemoen Signed-off-by: Jens Axboe commit c7674030e5eb83d9ba29318fb9b3ccedf84d583e Author: Jerome Marchand Date: Fri Nov 23 09:17:53 2007 +0100 block: Fix memory leak in alloc_disk_node() Fix a memory leak in alloc_disk_node(). Don't forget to free 'dkstats' when the allocation of 'part' failed. Signed-off-by: Jerome Marchand Signed-off-by: Jens Axboe commit 8c8d7214d1b35726e950db1f73317e28e827f1cd Author: FUJITA Tomonori Date: Wed Nov 21 12:26:31 2007 +0100 alpha: fix sg_page breakage Signed-off-by: FUJITA Tomonori Signed-off-by: Jens Axboe commit 35fc51e7a5056889421270c1fb63d8ec45fbccf4 Author: Aneesh Kumar K.V Date: Wed Nov 21 12:25:41 2007 +0100 blktrace: Make sure BLKTRACETEARDOWN does the full cleanup. if blktrace program segfault it will not be able to call BLKTRACETEARDOWN. Now if we run the blktrace again that would result in a failure to create the block/ debugfs directory.This will result in blk_remove_root() to be called which will set blk_tree_root to NULL. But the debugfs block dir still exist because it contain subdirectory. Now if we try to fix it using BLKTRACETEARDOWN it won't work because blk_tree_root is NULL. Fix the same. Tested as below root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -d /dev/hdc Segmentation fault root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -d /dev/hdc BLKTRACESETUP: No such file or directory Failed to start trace on /dev/hdc root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -k /dev/hdc root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -d /dev/hdc Signed-off-by: Aneesh Kumar K.V Signed-off-by: Jens Axboe commit 35baef2afb6270ff731b4d766f0b163c3912304f Author: Aristeu Rozanski Date: Tue Nov 27 00:47:04 2007 -0500 Input: adds the context menu key (HUT GenDesc 0x84) Signed-off-by: Aristeu Rozanski Signed-off-by: Dmitry Torokhov commit c23f1f9c40647971e673b5454c22c76b9ae9c5f5 Author: Aristeu Rozanski Date: Tue Nov 27 00:46:57 2007 -0500 Input: add definitions for frame forward and frame back keys Signed-off-by: Aristeu Rozanski Signed-off-by: Dmitry Torokhov commit 6957c8280080d985518133eab3a57d715a57be78 Author: Mike Frysinger Date: Tue Nov 27 00:46:42 2007 -0500 Input: bf54x-keys - keypad does not exist on BF544 parts Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Dmitry Torokhov commit cdb32706f6948238ed6d1d85473c64c27366e9e9 Author: Mikulas Patocka Date: Thu Nov 22 21:26:01 2007 +0100 plip: fix parport_register_device name parameter Plip passes a string "name" that is allocated on stack to parport_register_device. parport_register_device holds the pointer to "name" and when the registering function exits, it points nowhere. On some machine, this bug causes bad names to appear in /proc, such as /proc/sys/dev/parport/parport0/devices/T^/�X^/�, on others, the plip proc node is completely missing. The patch also fixes documentation to note this requirement. Signed-off-by: Mikulas Patocka Signed-off-by: Linus Torvalds commit f6ce5cca74b8681fdf1d7307edc66a7213b43f6f Author: Mikulas Patocka Date: Thu Nov 22 21:19:39 2007 +0100 plip: use netif_rx_ni() for packet receive netif_rx is meant to be called from interrupts because it doesn't wake up ksoftirqd. For calling from outside interrupts, netif_rx_ni exists. This fixes plip to use netif_rx_ni. It fixes the infamous error "NOHZ: local_softirq_panding 08" that happens on some machines with NOHZ and plip --- it is caused by the fact that softirq is pending and ksoftirqd is sleeping. Signed-off-by: Mikulas Patocka Signed-off-by: Linus Torvalds commit 3050d45caded2d9fb8170547d08c389122c6c5d5 Author: Andreas Herrmann Date: Mon Nov 19 09:28:22 2007 +0100 radeonfb: add chip definition for RV370 5b63 ... which I've found on a Sapphire X550 (Silent). Acked-by: Benjamin Herrenschmidt Signed-off-by: Andreas Herrmann Signed-off-by: Linus Torvalds commit 9bb9f2220e6d904f60f9f72209b5313d0808f0c2 Author: Finn Thain Date: Sun Nov 18 11:10:05 2007 +0100 mac68k: mailing list addresss The mail service for the mac.linux-m68k.org domain is defunct. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 2f9b0b5e46f0381fd41af8cb9ed4daffee59d4f3 Author: Geert Uytterhoeven Date: Sun Nov 18 11:10:04 2007 +0100 Amiga zorro bus: Add missing zorro_device_remove() Amiga zorro bus: Add missing zorro_device_remove(). Without this ifconfig and /proc/net/dev oops after unloading a Zorro network device driver module. Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 9e893bb8530d9c09b1eb8da8734eebf4182bb8b7 Author: Adrian Bunk Date: Sun Nov 18 11:10:03 2007 +0100 m68k: export atari_keyb_init m68k: export atari_keyb_init This patch fixes the following build error: .. MODPOST 25 modules ERROR: "atari_keyb_init" [drivers/input/mouse/atarimouse.ko] undefined! ERROR: "atari_keyb_init" [drivers/input/keyboard/atakbd.ko] undefined! make[2]: *** [__modpost] Error 1 Signed-off-by: Adrian Bunk Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 5dba4797115c8fa05c1a4d12927a6ae0b33ffc41 Author: Patrick McHardy Date: Tue Nov 27 11:10:07 2007 +0800 [XFRM]: Fix leak of expired xfrm_states The xfrm_timer calls __xfrm_state_delete, which drops the final reference manually without triggering destruction of the state. Change it to use xfrm_state_put to add the state to the gc list when we're dropping the last reference. The timer function may still continue to use the state safely since the final destruction does a del_timer_sync(). Signed-off-by: Patrick McHardy Signed-off-by: Herbert Xu commit 0f13864e5b24d9cbe18d125d41bfa4b726a82e40 Author: Karsten Keil Date: Thu Nov 22 12:43:13 2007 +0100 isdn: avoid copying overly-long strings Addresses http://bugzilla.kernel.org/show_bug.cgi?id=9416 Signed-off-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a8037ac9dbe4eb20ce50aa20244faf77444f4a3 Author: chas williams Date: Tue Nov 27 11:03:16 2007 +0800 [ATM]: [he] initialize lock and tasklet earlier if you are lucky (unlucky?) enough to have shared interrupts, the interrupt handler can be called before the tasklet and lock are ready for use. Signed-off-by: chas williams Signed-off-by: Herbert Xu commit 8c6531f7a99f29ba8817ffb12cc9ecf190049bd6 Author: Andreas Herrmann Date: Mon Nov 19 23:58:57 2007 +0100 x86: correctly set UTS_MACHINE for "make ARCH=x86" For a kernel built with "make ARCH=x86" the following system information is displayed when running the new kernel $ uname -m x86 On some i386 systems (e.g. K7) we even have the following information $ uname -m x66 This is weird. The usual information for "uname -m" should be "x86_64" on 64-bit and "i386" or "i686" on 32-bit. This patch fixes the issue by setting UTS_MACHINE to "i386" for 32-bit kernel builds and to "x86_64" for 64-bit kernel builds. I.e., "x86" won't be used for UTS_MACHINE anymore. Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Acked-by: Sam Ravnborg Signed-off-by: Andreas Herrmann Signed-off-by: Linus Torvalds commit 02fe494619d525ea803ab1f4f671186dc8a52f7a Author: Chuck Lever Date: Mon Nov 12 12:17:03 2007 -0500 NFS: Clean up new multi-segment direct I/O changes Simplify calling sequence of nfs_direct_{read,write}_schedule(), and rename them to reflect their new role. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit b9148c6b80d802dbc2a7530b29915a80432e50c7 Author: Chuck Lever Date: Mon Nov 12 12:16:58 2007 -0500 NFS: Ensure we return zero if applications attempt to write zero bytes A zero byte count direct write request should be a successful no-op, not an error. Signed-off-by: Chuck Lever Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit c216fd708e1a97431925ecffd6d1896cff61df0a Author: Chuck Lever Date: Mon Nov 12 12:16:52 2007 -0500 NFS: Support multiple segment iovecs in the NFS direct I/O path Allow applications to perform asynchronous scatter-gather direct I/O to NFS files. Signed-off-by: Chuck Lever Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 19f737879cc623c3aa73e655465faa3bff121768 Author: Chuck Lever Date: Mon Nov 12 12:16:47 2007 -0500 NFS: Introduce iovec I/O helpers to fs/nfs/direct.c Add helpers that iterate over multi-segment iovecs. These will be used to support multi-segment scatter/gather direct I/O in a later patch. Signed-off-by: Chuck Lever Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 014313a9d66272ed37b9ebd64c3f30b596a4c8e1 Author: Joe Perches Date: Mon Nov 19 17:53:43 2007 -0800 SUNRPC: Add missing "space" to net/sunrpc/auth_gss.c Signed-off-by: Joe Perches Signed-off-by: Trond Myklebust commit 483066d62ec583fb6379377a9bfa8d5645b91c75 Author: Adrian Bunk Date: Wed Oct 24 18:24:02 2007 +0200 SUNRPC: make sunrpc/xprtsock.c:xs_setup_{udp,tcp}() static xs_setup_{udp,tcp}() can now become static. Signed-off-by: Adrian Bunk Signed-off-by: Trond Myklebust commit 4c30d56edcaaa0446370189e8ab5c5393dc20ca3 Author: Adrian Bunk Date: Wed Nov 21 15:04:31 2007 -0800 NFS: fs/nfs/dir.c should #include "internal.h" Every file should include the headers containing the prototypes for its global functions (in this case nfs_access_cache_shrinker()). Signed-off-by: Adrian Bunk Cc: Trond Myklebust Cc: "J. Bruce Fields" Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit 5334eb13d455dd26b7064980b118e3c957929701 Author: Adrian Bunk Date: Wed Nov 21 15:04:31 2007 -0800 NFS: make nfs_wb_page_priority() static nfs_wb_page_priority() can now become static. Signed-off-by: Adrian Bunk Cc: Trond Myklebust Cc: "J. Bruce Fields" Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit f16c960332b125491178fc2da7ea7893b0d65d05 Author: Russell King Date: Fri Nov 16 22:13:24 2007 +0000 NFS: mount failure causes bad page state While testing a kernel based upon ecd744eec3aa8bbc949ec04ed3fbf7ecb2958a0e (with wrong boot arguments), I got the following bad page state entry while NFS was trying to mount it's rootfs: IP-Config: Complete: device=eth0, addr=192.168.1.101, mask=255.255.255.0, gw=255.255.255.255, host=192.168.1.101, domain=, nis-domain=(none), bootserver=192.168.1.100, rootserver=192.168.1.100, rootpath= Looking up port of RPC 100003/2 on 192.168.1.100 rpcbind: server 192.168.1.100 not responding, timed out Root-NFS: Unable to get nfsd port number from server, using default Looking up port of RPC 100005/1 on 192.168.1.100 rpcbind: server 192.168.1.100 not responding, timed out Root-NFS: Unable to get mountd port number from server, using default mount: server 192.168.1.100 not responding, timed out Root-NFS: Server returned error -5 while mounting /nfs/rootfs/ VFS: Unable to mount root fs via NFS, trying floppy. Bad page state in process 'swapper' page:c02b1260 flags:0x00000400 mapping:00000000 mapcount:0 count:0 Trying to fix it up, but a reboot is needed Backtrace: [] (dump_stack+0x0/0x14) from [] (bad_page+0x70/0xac) [] (bad_page+0x0/0xac) from [] (free_hot_cold_page+0x80/0x178) [] (free_hot_cold_page+0x0/0x178) from [] (free_hot_page+0x14/0x18) [] (free_hot_page+0x0/0x18) from [] (put_page+0xf8/0x154) [] (put_page+0x0/0x154) from [] (kfree+0xc8/0xd0) [] (kfree+0x0/0xd0) from [] (nfs_get_sb+0x230/0x710) [] (nfs_get_sb+0x0/0x710) from [] (vfs_kern_mount+0x58/0xac)[] (vfs_kern_mount+0x0/0xac) from [] (do_kern_mount+0x38/0xf4) [] (do_kern_mount+0x0/0xf4) from [] (do_mount+0x1e8/0x614) ... This seems to be caused by use of an uninitialised structure due to NULL options being passed to nfs_validate_mount_data(). Ensure that the parsed mount data is always initialised. Signed-off-by: Russell King (Trond: added fix for the same bug in nfs4_validate_mount_data()). Signed-off-by: Trond Myklebust commit cfcb43ff7ce28f347a39e1a7519e01850b588718 Author: James Lentini Date: Mon Nov 26 12:42:44 2007 -0500 SUNRPC: remove NFS/RDMA client's binary sysctls Support for binary sysctls is being deprecated in 2.6.24. Since there are no applications using the NFS/RDMA client's binary sysctls, it makes sense to remove them. The patch below does this while leaving the /proc/sys interface unchanged. Please consider this for 2.6.24. Signed-off-by: James Lentini Signed-off-by: Trond Myklebust commit f7b9329e556a8bdb9e07292cddbbe484c7a2b8c5 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: bump version of kernel/sched_debug.c bump version of kernel/sched_debug.c and remove CFS version information from it. Signed-off-by: Ingo Molnar commit 722aab0c3bbd7648d66790515c14d95d10a15bf3 Author: Zou Nan hai Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix minimum granularity tunings increase the default minimum granularity some more - this gives us more performance in aim7 benchmarks. also correct some comments: we scale with ilog(ncpus) + 1. Signed-off-by: Zou Nan hai Signed-off-by: Ingo Molnar commit 58e1010da3c15e7bdf426b0a3d4b13dba1b7d055 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix RLIMIT_CPU comment Devan Lippman noticed that the RLIMIT_CPU comment in resource.h is incorrect: the field is in seconds, not msecs. We used msecs in earlier versions of the patch but that got changed. Found-by: Devan Lippman Signed-off-by: Ingo Molnar commit bcbe4a076609e15ea84cbebd9cd8f317ed70ce92 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix kernel/acct.c comment fix kernel/acct.c comment. noticed by Lin Tan. Comment suggested by Olaf Kirch. also see: http://bugzilla.kernel.org/show_bug.cgi?id=8220 Reported-by: tammy000@gmail.com Signed-off-by: Ingo Molnar commit 08e4570a4a393bcc241f78dfc444cb0b07995fc0 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix prev_stime calculation Srivatsa Vaddagiri noticed occasionally incorrect CPU usage values in top and tracked it down to stime going below 0 in task_stime(). Negative values are possible there due to the sampled nature of stime/utime. Fix suggested by Balbir Singh. Signed-off-by: Ingo Molnar Tested-by: Srivatsa Vaddagiri Reviewed-by: Balbir Singh commit 5e8869bb699d50be5c0733edfc71cfcd5b43e10a Author: Pavel Emelyanov Date: Mon Nov 26 21:21:49 2007 +0100 sched: don't forget to unlock uids_mutex on error paths The commit commit 5cb350baf580017da38199625b7365b1763d7180 Author: Dhaval Giani Date: Mon Oct 15 17:00:14 2007 +0200 sched: group scheduling, sysfs tunables introduced the uids_mutex and the helpers to lock/unlock it. Unfortunately, the error paths of alloc_uid() were not patched to unlock it. Signed-off-by: Pavel Emelyanov Acked-by: Dhaval Giani Signed-off-by: Ingo Molnar commit d28a170d5b67248d690df68d46491ee2cf6f4f6d Author: Nicolas Pitre Date: Fri Nov 23 22:38:54 2007 +0100 [ARM] 4665/1: fix __und_usr wrt accessing the undefined insn in user space The ldrt fixup code expects r9 to be set. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit b49c0f24cf6744a3f4fd09289fe7cade349dead5 Author: Nicolas Pitre Date: Tue Nov 20 17:20:29 2007 +0100 [ARM] 4659/1: remove possibilities for spurious false negative with __kuser_cmpxchg The ARM __kuser_cmpxchg routine is meant to implement an atomic cmpxchg in user space. It however can produce spurious false negative if a processor exception occurs in the middle of the operation. Normally this is not a problem since cmpxchg is typically called in a loop until it succeeds to implement an atomic increment for example. Some use cases which don't involve a loop require that the operation be 100% reliable though. This patch changes the implementation so to reattempt the operation after an exception has occurred in the critical section rather than abort it. Here's a simple program to test the fix (don't use CONFIG_NO_HZ in your kernel as this depends on a sufficiently high interrupt rate): #include typedef int (__kernel_cmpxchg_t)(int oldval, int newval, int *ptr); #define __kernel_cmpxchg (*(__kernel_cmpxchg_t *)0xffff0fc0) int main() { int i, x = 0; for (i = 0; i < 100000000; i++) { int v = x; if (__kernel_cmpxchg(v, v+1, &x)) printf("failed at %d: %d vs %d\n", i, v, x); } printf("done with %d vs %d\n", i, x); return 0; } Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit aeb747afb3fb1f42d9c82615a103882f7f97f291 Author: Nicolas Pitre Date: Thu Nov 22 17:21:27 2007 +0100 [ARM] 4661/1: fix do_undefinstr wrt the enabling of IRQs The lock is acquired with spin_lock_irqsave() and released in the not-found case with spin_unlock_irqrestore(). Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit dc49cb21801db1f89d74b01a0f38f200aebb3e43 Author: Li Zefan Date: Wed Nov 21 14:51:50 2007 -0800 [ARM] uengine: fix memset size error The size passing to memset is wrong. And here we can replace kmalloc with kzalloc. Signed-off-by Li Zefan Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 1c016b2c728b2ecbdd4088bd42e556fd29065cc5 Author: Pavel Pisa Date: Sun Nov 18 22:54:24 2007 +0100 [ARM] 4648/1: i.MX/MX1 ensure more complete AITC initialization The AITC code did not allow to start kernel, if bootloader manipulates with interrupt level mask. The change ensures, that NIMASK is initialized into correct state and that interrupts enable registers are cleared. Signed-off-by: Pavel Pisa Signed-off-by: Russell King commit f44d9efd3510776216938fef84adc99cc0e12412 Author: Ingo Molnar Date: Mon Nov 26 20:42:20 2007 +0100 x86: fix APIC related bootup crash on Athlon XP CPUs warmbloodedcreature@gmail.com reported that an APIC-enabled Asus a7v8x-x with an Athlon XP reboots early in the bootup: http://bugzilla.kernel.org/show_bug.cgi?id=8723 after a long marathon of spontaneous-reboot debugging, it turns out to be caused by sync_Arb_ids(). AMD CPUs never really needed this sequence anyway, so just return early if we meet an AMD CPU. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 52bfb36050c8529d9031d2c2513b281a360922ec Author: John Stultz Date: Mon Nov 26 20:42:19 2007 +0100 time: add ADJ_OFFSET_SS_READ Michael Kerrisk reported that a long standing bug in the adjtimex() system call causes glibc's adjtime(3) function to deliver the wrong results if 'delta' is NULL. add the ADJ_OFFSET_SS_READ API detail, which will be used by glibc to fix this API compatibility bug. Also see: http://bugzilla.kernel.org/show_bug.cgi?id=6761 [ mingo@elte.hu: added patch description and made it backwards compatible ] NOTE: the new flag is defined 0xa001 so that it returns -EINVAL on older kernels - this way glibc can use it safely. Suggested by Ulrich Drepper. Acked-by: Ulrich Drepper Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 8232fd625217dc641ed05dd238a8bb5c82828082 Author: Theodore Ts'o Date: Mon Nov 26 20:42:19 2007 +0100 x86: export the symbol empty_zero_page on the 32-bit x86 architecture The latest KVM driver wants to use the empty_zero_page symbol, and it's not exported in 32-bit x86 (although it is exported by x86_64, s390, and uml architectures). Signed-off-by: "Theodore Ts'o" Cc: tglx@linutronix.de Cc: linux-kernel@vger.kernel.com Cc: kvm-devel@lists.sourceforge.net Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 8645419cdb588a743060175c1efbe23f6e44b29b Author: Andrew Morton Date: Mon Nov 26 20:42:19 2007 +0100 x86: fix kprobes_64.c inlining borkage fix: arch/x86/kernel/kprobes_64.c: In function 'set_current_kprobe': arch/x86/kernel/kprobes_64.c:152: sorry, unimplemented: inlining failed in call to 'is_IF_modifier': recursive inlining arch/x86/kernel/kprobes_64.c:166: sorry, unimplemented: called from here Cc: Thomas Gleixner Signed-off-by: Andrew Morton Cc: mingo@elte.hu Cc: akpm@linux-foundation.org Cc: tglx@linutronix.de Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit c82bc5ad5411ccd61d26355088e2f5c9e95ef54b Author: Michal Schmidt Date: Mon Nov 26 20:42:19 2007 +0100 pci: use pci=bfsort for HP DL385 G2, DL585 G2 HP ProLiant systems DL385 G2 and DL585 G2 need pci=bfsort to enumerate PCI devices in the expected order. Matt sayeth: biosdevname is a userspace app I wrote to help solve this so we don't need to patch the kernel for future systems. It's not integrated into any distributions properly yet, but is included in openSUSE 10.3 and Fedora 8 for people who want to download and install it there. It acts as a udev helper. For the time being, patching the kernel is necessary. I really hope biosdevname eliminates that need in future distributions. http://linux.dell.com/biosdevname/ Signed-off-by: Michal Schmidt Acked-by: Andy Gospodarek Cc: mingo@elte.hu Cc: andy@greyhouse.net Cc: john.cagle@hp.com Cc: Matt Domsch Cc: Greg KH Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 43517854da512ae7daf15e7044e040edb15b8b23 Author: Andreas Herrmann Date: Mon Nov 26 20:42:19 2007 +0100 x86: correctly set UTS_MACHINE for "make ARCH=x86" x86: correctly set UTS_MACHINE for "make ARCH=x86" For a kernel built with "make ARCH=x86" the following system information is displayed when running the new kernel $ uname -m x86 On some i386 systems (e.g. K7) we even have the following information $ uname -m x66 This is weird. The usual information for "uname -m" should be "x86_64" on 64-bit and "i386" or "i686" on 32-bit. This patch fixes the issue by setting UTS_MACHINE to "i386" for 32-bit kernel builds and to "x86_64" for 64-bit kernel builds. I.e., "x86" won't be used for UTS_MACHINE anymore. Acked-by: Sam Ravnborg Signed-off-by: Andreas Herrmann Cc: "H. Peter Anvin" Cc: Roman Zippel Cc: Andrew Morton Cc: Sam Ravnborg Cc: Linus Torvalds Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 000f4a9e718a665fd706500199a3f0c11fea30c1 Author: Peter Zijlstra Date: Mon Nov 26 20:42:19 2007 +0100 lockdep: annotate do_debug() trap handler Ensure the hardirq state is consistent before using locks. Use the rare trace_hardirqs_fixup() because the trap can happen in any context. resolves this rare lockdep warning: WARNING: at kernel/lockdep.c:2658 check_flags() [] check_flags+0x90/0x140 [] lock_release+0x4b/0x1d0 [] notifier_call_chain+0x2a/0x47 [] __atomic_notifier_call_chain+0x64/0x6d [] __atomic_notifier_call_chain+0x0/0x6d [] atomic_notifier_call_chain+0x17/0x1a [] notify_die+0x30/0x34 [] do_debug+0x3e/0xd4 [] debug_stack_correct+0x27/0x2c [] tcp_rcv_established+0x1/0x620 [] tcp_v4_do_rcv+0x2b/0x313 [] tcp_v4_rcv+0x467/0x85d [] _spin_lock_nested+0x27/0x32 [] tcp_v4_rcv+0x7fe/0x85d [] tcp_v4_rcv+0x3bf/0x85d [] ip_local_deliver_finish+0x11b/0x1b0 [] ip_local_deliver_finish+0x2e/0x1b0 [] ip_rcv_finish+0x27b/0x29a [] netif_receive_skb+0xfb/0x2a6 [] ip_rcv+0x0/0x1fb [] netif_receive_skb+0x26a/0x2a6 [] netif_receive_skb+0xfb/0x2a6 [] process_backlog+0x7f/0xc6 [] net_rx_action+0xb9/0x1ac [] net_rx_action+0x47/0x1ac [] trace_hardirqs_on+0x118/0x16b [] __do_softirq+0x49/0xa2 [] do_softirq+0x60/0xdd [] _spin_unlock_irq+0x20/0x2c [] restore_nocheck+0x12/0x15 [] handle_fasteoi_irq+0x0/0x9b [] do_IRQ+0x94/0xaa [] _spin_unlock_irq+0x20/0x2c [] common_interrupt+0x2e/0x34 [] native_safe_halt+0x2/0x3 [] default_idle+0x44/0x65 [] cpu_idle+0x42/0x50 [] start_kernel+0x26b/0x270 [] unknown_bootoption+0x0/0x196 ======================= irq event stamp: 559190 hardirqs last enabled at (559190): [] kprobe_exceptions_notify+0x299/0x305 hardirqs last disabled at (559189): [] do_int3+0x1d/0x95 softirqs last enabled at (559172): [] do_softirq+0x60/0xdd softirqs last disabled at (559181): [] do_softirq+0x60/0xdd Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit bc84cf17b50ca5b49bec0a5fef63c58c1526d46b Author: Ingo Molnar Date: Mon Nov 26 20:42:19 2007 +0100 x86: turn off iommu merge by default revert this commit for now: commit 948062683004d13ca21c8c05ac052d387978a449 Author: Andi Kleen Date: Fri Oct 19 20:35:03 2007 +0200 x86: enable iommu_merge by default it's causing regressions: http://bugzilla.kernel.org/show_bug.cgi?id=9412 Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit aafab10d3f6b68150ec9fe75b1462764fd45b728 Author: Thomas Gleixner Date: Mon Nov 26 20:42:19 2007 +0100 x86: fix ACPI compile for LOCAL_APIC=n ACPI processor idle code references local_apic_timer_c2_ok, which is not available when LOCAL_APIC is disabled. Define local_apic_timer_c2_ok as a constant, when LOCAL_APIC=n Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 57c351de715458f8fbee1e92e8cc65ddc00da04c Author: Arjan van de Ven Date: Mon Nov 26 20:42:19 2007 +0100 x86: printk kernel version in WARN_ON and other dump_stack users today, all oopses contain a version number of the kernel, which is nice because the people who actually do bother to read the oops get this vital bit of information always without having to ask the reporter in another round trip. However, WARN_ON() and many other dump_stack() users right now lack this information; the patch below adds this. This information is essential for getting people to use their time effectively when looking at these things; in addition, it's essential for tools that try to collect statistics about defects. Please consider, since its so simple and important for long term kernel quality processes. The code is identical between 32/64 bit; a lot of this code should be unified over time, the patch keeps the identical-ness intact. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit c1c306344669ca40255e36192b101060ffbb1271 Author: Alexey Starikovskiy Date: Mon Nov 26 20:42:19 2007 +0100 ACPI: Set max_cstate to 1 for early Opterons. AMD Opteron processors before CG revision don't like C-states > 1. This solves the long standing bugzilla #5303 and probably some more on affected machines: http://bugzilla.kernel.org/show_bug.cgi?id=5303 [ tglx@linutronix.de: reworked the patch so it does not wreck ia64 ] Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit d4d25deca49ec2527a634557bf5a6cf449f85deb Author: Maciej W. Rozycki Date: Mon Nov 26 20:42:19 2007 +0100 x86: fix NMI watchdog & 'stopped time' problem More than 3 years ago Niclas Gustafsson reported a 'stopped time' problem: > Watching the /proc/interrupts with 10s apart after the "stop". > > [root@s151 root]# more /proc/interrupts > CPU0 > 0: 66413955 local-APIC-edge timer [...] > LOC: 67355837 > ERR: 0 > MIS: 0 > [root@s151 root]# more /proc/interrupts > CPU0 > 0: 66413955 local-APIC-edge timer [...] > LOC: 67379568 > ERR: 0 > MIS: 0 This may be because buggy SMM firmware messes with the 8259A (configured for a transparent mode -- yes that rare "local-APIC-edge" mode is tricky ;-) ) insanely. this should resolve: http://bugzilla.kernel.org/show_bug.cgi?id=2544 http://bugzilla.kernel.org/show_bug.cgi?id=6296 Patch-dusted-off-by: Ingo Molnar Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 302edfd04ee320e7beadf3816145cd2d979e2595 Author: Andrew Victor Date: Tue Nov 20 09:12:41 2007 +0100 [ARM] 4611/2: AT91: Fix GPIO buttons pins on SAM9261-EK. The incorrect GPIO pins are being initialized for the buttons on the Atmel AT91SAM9261-EK board. This buggy configuration turns LCD screen blue... Signed-off-by: Nicolas Ferre Signed-off-by: Andrew Victor Signed-off-by: Russell King commit f230d3f53d72d05bcb5666ab7e2eccd49c8b3a15 Author: Andrew Victor Date: Mon Nov 19 13:47:20 2007 +0100 [ARM] 4650/1: AT91: New-style init of I2C, support for i2c-gpio The AT91 I2C driver is currently marked as "broken" due to hardware issues. This patch enables AT91-based platforms to also use the bitbanged GPIO for I2C. This updates platform setup logic (setting up an i2c-gpio device using the same pins as the i2c-at91 device, unless only the BROKEN driver is enabled). Also make use of the new-style initialization of I2C devices using i2c_register_board_info(). Signed-off-by: David Brownell Signed-off-by: Andrew Victor Signed-off-by: Russell King commit a95c729b7484d2bbb9ab6beef4865641e73deb99 Author: Andrew Victor Date: Mon Nov 19 11:52:09 2007 +0100 [ARM] 4604/2: AT91: Master clock divistor on SAM9 The calculation for the Master clock divisor (MDIV) is different on the SAM9 processors than on the AT91RM9200. Orignal patch from Sascha Erlacher. Also use the defined AT91_PMC_PRES instead of hard-coded bitmasks. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit b1e3afa001db8845eb60981f6ab925503ed94e53 Author: Joe Perches Date: Mon Nov 19 17:47:54 2007 -0800 [MIPS] vpe: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: Ralf Baechle commit 8142294dda12d5fd7615eed7986ad0d276793c03 Author: Richard Knutsson Date: Sat Nov 24 22:22:19 2007 +0100 [MIPS] Compliment va_start() with va_end(). Signed-off-by: Richard Knutsson Signed-off-by: Ralf Baechle commit 5b3af8f19fd3c61369da73476737fea058f1fccd Author: Thomas Bogendoerfer Date: Fri Nov 23 20:40:15 2007 +0100 [MIPS] IP22: Fix broken eeprom access by using __raw_readl/__raw_writel Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit 68de4803726224a7cfe09c8052f0ce5e532c6847 Author: Thomas Bogendoerfer Date: Fri Nov 23 20:34:16 2007 +0100 [MIPS] IP22: Fix broken EISA interrupt setup by switching to generic i8259 Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit cce335ae47e231398269fb05fa48e0e9cbf289e0 Author: Ralf Baechle Date: Sat Nov 3 02:05:43 2007 +0000 [MIPS] 64-bit Sibyte kernels need DMA32. Sibyte SOCs only have 32-bit PCI. Due to the sparse use of the address space only the first 1GB of memory is mapped at physical addresses below 1GB. If a system has more than 1GB of memory 32-bit DMA will not be able to reach all of it. For now this patch is good enough to keep Sibyte users happy but it seems eventually something like swiotlb will be needed for Sibyte. Signed-off-by: Ralf Baechle commit 940f6b48a130e0a33cb8bd397dd0e277166470ad Author: Ralf Baechle Date: Sat Nov 24 22:33:28 2007 +0000 [MIPS] Only build r4k clocksource for systems that work ok with it. In particular as-is it's not suited for multicore and mutiprocessors systems where there is on guarantee that the counter are synchronized or running from the same clock at all. This broke Sibyte and probably others since the "[MIPS] Handle R4000/R4400 mfc0 from count register." commit. Signed-off-by: Ralf Baechle commit 5aa85c9fc49a6ce44dc10a42e2011bbde9dc445a Author: Ralf Baechle Date: Wed Nov 21 16:39:44 2007 +0000 [MIPS] Handle R4000/R4400 mfc0 from count register. The R4000 and R4400 have an errata where if the cp0 count register is read in the exact moment when it matches the compare register no interrupt will be generated. This bug may be triggered if the cp0 count register is being used as clocksource and the compare interrupt as clockevent. So a simple workaround is to avoid using the compare for both facilities on the affected CPUs. This is different from the workaround suggested in the old errata documents; at some opportunity probably the official version should be implemented and tested. Another thing to find out is which processor versions exactly are affected. I only have errata documents upto R4400 V3.0 available so for the moment the code treats all R4000 and R4400 as broken. This is potencially a problem for some machines that have no other decent clocksource available; this workaround will cause them to fall back to another clocksource, worst case the "jiffies" source. commit 0f67e90e1caea4a0a14d2c60102547bce29f7f08 Author: Ralf Baechle Date: Tue Nov 20 10:44:18 2007 +0000 [MIPS] Fix possible hang in LL/SC futex loops. The LL / SC loops in __futex_atomic_op() have the usual fixups necessary for memory acccesses to userspace from kernel space installed: __asm__ __volatile__( " .set push \n" " .set noat \n" " .set mips3 \n" "1: ll %1, %4 # __futex_atomic_op \n" " .set mips0 \n" " " insn " \n" " .set mips3 \n" "2: sc $1, %2 \n" " beqz $1, 1b \n" __WEAK_LLSC_MB "3: \n" " .set pop \n" " .set mips0 \n" " .section .fixup,\"ax\" \n" "4: li %0, %6 \n" " j 2b \n" <----- " .previous \n" " .section __ex_table,\"a\" \n" " "__UA_ADDR "\t1b, 4b \n" " "__UA_ADDR "\t2b, 4b \n" " .previous \n" : "=r" (ret), "=&r" (oldval), "=R" (*uaddr) : "0" (0), "R" (*uaddr), "Jr" (oparg), "i" (-EFAULT) : "memory"); The branch at the end of the fixup code, it goes back to the SC instruction, no matter if the fault was first taken by the LL or SC instruction resulting in an endless loop which will only terminate if the address become valid again due to another thread setting up an accessible mapping and the CPU happens to execute the SC instruction successfully which due to the preceeding ERET instruction of the fault handler would only happen if UNPREDICTABLE instruction behaviour of the SC instruction without a preceeding LL happens to favor that outcome. But normally processes are nice, pass valid arguments and we were just getting away with this. Thanks to Kaz Kylheku for providing the original report and a test case. Signed-off-by: Ralf Baechle commit 07500b0d855b7f3f47ca263b21b6397d743d45d2 Author: Ralf Baechle Date: Tue Oct 30 17:25:26 2007 +0000 [MIPS] Fix context DSP context / TLS pointer switching bug for new threads. A new born thread starts execution not in schedule but rather in ret_from_fork which results in it bypassing the part of the code to load a new context written in C which are the DSP context and the userlocal register which Linux uses for the TLS pointer. Frequently we were just getting away with this bug for a number of reasons: o Real world application scenarios are very unlikely to use clone or fork in blocks of DSP code. o Linux by default runs the child process right after the fork, so the child by luck will find all the right context in the DSP and userlocal registers. o So far the rdhwr instruction was emulated on all hardware so userlocal wasn't getting referenced at all and the emulation wasn't suffering from the issue since it gets it's value straight from the thread's thread_info. Fixed by moving the code to load the context from switch_to() to finish_arch_switch which will be called by newborn and old threads. Signed-off-by: Ralf Baechle commit 98ce472181e760a552314850c238b14bbf3f04ec Author: Ralf Baechle Date: Tue Oct 30 15:43:44 2007 +0000 [MIPS] IP32: More interrupt renumbering fixes. Signed-off-by: Ralf Baechle commit 526a6770692477ff258621b1b8838cce9304f8e4 Author: Ralf Baechle Date: Tue Oct 30 15:39:18 2007 +0000 [MIPS] time: MIPSsim's plat_time_init doesn't need to be irq safe. It's running early during the bootup process so interrupts are still off. Signed-off-by: Ralf Baechle commit aea6863944efdf42b7de96e71545e0ce4c317a1f Author: Ralf Baechle Date: Tue Oct 30 02:21:08 2007 +0000 [MIPS] time: Fix negated condition in cevt-r4k driver. Signed-off-by: Ralf Baechle commit cfb6f26035b17d5d280ce4a6ceb041438643ba63 Author: Ralf Baechle Date: Thu Nov 15 23:42:11 2007 +0000 [MIPS] Fix pcspeaker build. Signed-off-by: Ralf Baechle commit e190222d04cb1119c62876ac87cf9b9403ba3bd5 Author: Tejun Heo Date: Mon Nov 26 20:58:02 2007 +0900 libata: bump transfer chunk size if it's odd None of the drives I have follows what the standard says about transfer chunk size. Of the four SATA and six PATA ATAPI devices tested, four ignore transfer chunk size completely and the ones which honor it don't behave according to the spec when it's odd. According to the spec, transfer chunk size can be odd if the amount of data to transfer equals or is smaller than the chunk size and the device can indicate the same odd number and transfer the whole thing at one go with a pad byte appended. However, in reality, none of the drives I have does that. They all indicate and transfer even number of bytes one byte shorter than the chunk size first; then indicate and transfer two bytes, which is clearly out of spec. In addition to unnecessary second PIO data phase, this also creates a weird problem when combined with SATA controllers which perform PIO via DMA. Some of these controllers use actualy number of bytes received to update DMA pointer so chunks which are sized 4n + 2 makes DMA pointer off by two bytes. This causes data corruption and buffer overruns. This patch rounds nbytes up to the nearest even number such that ATAPI devices don't split data transfer for the last odd byte. This shouldn't confuse controllers which depend on transfer chunk size as devices will report the rounded-up number, actually transfer that much and padding buffer is there to receive them. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit dc86f6d4183c79a08fa01c08dd2191895c0c7eb0 Author: sonic zhang Date: Mon Nov 26 17:50:56 2007 +0800 libata: Return proper ATA INT status in pata_bf54x driver INT status can be OR. Signed-off-by: Sonic Zhang Signed-off-by: Jeff Garzik commit 3660019e5f96fd9a8b7d4214a96523c0bf7b676d Author: Adrian Bunk Date: Mon Nov 26 23:17:53 2007 +0800 [IPV4]: Remove bogus ifdef mess in arp_process The #ifdef's in arp_process() were not only a mess, they were also wrong in the CONFIG_NET_ETHERNET=n and (CONFIG_NETDEV_1000=y or CONFIG_NETDEV_10000=y) cases. Since they are not required this patch removes them. Also removed are some #ifdef's around #include's that caused compile errors after this change. Signed-off-by: Adrian Bunk Signed-off-by: Herbert Xu commit 2d4baff8da06f424a6fca10e26434c4926a7c3df Author: Herbert Xu Date: Mon Nov 26 23:11:19 2007 +0800 [SKBUFF]: Free old skb properly in skb_morph The skb_morph function only freed the data part of the dst skb, but leaked the auxiliary data such as the netfilter fields. This patch fixes this by moving the relevant parts from __kfree_skb to skb_release_all and calling it in skb_morph. It also makes kfree_skbmem static since it's no longer called anywhere else and it now no longer does skb_release_data. Thanks to Yasuyuki KOZAKAI for finding this problem and posting a patch for it. Signed-off-by: Herbert Xu commit fa7f1518e8a107e1feab0357b18c745b9a6927c5 Author: Philipp Zabel Date: Thu Nov 22 17:52:47 2007 +0100 [ARM] 4662/1: Fix PXA serial driver compilation if SERIAL_PXA_CONSOLE is disabled Signed-off-by: Philipp Zabel Signed-off-by: Russell King commit 1f809226b9f4d3a89e42212fed7b482e8b30f77c Author: Roel Kluin <12o3l@tiscali.nl> Date: Wed Nov 21 14:51:47 2007 -0800 [ARM] PXA ssp: unlock when ssp tries to close an invalid port Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 52b2bd7f97e2677f8d6f5cef675f86bba732e860 Author: eric miao Date: Tue Nov 20 01:36:44 2007 +0100 [ARM] 4654/1: pxa: update default MFP register value 1. update default MFPR value to drive strength fast 3mA and edge detection logic disabled 2. update impacted MFP_CFG_xxx() macros Signed-off-by: bridge wu Signed-off-by: eric miao Signed-off-by: Russell King commit 43b35f104d20c03fd1741d25c370a94485e2cae6 Author: eric miao Date: Tue Nov 20 01:35:51 2007 +0100 [ARM] 4653/1: pxa: fix a gpio typo in mfp-pxa320.h Signed-off-by: bridge wu Signed-off-by: eric miao Signed-off-by: Russell King commit 8854cb49a249c8df883874e64dfbc25eaa69a6ee Author: eric miao Date: Tue Nov 20 01:35:08 2007 +0100 [ARM] 4652/1: pxa: fix a typo of pxa27x usb host clk definition CKEN_USBHOST should be used instead of CKEN_USB for usb host Signed-off-by: eric miao Signed-off-by: Russell King commit a8929198563c48544cc0cee0565be7d6629a2a4e Author: eric miao Date: Tue Nov 20 01:34:04 2007 +0100 [ARM] 4651/1: pxa: add PXA3xx specific IRQ definitions add missing IRQ_xxx definitions for PXA3xx Signed-off-by: eric miao Signed-off-by: Russell King commit 218ad12f42e0b6207105cde8fd13017d1ed449e4 Author: Pavel Emelyanov Date: Mon Nov 26 20:23:31 2007 +0800 [IPV4]: Fix memory leak in inet_hashtables.h when NUMA is on The inet_ehash_locks_alloc() looks like this: #ifdef CONFIG_NUMA if (size > PAGE_SIZE) x = vmalloc(...); else #endif x = kmalloc(...); Unlike it, the inet_ehash_locks_alloc() looks like this: #ifdef CONFIG_NUMA if (size > PAGE_SIZE) vfree(x); else #else kfree(x); #endif The error is obvious - if the NUMA is on and the size is less than the PAGE_SIZE we leak the pointer (kfree is inside the #else branch). Compiler doesn't warn us because after the kfree(x) there's a "x = NULL" assignment, so here's another (minor?) bug: we don't set x to NULL under certain circumstances. Boring explanation, I know... Patch explains it better. Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 8053fc3de720e1027d690f892ff7d7c1737fdd9d Author: Herbert Xu Date: Mon Nov 26 19:07:34 2007 +0800 [IPSEC]: Temporarily remove locks around copying of non-atomic fields The change 050f009e16f908932070313c1745d09dc69fd62b [IPSEC]: Lock state when copying non-atomic fields to user-space caused a regression. Ingo Molnar reports that it causes a potential dead-lock found by the lock validator as it tries to take x->lock within xfrm_state_lock while numerous other sites take the locks in opposite order. For 2.6.24, the best fix is to simply remove the added locks as that puts us back in the same state as we've been in for years. For later kernels a proper fix would be to reverse the locking order for every xfrm state user such that if x->lock is taken together with xfrm_state_lock then it is to be taken within it. Signed-off-by: Herbert Xu commit 1e641664301744f0d381de43ae1e12343e60b479 Author: Jeff Garzik Date: Sun Nov 11 19:52:05 2007 -0500 [SCSI] NCR5380: Fix bugs and canonicalize irq handler usage * Always pass the same value to free_irq() that we pass to request_irq(). This fixes several bugs. * Always call NCR5380_intr() with 'irq' and 'dev_id' arguments. Note, scsi_falcon_intr() is the only case now where dev_id is not the scsi_host. * Always pass Scsi_Host to request_irq(). For most cases, the drivers already did so, and I merely neated the source code line. In other cases, either NULL or a non-sensical value was passed, verified to be unused, then changed to be Scsi_Host in anticipation of the future. In addition to the bugs fixes, this change makes the interface usage consistent, which in turn enables the possibility of directly referencing Scsi_Host from all NCR5380_intr() invocations. Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit 2b83457bded19cb57c5bdd59ebe16fe1a919c088 Author: Steve French Date: Sun Nov 25 10:01:00 2007 +0000 [CIFS] Fix check after use error in ACL code Spotted by the coverity scanner. CC: Adrian Bunk Signed-off-by: Steve French commit a316b79c3306c59176d7ae04e4aad12374dfed37 Author: Erez Zilber Date: Wed Nov 21 13:11:37 2007 +0200 IB/iser: Add missing counter increment in iser_data_buf_aligned_len() While adding sg chaining support to iSER, a "for" loop was replaced with a "for_each_sg" loop. The "for" loop included the incrementation of 2 variables. Only one of them is incremented in the current "for_each_sg" loop. This caused iSER to think that all data is unaligned, and all data was copied to aligned buffers. This patch increments the missing counter inside the "for_each_sg" loop whenever necessary. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 3fe2ed344d4b36e7489b1d0c7cf677312b0bf870 Author: Joachim Fenkes Date: Thu Nov 22 12:26:26 2007 +0200 IB/ehca: Fix static rate regression Wrong choice of port number caused modify_qp() to fail -- fixed. Signed-off-by: Joachim Fenkes Signed-off-by: Roland Dreier commit a31e23e15cbb9734c5883a4a7f58d8712d303e0b Author: Jeff Garzik Date: Fri Nov 23 22:13:19 2007 -0500 dmfe: checkpatch fix (add whitespace) Signed-off-by: Jeff Garzik commit 00ff49a91e524ec5cb593380186d5d514876c417 Author: Vitja Makarov Date: Fri Nov 23 17:55:51 2007 +0800 Blackfin EMAC driver: fix bug - NAT doesn't work with bfin_mac driver https://blackfin.uclinux.org/gf/project/uclinux-dist/forum/?action=ForumBrowse&forum_id=39&thread_id=23114&_forum_action=ForumMessageBrowse Today I was dealing with the same problem, on my custom bf537 board, and bfin_mac driver. I found that the problem is in setting ip_summed flag of skbuff structure, Signed-off-by: Vitja Makarov Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik commit 95af9feb493daf1d07223acdaaea9a3c9cc7a943 Author: Mike Frysinger Date: Fri Nov 23 17:55:50 2007 +0800 Blackfin SMC91x Driver: punt CONFIG_BFIN -- we already have CONFIG_BLACKFIN Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik commit 65809b5125d61e0c8a7f6c0a5431450eaf853820 Author: Maxim Levitsky Date: Fri Nov 23 01:30:15 2007 +0200 NET: dmfe: don't access configuration space in D3 state Accidently I reversed the order of pci_save_state and pci_set_power_state in .suspend()/.resume() callbacks Signed-off-by: Maxim Levitsky Signed-off-by: Jeff Garzik commit 7b31f7ffa9ed7ba5fbe1cab8fb17a8c545e6a0eb Author: Peter Korsgaard Date: Thu Nov 22 12:25:13 2007 +0100 smc911x: Fix multicast handling smc911x_set_multicast_list fails to fill out the multicast hash table correctly; Bit 1 was used rather than bit 5 to decide if the lower or upper register should be used. The function is at the same time cleaned up by calling ether_crc rather than using it's own bit reversal table. Signed-off-by: Peter Korsgaard Signed-off-by: Jeff Garzik commit 8b31cfbcd1b54362ef06c85beb40e65a349169a2 Author: Stephen Hemminger Date: Wed Nov 21 14:55:26 2007 -0800 sky2: disable rx checksum on Yukon XL The Marvell Yukon XL chipset appears to have a hardware glitch where it will repeat the checksum of the last packet. Of course, this is timing sensitive and only happens sometimes... More info: http://bugzilla.kernel.org/show_bug.cgi?id=9381 As a workaround just disable hardware checksumming by default on this chip version. The earlier workaround for PCIX, dual port was also on Yukon XL so don't need to disable checksumming there. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 58dd8258fccbb68e0d0e1898038442822cb833c0 Author: Thomas Klein Date: Wed Nov 21 17:42:27 2007 +0100 ehea: Reworked rcv queue handling to log only fatal errors Prevent driver from brawly logging packet checksum errors. Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit 7393b87c9a538045c241d3eb5e2abf37e25ca3d3 Author: Thomas Klein Date: Wed Nov 21 17:37:58 2007 +0100 ehea: Improve tx packets counting Using own tx_packets counter instead of firmware counters. Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit a9b121c4df04d7fb508384480bb93f04916fb820 Author: Peter Korsgaard Date: Wed Nov 21 15:34:15 2007 +0100 smc911x: Fix unused variable warning. The smc911x_local pointer in smc911x_rcv is only used in the SMC_USE_DMA case. Move it under the #ifdef so GCC doesn't generate a warning in the non-DMA case. Signed-off-by: Jeff Garzik commit d0c4581b68922157da4e8071781b210043839a74 Author: Peter Korsgaard Date: Wed Nov 21 15:28:06 2007 +0100 smc911x: Fix undefined CONFIG_ symbol warning elif defined(CONFIG_*) should be used instead of elif CONFIG_* so GCC doesn't give warnings about undefined symbols when the config option is disabled. Signed-off-by: Jeff Garzik commit 3defd0ee74b8bec6977a34aae99939af6c007f84 Author: Jiri Bohac Date: Wed Nov 21 13:40:07 2007 +0100 amd8111e: don't call napi_enable if configured w/o NAPI The amd8111e network driver was broken by bea3348eef27e6044b6161fd04c3152215f96411, which makes the driver call napi_enable() and napi_disable() even if the driver had been configured without CONFIG_AMD8111E_NAPI, and thus netif_napi_add() had not been called on initialization. This triggers a BUG in napi_enable(). This patch fixes the problem. Please apply. Signed-off-by: Jiri Bohac Signed-off-by: Jeff Garzik commit 2541d0ca7e4645d7e2d295eb241c318a7f875f3a Author: Jeff Garzik Date: Fri Nov 23 21:08:42 2007 -0500 pata_ali: trim trailing whitespace (fix checkpatch complaints) Signed-off-by: Jeff Garzik commit 77b6901573066d6eadfcf66161a5768f3d2de9e9 Author: Peter Korsgaard Date: Thu Nov 15 11:01:02 2007 +0100 dm9601: Fix printk A printk in the error handling code of dm9601.c was missing a newline. Signed-off-by: Peter Korsgaard Signed-off-by: Jeff Garzik commit 9e555930bd873d238f5f7b9d76d3bf31e6e3ce93 Author: Ayaz Abdulla Date: Wed Nov 21 15:02:58 2007 -0800 forcedeth boot delay fix Fix a long boot delay in the forcedeth driver. During initialization, the timeout for the handshake between mgmt unit and driver can be very long. The patch reduces the timeout by eliminating a extra loop around the timeout logic. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=9308 Signed-off-by: Ayaz Abdulla Cc: Alex Howells Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 490dde8990c55662596a4be71b5070bd7d382d4a Author: Ayaz Abdulla Date: Fri Nov 23 20:54:01 2007 -0500 forcedeth: new mcp79 pci ids This patch adds new device ids and features for mcp79 devices into the forcedeth driver. Signed-off-by: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 61dbcecef568450de954115180881bf2f68511bc Author: Benjamin Herrenschmidt Date: Tue Nov 20 14:50:46 2007 +1100 ibm_newemac: Fix possible lockup on close It's a bad idea to call flush_scheduled_work from within a netdev->stop because the linkwatch will occasionally take the rtnl lock from a workqueue context, and thus that can deadlock. This reworks things a bit in that area to avoid the problem. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Jeff Garzik commit 91e33d31096a2b518ae5744c345af15c1ff06fd5 Author: Alan Cox Date: Mon Nov 19 14:41:05 2007 +0000 pata_isapnp: Polled devices If a card has no IRQ then pass no interrupt handler but allow polled usage. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 22d5c760c8bc2f146d5c31f69de7f52efd118992 Author: Alan Cox Date: Mon Nov 19 14:39:13 2007 +0000 pata_hpt37x: Fix cable detect bug spotted by Sergei Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 498222f323ab11331dc5cfedb97752477f0fe42a Author: Alan Cox Date: Mon Nov 19 14:37:58 2007 +0000 pata_ali: Lots of problems still showing up with small ATAPI DMA Hopefully there is a better long term solution but for now lets favour reliability. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 8f59a13accd78e9759548b40aa2a053938a01ec7 Author: Alan Cox Date: Mon Nov 19 14:36:28 2007 +0000 pata_ali: Add Mitac 8317 and derivatives Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 92c52c52e123e6fabb85392b16bcdbdb64cfdc1c Author: Alan Cox Date: Mon Nov 19 14:30:16 2007 +0000 libata-core: List more documentation sources for reference And next time I'll be able to find the ata tape spec easily... Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit c47a631f8bfad08a6001f8dd479004caa5059a75 Author: Alan Cox Date: Mon Nov 19 14:28:28 2007 +0000 ata_piix: Invalid use of writel/readl with iomap Should use ioread* as discussed previously Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 93e2618e0cee1f5b5a4cfc1b7521939318dbf5bb Author: Tejun Heo Date: Thu Nov 22 18:46:57 2007 +0900 sata_sil24: fix sg table sizing sil24 unnecessarily used LIBATA_MAX_PRD and ATAPI sg table was short by one entry which might cause very obscure problems. This patch updates sg table sizing such that * One full page is used for PRB + sg table. On 4k page, this results in 253 sg's. * Make ATAPI sg block properly sized. * Make build fail if command block size doesn't equal PAGE_SIZE. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 0706efd61edfcf958c2c19669aa65c2180ec3ba0 Author: Tejun Heo Date: Mon Nov 19 18:06:11 2007 +0900 pata_jmicron: fix disabled port handling in jmicron_pre_reset() There are two bugs in disabled port handling. * test in PORT_PATA0 is reversed * ->prereset should return -ENOENT for disabled ports not 0 The first bug makes the PATA channel considered disabled but the second bug saves the day by returning 0. The net result is that cable is always left at ATA_CBL_UNKNOWN. This results in false 80c configuration and thus transfer errors. This patch fixes both bugs. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit dd05c199cd02ffd2ac49eb29677f1468910996a8 Author: Sergei Shtylyov Date: Fri Nov 16 19:50:04 2007 +0300 pata_sil680: kill bogus reset code (take 2) Since writing to two reserved bits ain't much of a housekeeping, I think it's time we get rid of the custom error handler in this driver. ;-) Signed-off-by: Sergei Shtylyov Signed-off-by: Jeff Garzik commit 38cb2419f544ad413c7f7aa8c17fd7377610cdd8 Author: Herbert Xu Date: Sat Nov 17 22:09:38 2007 +0800 [CRYPTO] api: Fix potential race in crypto_remove_spawn As it is crypto_remove_spawn may try to unregister an instance which is yet to be registered. This patch fixes this by checking whether the instance has been registered before attempting to remove it. It also removes a bogus cra_destroy check in crypto_register_instance as 1) it's outside the mutex; 2) we have a check in __crypto_register_alg already. Signed-off-by: Herbert Xu commit f347c4facfee3d11eb9cd1c070ab471a8fb7401e Author: Herbert Xu Date: Thu Oct 11 16:45:17 2007 +0800 [CRYPTO] authenc: Move initialisations up to shut up gcc It seems that newer versions of gcc have regressed in their abilities to analyse initialisations. This patch moves the initialisations up to avoid the warnings. Signed-off-by: Herbert Xu commit 7f9c33e515353ea91afc62341161fead19e78567 Author: Ilpo Järvinen Date: Fri Nov 23 19:10:56 2007 +0800 [TCP] MTUprobe: Cleanup send queue check (no need to loop) The original code has striking complexity to perform a query which can be reduced to a very simple compare. FIN seqno may be included to write_seq but it should not make any significant difference here compared to skb->len which was used previously. One won't end up there with SYN still queued. Use of write_seq check guarantees that there's a valid skb in send_head so I removed the extra check. Signed-off-by: Ilpo Järvinen Acked-by: John Heffner Signed-off-by: Herbert Xu commit 91cc17c0e5e5ada156a8d5787a2509d263ea6bbf Author: Ilpo Järvinen Date: Fri Nov 23 19:08:16 2007 +0800 [TCP]: MTUprobe: receiver window & data available checks fixed It seems that the checked range for receiver window check should begin from the first rather than from the last skb that is going to be included to the probe. And that can be achieved without reference to skbs at all, snd_nxt and write_seq provides the correct seqno already. Plus, it SHOULD account packets that are necessary to trigger fast retransmit [RFC4821]. Location of snd_wnd < probe_size/size_needed check is bogus because it will cause the other if() match as well (due to snd_nxt >= snd_una invariant). Removed dead obvious comment. Signed-off-by: Ilpo Järvinen Signed-off-by: Herbert Xu commit 9a876d60a1cc1621708536b7f14e0f02c3e174ff Author: Magnus Damm Date: Fri Nov 23 14:39:55 2007 +0900 sh: include ax88796 in the defconfig for r7785rp This patch adds the ax88796 device driver to the r7785rp defconfig. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 9b145b1be44b9094d2600502744cc986b1cbbcb5 Author: Magnus Damm Date: Fri Nov 23 14:39:39 2007 +0900 sh: include ax88796 in the defconfig for r7780mp This patch adds the ax88796 device driver to the r7780mp defconfig. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit abac3f784f11cf8ccca0fc37ae4f5ff04cc245c4 Author: Magnus Damm Date: Fri Nov 23 14:39:13 2007 +0900 sh: fix R2D-1 CF support This patch fixes CF support for R2D-1 boards. Both R2D-1 and R2D-PLUS are equipped with CF IRQs, but the R2D-1 FPGA version seem to deliver IRQ spikes with certain CF cards during libata probing. This patch enables polling for R2D-1 as a workaround for this broken FGPA logic. R2D-1 CF support was recently introduced by commit: 43f4b8c7578b928892b6f01d374346ae14e5eb70. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 88c07ddec8c5e06aa331470076af27a397fc0993 Author: Gabriel Craciunescu Date: Thu Nov 22 19:43:36 2007 +0800 [MAINTAINERS]: tlan list is subscribers-only Your mail to 'Tlan-devel' with the subject drivers/net/tlan question Is being held until the list moderator can review it for approval. The reason it is being held: Post by non-member to a members-only list Signed-off-by: Gabriel Craciunescu Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 5ba03e82b3dac41bb1c5ca29060aa44b5e44b486 Author: Jiri Slaby Date: Thu Nov 22 19:40:22 2007 +0800 [SUNRPC]: Remove SPIN_LOCK_UNLOCKED SPIN_LOCK_UNLOCKED is deprecated, use DEFINE_SPINLOCK instead Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 5fe4a33430d90243ff93a77ea31e20f7557bca8a Author: Adrian Bunk Date: Thu Nov 22 19:38:25 2007 +0800 [SUNRPC]: Make xprtsock.c:xs_setup_{udp,tcp}() static xs_setup_{udp,tcp}() can now become static. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 435000bebd94aae3a7a50078d142d11683d3b193 Author: Charles Hardin Date: Thu Nov 22 19:35:15 2007 +0800 [PFKEY]: Sending an SADB_GET responds with an SADB_GET From: Charles Hardin Kernel needs to respond to an SADB_GET with the same message type to conform to the RFC 2367 Section 3.1.5 Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 8c92e6b0bf48a1735ddc61ebb08a0bb77c6bfa23 Author: Pavel Emelyanov Date: Thu Nov 22 19:15:56 2007 +0800 [IRDA]: Compilation for CONFIG_INET=n case Found this occasionally. The CONFIG_INET=n is hardly ever set, but if it is the irlan_eth_send_gratuitous_arp() compilation should produce a warning about unused variable in_dev. Too pedantic? :) Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 6a2e391190b17f4fb895bd2d5e8b08c7c8f897a2 Author: Herbert Valerio Riedel Date: Wed Nov 21 14:42:33 2007 -0500 Input: gpio-keys - request and configure GPIOs Currently, gpio_keys.c assumes the GPIOs to be already properly configured; this patch changes gpio-keys to perform explicit calls to gpio_request() and gpio_configure_input(). This matches the behaviour of leds-gpio. Signed-off-by: Herbert Valerio Riedel Signed-off-by: Dmitry Torokhov commit 8bf4215e8a7f7416d7258af211488aabf65863c3 Author: Jiri Kosina Date: Wed Nov 21 14:17:38 2007 -0500 Input: i8042 - add i8042.noloop quirk for MS Virtual Machine When booting under Microsoft Virtual Machine, the noloop quirk is needed, otherwise PS/2 mouse is not properly detected. Reported-by: Lawrence Steeger Signed-off-by: Jiri Kosina Signed-off-by: Dmitry Torokhov commit 3cb93db6e89bdffeae1f001bd87c9e96f9b634df Author: Dmitry Torokhov Date: Wed Nov 21 14:16:38 2007 -0500 Sonypi: use synchronize_irq instead of sycnronize_sched We know exactly what IRQ we are using, so synchronize_irq() suits much better. Plus synchronize_sched() will not work for us in -rt kernels. Signed-off-by: Dmitry Torokhov Acked-by: Mattia Dongili commit dcf65cd41c980278f98b6fc0d9da52747e7d058f Author: Dmitry Torokhov Date: Wed Nov 21 14:16:16 2007 -0500 sonypi: fit input devices into sysfs tree Properly set up parent on input devices registered by sonypi. Signed-off-by: Dmitry Torokhov Acked-by: Mattia Dongili commit 2e4d242ce71e82d931b4deb184ff9d96c9845ac1 Author: Dmitry Torokhov Date: Wed Nov 21 14:15:53 2007 -0500 sony-laptop: fit input devices into sysfs tree Properly set up parent on input devices registered by sony-laptop. Signed-off-by: Dmitry Torokhov Acked-by: Mattia Dongili commit 1dff314451fa24d6b107aa05393d3169e56a7e0a Author: David Woodhouse Date: Wed Nov 21 18:45:12 2007 +0100 mmc: Avoid re-using minor numbers before the original device is closed. Move the code which marks the minor number as free to mmc_blk_put() so that it happens on the final close() (or removal), instead of doing it at removal even when the device is still logically open. Signed-off-by: David Woodhouse Signed-off-by: Pierre Ossman commit b37a05069b9ab9fb1e52393a3448d710c50c54d5 Author: Alex Dubov Date: Wed Nov 14 23:55:36 2007 +1100 tifm_sd: handle non-power-of-2 block sizes It is possible to handle arbitrary block sizes with tifm card reader by conditionally switching to PIO in case such block has to be delivered. At the beginning of each request, DMA is either disabled (non-power-of-2 block size) or set to load time user preference. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit d198f101989d9bb950327f0d043f6203bb862343 Author: Pierre Ossman Date: Fri Nov 2 18:21:13 2007 +0100 mmc_block: check card state after write Some cards have been reported to signal that they're ready prematurely. Checking both the busy bit and card state solves the issue. Signed-off-by: Pierre Ossman commit 233b28a91caf7cff326e604c437a364eaf794106 Author: Sonic Zhang Date: Wed Nov 21 17:04:41 2007 +0800 Blackfin arch: fix bug when enable uart1 with uart0 disabled => no initial console Signed-off-by: Michael Hennerich Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit 49dce9124b41984bf1e918847bc17929c2e8f80f Author: Mike Frysinger Date: Wed Nov 21 16:46:49 2007 +0800 Blackfin arch: split apart dump_bfin_regs and merge/remove show_regs from process.c, which was largely duplicated Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9cb07b23dbc1c4c6ded49ba31d51b639a13970e3 Author: Mike Frysinger Date: Wed Nov 21 16:45:08 2007 +0800 Blackfin arch: use common __INIT/__FINIT defines rather than setting the .section ourselves to .init.text Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit fb322915a05804a3a153f714f2f08e4c32ce84c7 Author: Robin Getz Date: Wed Nov 21 16:38:05 2007 +0800 Blackfin arch: fix bug when sending signals with the wrong PC, cause gdb get confused We need to send signals with the proper PC, or gdb gets confused, and lots of tests fail. This should fix that. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 569a50ca3f56cd69199733580e7ca0e81029473a Author: Robin Getz Date: Wed Nov 21 16:35:57 2007 +0800 Blackfin arch: Ensure we printk out strings with the proper loglevel Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 0bad33d93af85a445adeedc19c363ef4e492ddd3 Author: Bernd Schmidt Date: Wed Nov 21 16:33:47 2007 +0800 Blackfin arch: Need to specify ax with the .init.text section, Need to specify "ax" with the .init.text section, otherwise the linker will make unique .init.text.1 .. .init.text.3 sections to cope with the flags commit f72eecb97b5ab63c735548ed982a39db72f9d7d7 Author: Robin Getz Date: Wed Nov 21 16:29:20 2007 +0800 Blackfin arch: Update Kconfig to latest Blackfin silicon datasheets Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit eee1f15ce632910f8840d1cd982651d95225f18d Author: Mike Frysinger Date: Wed Nov 21 16:23:51 2007 +0800 Blackfin arch: update defconfig files Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 46c87c3ccec0d81a7b695fe9d5edc86a7e446962 Author: Mike Frysinger Date: Wed Nov 21 16:15:48 2007 +0800 Blackfin arch: Fix typo, and add ENDPROC - no functional changes Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit f26825de49d2e1a12eee54cd855b56b768f4d7bd Author: Mike Frysinger Date: Wed Nov 21 16:17:11 2007 +0800 Blackfin arch: convert READY to DMA_READY as it causes build errors in common sound code otherwise Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b0187854d902f897f98a1712fa9f097b13d7a554 Author: Mike Frysinger Date: Wed Nov 21 16:14:03 2007 +0800 Blackfin arch: add defines for the on-chip L1 ROM of BF54x Should not need separate cplb entry though as we cover L1 with a 4 meg page Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit c3a9f435ae1b1969736a6ca695dfbc508b917b65 Author: Mike Frysinger Date: Wed Nov 21 16:12:12 2007 +0800 Blackfin arch: cplb and map header file cleanup - remove duplicated defines for the BF561 - generalize L2 support (so that it works for BF54x) and mark it executable - add support for reading/executing the Boot ROM sections (since it has data/functions we may need at runtime) - and fixup names for each map Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 81a487a59f246a9eba24c3622e4c964e3347239d Author: Mike Frysinger Date: Wed Nov 21 15:55:45 2007 +0800 Blackfin arch: cleanup the cplb declares - no need to declare their sizes in the common header - no need to tack on the section attribute as only the definition matters, not references Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9f2ff54d7291d4386dc02d6a153e6cc621f32aa8 Author: Mike Frysinger Date: Wed Nov 21 15:57:53 2007 +0800 Blackfin arch: fix broken on BF52x, remove silly checks on processors for L1_SCRATCH defines Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9e83b98a79d25136282a1757f879c40ee929a28b Author: Mike Frysinger Date: Wed Nov 21 16:08:58 2007 +0800 Blackfin arch: add support for working around anomaly 05000312 Anomaly 05000312 - Errors When SSYNC, CSYNC, or Loads to LT, LB and LC Registers Are Interrupted: DESCRIPTION: When instruction cache is enabled, erroneous behavior may occur when any of the following instructions are interrupted: . CSYNC • SSYNC • LCx = • LTx = (only when LCx is non-zero) • LBx = (only when LCx is non-zero) When this problem occurs, a variety of incorrect things could happen, including an illegal instruction exception. Additional errors could show up as an exception, a hardware error, or an instruction that is valid but different than the one that was expected. WORKAROUND: Place a cli before all SSYNC, CSYNC, "LCx =", "LTx =", and "LBx =" instructions to disable interrupts, and place an sti after each of these instructions to re-enable interrupts. When these instructions are executed in code that is already non-interruptible, the problem will not occur. Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b5f87aa41db4d5cd64ca77f10b33fdfba61a47d7 Author: Mike Frysinger Date: Wed Nov 21 16:04:49 2007 +0800 Blackfin arch: cleanup BF54x header file and add BF547 definition Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 7160e9503ac912a079a18125113b6465939bab85 Author: Mike Frysinger Date: Wed Nov 21 16:03:07 2007 +0800 Blackfin arch: fix building for BF542 processors which only have 1 TWI Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 8d6c242062b90ce1b339e32a12fe183fe9612dcb Author: Mike Frysinger Date: Wed Nov 21 15:53:49 2007 +0800 Blackfin arch: rename _return_from_exception to _bfin_return_from_exception and export it Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit d0025e5edf0e593da599358d70fdade47c3b703e Author: Mike Frysinger Date: Wed Nov 21 15:34:51 2007 +0800 Blackfin arch: move EXPORT_SYMBOL() to C files where the symbol is actually defined Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit e40540b304d5d15c344585c4a7b3116e73add2db Author: Sonic Zhang Date: Wed Nov 21 23:49:52 2007 +0800 Blackfin arch: fix bug NOR Flash MTD mount fail Config EBIU flash mode properly. EBIU_MODE EBIU_FCTL EBIU_MBSCTL register should be configurd to Flash mode. Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit 28a44d4bd6bdc7d013405bfc2aa7f126d39a7b2b Author: Cliff Cai Date: Wed Nov 21 15:22:58 2007 +0800 Blackfin arch: export symbol get_dma_curr_desc_ptr for driver usage Signed-off-by: Cliff Cai Signed-off-by: Bryan Wu commit d535a916cdb1620d936a0a6197194c458854bd71 Author: Pavel Emelyanov Date: Tue Nov 20 17:44:01 2007 -0800 [IPVS]: Fix compiler warning about unused register_ip_vs_protocol This is silly, but I have turned the CONFIG_IP_VS to m, to check the compilation of one (recently sent) fix and set all the CONFIG_IP_VS_PROTO_XXX options to n to speed up the compilation. In this configuration the compiler warns me about CC [M] net/ipv4/ipvs/ip_vs_proto.o net/ipv4/ipvs/ip_vs_proto.c:49: warning: 'register_ip_vs_protocol' defined but not used Indeed. With no protocols selected there are no calls to this function - all are compiled out with ifdefs. Maybe the best fix would be to surround this call with ifdef-s or tune the Kconfig dependences, but I think that marking this register function as __used is enough. No? Signed-off-by: Pavel Emelyanov Acked-by: Simon Horman Signed-off-by: David S. Miller commit b4a9811c42ecb70b2f0b375f6d4c77ab34d1f598 Author: Jonas Danielsson Date: Tue Nov 20 17:38:16 2007 -0800 [ARP]: Fix arp reply when sender ip 0 Fix arp reply when received arp probe with sender ip 0. Send arp reply with target ip address 0.0.0.0 and target hardware address set to hardware address of requester. Previously sent reply with target ip address and target hardware address set to same as source fields. Signed-off-by: Jonas Danielsson Acked-by: Alexey Kuznetov Signed-off-by: David S. Miller commit 77adefdc9863d63f8d8bdc6a9adcdf9a6b0e2410 Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:31:23 2007 -0800 [IPV6] TCPMD5: Fix deleting key operation. Due to the bug, refcnt for md5sig pool was leaked when an user try to delete a key if we have more than one key. In addition to the leakage, we returned incorrect return result value for userspace. This fix should close Bug #9418, reported by . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit aacbe8c8800adfea42eb754396c6ebcd992cb36a Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:30:56 2007 -0800 [IPV6] TCPMD5: Check return value of tcp_alloc_md5sig_pool(). Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 354faf0977397cea382e9e9c214fd028377d277b Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:30:31 2007 -0800 [IPV4] TCPMD5: Use memmove() instead of memcpy() because we have overlaps. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit a80cc20da492d9a00b0851a6632dc03fed5d2e30 Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:30:06 2007 -0800 [IPV4] TCPMD5: Omit redundant NULL check for kfree() argument. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit e790cc8bbb990df900eabdda18a5a480d22a60c8 Author: Alexey Starikovskiy Date: Wed Nov 21 03:23:32 2007 +0300 ACPI: EC: Workaround for optimized controllers (version 3) Some controllers fail to send confirmation GPE after address or data write. Detect this and don't expect such confirmation in future. This is a generalization of previous workaround (66c5f4e7367b0085652931b2f3366de29e7ff5ec), which did only read address. Reference: http://bugzilla.kernel.org/show_bug.cgi?id=9327 Signed-off-by: Alexey Starikovskiy Tested-by: Romano Giannetti Tested-by: Mats Johannesson Signed-off-by: Len Brown commit 3ebe08a749a0971a5407818169dc16212ef562f9 Author: Márton Németh Date: Wed Nov 21 03:23:26 2007 +0300 ACPI: EC: use printk_ratelimit(), add some DEBUG mode messages Sometimes it is usefull to see raw protocol dump. Uncomment '#define DEBUG' at the beginning of file to make EC really verbose. Signed-off-by: Márton Németh Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 0af2f653c504d302d83d3a648c0408882ff62d4c Author: Len Brown Date: Tue Nov 20 19:59:08 2007 -0500 Revert "ACPI: EC: Workaround for optimized controllers" This reverts commit f2d68935ba08cf80f151bbdb5628381184e4a498. commit cea218054ad277d6c126890213afde07b4eb1602 Author: Jeff Layton Date: Tue Nov 20 23:19:03 2007 +0000 [CIFS] Fix potential data corruption when writing out cached dirty pages Fix RedHat bug 329431 The idea here is separate "conscious" from "unconscious" flushes. Conscious flushes are those due to a fsync() or close(). Unconscious ones are flushes that occur as a side effect of some other operation or due to memory pressure. Currently, when an error occurs during an unconscious flush (ENOSPC or EIO), we toss out the page and don't preserve that error to report to the user when a conscious flush occurs. If after the unconscious flush, there are no more dirty pages for the inode, the conscious flush will simply return success even though there were previous errors when writing out pages. This can lead to data corruption. The easiest way to reproduce this is to mount up a CIFS share that's very close to being full or where the user is very close to quota. mv a file to the share that's slightly larger than the quota allows. The writes will all succeed (since they go to pagecache). The mv will do a setattr to set the new file's attributes. This calls filemap_write_and_wait, which will return an error since all of the pages can't be written out. Then later, when the flush and release ops occur, there are no more dirty pages in pagecache for the file and those operations return 0. mv then assumes that the file was written out correctly and deletes the original. CIFS already has a write_behind_rc variable where it stores the results from earlier flushes, but that value is only reported in cifs_close. Since the VFS ignores the return value from the release operation, this isn't helpful. We should be reporting this error during the flush operation. This patch does the following: 1) changes cifs_fsync to use filemap_write_and_wait and cifs_flush and also sync to check its return code. If it returns successful, they then check the value of write_behind_rc to see if an earlier flush had reported any errors. If so, they return that error and clear write_behind_rc. 2) sets write_behind_rc in a few other places where pages are written out as a side effect of other operations and the code waits on them. 3) changes cifs_setattr to only call filemap_write_and_wait for ATTR_SIZE changes. 4) makes cifs_writepages accurately distinguish between EIO and ENOSPC errors when writing out pages. Some simple testing indicates that the patch works as expected and that it fixes the reproduceable known problem. Acked-by: Dave Kleikamp Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 92468c53cf5af0aea06caec7b7d416c18e973685 Author: Guillaume Chazarain Date: Mon Nov 19 10:07:00 2007 +0100 ieee80211: Stop net_ratelimit/IEEE80211_DEBUG_DROP log pollution if (net_ratelimit()) IEEE80211_DEBUG_DROP(...) can pollute the logs with messages like: printk: 1 messages suppressed. printk: 2 messages suppressed. printk: 7 messages suppressed. if debugging information is disabled. These messages are printed by net_ratelimit(). Add a wrapper to net_ratelimit() that takes into account the log level, so that net_ratelimit() is called only when we really want to print something. Signed-off-by: Guillaume Chazarain Signed-off-by: John W. Linville commit 4b50e388f88ab08f6c2f54f0a33e696ff2de269f Author: Bruno Randolf Date: Fri Nov 16 17:04:01 2007 +0900 mac80211: add missing space in error message Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit ad639b9f2ccb87815384bda4ed4609592a861b8b Author: Grant Likely Date: Wed Oct 17 17:41:00 2007 -0600 [POWERPC] 83xx: Update mpc8349emitx(gp) defconfig for USB USB support for the 8349itx got added a while back; but the defconfig never got updated. This patch adds the appropriate USB config options to the defconfigs Signed-off-by: Grant Likely CC: Scott Wood CC: Timur Tabi Signed-off-by: Kumar Gala commit 04ce7a9767fa75a5ea7704b88530adde64488152 Author: Anton Vorontsov Date: Tue Nov 13 20:00:43 2007 +0300 [POWERPC] 83xx: Update mpc832x_rdb_defconfig to enable MMC-over-SPI Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit ba3bdff54bdc4275b4ed68964bbfbcbda003715d Author: Anton Vorontsov Date: Tue Nov 13 20:00:11 2007 +0300 [POWERPC] 83xx: MPC832x RDB - remove spidev stub, use mmc_spi mmc_spi has hit the mainline, so we can start using it. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit 27f49807d79cf44642f98cb7854729836340d98d Author: Kim Phillips Date: Thu Nov 8 13:37:06 2007 -0600 [POWERPC] 8xxx: MDS board RTC fixes Now the rtc class ds1374 driver has been added, remove the old rtc driver hookup code, add rtc node to device trees, and turn on the new driver in the defconfigs. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit c1428b3f45d152a300e4f18638ebf30ceafda6c3 Author: Johannes Berg Date: Fri Nov 16 02:54:53 2007 +0100 mac80211: fix allmulti/promisc behaviour When an interface with promisc/allmulti bit is taken down, the mac80211 state can become confused. This fixes it by making mac80211 keep track of all *active* interfaces that have the promisc/allmulti bit set in the sdata, we sync the interface bit into sdata at set_multicast_list() time so this works. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b52f2198ac889561d341c6990d669a671f93f450 Author: Johannes Berg Date: Fri Nov 16 01:49:11 2007 +0100 mac80211: fix ieee80211_set_multicast_list I recently experienced unexplainable behaviour with the b43 driver when I had broken firmware uploaded. The cause may have been that promisc mode was not correctly enabled or disabled and this bug may have been the cause. Note how the values are compared later in the function so just doing the & will result in the wrong thing being compared and the test being false almost always. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 9ed87fd34c97a998e63505718ce7e107a23c84c3 Author: Jack Morgenstein Date: Tue Nov 20 13:01:28 2007 -0800 mlx4_core: Fix state check in mlx4_qp_modify() When checking the states passed in, mlx4_qp_modify() accidentally checks cur_state twice rather than checking cur_state and new_state. Fix this to make sure that both values are in-bounds. Since these values may be passed in from userspace, this bug results in userspace being able to trigger an oops. Signed-off-by: Jack Morgenstein Cc: stable Signed-off-by: Roland Dreier commit 7cb41c65b3fc547da4050721445d07277768aa37 Author: Jaroslav Kysela Date: Tue Nov 20 20:16:43 2007 +0100 [ALSA] version 1.0.15 Signed-off-by: Jaroslav Kysela commit 4187b915a0f7eaa69707715e80d9fc253ff6167a Author: Ralph Campbell Date: Wed Nov 14 13:34:14 2007 -0800 IB/ipath: Normalize error return codes for posting work requests The error codes for ib_post_send(), ib_post_recv(), and ib_post_srq_recv() were inconsistent. Use EINVAL for too many SGEs and ENOMEM for too many WRs. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 14de986a0ba560b54340fd277a3579e95a2d3838 Author: Ralph Campbell Date: Fri Nov 9 15:22:31 2007 -0800 IB/ipath: Fix offset returned to ibv_modify_srq() The wrong offset was being returned to libipathverbs so that when ibv_modify_srq() calls mmap(), it always fails. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 8a278e6d571ebe10b96f2b53c74f01fd0a3f005a Author: Ralph Campbell Date: Wed Nov 14 12:09:05 2007 -0800 IB/ipath: Fix error path in QP creation This patch fixes the code which frees the partially allocated QP resources if there was an error while creating the QP. In particular, the QPN wasn't deallocated and the QP wasn't removed from the hash table. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit aa299d01f1c2e680e40813b63f8dfb46c79ea715 Author: Takashi Iwai Date: Thu Nov 15 13:16:02 2007 +0100 [ALSA] emu10k1 - Check value ranges in ctl callbacks Check value ranges in ctl callbacks properly. This fixes the unexpected crash due to wrong value assignment. Also, remove invalid comments in the last patch. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 74415a36767d99d3adf31b4a62e4e50725e6b66a Author: James Courtier-Dutton Date: Mon Nov 12 14:55:19 2007 +0000 [ALSA] emu10k1: Add mixer controls parameter checking. Signed-off-by: James Courtier-Dutton Signed-off-by: Jaroslav Kysela commit fb74dacb0f00dff851c78411773a5bd5d7128b81 Author: Ralph Campbell Date: Tue Nov 6 17:51:38 2007 -0800 IB/ipath: Fix offset returned to ibv_resize_cq() The wrong offset was being returned to libipathverbs so that when ibv_resize_cq() calls mmap(), it always fails. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 4df20535ec52fb7eba604eb1ba77148f92ab8edd Author: Timur Tabi Date: Wed Nov 14 12:07:58 2007 +0100 [ALSA] fix private data pointer calculation in CS4270 driver Fix the calculation of the private_data pointer in the CS4270 driver. Signed-off-by: Timur Tabi Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 37435446244958edc36b33cf2b87c2f5cd433ba4 Author: Takashi Iwai Date: Mon Oct 29 11:14:31 2007 +0100 [ALSA] portman2x4 - Fix probe error Reported by Ingo Molnar, when booting an allyesconfig bzImage kernel the bootup hangs in the portman2x4 driver (on a box that does not have this hardware), at: Pid: 1, comm: swapper EIP: 0060:[] CPU: 0 EIP is at parport_pc_read_status+0x4/0x8 EFLAGS: 00000202 Not tainted (2.6.23-rc9 #904) EAX: f7e57a7f EBX: 00000010 ECX: c2b808c0 EDX: 00000379 ESI: f7cb8230 EDI: 00000010 EBP: f7cb8230 DS: 007b ES: 007b FS: 0000 CR0: 8005003b CR2: fff9c000 CR3: 007ec000 CR4: 00000690 DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 DR6: ffff0ff0 DR7: 00000400 [] portman_flush_input+0xde/0x12c [] snd_portman_probe+0x368/0x484 [] __device_attach+0x0/0x8 [] platform_drv_probe+0xc/0x10 [] driver_probe_device+0x74/0x194 [] klist_next+0x38/0x70 [] __device_attach+0x0/0x8 [] bus_for_each_drv+0x35/0x68 [] device_attach+0x72/0x78 the reason is due to an inconsistent error return code of 1 or 2, while snd_portman_probe only realizes negative error codes. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 33712560285c9f7f5251508bcddeef0c57aa3329 Author: Takashi Iwai Date: Wed Oct 24 18:02:17 2007 +0200 [ALSA] ca0106 - Fix write proc assignment The driver assigns the write proc callback to read wrongly. Fixed now. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1700139acb2794df6f6ea17de3a6fc2f9c7510b1 Author: Krzysztof Helt Date: Fri Oct 19 08:23:00 2007 +0200 [ALSA] s3c2443-ac97: compilation fix The Samsung S3C24xx uses new architecture file layout in the post 2.6.23 kernel. This patch fixes include path for the s3c2443-ac97.c. Signed-off-by: Krzysztof Helt Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6020c008dfe6b68626de7de7b4fa99982e345c86 Author: Takashi Iwai Date: Mon Nov 19 11:56:26 2007 +0100 [ALSA] hda-codec - Revert volume knob controls in STAC codecs Volume knob controls with STAC codecs seem to cause problems with some devices. Volumes change very slowly or silent suddenly. It's likely due to conflict between the software and the hardware volume knob setup. Since we'll have a virtual master control in future, it's safer to remove this control completely right now. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1f305323ff5b9ddc1a4346d36072bcdb58f3f68a Author: Evgeniy Polyakov Date: Tue Nov 20 04:27:35 2007 -0800 [NETFILTER]: Fix kernel panic with REDIRECT target. When connection tracking entry (nf_conn) is about to copy itself it can have some of its extension users (like nat) as being already freed and thus not required to be copied. Actually looking at this function I suspect it was copied from nf_nat_setup_info() and thus bug was introduced. Report and testing from David . [ Patrick McHardy states: I now understand whats happening: - new connection is allocated without helper - connection is REDIRECTed to localhost - nf_nat_setup_info adds NAT extension, but doesn't initialize it yet - nf_conntrack_alter_reply performs a helper lookup based on the new tuple, finds the SIP helper and allocates a helper extension, causing reallocation because of too little space - nf_nat_move_storage is called with the uninitialized nat extension So your fix is entirely correct, thanks a lot :) ] Signed-off-by: Evgeniy Polyakov Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 0a06ea87185531705e4417e3a051f81b64f210c1 Author: David S. Miller Date: Tue Nov 20 03:29:53 2007 -0800 [WIRELESS] WEXT: Fix userspace corruption on 64-bit. On 64-bit systems sizeof(struct ifreq) is 8 bytes larger than sizeof(struct iwreq). For GET calls, the wireless extension code copies back into userspace using sizeof(struct ifreq) but userspace and elsewhere only allocates a "struct iwreq". Thus, this copy writes past the end of the iwreq object and corrupts whatever sits after it in memory. Fix the copy_to_user() length. This particularly hurts the compat case because the wireless compat code uses compat_alloc_userspace() and right after this allocated buffer is the current bottom of the user stack, and that's what gets overwritten by the copy_to_user() call. Signed-off-by: David S. Miller commit c5d4a9997b4b2ec71cff0b219f05c6bc51f3fc79 Author: Cornelia Huck Date: Tue Nov 20 11:13:41 2007 +0100 [S390] cio: Register/unregister subchannels only from kslowcrw. Make sure all subchannel handling is done on the slow path workqueue so that we don't have races between an old subchannel unregistering and a new subchannel with the same name registering. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 06770a6e7d26ba980055caff815b9b3f5322c9db Author: Heiko Carstens Date: Tue Nov 20 11:13:40 2007 +0100 [S390] Add missing die_notifier() call to die(). Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit a2cb07376e397e7e788551f14acd972e22b09efd Author: Heiko Carstens Date: Tue Nov 20 11:13:39 2007 +0100 [S390] Fix memory detection. Before we're getting short on memory detection fixes here is the next one: if neither sclp nor diag260 report the storage size the detection loop will return immediately without detecting anything. Fix this by breaking the detection loop only if the memory end is known. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 70cf5035dedaeddf8f6ae5c0a74ea65dcd7356ab Author: Christoph Lameter Date: Tue Nov 20 11:13:38 2007 +0100 [S390] Explicitly code allocpercpu calls in iucv The iucv is the only user of the various functions that are used to bring parts of cpus up and down. Its the only allocpercpu user that will do I/O on per cpu objects (which is difficult to do with virtually mapped memory). And its the only use of allocpercpu where a GFP_DMA allocation is done. Remove the allocpercpu calls from iucv and code the allocation and freeing manually. After this patch it is possible to remove a large part of the allocpercpu API. Signed-off-by: Christoph Lameter Signed-off-by: Martin Schwidefsky commit 677d762319facc20467243c6dd9487261e3515b0 Author: Heiko Carstens Date: Tue Nov 20 11:13:37 2007 +0100 [S390] Dont overwrite lowcores on smp_send_stop(). Don't perform a sigp store-status-at-address on smp_send_stop(). It will overwrite the lowcores of other cpus and destroys valueable debug informations. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit ce7e9fae8db07af4080e868f4588f8f095f803dc Author: Christian Borntraeger Date: Tue Nov 20 11:13:36 2007 +0100 [S390] Optimize storage key handling for anonymous pages page_mkclean used to call page_clear_dirty for every given page. This is different to all other architectures, where the dirty bit in the PTEs is only resetted, if page_mapping() returns a non-NULL pointer. We can move the page_test_dirty/page_clear_dirty sequence into the 2nd if to avoid unnecessary iske/sske sequences, which are expensive. This change also helps kvm for s390 as the host must transfer the dirty bit into the guest status bits. By moving the page_clear_dirty operation into the 2nd if, the vm will only call page_clear_dirty for pages where it walks the mapping anyway. There it calls ptep_clear_flush for writable ptes, so we can transfer the dirty bit to the guest. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit b8e7a54cd06b0b0174029ef3a7f5a1415a2c28f2 Author: Heiko Carstens Date: Tue Nov 20 11:13:35 2007 +0100 [S390] Fix kernel preemption. When returning from IRQ handling and TIF_NEED_RESCHED is set we must call preempt_schedule_irq() instead of schedule(). Otherwise the BKL might be unlocked in schedule() and therfore everything that relies on the BKL is broken. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 37e3a6ac5a30468021a2f366e497d455bbcb5d21 Author: Heiko Carstens Date: Tue Nov 20 11:13:34 2007 +0100 [S390] appldata: remove unused binary sysctls. Remove binary sysctls that never worked due to missing strategy functions. Cc: "Eric W. Biederman" Cc: Christian Borntraeger Cc: Gerald Schaefer Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 43ebbf119a9670d8f08b9e57968e109c770f8636 Author: Heiko Carstens Date: Tue Nov 20 11:13:33 2007 +0100 [S390] cmm: remove unused binary sysctls. Remove binary sysctls that never worked due to missing strategy functions. Cc: Christian Borntraeger Signed-off-by: Heiko Carstens Signed-off-by: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Martin Schwidefsky commit 411788ea7fca01ee803af8225ac35807b4d02050 Author: Heiko Carstens Date: Tue Nov 20 11:13:32 2007 +0100 [S390] Fix irq tracing and lockdep_sys_exit calls. Current support for TRACE_IRQFLAGS and lockdep_sys_exit is broken. IRQ flag tracing is broken for program checks. Even worse is that the newly introduced calls to lockdep_sys_exit are in the critical section code which is not supposed to call any C functions. In addition the checks if locks are still held are also done when returning to kernel code which is broken as well. Fix all this by disabling interrupts and machine checks at the exit paths and then do the appropriate checks and calls. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 7aa8dac7ac68f5c2293e2ecf5ef542aa849f541f Author: Christian Borntraeger Date: Tue Nov 20 11:13:31 2007 +0100 [S390] magic sysrq: check for in_atomic before doing an console_unblank When doing an magic sysrq reboot on s390 the following bug message appears: SysRq : Resetting BUG: sleeping function called from invalid context at include/asm/semaphore.h:61 in_atomic():1, irqs_disabled():0 07000000004002a8 000000000fe6bc48 0000000000000002 0000000000000000 000000000fe6bce8 000000000fe6bc60 000000000fe6bc60 000000000012a79a 0000000000000000 07000000004002a8 0000000000000006 0000000000000000 0000000000000000 000000000fe6bc48 000000000000000d 000000000fe6bcb8 00000000004000c8 0000000000103234 000000000fe6bc48 000000000fe6bc90 Call Trace: (¬<00000000001031b2>| show_trace+0x12e/0x148) ¬<000000000011ffca>| __might_sleep+0x10a/0x118 ¬<0000000000129fba>| acquire_console_sem+0x92/0xf4 ¬<000000000012a2ca>| console_unblank+0xc2/0xc8 ¬<0000000000107bb4>| machine_restart+0x54/0x6c ¬<000000000028e806>| sysrq_handle_reboot+0x26/0x30 ¬<000000000028e52a>| __handle_sysrq+0xa6/0x180 ¬<0000000000140134>| run_workqueue+0xcc/0x18c ¬<000000000014029a>| worker_thread+0xa6/0x108 ¬<00000000001458e4>| kthread+0x64/0x9c ¬<0000000000106f0e>| kernel_thread_starter+0x6/0xc ¬<0000000000106f08>| kernel_thread_starter+0x0/0xc The only reason for doing a console_unblank on s390 is to flush the log buffer. We have to check for in_atomic before doing a console_unblank as the console is otherwise filled with an unrelated bug message. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 3b8c88993e3709b4d44f7ca4e886044a49605394 Author: Peter Oberparleiter Date: Tue Nov 20 11:13:30 2007 +0100 [S390] cio: change device sense procedure to work with pav aliases Modify the sense id channel program to allow device sensing of pav alias devices which belong to a base device with ungrouped paths. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit a572da43738f156a6c81034467da429903483687 Author: Joe Perches Date: Mon Nov 19 23:48:30 2007 -0800 [IRDA]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit c3c9d45828255dcb63d695a3229a25cba97a9bdf Author: Joe Perches Date: Mon Nov 19 23:48:08 2007 -0800 [SUNRPC]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 9ee46f1d31cf70b7e6375bc50b811f529b7bc82e Author: Joe Perches Date: Mon Nov 19 23:47:47 2007 -0800 [SCTP]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 3b6d821c4f06b4c25704bc11d05e68cdd16b4278 Author: Joe Perches Date: Mon Nov 19 23:47:25 2007 -0800 [IPV6]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 3a47a68b05ad4b2da54d8c77262459465436387b Author: Joe Perches Date: Mon Nov 19 23:46:55 2007 -0800 [BRIDGE]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 464c4f184ac671c6206d502a67034f9bfe9fe25c Author: Joe Perches Date: Mon Nov 19 23:46:29 2007 -0800 [IPV4]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4756daa3b63e806d8ef093c8b4b5f56ee34250a2 Author: Joe Perches Date: Mon Nov 19 23:46:02 2007 -0800 [DCCP]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 0b47759db54f82df68ed179ddc5cb2becea56158 Author: Benjamin Herrenschmidt Date: Tue Nov 20 18:32:12 2007 +1100 [POWERPC] Fix 8xx build breakage due to _tlbie changes My changes to _tlbie to fix 4xx unfortunately broke 8xx build in a couple of places. This fixes it. Spotted by Olof Johansson. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 5487796f0c9475586277a0a7a91211ce5746fa6a Author: Sam Jansen Date: Mon Nov 19 23:28:21 2007 -0800 [TCP]: Problem bug with sysctl_tcp_congestion_control function From: "Sam Jansen" sysctl_tcp_congestion_control seems to have a bug that prevents it from actually calling the tcp_set_default_congestion_control function. This is not so apparent because it does not return an error and generally the /proc interface is used to configure the default TCP congestion control algorithm. This is present in 2.6.18 onwards and probably earlier, though I have not inspected 2.6.15--2.6.17. sysctl_tcp_congestion_control calls sysctl_string and expects a successful return code of 0. In such a case it actually sets the congestion control algorithm with tcp_set_default_congestion_control. Otherwise, it returns the value returned by sysctl_string. This was correct in 2.6.14, as sysctl_string returned 0 on success. However, sysctl_string was updated to return 1 on success around about 2.6.15 and sysctl_tcp_congestion_control was not updated. Even though sysctl_tcp_congestion_control returns 1, do_sysctl_strategy converts this return code to '0', so the caller never notices the error. Signed-off-by: David S. Miller commit 6e42141009ff18297fe19d19296738b742f861db Author: Ilpo Järvinen Date: Mon Nov 19 23:24:09 2007 -0800 [TCP] MTUprobe: fix potential sk_send_head corruption When the abstraction functions got added, conversion here was made incorrectly. As a result, the skb may end up pointing to skb which got included to the probe skb and then was freed. For it to trigger, however, skb_transmit must fail sending as well. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 1f8170b0ecd8363847792b3b1f269e9d8e10391a Author: Pavel Emelyanov Date: Mon Nov 19 22:51:24 2007 -0800 [PKTGEN]: Fix double unlock of xfrm_state->lock The pktgen_output_ipsec() function can unlock this lock twice due to merged error and plain paths. Remove one of the calls to spin_unlock. Other possible solution would be to place "return 0" right after the first unlock, but at this place the err is known to be 0, so these solutions are the same except for this one makes the code shorter. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 61fd47e0c84764f49b4e52bfd8170fac52636f00 Author: Shaohua Li Date: Sat Nov 17 01:05:28 2007 -0500 ACPI: fix two IRQ8 issues in IOAPIC mode Use mp_irqs[] to get PNP device's interrupt polarity and trigger. There are two reasons to do this: 1. BIOS bug for PNP interrupt 2. BIOS explictly does override mp_irqs[] should cover all the cases. http://bugzilla.kernel.org/show_bug.cgi?id=5243 http://bugzilla.kernel.org/show_bug.cgi?id=7679 http://bugzilla.kernel.org/show_bug.cgi?id=9153 [lenb: fixed !IOAPIC and 64-bit !SMP builds] Signed-off-by: Shaohua Li Signed-off-by: Len Brown commit 9055fa1f3ded5ad858a55ae18439ed55227ee7eb Author: Simon Horman Date: Mon Nov 19 21:51:13 2007 -0800 [IPVS]: Move remaining sysctl handlers over to CTL_UNNUMBERED Switch the remaining IPVS sysctl entries over to to use CTL_UNNUMBERED, I stronly doubt that anyone is using the sys_sysctl interface to these variables. Signed-off-by: Simon Horman Signed-off-by: David S. Miller commit 9e103fa6bd53147e228e941256803a6b8927cdb9 Author: Simon Horman Date: Mon Nov 19 21:50:21 2007 -0800 [IPVS]: Fix sysctl warnings about missing strategy in schedulers sysctl table check failed: /net/ipv4/vs/lblc_expiration .3.5.21.19 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/lblcr_expiration .3.5.21.20 Missing strategy Switch these entried over to use CTL_UNNUMBERED as clearly the sys_syscal portion wasn't working. This is along the same lines as Christian Borntraeger's patch that fixes up entries with no stratergy in net/ipv4/ipvs/ip_vs_ctl.c Signed-off-by: Simon Horman Signed-off-by: David S. Miller commit bebfa06c61da6246d4aab38efa06a460eb3db4ed Author: Kumar Gala Date: Mon Nov 19 23:36:23 2007 -0600 [POWERPC] Fix device tree interrupt map for Freescale ULI1575 boards The interrupt map for the PCI PHB that had the ULI1575 was not correct on the boards that have it. * 8544 DS: - Fix interrupt mask - Be explicit about use of INTA for on chip peripherals * 8572 DS/8641 HPCN: - Fix interrupt mask - Expand interrupt map for PCI slots to cover all functions - Be explicit about use of INTA for on chip peripherals Signed-off-by: Kumar Gala commit 611cd55b155a89d9a0ce5f92a9cbabc5e284d0d4 Author: Christian Borntraeger Date: Mon Nov 19 21:49:25 2007 -0800 [IPVS]: Fix sysctl warnings about missing strategy Running the latest git code I get the following messages during boot: sysctl table check failed: /net/ipv4/vs/drop_entry .3.5.21.4 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/drop_packet .3.5.21.5 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/secure_tcp .3.5.21.6 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/sync_threshold .3.5.21.24 Missing strategy I removed the binary sysctl handler for those messages and also removed the definitions in ip_vs.h. The alternative would be to implement a proper strategy handler, but syscall sysctl is deprecated. There are other sysctl definitions that are commented out or work with the default sysctl_data strategy. I did not touch these. Signed-off-by: Christian Borntraeger Acked-by: Simon Horman Signed-off-by: David S. Miller commit 2b46b5673ca67d23302c2afac045def988a3cade Author: Michael Neuling Date: Tue Nov 20 15:18:40 2007 +1100 [POWERPC] Fix possible division by zero in scaled time accounting If we get no user time and no system time allocated since the last account_system_vtime, the system to user time ratio estimate can end up dividing by zero. This was causing a problem noticed by Balbir Singh. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit c443acab2eebf12dce7e78fe29e76786f55ad1be Author: Jeremy Kerr Date: Fri Nov 16 13:32:23 2007 +1100 [POWERPC] spufs: Fix context destroy vs /spu readdir race We can currently cause an oops by repeatedly creating and destroying contexts, while doing getdents() calls on the "/spu" directory. This is due to the context's top-level dentry remaining hashed while the context is being destroyed. Fix this by unhashing the context's dentry with the dentry->d_inode->i_mutex held. This way, we'll hit the check for d_unhashed in dentry_readdir, and won't be included in the list of subdirs for /spu. test: spufs-testsuite:tests/01-spu_create/07-destroy-vs-readdir-race Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit a2b51812a4dc5db09ab4d4638d4d8ed456e2457e Author: Linas Vepstas Date: Tue Nov 20 12:28:15 2007 +1100 [POWERPC] Fix RTAS os-term usage on kernel panic The rtas_os_term() routine was being called at the wrong time. The actual rtas call "os-term" will not ever return, and so calling it from the panic notifier is too early. Instead, call it from the machine_reset() call. This splits the rtas_os_term() routine into two: one part to capture the kernel panic message, invoked during the panic notifier, and another part that is invoked during machine_reset(). Prior to this patch, the os-term call was never being made, because panic_timeout was always non-zero. Calling os-term helps keep the hypervisor happy! We have to keep the hypervisor happy to avoid service, dump and error reporting problems. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 29a50a8bd04ce88efe530fad4d0e21d045c0f25a Author: Kim Phillips Date: Mon Nov 5 12:15:51 2007 -0600 [POWERPC] 83xx: Handle mpc8360 rev. 2.1 RGMII timing erratum If on a rev. 2.1, adjust UCC clock and data timing characteristics as specified in the rev.2.1 erratum #2. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 34be4561cd47bab1cd5796ea355dd373264da288 Author: Kim Phillips Date: Mon Nov 5 12:15:35 2007 -0600 [POWERPC] Document rgmii-rxid and rgmii-txid phy-connection-types A h/w bug requires we program the PHY in RGMII mode for internal delay on the receive or transmit side only; document the new property values. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 4a2adca95c6a0741b943e7b690b13d4e56c7adac Author: Kim Phillips Date: Tue Nov 13 17:26:31 2007 -0600 [POWERPC] 83xx: Fix 2nd UCC entry in mpc832x_mds.dts correct the reg property, remove duplicate io port entry, whitespace fixes. Thanks to Peter Van Ackeren for pointing this out. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit d8ecbb93bece05df84e654c296c3c81b3d347c2d Author: Kim Phillips Date: Mon Nov 19 19:04:43 2007 -0600 [POWERPC] 83xx: mpc832x mds: Fix board PHY reset code currently the board-level PHY reset code for the mpc832x MDS messes with reset configuration words source settings which is plain wrong (it looks like this board code was cut-n-pasted from the mpc8360 mds code, which has the PHY reset bits in a different BCSR); this patch points the PHY reset code to the proper mpc832x mds PHY reset bits in the BCSR. Signed-off-by: Peter Van Ackeren Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 7ac33417ecf8c012df0e957cfa0628a6a4347c7d Author: Cyrill Gorcunov Date: Thu Nov 15 21:47:06 2007 +0300 [POWERPC] Fix potential NULL dereference This patch does fix potential NULL pointer dereference that could take place inside of strcmp() if of_get_property() call failed. Signed-off-by: Cyrill Gorcunov Signed-off-by: Kumar Gala commit fbe481756df57673b6acbcd2e139d0d2658f2188 Author: Olof Johansson Date: Tue Nov 20 12:24:45 2007 +1100 [POWERPC] vdso: Fixes for cache block sizes The current VDSO implementation is hardcoded to 128 byte cache blocks, which are only used on IBM's 64-bit processors. Convert it to get the cache block sizes out of vdso_data instead, similar to how the ppc64 in-kernel cache flush does it. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 4fdb2a05ef5703553fdd28f1b96ebdd79f173657 Author: Joe Perches Date: Mon Nov 19 17:48:02 2007 -0800 ACPI: Add missing spaces to printk format Signed-off-by: Joe Perches Signed-off-by: Len Brown commit ddc081a19585c8ba5aad437779950c2ef215360a Author: Venkatesh Pallipadi Date: Mon Nov 19 21:43:22 2007 -0500 cpuidle: fix HP nx6125 regression Fix for http://bugzilla.kernel.org/show_bug.cgi?id=9355 cpuidle always used to fallback to C2 if there is some bm activity while entering C3. But, presence of C2 is not always guaranteed. Change cpuidle algorithm to detect a safe_state to fallback in case of bm_activity and use that state instead of C2. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 5062911830a66df0c0ad28c387a8c0623cb0d28c Author: Venkatesh Pallipadi Date: Mon Nov 19 19:49:00 2007 -0500 cpuidle: add sched_clock_idle_[sleep|wakeup]_event() hooks Port 2aa44d0567ed21b47b87d68819415d48194cb923 (sched: sched_clock_idle_[sleep|wakeup]_event()) to cpuidle. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit c9c860e5349ef62cd9226694b3aa625ef66f504e Author: Venkatesh Pallipadi Date: Mon Nov 19 19:48:00 2007 -0500 cpuidle: fix C3 for no bus-master control case Port 18eab8550397f1f3d4b8b2c5257c88dae25d58ed (Enable C3 even when PM2_control is zero) to cpuidle. Without this patch, some systems will notice a regression when enabling CPU_IDLE -- C3 would no longer be available. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 2a97468024fb5b6eccee2a67a7796485c829343a Author: Petr Tesarik Date: Tue Nov 20 02:24:08 2007 +0000 [CIFS] Fix spurious reconnect on 2nd peek from read of SMB length When retrying kernel_recvmsg() because of a short read, check returned length against the remaining length, not against total length. This avoids unneeded session reconnects which would otherwise occur when kernel_recvmsg() finally returns zero when asked to read zero bytes. Signed-off-by: Petr Tesarik Signed-off-by: Jeff Layton Signed-off-by: Steve French commit de0c74e7f98d8a06b784e120103eb388da8194f6 Author: Olof Johansson Date: Mon Nov 5 20:35:33 2007 -0600 [POWERPC] pasemi: Don't reset mpic at boot Due to an erratum, we don't want to reset the mpic at boot time. It can sometimes cause problems with lost interrupts later on while running. Signed-off-by: Olof Johansson commit 52142e756e9bf6485d3d53596e8aff2e816a7253 Author: Benjamin Herrenschmidt Date: Mon Nov 19 19:25:06 2007 +1100 [POWERPC] Fix kmalloc alignment on non-coherent DMA platforms On platforms doing non-coherent DMA (4xx, 8xx, ...), it's important that the kmalloc minimum alignment is set to the cache line size, to avoid sharing cache lines between different objects, so that DMA to one of the objects doesn't corrupt the other. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit f9b6c1de697f07dd0fb1c79bb3a6a8aa302f7476 Author: Kamalesh Babulal Date: Mon Nov 19 17:44:05 2007 +1100 [POWERPC] Fix build failure on legacy iSeries Include in arch/powerpc/mm/stab.c to fix the following compile error (found with randconfig): CC arch/powerpc/mm/stab.o arch/powerpc/mm/stab.c: In function "stab_initialize": arch/powerpc/mm/stab.c:282: error: implicit declaration of function "HvCall1" arch/powerpc/mm/stab.c:282: error: "HvCallBaseSetASR" undeclared (first use in this function) arch/powerpc/mm/stab.c:282: error: (Each undeclared identifier is reported only once arch/powerpc/mm/stab.c:282: error: for each function it appears in.) make[1]: *** [arch/powerpc/mm/stab.o] Error 1 make: *** [arch/powerpc/mm] Error 2 Signed-off-by: Kamalesh Babulal Acked-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 59f91ff11e594913a5b3c03a4707fdf02338c8df Author: Henrique de Moraes Holschuh Date: Sun Nov 18 09:18:29 2007 -0200 ACPI: thinkpad-acpi: fix oops when a module parameter has no value set_ibm_param() could OOPS with a NULL pointer derreference if one did not give any values for a module parameter it handles. This would, of course, cause all sort of trouble for future modprobing and require a reboot to clean up properly. Fix it by returning -EINVAL if no values are given for the parameter, and also avoid any nastyness from BUG_ON while at it. How to reproduce: modprobe thinkpad-acpi brightness Signed-off-by: Henrique de Moraes Holschuh Tested-by: Mike Kershaw Signed-off-by: Len Brown commit 5fe619f983d6c7c0a578fcaabf80edd30e7ce46c Author: Takashi Iwai Date: Thu Nov 15 14:42:34 2007 +0100 [ALSA] ca0106 - Check value range in ctl callbacks Check the value ranges in ctl put callbacks properly. Some callbacks may access a wrong pointer depending on the value passed. Also, fixed the access to the wrong field for enum values, and fixed some callbacks to return the proper error code. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7eba5c9dc3735b14e3df7366671adc15e0c8a048 Author: Takashi Iwai Date: Wed Nov 14 14:53:42 2007 +0100 [ALSA] hda-codec - Check PINCAP only for PIN widgets The recent addition of checking PINCAP for EAPD seems to break some systems due to unexpected response from the codec chip. We shouldn't issue GET_PINCAP verb to non-PIN widgets. Now checks the widget type before checking EAPD bit. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 60fac85fffc74cdd2fbdae821f269594ca25b6b1 Author: Clemens Ladisch Date: Mon Nov 12 08:47:57 2007 +0100 [ALSA] mpu401: fix recursive locking in timer When the output and input ports are used at the same time, the timer can be interrupted by the hardware interrupt, so we have to disable interrupts when we take a lock in the timer. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 56c36ca3b2df3ad8f2a3b7d3fba3670695163aaa Author: Clemens Ladisch Date: Tue Oct 30 08:59:14 2007 +0100 [ALSA] cmipci: fix FLINKON/OFF bits Fix the definitions of the CM_FLINKON/CM_FLINKOFF register bits that were garbled in the last 'update register definitions' patch. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit d29240ce57d96db7300360d1e6f18357810a5c2b Author: Takashi Iwai Date: Fri Oct 26 12:35:56 2007 +0200 [ALSA] hda-codec - Disable shared stream on AD1986A AD1986A has a hardware problem that it cannot share a stream with multiple pins properly. The problem occurs e.g. when a volume is changed during playback. So far, hda-intel driver unconditionally assigns the stream to multiple output pins in copy-front mode, and this should be avoided for AD1986A codec. The original fix patch was by zhejiang . Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f0714d20234062bd0a8f49a6b32f7d1d7f3c2943 Author: Len Brown Date: Mon Nov 19 12:23:59 2007 -0500 Revert "Fix very high interrupt rate for IRQ8 (rtc) unless pnpacpi=off" This reverts commit 9cd8047b463f213c294f756119ac353312e7a152. commit 5870a8cd23181703cc76f88f630372f8602c7648 Author: Alexey Starikovskiy Date: Thu Nov 15 21:52:47 2007 +0300 ACPI: EC: Don't init EC early if it has no _INI Option to init EC early inserted to handle #8598 ASUS problem, introduced several others. EC driver in this particular case has fake _INI method, not present on other machines, which don't need or break from this workaround, so lets use its presence as a flag for early init. http://bugzilla.kernel.org/show_bug.cgi?id=9262 http://bugzilla.kernel.org/show_bug.cgi?id=8598 https://bugzilla.novell.com/show_bug.cgi?id=334806 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 65ea6520375cc09d19ecb46f03ab7ef70bcf06dd Author: Len Brown Date: Mon Nov 19 11:22:44 2007 -0500 Revert "acpi: make ACPI_PROCFS default to y" This reverts commit cbff2fbf55c21f50298b1aef1263b11bf510e35f. commit 3539a901d60ae84f8b0748cd26c1c263c2b3ef5f Author: Len Brown Date: Mon Nov 19 11:22:35 2007 -0500 Revert "ACPI: add documentation for deprecated /proc/acpi/battery in ACPI_PROCFS" This reverts commit 6e800af233e0bdf108efb7bd23c11ea6fa34cdeb. commit fdcedbba2f98c94bfbac9f6e712ab765f997b8dc Author: Alexey Starikovskiy Date: Mon Nov 19 16:33:45 2007 +0300 ACPI: Split out control for /proc/acpi entries from battery, ac, and sbs. Introduce new ACPI_PROCFS_POWER (default Yes) config option and move procfs code in battery, ac, and sbs drivers under it. This is done to allow ACPI_PROCFS to be default No. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 3d1d662ef423adf6947a37e230f4d7e8ed7c9544 Author: Josh Boyer Date: Sat Nov 17 04:29:56 2007 +1100 [POWERPC] 4xx: Use virtual PVR value to init FPU on arch/ppc 440EP This fixes arch/ppc 440EP platforms to setup the FPU correctly. A virtual PVR is used, as 440GR platforms share an identical hardware PVR value and do not have an FPU. Signed-off-by: Josh Boyer commit b8b799a497e4a4bfd5fca8abc526e908b26c71e8 Author: Valentine Barshak Date: Wed Nov 14 07:25:21 2007 +1100 [POWERPC] 4xx: UIC add mask_ack callback This adds uic_mask_ack_irq() callback to PowerPC 4xx uic code to avoid kernel crash. It is used for edge-triggered interrupts by handle_uic_irq(). Signed-off-by: Valentine Barshak Acked-by: David Gibson Signed-off-by: Josh Boyer commit 2ae24c521a9793e36b1a2311fa64915c2e7b1b7b Author: Roel Kluin <12o3l@tiscali.nl> Date: Thu Nov 8 09:22:48 2007 +1100 [POWERPC] 4xx: balance ioremap/ioumap calls for Yucca Call iounmap before returning from an error case. Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Josh Boyer commit 221fe3a4be6aa742693f3a82824235c82d41846f Author: Joachim Foerster Date: Thu Nov 8 03:14:15 2007 +1100 [POWERPC] Xilinx: Register AC97 Controller Reference with the platform bus Add AC97 platform bus registration for Xilinx Virtex platforms. Signed-off-by: Joachim Foerster Signed-off-by: Grant Likely Signed-off-by: Josh Boyer commit ed08aff7bb1a275525c024dcba2e7127e77d4edd Author: Jon Loeliger Date: Wed Nov 7 05:13:04 2007 +1100 [POWERPC] 4xx: Replace #includes of asm/of_platform.h with linux/of_platform.h. Signed-off-by: Jon Loeliger Acked-by: Stephen Rothwell Signed-off-by: Josh Boyer commit c88c5786d3df51ccfa4e2d111fc9c8fc0f5b2797 Author: Danny Baumann Date: Fri Nov 2 13:47:53 2007 +0100 ACPI: Video: Increase buffer size for writes to brightness proc file. In order to be able to write the value "100" to /proc/acpi/video/.../brightness, we have to allocate 5 bytes: 4 characters will be written (1, 0, 0 plus null byte), and 1 byte should be buffer for a terminating NULL character. http://bugzilla.kernel.org/show_bug.cgi?id=9278 Signed-off-by: Danny Baumann Acked-by: Zhang Rui Signed-off-by: Len Brown commit f2d68935ba08cf80f151bbdb5628381184e4a498 Author: Alexey Starikovskiy Date: Mon Nov 19 01:37:03 2007 +0300 ACPI: EC: Workaround for optimized controllers Some controllers fail to send confirmation GPE after address write. Detect this and don't expect such confirmation in future. This is a generalization of previous workaround (66c5f4e7367b0085652931b2f3366de29e7ff5ec), which did only read address. http://bugzilla.kernel.org/show_bug.cgi?id=9327 Signed-off-by: Alexey Starikovskiy Tested-by: Romano Giannetti Signed-off-by: Len Brown commit 5131d4d83858e208f634622dc4a2e7042f796950 Author: Benjamin Herrenschmidt Date: Fri Nov 16 18:42:18 2007 +1100 [POWERPC] Fix declaration of pcibios_free_controller pcibios_free_controller() is now available for both 32 and 64 bits but the header only declares it for 64 bits. This moves the declaration down next to the pcibios_alloc_controller() one. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 0961dbfbb89276281b47e80a46071d876aebe7a3 Author: Mark A. Greer Date: Thu Nov 15 06:04:02 2007 +1100 [POWERPC] prpmc2800: Enable L2 cache Turn on the L2 cache on the prpmc2800 platform. Signed-off-by: Mark A. Greer commit 86932082547cd47e5ba4d66b52bd138aa06baae8 Author: Stephen Rothwell Date: Wed Nov 14 15:07:39 2007 +1100 [POWERPC] pSeries: make pseries_defconfig minus PCI build again Signed-off-by: Stephen Rothwell Acked-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 8f5c7579caba587a72ed91c7d76028efb8adb168 Author: Nathan Lynch Date: Wed Nov 14 03:15:13 2007 +1100 [POWERPC] Fix multiple bugs in rtas_ibm_suspend_me code There are several issues with the rtas_ibm_suspend_me code, which enables platform-assisted suspension of an LPAR as covered in PAPR 2.2. 1.) rtas_ibm_suspend_me uses on_each_cpu() to invoke rtas_percpu_suspend_me on all cpus via IPI: if (on_each_cpu(rtas_percpu_suspend_me, &data, 1, 0)) ... 'data' is on the calling task's stack, but rtas_ibm_suspend_me takes no measures to ensure that all instances of rtas_percpu_suspend_me are finished accessing 'data' before returning. This can result in the IPI'd cpus accessing random stack data and getting stuck in H_JOIN. This is addressed by using an atomic count of workers and a completion on the stack. 2.) rtas_percpu_suspend_me is needlessly calling H_JOIN in a loop. The only event that can cause a cpu to return from H_JOIN is an H_PROD from another cpu or a NMI/system reset. Each cpu need call H_JOIN only once per suspend operation. Remove the loop and the now unnecessary 'waiting' state variable. 3.) H_JOIN must be called with MSR[EE] off, but lazy interrupt disabling may cause the caller of rtas_ibm_suspend_me to call H_JOIN with it on; the local_irq_disable() in on_each_cpu() is not sufficient. Fix this by explicitly saving the MSR and clearing the EE bit before calling H_JOIN. 4.) H_PROD is being called with the Linux logical cpu number as the parameter, not the platform interrupt server value. (It's also being called for all possible cpus, which is harmless, but unnecessary.) This is fixed by calling H_PROD for each online cpu using get_hard_smp_processor_id(cpu) for the argument. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit 843393d304ef4d44a8a5106e68dcd4eb1102437a Author: Paul Mundt Date: Mon Nov 19 13:11:04 2007 +0900 fb: Orphan imsttfb. I haven't had this hardware in years, so kill off my MAINTAINERS entry for this and flag it as orphaned. Signed-off-by: Paul Mundt commit a0ce9aca97ccf71dc969b44a4c9b3c36da0be362 Author: Tejun Heo Date: Mon Nov 19 12:06:37 2007 +0900 ata_piix: port enable for the first SATA controller of ICH8 is 0xf not 0x3 ICH8 and 9 use two SFF controllers to show 6 SATA ports. The first controllre hosts the first 4 ports while the second one hosts the last 2. The PCS register of the first controller encompasses the first four ports or all six ports depending on configuration while PCS of the second controller controls the last two ports. Using 0xf for the first controller and 0x3 for the second controller always result in the correct configuration. Signed-off-by: Tejun Heo commit 2cbb12a4ee0881a63f3c09178d4ac386d5073f64 Author: Paul Mundt Date: Mon Nov 19 13:08:37 2007 +0900 sh: Update mailing list info. DaveM has provided a vger list, update MAINTAINERS to reflect this. Also, rip out the sh64 entry (as this can just be rolled in to the general sh case), and add the git path. Signed-off-by: Paul Mundt commit 0f1a394ba68c4bbdedb1dbfdf6784ba54c07bbe4 Author: Paul Mundt Date: Mon Nov 19 13:05:18 2007 +0900 sh: lockless UTLB miss fast-path. With the refactored update_mmu_cache() introduced in older kernels, there's no longer any need to take the page_table_lock in this path, so simply drop it completely. Without this, performance degradation is seen on SMP on heavily threaded workloads that don't use the split ptlock, and ultimately we have no reason to contend for the lock in the first place. Signed-off-by: Paul Mundt commit 1c6b2ca5e0939bf8b5d1a11f1646f25189ecd447 Author: Paul Mundt Date: Mon Nov 19 13:00:32 2007 +0900 sh: Kill off UTLB flush in fast-path. The __do_page_fault() fast-path contains a UTLB flush in order to force an ITLB reload, this isn't needed in practice as the ITLB is auto-reloaded from the UTLB anyways, which is already displaced by the manual 'ldtlb' in the update_mmu_cache() path. This provides a measurable speed up in the TLB miss fast-path. Signed-off-by: Paul Mundt commit 0349337467dc6039dcfb225074944ae944e7b34e Author: Heiko Schocher Date: Sun Nov 11 13:17:44 2007 +0900 sh: Fix copy_{to,from}_user_page() with cache disabled. Signed-off-by: Heiko Schocher Signed-off-by: Paul Mundt commit 8d8ef2fb931d1035e1f02095086cfd3f78eafe3f Author: Thomas Rohwer Date: Mon Nov 19 11:54:24 2007 +0900 ata_piix: only enable the first port on apple macbook pro ICH8M on apple macbook pro occasionally locks up completely during PCS initialization if ports other than the first one are enabled. Add a separate controller ID and only enable the first port. tj: commit description added and patch updated to fit with the previous controller ID update. Signed-off-by: Thomas Rohwer Signed-off-by: Tejun Heo commit 00242ec87608d7a0ed989e54333f3fc8f3d665b0 Author: Tejun Heo Date: Mon Nov 19 11:24:25 2007 +0900 ata_piix: reorganize controller IDs Move piix_pata_mwdma to top, rename ich9_2port_sata to ich8_2port_sata for consistency and use automatically incremented values instead of assigning fixed values to ease adding new controller IDs. Signed-off-by: Tejun Heo commit 1f71d0672ac88e79f444d77102e05292dbc66d0d Author: Gabriel C Date: Thu Nov 15 13:14:00 2007 +0900 pata_sis.c: Add Packard Bell EasyNote K5305 to laptops With newer kernels HDD in my old laptop is limited to UDMA 33. With this patch I get UDMA 100 again. Signed-off-by: Gabriel Craciunescu Signed-off-by: Tejun Heo commit 607126c2a21cd6e9bb807fdd415c1a992f7b9009 Author: Mark Lord Date: Thu Nov 15 13:13:59 2007 +0900 libata-scsi: be tolerant of 12-byte ATAPI commands in 16-byte CDBs Sebastian Kemper reported that issuing CD/DVD commands under libata is not fully compatible with ide-scsi. In particular, the GPCMD_SET_STREAMING was being rejected at the host level in some instances. The reason is that libata-scsi insists upon the cmd_len field exactly matching the SCSI opcode being issued, whereas ide-scsi tolerates 12-byte commands contained within a 16-byte (cmd_len) CDB. There doesn't seem to be a good reason for us to not be compatible there, so here is a patch to fix libata-scsi to permit SCSI opcodes so long as they fit within whatever size CDB is provided. Signed-off-by: Mark Lord Signed-off-by: Tejun Heo commit f442cd86c1c86c5f44bc2cf23f89536f7e4cfe59 Author: Albert Lee Date: Thu Nov 15 10:35:47 2007 +0900 libata: use ATA_HORKAGE_STUCK_ERR for ATAPI tape drives Per Mark's comments, maybe all ATAPI tape drives need ATA_HORKAGE_STUCK_ERR. This patch applys ATA_HORKAGE_STUCK_ERR for all ATAPI tape drives. Signed-off-by: Albert Lee Cc: Mark Lord Signed-off-by: Tejun Heo commit 2d3b8eea7f2fbafd5d779cc92f7aedbd1ef575e9 Author: Albert Lee Date: Thu Nov 15 10:35:46 2007 +0900 libata: workaround DRQ=1 ERR=1 for ATAPI tape drives After an error condition, some ATAPI tape drives set DRQ=1 together with ERR=1 when asking the host to transfer the CDB of the next packet command (i.e. request sense). This patch, a revised version of Alan/Mark's previous patch, adds ATA_HORKAGE_STUCK_ERR to workaround the problem by ignoring the ERR bit and proceed sending the CDB. Signed-off-by: Albert Lee Cc: Alan Cox Cc: Mark Lord Signed-off-by: Tejun Heo commit 21bef6dd2b419f28c8096a8e30ad86dcbff44c02 Author: Adrian Bunk Date: Thu Nov 15 10:35:45 2007 +0900 libata: remove unused functions This patch removes the following obsolete functions: - libata-core.c: __sata_phy_reset() - libata-core.c: sata_phy_reset() - libata-eh.c: ata_qc_timeout() - libata-eh.c: ata_eng_timeout() Signed-off-by: Adrian Bunk Signed-off-by: Tejun Heo commit de753e5e8678d9674de0a3bda9ead9e770fdbf53 Author: Tejun Heo Date: Mon Nov 12 17:56:24 2007 +0900 ata_piix: add SATELLITE U205 to broken suspend list Satellite U205 has alternate product name where the satellite part is all capatalized. Add it to the blacklist. This is reported by Ross Patterson in kernel bugzilla bug #7780. Signed-off-by: Tejun Heo Cc: Ross Patterson commit 21df56c6e2372e09c916111efb6c14c372a5ab2e Author: Herbert Xu Date: Sun Nov 18 18:48:08 2007 -0800 [TCP]: Fix TCP header misalignment Indeed my previous change to alloc_pskb has made it possible for the TCP header to be misaligned iff the MTU is not a multiple of 4 (and less than a page). So I suspect the optimised IPsec MTU calculation is giving you just such an MTU :) This patch fixes it by changing alloc_pskb to make sure that the size is at least 32-bit aligned. This does not cause the problem fixed by the previous patch because max_header is always 32-bit aligned which means that in the SG/NOTSO case this will be a no-op. I thought about putting this in the callers but all the current callers are from TCP. If and when we get a non-TCP caller we can always create a TCP wrapper for this function and move the alignment over there. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 483b23ffa3a5f44767038b0a676d757e0668437e Author: Eric Dumazet Date: Fri Nov 16 02:29:24 2007 -0800 [NET]: Corrects a bug in ip_rt_acct_read() It seems that stats of cpu 0 are counted twice, since for_each_possible_cpu() is looping on all possible cpus, including 0 Before percpu conversion of ip_rt_acct, we should also remove the assumption that CPU 0 is online (or even possible) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b242e891c218162cfbae064b1a9136cdbed5ee53 Author: Ivo van Doorn Date: Thu Nov 15 23:41:31 2007 +0100 rt2x00: Request usb_maxpacket() once The usb max packet size won't change during the device's presence. We should store it in a variable inside rt2x00dev and use that. This should also fix a division error when the device is being hot-unplugged while a frame is being send out. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8329d98e480250ef5f5a083f9c3af50510b5e65d Author: Rusty Russell Date: Mon Nov 19 11:20:43 2007 -0500 virtio: fix net driver loop case where we fail to restart skb is only NULL the first time around: it's more correct to test for being under-budget. Signed-off-by: Rusty Russell commit 9a4b9708f1f2eaf5edd619df578cf3afec36eb82 Author: Matti Linnanvuori Date: Thu Nov 8 08:37:38 2007 -0800 module: fix and elaborate comments Fix and elaborate comments. Signed-off-by: Matti Linnanvuori Signed-off-by: Rusty Russell commit 74b2553f1d13e60fb27063204bd5b6908a6f8494 Author: Rusty Russell Date: Mon Nov 19 11:20:42 2007 -0500 virtio: fix module/device unloading The virtio code never hooked through the ->remove callback. Although noone supports device removal at the moment, this code is already needed for module unloading. This of course also revealed bugs in virtio_blk, virtio_net and lguest unloading paths. Signed-off-by: Rusty Russell commit d1c856e0f1a4c946c6329cff126548ef4288735f Author: Rusty Russell Date: Mon Nov 19 11:20:40 2007 -0500 lguest: Fix uninitialized members in example launcher Thanks valgrind! Signed-off-by: Rusty Russell commit 037cbc63fd83162a8ee0c69680207ce4609adbea Author: Jeff Garzik Date: Sun Nov 18 00:32:31 2007 +0300 ACPI: SBS: Fix retval warning drivers/acpi/sbs.c: In function acpi_battery_add: drivers/acpi/sbs.c:811: warning: ignoring return value of device_create_file, declared with attribute warn_unused_result Additional cleanups: * use struct acpi_battery in acpi_battery_remove() to clean up function calls, just like acpi_battery_add() already does. * put braces around unregister call, as it depends on dev being not NULL. * remove unneeded braces Signed-off-by: Jeff Garzik Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 4c1fe2f78a08e2c514a39c91a0eb7b55bbd3c0d2 Author: Neil Brown Date: Thu Nov 1 16:50:20 2007 +1100 kernel BUG at fs/nfs/namespace.c:108! - can be triggered by bad server Hi Trond, I have discovered that the BUG_ON in nfs_follow_mountpoint: BUG_ON(IS_ROOT(dentry)); can be triggered by a misbehaving server. What happens is the client does a lookup and discoveres that the named directory has a different fsid, so it initiates a mount. It then performs a GETATTR on the mounted directory and gets a different fsid again (due to a bug in the NFS server). This causes nfs_follow_mountpoint to be called on the newly mounted root, which triggers the BUG_ON. To duplicate this, have a directory which contains some mountpoints, and export that directory with the "crossmnt" flag using nfs-utils 1.1.1 (or 1.1.0 I think) The GETATTR on the root of the mounted filesystem will return the information for the top exportpoint, while a lookup will return the correct information. This difference causes the NFS client to BUG. I think the best way to fix this is to trap this possibility early, so just before completing the mount in the NFS client, check that it isn't going to use nfs_mountpoint_inode_operations. As long as i_op will never change once set (is that true?), this should be adequately safe. The following patch shows a possible approach, and it works for me. i.e. when the NFS server is misbehaving, I get ESTALE on those mountpoints, while when the NFS server is working correctly, I get correct behaviour on the client. NeilBrown Signed-off-by: Neil Brown Signed-off-by: Trond Myklebust commit eda4f9b7996e5520934ca2a7310b363463a4e3b0 Author: J. Bruce Fields Date: Tue Nov 6 13:05:36 2007 -0500 sunrpc: rpc_pipe_poll may miss available data in some cases Pipe messages start out life on a queue on the inode, but when first read they're moved to the filp's private pointer. So it's possible for a poll here to return null even though there's a partially read message available. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit ef338bee3f4f509e82066e100f76fecbbbbc4cca Author: Kevin Coffman Date: Fri Nov 9 18:42:09 2007 -0500 sunrpc: return error if unsupported enctype or cksumtype is encountered Return an error from gss_import_sec_context_kerberos if the negotiated context contains encryption or checksum types not supported by the kernel code. This fixes an Oops because success was assumed and later code found no internal_ctx_id. Signed-off-by: Kevin Coffman Signed-off-by: Trond Myklebust commit ffc40f569272b6be60c66441aeae79a686ff54d9 Author: Kevin Coffman Date: Fri Nov 9 18:42:04 2007 -0500 sunrpc: gss_pipe_downcall(), don't assume all errors are transient Instead of mapping all errors except EACCES to EAGAIN, map all errors except EAGAIN to EACCES. An example is user-land negotiating a Kerberos context with an encryption type that is not supported by the kernel code. (This can happen due to mis-configuration or a bug in the Kerberos code that does not honor our request to limit the encryption types negotiated.) This failure is not transient, and returning EAGAIN causes mount to continuously retry rather than giving up. Signed-off-by: Kevin Coffman Signed-off-by: Trond Myklebust commit b09b9417d074e01a4e4ab5c19358f1b3dc76c1b2 Author: Trond Myklebust Date: Thu Oct 25 13:56:10 2007 -0400 NFS: Fix the ustat() regression Since 2.6.18, the superblock sb->s_root has been a dummy dentry with a dummy inode. This breaks ustat(), which actually uses sb->s_root in a vfstat() call. Fix this by making the s_root a dummy alias to the directory inode that was used when creating the superblock. Signed-off-by: Trond Myklebust commit 6840999b192b1b57d713ddee3761c457a2779036 Author: Sam Ravnborg Date: Sat Nov 17 15:37:31 2007 +0100 x86: simplify "make ARCH=x86" and fix kconfig all.config Simplify "make ARCH=x86" and fix kconfig so we again can set 64BIT in all.config. For a fix the diffstat is nice: 6 files changed, 3 insertions(+), 36 deletions(-) The patch reverts these commits: - 0f855aa64b3f63d35a891510cf7db932a435c116 ("kconfig: add helper to set config symbol from environment variable") - 2a113281f5cd2febbab21a93c8943f8d3eece4d3 ("kconfig: use $K64BIT to set 64BIT with all*config targets") Roman Zippel pointed out that kconfig supported string compares so the additional complexity introduced by the above two patches were not needed. With this patch we have following behaviour: # make {allno,allyes,allmod,rand}config [ARCH=...] option \ host arch | 32bit | 64bit ===================================================== ./. | 32bit | 64bit ARCH=x86 | 32bit | 32bit ARCH=i386 | 32bit | 32bit ARCH=x86_64 | 64bit | 64bit The general rule are that ARCH= and native architecture takes precedence over the configuration. So make ARCH=i386 [whatever] will always build a 32-bit kernel no matter what the configuration says. The configuration will be updated to 32-bit if it was configured to 64-bit and the other way around. This behaviour is consistent with previous behaviour so no suprises here. make ARCH=x86 will per default result in a 32-bit kernel but as the only ARCH= value x86 allow the user to select between 32-bit and 64-bit using menuconfig. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Cc: Andreas Herrmann Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Signed-off-by: Linus Torvalds commit 90c7f4686f82aef875aadf8e5c9c1a9465e5143b Author: Robin Getz Date: Sun Nov 18 00:35:33 2007 +0800 Blackfin arch: cleanup kernel exception message, don't insult the customer. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 80ef88d6d23bf1b94d65db0ac32334d01b9f7350 Author: Sam Ravnborg Date: Sat Nov 17 15:37:31 2007 +0100 x86: simplify "make ARCH=x86" and fix kconfig all.config Simplify "make ARCH=x86" and fix kconfig so we again can set 64BIT in all.config. For a fix the diffstat is nice: 6 files changed, 3 insertions(+), 36 deletions(-) The patch reverts these commits: 0f855aa64b3f63d35a891510cf7db932a435c116 -> kconfig: add helper to set config symbol from environment variable 2a113281f5cd2febbab21a93c8943f8d3eece4d3 -> kconfig: use $K64BIT to set 64BIT with all*config targets Roman Zippel pointed out that kconfig supported string compares so the additional complexity introduced by the above two patches were not needed. With this patch we have following behaviour: # make {allno,allyes,allmod,rand}config [ARCH=...] option \ host arch | 32bit | 64bit ===================================================== ./. | 32bit | 64bit ARCH=x86 | 32bit | 32bit ARCH=i386 | 32bit | 32bit ARCH=x86_64 | 64bit | 64bit The general rule are that ARCH= and native architecture takes precedence over the configuration. So make ARCH=i386 [whatever] will always build a 32-bit kernel no matter what the configuration says. The configuration will be updated to 32-bit if it was configured to 64-bit and the other way around. This behaviour is consistent with previous behaviour so no suprises here. make ARCH=x86 will per default result in a 32-bit kernel but as the only ARCH= value x86 allow the user to select between 32-bit and 64-bit using menuconfig. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Cc: Andreas Herrmann Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" commit af8a5af3ff73055f7554a3a66307ad58792f09d5 Author: Bernd Schmidt Date: Sun Nov 18 00:09:49 2007 +0800 Blackfin arch: fix bug kernel not to boot up with mtd filesystems Revert this patch: move the init sections to the end of memory, so that after they are free, run time memory is all continugous - this should help decrease memory fragementation. When doing this, we also pack some of the other sections a little closer together, to make sure we don't waste memory. To make this happen, we need to rename the .data.init_task section to .init_task.data, so it doesn't get picked up by the linker script glob. Since it causes the kernel not to boot up with mtd filesystems. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit a961d659637b7d77c916597017e2e3730859c333 Author: Jie Zhang Date: Sun Nov 18 00:00:10 2007 +0800 Blackfin arch: More explicitly describe what the instructions do in inline assembly. Signed-off-by: Jie Zhang Signed-off-by: Bryan Wu commit 561cc18b8696fd41367544f45542c096fa08d878 Author: Michael Hennerich Date: Sat Nov 17 23:56:08 2007 +0800 Blackfin arch: add AXIS AX88180 Gigabit Ethernet Hardware and Driver to board files Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 4c26c6c9bf1837ef413c18055d38f0b70af8574e Author: Robin Getz Date: Sun Nov 18 00:20:49 2007 +0800 Blackfin arch: print out modules that are loaded if we get a kernel oops Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 5c91fb902d4e6f6006faf45edd3f25932cb7d58c Author: Michael Hennerich Date: Sat Nov 17 23:46:58 2007 +0800 Blackfin arch: Add assembly function insl_16 /* * CPUs often take a performance hit when accessing unaligned memory * locations. The actual performance hit varies, it can be small if the * hardware handles it or large if we have to take an exception and fix * it * in software. * * Since an ethernet header is 14 bytes network drivers often end up * with * the IP header at an unaligned offset. The IP header can be aligned by * shifting the start of the packet by 2 bytes. Drivers should do this * with: * * skb_reserve(NET_IP_ALIGN); * * The downside to this alignment of the IP header is that the DMA is * now * unaligned. On some architectures the cost of an unaligned DMA is high * and this cost outweighs the gains made by aligning the IP header. * * Since this trade off varies between architectures, we allow * NET_IP_ALIGN * to be overridden. */ This new function insl_16 allows to read form 32-bit IO and writes to 16-bit aligned memory. This is useful in above described scenario - In particular with the AXIS AX88180 Gigabit Ethernet MAC. Once the device is in 32-bit mode, reads from the RX FIFO always decrements 4bytes. While on the other side the destination address in SDRAM is always 16-bit aligned. If we use skb_reserve(0) the receive buffer is 32-bit aligned but later we hit a unaligned exception in the IP code. Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 1754a5d9f97f16f729066b8f125351af4951d6fe Author: Mike Frysinger Date: Fri Nov 23 11:28:11 2007 +0800 Blackfin arch: use do_div() for the 64bit division as pointed out by Bernd If you need a 64 bit divide in the kernel, use asm/div64.h. Revert the addition of udivdi3. Cc: Bernd Schmidt Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 6d1b30e30ca1c831b82c44aedd2536820bdb2bc4 Author: Denys Date: Sat Nov 17 16:27:02 2007 +0100 x86: reboot fixup for wrap2c board Needed to make the wireless board, WRAP2C reboot. Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit 3d9befd2cdf65b1768b0d3078a65cc0ae9aa6412 Author: Yinghai Lu Date: Sat Nov 17 16:27:01 2007 +0100 x86: check boundary in count setup resource need to check info->res_num less than PCI_BUS_NUM_RESOURCES, so info->bus->resource[info->res_num] = res will not beyond of bus resource array when acpi returns too many resource entries. Signed-off-by: Yinghai Lu Cc: Greg Kroah-Hartman Cc: Gary Hade Cc: Len Brown Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit 05dfa35e84331c6921ab394463069e9376f0bd76 Author: Truxton Fulton Date: Sat Nov 17 16:27:01 2007 +0100 x86: fix reboot with no keyboard attached Attempt to fix http://bugzilla.kernel.org/show_bug.cgi?id=8378 Hiroto Shibuya wrote to tell me that he has a VIA EPIA-EK10000 which suffers from the reboot problem when no keyboard is attached. My first patch works for him: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59f4e7d572980a521b7bdba74ab71b21f5995538 But the latest patch does not work for him : http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8b93789808756bcc1e5c90c99f1b1ef52f839a51 We found that it was necessary to also set the "disable keyboard" flag in the command byte, as the first patch was doing. The second patch tries to minimally modify the command byte, but it is not enough. Please consider this simple one-line patch to help people with low end VIA motherboards reboot when no keyboard is attached. Hiroto Shibuya has verified that this works for him (as I no longer have an afflicted machine). Additional discussion: Note that original patch from Truxton DOES disable keyboard and this has been in main tree since 2.6.14, thus it must have quite a bit of air time already. http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.14.y.git;a=commit;h=59f4e7d572980a521b7bdba74ab71b21f5995538 Note that he only mention "System flag" in the description and comment, but in the code, "disable keyboard" flag is set. outb(0x14, 0x60); /* set "System flag" */ In 2.6.23, he made a change to read the current byte and then mask the flags, but along this change, he only set the "System flag" and dropped the setting of "disable keyboard" flag. http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commit;h=8b93789808756bcc1e5c90c99f1b1ef52f839a51 outb(cmd | 0x04, 0x60); /* set "System flag" */ So my request is to restore the setting of disable keyboard flag which has been there since 2.6.14 but disappeared in 2.6.23. Cc: Lee Garrett Cc: "Hiroto Shibuya" Cc: Natalie Protasevich Cc: Dmitry Torokhov Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Aristeu Rozanski Cc: Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit f4df73c2914a49bf6a55896aaecb0563c955e167 Author: Thomas Gleixner Date: Thu Nov 15 21:41:50 2007 -0500 x86: add hpet sanity checks Some BIOSes advertise HPET at 0x0. We really do no want to allocate a resource there. Check for it and leave early. Other BIOSes tell us the HPET is at 0xfed0000000000000 instead of 0xfed00000. Add a check and fix it up with a warning on user request. Signed-off-by: Thomas Gleixner commit bbbd99955bfe84c9ae63f51db946a7bcd21f48be Author: David P. Reed Date: Wed Nov 14 20:14:50 2007 -0500 x86: on x86_64, correct reading of PC RTC when update in progress in time_64.c Correct potentially unstable PC RTC time register reading in time_64.c Stop the use of an incorrect technique for reading the standard PC RTC timer, which is documented to "disconnect" time registers from the bus while updates are in progress. The use of UIP flag while interrupts are disabled to protect a 244 microsecond window is one of the Motorola spec sheet's documented ways to read the RTC time registers reliably. tglx: removed locking changes from original patch, as they gain nothing (read_persistent_clock is only called during boot, suspend, resume - so no hot path affected) and conflict with the paravirt locking scheme (see 32bit code), which we do not want to complicate for no benefit. Signed-off-by: David P. Reed Signed-off-by: Thomas Gleixner commit c399da0d97e06803e51085ec076b63a3168aad1b Author: David P. Reed Date: Wed Nov 14 17:47:35 2007 -0500 x86: fix freeze in x86_64 RTC update code in time_64.c Fix hard freeze on x86_64 when the ntpd service calls update_persistent_clock() A repeatable but randomly timed freeze has been happening in Fedora 6 and 7 for the last year, whenever I run the ntpd service on my AMD64x2 HP Pavilion dv9000z laptop. This freeze is due to the use of spin_lock(&rtc_lock) under the assumption (per a bad comment) that set_rtc_mmss is called only with interrupts disabled. The call from ntp.c to update_persistent_clock is made with interrupts enabled. Signed-off-by: David P. Reed Signed-off-by: Thomas Gleixner commit fa6a1a554b50cbb7763f6907e6fef927ead480d9 Author: David P. Reed Date: Wed Nov 14 17:49:21 2007 -0500 ntp: fix typo that makes sync_cmos_clock erratic Fix a typo in ntp.c that has caused updating of the persistent (RTC) clock when synced to NTP to behave erratically. When debugging a freeze that arises on my AMD64 machines when I run the ntpd service, I added a number of printk's to monitor the sync_cmos_clock procedure. I discovered that it was not syncing to cmos RTC every 11 minutes as documented, but instead would keep trying every second for hours at a time. The reason turned out to be a typo in sync_cmos_clock, where it attempts to ensure that update_persistent_clock is called very close to 500 msec. after a 1 second boundary (required by the PC RTC's spec). That typo referred to "xtime" in one spot, rather than "now", which is derived from "xtime" but not equal to it. This makes the test erratic, creating a "coin-flip" that decides when update_persistent_clock is called - when it is called, which is rarely, it may be at any time during the one second period, rather than close to 500 msec, so the value written is needlessly incorrect, too. Signed-off-by: David P. Reed Signed-off-by: Thomas Gleixner commit d0974b11e0741034fc5d22838b9cb85402a280d6 Author: Thomas Gleixner Date: Thu Nov 15 07:11:12 2007 +0100 Remove x86 merge artifact from top Makefile The x86 merge modified the tags target to handle the two separate source directories. Remove it now that i386/x86_64 are gone completely. Signed-off-by: Thomas Gleixner commit 699d934d5f958d7944d195c03c334f28cc0b3669 Author: Thomas Gleixner Date: Sat Nov 17 13:18:42 2007 +0100 x86: fixup cpu_info array conversion 92cb7612aee39642d109b8d935ad265e602c0563 sets cpu_info->cpu_index to zero for no reason. Referencing cpu_info->cpu_index now points always to CPU#0, which is apparently not what we want. Remove it. Spotted-by: Zou Nan hai Signed-off-by: Thomas Gleixner commit c0c52d28e05e8bdaa2126570c02ecb1a7358cecc Author: Andreas Herrmann Date: Thu Nov 1 19:32:17 2007 +0100 x86: show cpuinfo only for online CPUs Fix regressions introduced with 92cb7612aee39642d109b8d935ad265e602c0563. It can happen that cpuinfo is displayed for CPUs that are not online or even worse for CPUs not present at all. As an example, following was shown for a "second" CPU of a single core K8 variant: processor : 0 vendor_id : unknown cpu family : 0 model : 0 model name : unknown stepping : 0 cache size : 0 KB fpu : yes fpu_exception : yes cpuid level : 0 wp : yes flags : bogomips : 0.00 clflush size : 0 cache_alignment : 0 address sizes : 0 bits physical, 0 bits virtual power management: Signed-off-by: Andreas Herrmann Signed-off-by: Thomas Gleixner commit 903675569e278af86aa08c2af238b0ab997065d1 Author: Andreas Herrmann Date: Wed Nov 7 02:12:58 2007 +0100 x86: fix cpu-hotplug regression Commit d435d862baca3e25e5eec236762a43251b1e7ffc ("cpu hotplug: mce: fix cpu hotplug error handling") changed the error handling in mce_cpu_callback. In cases where not all CPUs are brought up during boot (e.g. using maxcpus and additional_cpus parameters) mce_cpu_callback now returns NOTFIY_BAD because for such CPUs cpu_data is not completely filled when the notifier is called. Thus mce_create_device fails right at its beginning: if (!mce_available(&cpu_data[cpu])) return -EIO; As a quick fix I suggest to check boot_cpu_data for MCE. To reproduce this regression: (1) boot with maxcpus=2 addtional_cpus=2 on a 4 CPU x86-64 system (2) # echo 1 >/sys/devices/system/cpu/cpu2/online -bash: echo: write error: Invalid argument dmesg shows: _cpu_up: attempt to bring up CPU 2 failed Signed-off-by: Andreas Herrmann Signed-off-by: Thomas Gleixner commit 4307d1e5ada595c87f9a4d16db16ba5edb70dcb1 Author: Ingo Molnar Date: Wed Nov 7 18:37:48 2007 +0100 x86: ignore the sys_getcpu() tcache parameter dont use the vgetcpu tcache - it's causing problems with tasks migrating, they'll see the old cache up to a jiffy after the migration, further increasing the costs of the migration. In the worst case they see a complete bogus information from the tcache, when a sys_getcpu() call "invalidated" the cache info by incrementing the jiffies _and_ the cpuid info in the cache and the following vdso_getcpu() call happens after vdso_jiffies have been incremented. Signed-off-by: Ingo Molnar Signed-off-by: Ulrich Drepper Signed-off-by: Thomas Gleixner commit 434b3d3209a8d8dcda63c3b14815659f4671b0a8 Author: Randy Dunlap Date: Sun Nov 11 21:06:02 2007 -0800 x86: voyager use correct header file name Fix header file name for Voyager build. In file included from arch/x86/kernel/setup_32.c:61: include/asm-x86/mach-voyager/setup_arch.h:2:26: error: asm/setup_32.h: No such file or directory make[1]: *** [arch/x86/kernel/setup_32.o] Error 1 Signed-off-by: Randy Dunlap Signed-off-by: Thomas Gleixner commit 8f8182106890970bb13bed325f0a04aef931883d Author: Randy Dunlap Date: Sun Nov 11 21:06:45 2007 -0800 x86: fix smp init sections Fix Voyager section mismatch due to using __devinit instead of __cpuinit. WARNING: vmlinux.o(.text+0xd943): Section mismatch: reference to .init.text:init_gdt (between 'voyager_smp_prepare_boot_cpu' and 'smp_vic_cmn_interrupt') Signed-off-by: Randy Dunlap Signed-off-by: Thomas Gleixner commit e5ef67ef0b5d96315d3f7b74823cbfa85938a3a8 Author: Randy Dunlap Date: Sun Nov 11 21:06:23 2007 -0800 x86: fix voyager_cat_init section Fix Voyager section mismatches: voyager_cat_init() should be __init. WARNING: vmlinux.o(.text+0xee83): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xeea6): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xeeac): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xeeb2): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xef4c): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xef56): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf10f): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf13b): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf14b): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf159): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1b1): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1bb): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1c1): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1c7): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1e6): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') Signed-off-by: Randy Dunlap Signed-off-by: Thomas Gleixner commit 142d0a674d50b53366bd5ea02d7093d04960744e Author: Thomas Gleixner Date: Wed Nov 14 13:20:48 2007 +0100 x86: fix bogus memcpy in es7000_check_dsdt() es7000_check_dst() contains a memcpy from 0, which probably should have been a memset. Remove it and check the retunr value from acpi_get_table_header. Noticed by: Joe Perches Signed-off-by: Thomas Gleixner commit e709d84b99e03b0ff588d7754754c507e5543fc9 Author: Mike Frysinger Date: Sat Nov 17 23:24:07 2007 +0800 Blackfin arch: fix spurious newline in header Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 8d2e24c3c1ecac394c3a9a1514bc883a868851d6 Author: Adrian Bunk Date: Sat Nov 17 23:05:06 2007 +0800 Blackfin arch: unexport get_wchan The only user of get_wchan I was able to find is the proc fs - and proc can't be built modular. Signed-off-by: Adrian Bunk Signed-off-by: Bryan Wu commit 05c484355fa6b22af5c1c96db154f108f8b5c625 Author: Adrian Bunk Date: Sun Nov 18 00:41:56 2007 +0800 Blackfin arch: remove dump_thread() The only user is the a.out support. It was therefore removed prior to the blackfin merge from all architectures not supporting a.out. Currently, Blackfin doesn't suppport a.out. Signed-off-by: Adrian Bunk Signed-off-by: Bryan Wu commit 09db9487b099bb18089cc9bff321a84e7494ec50 Author: Robert P. J. Day Date: Sat Nov 17 22:57:03 2007 +0800 Blackfin arch: Typo: "CONFIG_RTC_BFIN_MODULE" -> "CONFIG_RTC_DRV_BFIN_MODULE" i'm *reasonably* confident that this is a typo that should be fixed. Signed-off-by: Robert P. J. Day Signed-off-by: Bryan Wu commit f79f06ab9f86d7203006d2ec8992ac80df36a34e Author: Zhao Yakui Date: Thu Nov 15 17:06:36 2007 +0800 ACPI: Enable MSR (FixedHW) support for T-States Add throttling control via MSR when T-states uses the FixHW Control Status registers. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 0ac3c571315a53c14d2733564f14ebdb911fe903 Author: Zhao Yakui Date: Thu Nov 15 17:05:46 2007 +0800 ACPI: Get throttling info from BIOS only after evaluating _PDC Previously _PDC was evaluated later, and thus we'd not get the chance to tell the BIOS that we can suport FixedHW registers (MSRs) and the BIOS would always ask us to use System I/O access for throttling. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 9bcb27217344c2c1389db3983a436e19484c2f50 Author: Zhao Yakui Date: Thu Nov 15 17:05:05 2007 +0800 ACPI: Use _TSS for throttling control, when present. Add error checks. _TSS was erroneously ignored, in favor of the FADT. When TSS is used, the access width is included in the PTC control/status register. So it is unnecessary that the access bit width is multiplied by 8. At the same time the bit_offset should be considered for system I/O Access. It should be checked the bit_width and bit_offset of PTC regsiter in order to avoid the failure of system I/O access. It means that bit_width plus bit_offset can't be greater than 32. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 0753f6e0a3d9568fb6b8e34753b944d9f8eed05b Author: Zhao Yakui Date: Thu Nov 15 17:03:46 2007 +0800 ACPI: throttle: Change internal APIs better handle _PTC Change the function interface for throttling control via PTC. The following functions are concerned: acpi_read_throttling_status() acpi_write_throttling_state() acpi_get_throttling_value() acpi_get_throttling_state() Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 22cc50199d0616f7b002563a0e9117ba479356e1 Author: Zhao Yakui Date: Thu Nov 15 17:02:03 2007 +0800 ACPI: If _TSS exists, do not access FADT.duty_width Factor out legacy FADT.duty_width code and run it only in the non _TSS case. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 49fbabf56dc715bbb51e59742e82ba762790aac0 Author: Zhao Yakui Date: Thu Nov 15 17:01:06 2007 +0800 ACPI: Handle I/O access width requestst that are not a multiple of 8 bits. We've run into BIOS that hand us 4-bit access width requests for T-state control when the code expected only multipls of 8-bits. Round up. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit ef54d5ad2f58f899be6419fd1090cdeb2439851a Author: Zhao Yakui Date: Thu Nov 15 16:59:30 2007 +0800 ACPI: Enforce T-state limit changes immediately When a T-state limit change notification is received, Linux must evaluate _TPC and change its current T-state immediately to comply with the new limit. Previously, Linux would notice the new limit only upon the next throttling change. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 55b8d50c1a7b2d53eddaa3114dc55b0ed00df0f3 Author: Adrian Bunk Date: Fri Nov 9 07:02:11 2007 +0100 x86: acpi_pciprobe_dmi_table[] must be __devinitdata This patch fixes the following section mismatches with CONFIG_HOTPLUG=n: <-- snip --> ... WARNING: vmlinux.o(.data+0x23640): Section mismatch: reference to .init.text.20:can_skip_ioresource_align (between 'acpi_pciprobe_dmi_table' and 'pcibios_irq_mask') WARNING: vmlinux.o(.data+0x2366c): Section mismatch: reference to .init.text.20:can_skip_ioresource_align (between 'acpi_pciprobe_dmi_table' and 'pcibios_irq_mask') WARNING: vmlinux.o(.data+0x23698): Section mismatch: reference to .init.text.20:can_skip_ioresource_align (between 'acpi_pciprobe_dmi_table' and 'pcibios_irq_mask') ... <-- snip --> Signed-off-by: Adrian Bunk Signed-off-by: Len Brown commit 16ee2db63ef78c387bdda6e0cde3a2051518b6cf Author: Adrian Bunk Date: Fri Nov 9 07:03:13 2007 +0100 x86_64: remove acpi_pci_link_exit() acpi_pci_link_exit() is both unused and empty. Signed-off-by: Adrian Bunk Signed-off-by: Len Brown commit f7a44eadd5a03b8455c7caab402ce96811c6903d Author: Steve French Date: Sat Nov 17 00:01:51 2007 +0000 [CIFS] remove build warning CC: Jeff Layton Signed-off-by: Steve French commit 2442421b176420eca7cb68c575fc221332f488d8 Author: Steve French Date: Fri Nov 16 23:37:35 2007 +0000 [CIFS] Have CIFS_SessSetup build correct SPNEGO SessionSetup request Have CIFS_SessSetup call cifs_get_spnego_key when Kerberos is negotiated. Use the info in the key payload to build a session setup request packet. Also clean up how the request buffer in the function is freed on error. With appropriate user space helper (in samba/source/client). Kerberos support (secure session establishment can be done now via Kerberos, previously users would have to use NTLMv2 instead for more secure session setup). Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 8840dee9dc53883883c321d2811e9f87700d9350 Author: Steve French Date: Fri Nov 16 23:05:52 2007 +0000 [CIFS] minor checkpatch cleanup Signed-off-by: Steve French commit d6c2e4d02b72d8ae63784bdc57cfa285128de211 Author: Jeff Layton Date: Fri Nov 16 22:23:17 2007 +0000 [CIFS] have cifs_get_spnego_key get the hostname from TCP_Server_Info Signed-off-by: Jeff Layton Signed-off-by: Steve French commit c359cf3c61c6ea9f4f461a8bd22023a15d75d9b5 Author: Jeff Layton Date: Fri Nov 16 22:22:06 2007 +0000 [CIFS] add hostname field to TCP_Server_Info struct ...and populate it with the hostname portion of the UNC string. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 70fe7dc05596a405ee6a83265f675a544e32f7d8 Author: Jeff Layton Date: Fri Nov 16 22:21:07 2007 +0000 [CIFS] clean up error handling in cifs_mount Move all of the kfree's sprinkled in the middle of the function to the end, and have the code set rc and just goto there on error. Also zero out the password string before freeing it. Looks like this should also fix a potential memory leak of the prepath string if an error occurs near the end of the function. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 86e8dfc5603ed76917eed0a9dd9e85a1e1a8b162 Author: Martin Peschke Date: Thu Nov 15 13:57:17 2007 +0100 [SCSI] zfcp: fix cleanup of dismissed error recovery actions Calling zfcp_erp_strategy_check_action() after zfcp_erp_action_to_running() in zfcp_erp_strategy() might cause an unbalanced up() for erp_ready_sem, which makes the zfcp recovery fail somewhere along the way: erp thread processing erp_action: | | someone waking up erp thread for erp_action | | | | someone else dismissing erp_action: | | | V V V write_lock_irqsave(&adapter->erp_lock, flags); ... if (zfcp_erp_action_exists(erp_action) == ZFCP_ERP_ACTION_RUNNING) { zfcp_erp_action_to_ready(erp_action); up(&adapter->erp_ready_sem); /* first up() for erp_action */ } write_unlock_irqrestore(&adapter->erp_lock, flags); write_lock_irqsave(&adapter->erp_lock, flags); ... zfcp_erp_action_to_running(erp_action); write_unlock_restore(&adapter->erp_lock, flags); /* processing erp_action */ write_lock_irqsave(&adapter->erp_lock, flags); ... erp_action->status |= ZFCP_STATUS_ERP_DISMISSED; if (zfcp_erp_action_exists(erp_action) == ZFCP_ERP_ACTION_RUNNING) { zfcp_erp_action_to_ready(erp_action); up(&adapter->erp_ready_sem); /* second, unbalanced up() for erp_action */ } ... write_unlock_restore(&adapter->erp_lock, flags); write_lock_irqsave(&adapter->erp_lock, flags); if (erp_action->status & ZFCP_STATUS_ERP_DISMISSED) { zfcp_erp_action_dequeue(erp_action); retval = ZFCP_ERP_DISMISSED; } ... write_unlock_restore(&adapter->erp_lock, flags); down(&adapter->erp_ready_sem); /* this down() is meant to balance the first up() */ The erp thread must not dismiss an erp_action after moving that action to erp_running_head. Instead it should just go through the down() operation, which balances the first up(), and run through zfcp_erp_strategy one more time for the second up(), which eventually cleans up erp_action. Which is similar to the normal processing of an event for erp_action doing something asynchronously (e.g. waiting for the completion of an fsf_req). This only works if we make sure that a dismissed erp_action is passed to zfcp_erp_strategy() prior to the other action, which caused actions to be dismissed. Therefore the patch implements this rule: running actions go to the head of the ready list; new actions go to the tail of the ready list; the erp thread picks actions to be processed from the ready list's head. Signed-off-by: Martin Peschke Acked-by: Swen Schillig Signed-off-by: James Bottomley commit d0076f7754dce07c7a1d752034561acadd99eafa Author: Martin Peschke Date: Thu Nov 15 13:57:08 2007 +0100 [SCSI] zfcp: fix dismissal of error recovery actions zfcp_erp_action_dismiss() used to ignore any actions in the ready list. This is a bug. Any action superseded by a stronger action needs to be dismissed. This patch changes zfcp_erp_action_dismiss() so that it dismisses actions regardless of their list affiliation. The ERP thread is able to handle this. It is important to kick the erp thread only for actions in the running list, though, as an imbalance of wakeup signals would confuse the erp thread otherwise. Signed-off-by: Martin Peschke Acked-by: Swen Schillig Signed-off-by: James Bottomley commit 68bf728a225b7f2045bb501854d6e7695b9b015d Author: Steve French Date: Fri Nov 16 18:32:52 2007 +0000 [CIFS] add ver= prefix to upcall format version Acked-by: Jeff Layton Acked-by: Igor Mammedov Signed-off-by: Steve French commit c7d4896621d42c84956911afd5f10a5d317c781a Author: Michael Hennerich Date: Thu Nov 15 21:33:31 2007 +0800 Blackfin arch: Dont use cs_change_per_word, since the AD7877 driver doesnt require it anymore; fix bus numbers, fix typos Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit f02bcec5986870b3ddae26f6be1cde0703abfd8a Author: Mike Frysinger Date: Thu Nov 15 21:29:15 2007 +0800 Blackfin arch: relocate linux/usb_isp1362.h to linux/usb/isp1362.h like in newer linux trees Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 632f658b36c83a7d1b99118ecdfc6835edec66ac Author: Mike Frysinger Date: Thu Nov 15 21:25:47 2007 +0800 Blackfin arch: the usb_sl811.h header has been moved to usb/sl811.h so lets use that version now Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 70b63ba73944fc094e9fddfcbb94799c6ee4c501 Author: Mike Frysinger Date: Thu Nov 15 21:22:53 2007 +0800 Blackfin arch: do not include linux/autoconf.h Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9862cc5278aabd82230369a142c817e37a42caa3 Author: Mike Frysinger Date: Thu Nov 15 21:21:20 2007 +0800 Blackfin arch: change get_bf537_ether_addr() to bfin_get_ether_addr() since this is not BF537 specific and to better match other Blackfin-specific conventions Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 137b1529da492baa654c702ecb60bb950eccb98d Author: Mike Frysinger Date: Thu Nov 22 16:07:03 2007 +0800 Blackfin arch: sharing the board-specific MAC function does not make sense so move it into board-specific files Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b33d51877726b066699b9ee40b5f512c77bdca38 Author: Mike Frysinger Date: Thu Nov 15 21:15:47 2007 +0800 Blackfin arch: fix double fault definition for BF561 core A and core B VDSP has double fault on core a/b inverted for BF561 -- bit 11 is core a while bit 12 is core b Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit a055b2b4de214d7c3c5382ba7e7c65d1476826b3 Author: Mike Frysinger Date: Thu Nov 15 21:12:32 2007 +0800 Blackfin arch: remove useless CONFIG_IRQCHIP_DEMUX_GPIO since we have this always turned on now and dont want it off (and hasnt been an option in a while) Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 0feea17f9401efe4a214db6f43e7208ae8331081 Author: Mike Frysinger Date: Thu Nov 15 21:10:42 2007 +0800 Blackfin arch: fix missing newline to file Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 7c7fd170172fef30e58fc37140471384906b75e0 Author: Mike Frysinger Date: Thu Nov 15 21:10:21 2007 +0800 Blackfin arch: add BF547 to list of accepted procs Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 839e01c2bfba34f97ec36d0d355801e94254ffd5 Author: Robin Getz Date: Thu Nov 15 20:57:53 2007 +0800 Blackfin arch: move the init sections to the end of memory to help decrease memory fragementation move the init sections to the end of memory, so that after they are free, run time memory is all continugous - this should help decrease memory fragementation. When doing this, we also pack some of the other sections a little closer together, to make sure we don't waste memory. To make this happen, we need to rename the .data.init_task section to .init_task.data, so it doesn't get picked up by the linker script glob. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 74ce8322bf8843e6fd04e081d361c107bcf73564 Author: Mike Frysinger Date: Wed Nov 21 23:50:49 2007 +0800 Blackfin arch: split debug stuff off into Kconfig.debug like everyone else Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 529a73fbaeee2f3bd932be8b54665994133be6ae Author: Mike Frysinger Date: Fri Nov 23 14:28:44 2007 +0800 Blackfin arch: punt CONFIG_BFIN -- we already have CONFIG_BLACKFIN Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit e4e9a7adebfc01bfa2a46c76615c249a4082dfec Author: Mike Frysinger Date: Thu Nov 15 20:39:34 2007 +0800 Blackfin arch: fix indentation -- use tabs, not spaces Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 4f25eb85d64640bc656e72917113a84701521b99 Author: Mike Frysinger Date: Thu Nov 15 20:49:44 2007 +0800 Blackfin arch: split board selection off into mach subdirs Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit d07f4380313f3b15eb05797ddfb9a57419178846 Author: Mike Frysinger Date: Thu Nov 15 15:49:17 2007 +0800 Blackfin arch: fix silicon rev display and selection for BF52x/BF54x Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 5c1da582b3a95123ffb1e70ec7cd60e757c7c8c2 Author: Jes Sorensen Date: Fri Nov 9 14:40:41 2007 +0100 [SCSI] qla1280: convert to use the data buffer accessors - remove the unnecessary map_single path. - convert to use the new accessors for the sg lists and the parameters. Fixed to missing initialization of sg lists before calling for_each_sg() by Jes Sorensen - sg list needs to be initialized before trying to pull the elements out of it. Signed-off-by: FUJITA Tomonori Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley commit 6ee6a2f0258c064bbc64ad97dc195063457ebebe Author: Tony Battersby Date: Wed Nov 14 14:38:43 2007 -0600 [SCSI] iscsi: return data transfer residual for data-out commands Currently, the iSCSI driver returns the data transfer residual for data-in commands (e.g. read) but not data-out commands (e.g. write). This patch makes it return the data transfer residual for both types of commands. Signed-off-by: Tony Battersby Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 505f76b3061f6e74a50f378e45ac931abc1fe784 Author: Tony Battersby Date: Wed Nov 14 14:38:42 2007 -0600 [SCSI] iscsi_tcp: fix potential lockup with write commands There is a race condition in iscsi_tcp.c that may cause it to forget that it received a R2T from the target. This race may cause a data-out command (such as a write) to lock up. The race occurs here: static int iscsi_send_unsol_pdu(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask) { struct iscsi_tcp_cmd_task *tcp_ctask = ctask->dd_data; int rc; if (tcp_ctask->xmstate & XMSTATE_UNS_HDR) { BUG_ON(!ctask->unsol_count); tcp_ctask->xmstate &= ~XMSTATE_UNS_HDR; <---- RACE ... static int iscsi_r2t_rsp(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask) { ... tcp_ctask->xmstate |= XMSTATE_SOL_HDR_INIT; <---- RACE ... While iscsi_xmitworker() (called from scsi_queue_work()) is preparing to send unsolicited data, iscsi_tcp_data_recv() (called from tcp_read_sock()) interrupts it upon receipt of a R2T from the target. Both contexts do read-modify-write of tcp_ctask->xmstate. Usually, gcc on x86 will make &= and |= atomic on UP (not guaranteed of course), but in this case iscsi_send_unsol_pdu() reads the value of xmstate before clearing the bit, which causes gcc to read xmstate into a CPU register, test it, clear the bit, and then store it back to memory. If the recv interrupt happens during this sequence, then the XMSTATE_SOL_HDR_INIT bit set by the recv interrupt will be lost, and the R2T will be forgotten. The patch below (against 2.6.24-rc1) converts accesses of xmstate to use set_bit, clear_bit, and test_bit instead of |= and &=. I have tested this patch and verified that it fixes the problem. Another possible approach would be to hold a lock during most of the rx/tx setup and post-processing, and drop the lock only for the actual rx/tx. Signed-off-by: Tony Battersby Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit a4f0c2767e9c55123d7dad7176554e9d6e6056bc Author: Len Brown Date: Wed Nov 14 12:49:13 2007 -0500 ACPI: video - delete stray run-time printk printk("video bus notify\n"); Acked-by: Zhang Rui Signed-off-by: Len Brown commit bbac81f5487175e4bd5602a80c17689d8f82a63e Author: Dmitry Torokhov Date: Mon Nov 5 11:43:32 2007 -0500 ACPI: video - convert semaphore to a mutex Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit ff102ea99099c36250e93a87a9794b5233801020 Author: Dmitry Torokhov Date: Mon Nov 5 11:43:31 2007 -0500 ACPI: video - remove unsafe uses of list_for_each_safe() list_for_each_safe() only protects list from list alterations performed by the same thread. One still needs to implement proper locking when list is being accessed from several threads. Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit f51e83916a0a022d3d0ea39ae2f877c703032923 Author: Dmitry Torokhov Date: Mon Nov 5 11:43:30 2007 -0500 ACPI: video - add missing input_free_device() If input_register_device() fails input_free_device() must be called to release memory allocated for the device. Also consolidate error handling in acpi_bus_video_add() and handle input_allocate_device() failures. Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit 91c05c667b2d8e43e0bbc5f269bf45d4821001d6 Author: Dmitry Torokhov Date: Mon Nov 5 11:43:29 2007 -0500 ACPI: video - fit input device into sysfs tree Properly set up parent on input device registered by the video driver. Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit 133672efbc1085f9af990bdc145e1822ea93bcf3 Author: Steve French Date: Tue Nov 13 22:41:37 2007 +0000 [CIFS] Fix buffer overflow if server sends corrupt response to small request In SendReceive() function in transport.c - it memcpy's message payload into a buffer passed via out_buf param. The function assumes that all buffers are of size (CIFSMaxBufSize + MAX_CIFS_HDR_SIZE) , unfortunately it is also called with smaller (MAX_CIFS_SMALL_BUFFER_SIZE) buffers. There are eight callers (SMB worker functions) which are primarily affected by this change: TreeDisconnect, uLogoff, Close, findClose, SetFileSize, SetFileTimes, Lock and PosixLock CC: Dave Kleikamp CC: Przemyslaw Wegrzyn Acked-by: Jeff Layton Signed-off-by: Steve French commit fa43cd8b100e9c6182f872d0fc4bb3964e100808 Author: Mike Frysinger Date: Tue Nov 13 00:31:33 2007 +0800 Blackfin arch: add a compatible DOUBLE_FAULT define to enable resets on double faults in either core Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 53f8a252df515639de6cc0f43f8c5d5c234adc6b Author: Mike Frysinger Date: Thu Nov 15 15:48:01 2007 +0800 Blackfin arch: remove mention of uClinux/no-mmu ... we are just Blackfin Linux Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 51e7f6830fc831aa1442a84158239dfced41a9b4 Author: Javier Herrero Date: Thu Nov 15 15:45:33 2007 +0800 Blackfin arch: Default config for HV Sistemas H8606 board Signed-off-by: Javier Herrero Signed-off-by: Bryan Wu commit 6a3f0b460cea79f08683cef1862d686a887efd8c Author: Robin Getz Date: Thu Nov 15 15:10:48 2007 +0800 Blackfin arch: fix bug cplbmgr.S does not exit properly on error condition https://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=1685 Ensure that cache/protection is turned back on when we get a fault, and ensure that the initial population of the CPLB tables are correct - that kernel is locked in CPLB tables Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 0954f70ab1ffd9ad945c88c11877a08baed311c7 Author: Michael Hennerich Date: Tue Nov 13 00:16:19 2007 +0800 Blackfin arch: fix AD7877 bus_num and add support for WM8731 SPI control interface Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 5d448dd50712ae42f8176b5bb8db4703bef6f0f5 Author: Bryan Wu Date: Mon Nov 12 23:24:42 2007 +0800 Blackfin arch: move hard coded pin_req to board file Remove some sort of bloaty code, try to get these pin_req arrays built at compile-time - move this static things to the blackfin board file - add pin_req array to struct bfin5xx_spi_master - tested on BF537/BF548 with SPI flash Signed-off-by: Bryan Wu commit 4a589e1ef67fdb2d5fa783117da8dc7cba576af4 Author: Robin Getz Date: Mon Nov 12 22:46:46 2007 +0800 Blackfin arch: fix bux - only reset the PC when necessary, otherwise gdb gets confused Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit f26fbc48f130962fce15f37d079968f0f272e0c2 Author: Robin Getz Date: Mon Nov 12 22:21:30 2007 +0800 Blackfin arch: ensure we work around ANOMALY_05000261 for null pointers We currently do not. Also make it easier to handle cplb violations - in traps.c Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 5f78e89b5f7041895c4820be5c000792243b634f Author: Alan Cox Date: Wed Nov 7 23:58:10 2007 +0000 [SCSI] aacraid: fix security weakness Actually there are several but one is trivially fixed 1. FSACTL_GET_NEXT_ADAPTER_FIB ioctl does not lock dev->fib_list but needs to 2. Ditto for FSACTL_CLOSE_GET_ADAPTER_FIB 3. It is possible to construct an attack via the SRB ioctls where the user obtains assorted elevated privileges. Various approaches are possible, the trivial ones being things like writing to the raw media via scsi commands and the swap image of other executing programs with higher privileges. So the ioctls should be CAP_SYS_RAWIO - at least all the FIB manipulating ones. This is a bandaid fix for #3 but probably the ioctls should grow their own capable checks. The other two bugs need someone competent in that driver to fix them. Signed-off-by: Alan Cox Acked-by: Mark Salyzyn Signed-off-by: James Bottomley commit 4c41d3ad6544f1c9aec37c441af04f5d0ad3a731 Author: Roland Dreier Date: Wed Nov 7 15:09:09 2007 -0800 ACPI: Always return valid 'status' from acpi_battery_get_property() If a battery is at a critical charge level and not being charged or discharged, then the ACPI _BST method will return a state of 4, and the current acpi_battery_get_property() code will not set any property value for POWER_SUPPLY_PROP_STATUS. This will cause an oops in power_supply_show_property() when it reads off the end of the status_text array. This actually was causing a 100% reproducible crash on boot on my laptop with two batteries, when one battery was completely drained and the laptop was not plugged in. Fix this by making sure acpi_battery_get_property() returns POWER_SUPPLY_STATUS_UNKNOWN for any battery state it doesn't already handle explicitly. There doesn't seem to be any status enum value defined that makes more sense than 'unknown' for a battery at a critical charge level. Signed-off-by: Roland Dreier Acked-by: Alexey Starikovskiy Signed-off-by: Len Brown commit e6096963d2125294f736df4fc37f4226d0b4d178 Author: Salyzyn, Mark Date: Wed Nov 7 10:58:12 2007 -0500 [SCSI] aacraid: fix up le32 issues in BlinkLED Signed-off-by: Mark Salyzyn Signed-off-by: James Bottomley commit e85fbc595aa527e0b3c9a738c4dc1d7717afb30c Author: Salyzyn, Mark Date: Wed Oct 31 16:40:37 2007 -0400 [SCSI] aacraid: fix potential panic in thread stop Got a panic in the threading code on an older kernel when the Adapter failed to load properly and driver shut down apparently before any threading had started, can not dupe. Expect that this may be relevant in the latest kernel, but not sure. This patch does no harm, and should alleviate the possibility of this panic. Signed-off-by: Mark Salyzyn Signed-off-by: James Bottomley commit 3b2d871245357015cac621d7612b6ecf59f424df Author: Stephen Rothwell Date: Thu Nov 1 17:32:21 2007 +1100 [SCSI] aacraid: don't assign cpu_to_le32(constant) to u8 Noticed on PowerPC allmod config build: drivers/scsi/aacraid/commsup.c:1342: warning: large integer implicitly truncated to unsigned type drivers/scsi/aacraid/commsup.c:1343: warning: large integer implicitly truncated to unsigned type drivers/scsi/aacraid/commsup.c:1344: warning: large integer implicitly truncated to unsigned type Also fix some whitespace on the changed lines. Signed-off-by: Stephen Rothwell Acked-by: Mark Salyzyn Signed-off-by: James Signed-off-by: James Bottomley commit 4273af8d08c823d5898a2b1c2d0f25b4a8b9eaee Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:25 2007 -0200 ACPI: thinkpad-acpi: fix brightness_set error paths The code calling brightness_set() can't handle EINTR/ERESTARTSYS well, nor is it checking brightness_set() return status properly. Fix it. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit fc589a3ce5f38db6239c147da4f9172a25575ecc Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:24 2007 -0200 ACPI: thinkpad-acpi: allow for syscall restart in sysfs handlers Map an mutex_lock_interruptible() error return into ERESTARTSYS, as the only possible error from mutex_lock_interruptible is EINTR, and that will only happen if signal_pending() causes the mutex lock attempt to abort. This still allows signals to be delivered ASAP, which is much nicer than just doing mutex_lock, and still shadows userspace from EINTR when SA_RESTART is active. Problem reported by Peter Jordan. Signed-off-by: Henrique de Moraes Holschuh Cc: Jean Delvare Cc: Peter Jordan Cc: Richard Neill Signed-off-by: Len Brown commit b856f5b8c022b75bb0504a8c1ce16a5f1656e08b Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:23 2007 -0200 ACPI: thinkpad-acpi: bump up version to 0.17 The lm-sensors 3.0.0/libsensors4 compatibility changes are reason enough to bump up the version string. Do it. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit e11e211a0b21bbb625fac2056bdb54dd02020556 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:22 2007 -0200 ACPI: thinkpad-acpi: prefer standard ACPI backlight level control Newer Lenovo BIOSes support the standard ACPI backlight brightness interface (_BCM, _BQC, _BCL). It should be used instead of the native thinkpad backlight brightness control interface when possible. This patch disables the native brightness support in the driver by default when we detect that the standard ACPI interface is available. The local admin can still enable it using the module parameter "brightness_enable". Note that we need to detect the standard ACPI backlight interface only in boxes for which we would load the native backlight interface in the first place, and that no ThinkPad BIOS has _BCL but misses the other methods, so the detection routines can be really simple. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit 87cc537a54fc017d998cf603f5fab9ca4a85d668 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 18:02:07 2007 -0200 ACPI: thinkpad-acpi: add brightness_force parameter Add a "brightness_enable" module parameter that allows the local admin to force the backlight support to not be enabled. It can also be used to force the backlight support to be enabled, but that is currently a no-op as the backlight support is enabled by default when available. This will be changed by a different patch. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit a3f104c02ab842574e699186cf953551aafe2ca9 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:20 2007 -0200 ACPI: thinkpad-acpi: support 16 levels of brightness (v3) Lenovo ThinkPads often have 16 brightness levels in EC, and not just eight levels like older ThinkPads. They also have standard ACPI backlight brightness control. We detect the number of brightness levels by the presence of a BCLL package with 16 entries. If BCLL is not there, we assume eight levels (Z6*). If it is there, but it doesn't have 16 entries, we assume eight levels (T60). Otherwise we assume sixteen levels (T61, X61, etc). We don't use _BCL because it can have side-effects in thinkpads. Thanks to Thomas Renninger for notifying me of this potential problem. Using the standard ACPI backlight brightness control *instead* of the native thinkpad backlight control is a better idea, though. A different patch will take care of this. Signed-off-by: Henrique de Moraes Holschuh Cc: Thomas Renninger Signed-off-by: Len Brown commit e927c08da53e5c87ca07f7a828d4a0048e7bacf0 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:19 2007 -0200 ACPI: thinkpad-acpi: revert keymap changes Revert commit fba956c46a72f9e7503fd464ffee43c632307e31, "Map volume and brightness events on thinkpads". That commit made some modifications to the default keymaps that cause bad behaviour on all IBM ThinkPads if HAL doesn't know to change them into passive (on-screen-display only) events. The proper solution for IBM ThinkPads is to use the _NOTIFY version of the key codes for the IBM default map (which are not available in mainline yet), and for the Lenovo keymap, it will take some studying of the various DSDTs and testing to know the best path (which I will do shortly). For more data, refer to: http://thread.gmane.org/gmane.linux.kernel/591037/focus=591045 Signed-off-by: Henrique de Moraes Holschuh Cc: Jeremy Katz Signed-off-by: Len Brown