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: