commit ca5de404ff036a29b25e9a83f6919c9f606c5841 Author: Nick Piggin Date: Sat Aug 2 12:02:13 2008 +0200 fs: rename buffer trylock Like the page lock change, this also requires name change, so convert the raw test_and_set bitop to a trylock. Signed-off-by: Nick Piggin Signed-off-by: Linus Torvalds commit 529ae9aaa08378cfe2a4350bded76f32cc8ff0ce Author: Nick Piggin Date: Sat Aug 2 12:01:03 2008 +0200 mm: rename page trylock Converting page lock to new locking bitops requires a change of page flag operation naming, so we might as well convert it to something nicer (!TestSetPageLocked_Lock => trylock_page, SetPageLocked => set_page_locked). This also facilitates lockdeping of page lock. Signed-off-by: Nick Piggin Acked-by: KOSAKI Motohiro Acked-by: Peter Zijlstra Acked-by: Andrew Morton Acked-by: Benjamin Herrenschmidt Signed-off-by: Linus Torvalds commit e9ba9698187ddbc0c5bfcf41de0349a662d23d02 Merge: 2e1e921... ae58388... Author: Linus Torvalds Date: Mon Aug 4 19:04:36 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Remove all cpumask_t local variables in xcall dispatch. sparc64: Kill error_mask from hypervisor_xcall_deliver(). sparc64: Build cpu list and mondo block at top-level xcall_deliver(). sparc64: Disable local interrupts around xcall_deliver_impl() invocation. sparc64: Make all xcall_deliver's go through common helper function. sparc64: Always allocate the send mondo blocks, even on non-sun4v. sparc64: Make smp_cross_call_masked() take a cpumask_t pointer. sparc64: Directly call xcall_deliver() in smp_start_sync_tick_client. sparc64: Call xcall_deliver() directly in some cases. sparc64: Use cpumask_t pointers and for_each_cpu_mask_nr() in xcall_deliver. sparc64: Use xcall_deliver() consistently. sparc64: Use function pointer for cross-call sending. arch/sparc64/kernel/signal.c: removed duplicated #include sparc64: Need to disable preemption around smp_tsb_sync(). commit 2e1e9212ed8c532c6b324de77d3cafef5d2bc846 Merge: 2acb802... f5663f5... Author: Linus Torvalds Date: Mon Aug 4 17:26:15 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (29 commits) sh: enable maple_keyb in dreamcast_defconfig. SH2(A) cache update nommu: Provide vmalloc_exec(). add addrespace definition for sh2a. sh: Kill off ARCH_SUPPORTS_AOUT and remnants of a.out support. sh: define GENERIC_HARDIRQS_NO__DO_IRQ. sh: define GENERIC_LOCKBREAK. sh: Save NUMA node data in vmcore for crash dumps. sh: module_alloc() should be using vmalloc_exec(). sh: Fix up __bug_table handling in module loader. sh: Add documentation and integrate into docbook build. sh: Fix up broken kerneldoc comments. maple: Kill useless private_data pointer. maple: Clean up maple_driver_register/unregister routines. input: Clean up maple keyboard driver maple: allow removal and reinsertion of keyboard driver module sh: /proc/asids depends on MMU. arch/sh/boards/mach-se/7343/irq.c: removed duplicated #include arch/sh/boards/board-ap325rxa.c: removed duplicated #include sh/boards/Makefile typo fix ... commit 2acb802b0c5485aedb46e23b2b45e49573454c09 Merge: d8f4b81... 9c4cb82... Author: Linus Torvalds Date: Mon Aug 4 17:25:06 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: powerpc: Remove use of CONFIG_PPC_MERGE powerpc: Force printing of 'total_memory' to unsigned long long powerpc: Fix compiler warning in arch/powerpc/mm/mem.c powerpc: Move include files to arch/powerpc/include/asm commit d8f4b819c3a5b54a978c6fe5249a17cff490c4a1 Merge: 115a326... f072181... Author: Linus Torvalds Date: Mon Aug 4 17:24:28 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes: kconfig: drop the ""trying to assign nonexistent symbol" warning kconfig: always write out .config commit 115a326c1e5cab457924356123bbfd7d783ecf9d Author: Roland McGrath Date: Mon Aug 4 13:56:01 2008 -0700 tracehook: kerneldoc fix My last change to tracehook.h made it confuse the kerneldoc parser. Move the #define's before the comment so it's happy again. Signed-off-by: Roland McGrath Acked-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 18f6db95dcfa68e93bafe435381299abbffb5c7e Author: Paul Mundt Date: Mon Aug 4 11:21:23 2008 +0100 mn10300: Fix up __bug_table handling in module loader. Platforms that are using GENERIC_BUG must call in to module_bug_finalize()/module_bug_cleanup() in order to scan modules with their own __bug_table sections that are otherwise unaccounted. Signed-off-by: Paul Mundt Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit b13ad6f47c172761a3ce06f0fd12d19118b3076c Merge: f1b134f... 1a61c88... Author: Linus Torvalds Date: Mon Aug 4 17:21:38 2008 -0700 Merge branch 'audit.b56' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current * 'audit.b56' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: Re: [PATCH] Fix the kernel panic of audit_filter_task when key field is set commit f1b134fdf6d36c975b4a66cf952565cd73aebdba Merge: 7274264... e8bac9e... Author: Linus Torvalds Date: Mon Aug 4 17:19:18 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: [SCSI] scsi_transport_spi: fix oops in revalidate [SCSI] ses: fix VPD inquiry overrun [SCSI] block: Fix miscalculation of sg_io timeout in CDROM_SEND_PACKET handler. [SCSI] hptiop: add more PCI device IDs commit 7274264f60cc0b71389efed286001ff0860c3141 Author: Stephen Rothwell Date: Sun Aug 3 22:02:10 2008 +0200 m68k: some asm-sparc include files moved So copy their contents into the asm-m68k files. Signed-off-by: Stephen Rothwell Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 725aad24c3ba96a7c06448c14c265a466cdbd663 Author: Jeremy Fitzhardinge Date: Sun Aug 3 09:33:03 2008 -0700 __sched_setscheduler: don't do any policy checks when not "user" The "user" parameter to __sched_setscheduler indicates whether the change is being done on behalf of a user process or not. If not, we shouldn't apply any permissions checks, so don't call security_task_setscheduler(). Signed-off-by: Jeremy Fitzhardinge Tested-by: Steve Wise Cc: Rusty Russell Cc: "Rafael J. Wysocki" Signed-off-by: Linus Torvalds commit 5941de8eadc287f3f47b87ce9888734ee07d210b Merge: c44df74... c6557e7... Author: Linus Torvalds Date: Mon Aug 4 17:15:07 2008 -0700 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] move include/asm-s390 to arch/s390/include/asm commit c44df7413fd711bca818111b94cbd7ce5f3600a9 Merge: 103a1d5... 0e09c86... Author: Linus Torvalds Date: Mon Aug 4 17:14:21 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6: pcmcia: rsrc_nonstatic: check value, not pointer commit 103a1d5c57fac3623613b130b104f5b03367b31c Author: Alan Cox Date: Mon Aug 4 17:56:28 2008 +0100 sc1200 watchdog driver: Fix locking, sems and coding style Signed-off-by: Andrew Morton Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 81830061bbae282d37c9af30084a1116b6239520 Author: Andrew Morton Date: Mon Aug 4 17:56:02 2008 +0100 alpha: Fix breakage in wdt_pci drivers/watchdog/wdt_pci.c: In function 'wdtpci_ctr_mode': drivers/watchdog/wdt_pci.c:120: error: implicit declaration of function 'udelay' {standard input}: Assembler messages: Signed-off-by: Andrew Morton Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 9f2d1f0da766f84fdb96c9bd79ed0f97036635cb Author: Alan Cox Date: Mon Aug 4 17:55:35 2008 +0100 wdt: Cleanup and sort out locking and inb_p Signed-off-by: Andrew Morton Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 41dc8b72e37c514f7332cbc3f3dd864910c2a1fa Author: Alan Cox Date: Mon Aug 4 17:54:46 2008 +0100 s3c2410_wdt watchdog driver: Locking and coding style Kill off use of semaphores. Fix ioctl races and locking holes. From: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit d6547378df1c11bc6790b87abedb3526ded40ef9 Author: Alan Cox Date: Mon Aug 4 17:54:01 2008 +0100 it8712f_wdt: Locking and coding style Signed-off-by: Andrew Morton Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 670d59c0ae31a872341785b1d93add284c1653ff Author: Alan Cox Date: Mon Aug 4 17:53:22 2008 +0100 ar7_wdt watchdog driver: Fix locking Use unlocked_ioctl Remove semaphores Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d5cae364148088911bdf007a8aaefb46a92f16f7 Author: Alan Cox Date: Mon Aug 4 17:47:07 2008 +0100 vt: Deadlock workaround 2.6.26 corrected the mutex locking on tty resizing to fix the case where you could get the tty/vt sizing out of sync. That turns out to have a deadlock. The actual fix is really major and I've got it lined up as part of the ops changes for 2.6.28 so for 2.6.26/2.6.27 it is safer to reintroduce this ages old minor bug. Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit d7283353221e73a793847252d063ff9186885160 Author: Alan Cox Date: Mon Aug 4 17:21:18 2008 +0100 cris: Fixup compile problems It now compiles with the tty changes but isn't tested (which has to be better than not compiling.. Closes bug #11218 Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit b1cbefe5d5fc2d4a6109961d914027172ce8e152 Author: Alan Cox Date: Mon Aug 4 17:22:11 2008 +0100 blackfin: Fix compile failure in tty code Blackfin peers into the ldisc in an odd way for IRDA snooping which therefore got missed. Simple enough fix. Closes bug #11233 Signed-off-by: Linus Torvalds commit c635fd3d3de9dec4729135add72c2ff32595605b Merge: 82e68f7... cf368d2... Author: Linus Torvalds Date: Mon Aug 4 17:03:56 2008 -0700 Merge git://git.infradead.org/users/dwmw2/random-2.6 * git://git.infradead.org/users/dwmw2/random-2.6: drivers/video/console/promcon.c: fix build error Fix IHEX firmware generation/loading commit 82e68f7ffec3800425f2391c8c86277606860442 Author: Willy Tarreau Date: Sat Aug 2 18:25:16 2008 +0200 sound: ensure device number is valid in snd_seq_oss_synth_make_info snd_seq_oss_synth_make_info() incorrectly reports information to userspace without first checking for the validity of the device number, leading to possible information leak (CVE-2008-3272). Reported-By: Tobias Klein Acked-and-tested-by: Takashi Iwai Cc: stable@kernel.org Signed-off-by: Willy Tarreau Signed-off-by: Linus Torvalds commit 82248a5e92793014d156a12dbcbba633794ce9f8 Merge: c2d5ced... 31981db... Author: Linus Torvalds Date: Mon Aug 4 17:00:37 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6: Add DIP switch readout for HFC-4S IOB4ST Fix remaining big endian issue of hfcmulti mISDN cleanup user interface mISDN fix main ISDN Makefile commit c2d5cedadcd3976cfc1fa5590e3a73a059c6401a Author: Huang Weiyi Date: Sat Aug 2 21:10:23 2008 +0800 drivers/char/efirtc.c: removed duplicated #include Removed duplicated include in drivers/char/efirtc.c. Signed-off-by: Huang Weiyi Signed-off-by: Linus Torvalds commit a477097d9c37c1cf289c7f0257dffcfa42d50197 Author: KOSAKI Motohiro Date: Mon Aug 4 13:41:14 2008 -0700 mlock() fix return values Halesh says: Please find the below testcase provide to test mlock. Test Case : =========================== #include #include #include #include #include #include #include #include #include int main(void) { int fd,ret, i = 0; char *addr, *addr1 = NULL; unsigned int page_size; struct rlimit rlim; if (0 != geteuid()) { printf("Execute this pgm as root\n"); exit(1); } /* create a file */ if ((fd = open("mmap_test.c",O_RDWR|O_CREAT,0755)) == -1) { printf("cant create test file\n"); exit(1); } page_size = sysconf(_SC_PAGE_SIZE); /* set the MEMLOCK limit */ rlim.rlim_cur = 2000; rlim.rlim_max = 2000; if ((ret = setrlimit(RLIMIT_MEMLOCK,&rlim)) != 0) { printf("Cant change limit values\n"); exit(1); } addr = 0; while (1) { /* map a page into memory each time*/ if ((addr = (char *) mmap(addr,page_size, PROT_READ | PROT_WRITE,MAP_SHARED,fd,0)) == MAP_FAILED) { printf("cant do mmap on file\n"); exit(1); } if (0 == i) addr1 = addr; i++; errno = 0; /* lock the mapped memory pagewise*/ if ((ret = mlock((char *)addr, 1500)) == -1) { printf("errno value is %d\n", errno); printf("cant lock maped region\n"); exit(1); } addr = addr + page_size; } } ====================================================== This testcase results in an mlock() failure with errno 14 that is EFAULT, but it has nowhere been specified that mlock() will return EFAULT. When I tested the same on older kernels like 2.6.18, I got the correct result i.e errno 12 (ENOMEM). I think in source code mlock(2), setting errno ENOMEM has been missed in do_mlock() , on mlock_fixup() failure. SUSv3 requires the following behavior frmo mlock(2). [ENOMEM] Some or all of the address range specified by the addr and len arguments does not correspond to valid mapped pages in the address space of the process. [EAGAIN] Some or all of the memory identified by the operation could not be locked when the call was made. This rule isn't so nice and slighly strange. but many people think POSIX/SUS compliance is important. Reported-by: Halesh Sadashiv Tested-by: Halesh Sadashiv Signed-off-by: KOSAKI Motohiro Cc: [2.6.25.x, 2.6.26.x] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc329442b9fd365bec95718013586c07ff600c34 Author: Gerard Kam Date: Mon Aug 4 13:41:12 2008 -0700 atmel_spi: fix hang due to missed interrupt For some time my at91sam9260 board with JFFS2 on serial flash (m25p80) would hang when accessing the serial flash and SPI bus. Slowing the SPI clock down to 9 MHz reduced the occurrence of the hang from "always" during boot to a nuisance level that allowed other SW development to continue. Finally had to address this issue when an application stresses the I/O to always cause a hang. Hang seems to be caused by a missed SPI interrupt, so that the task ends up waiting forever after calling spi_sync(). The fix has 2 parts. First is to halt the DMA engine before the "current" PDC registers are loaded. This ensures that the "next" registers are loaded before the DMA operation takes off. The second part of the fix is a kludge that adds a "completion" interrupt in case the ENDRX interrupt for the last segment of the DMA chaining operation was missed. The patch allows the SPI clock for the serial flash to be increased from 9 MHz to 15 MHz (or more?). No hangs or SPI overruns were encountered. Haavard: while this patch does indeed improve things, I still see overruns and CRC errors on my NGW100 board when running the DataFlash at 10 MHz. However, I think some improvement is better than nothing, so I'm passing this on for inclusion in 2.6.27. Signed-off-by: Gerard Kam Signed-off-by: Haavard Skinnemoen Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5aa6cf302c2758702348aab7457e516d3a5121b9 Author: Ben Dooks Date: Mon Aug 4 13:41:10 2008 -0700 spi: S3C24XX: reset register status on resume. Fix a bug in the spi_s3c24xx driver where it does not reset the registers of the hardware when resuming from suspend (this block has been reset over suspend). Signed-off-by: Ben Dooks Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae583885bfd07474789059cdef399289bd66c8d0 Author: David S. Miller Date: Mon Aug 4 16:56:15 2008 -0700 sparc64: Remove all cpumask_t local variables in xcall dispatch. All of the xcall delivery implementation is cpumask agnostic, so we can pass around pointers to const cpumask_t objects everywhere. The sad remaining case is the argument to arch_send_call_function_ipi(). Signed-off-by: David S. Miller commit 1a3f7d98e5f50f21ce6fb1406a35531d9596c5c6 Author: Linus Torvalds Date: Mon Aug 4 16:50:38 2008 -0700 Revert "UFS: add const to parser token table" This reverts commit f9247273cb69ba101877e946d2d83044409cc8c5 (and fb2e405fc1fc8b20d9c78eaa1c7fd5a297efde43 - "fix fs/nfs/nfsroot.c compilation" - that fixed a missed conversion). The changes cause problems for at least the sparc build. Let's re-do them when the exact issues are resolved. Requested-by: Andrew Morton Requested-by: Steven Whitehouse Cc: David Miller Signed-off-by: Linus Torvalds commit ed4d9c66eb941a416c8cb9a0138c69d46d82fc4f Author: David S. Miller Date: Mon Aug 4 16:47:57 2008 -0700 sparc64: Kill error_mask from hypervisor_xcall_deliver(). It can eat up a lot of stack space when NR_CPUS is large. We retain some of it's functionality by reporting at least one of the cpu's which are seen in error state. Signed-off-by: David S. Miller commit 90f7ae8a55190f5edfb9fda957e25c994ed39ec4 Author: David S. Miller Date: Mon Aug 4 16:42:58 2008 -0700 sparc64: Build cpu list and mondo block at top-level xcall_deliver(). Then modify all of the xcall dispatch implementations get passed and use this information. Now all of the xcall dispatch implementations do not need to be mindful of details such as "is current cpu in the list?" and "is cpu online?" Signed-off-by: David S. Miller commit fca082c9f1e11ec07efa8d2f9f13688521253f36 Author: Linus Torvalds Date: Mon Aug 4 16:36:20 2008 -0700 Revert "[SCSI] extend the last_sector_bug flag to cover more sectors" This reverts commit 2b142900784c6e38c8d39fa57d5f95ef08e735d8, since it seems to break some other USB storage devices (at least a JMicron USB to ATA bridge). As such, while it apparently fixes some cardreaders, it would need to be made conditional on the exact reader it fixes in order to avoid causing regressions. Cc: Alan Jenkins Cc: James Bottomley Signed-off-by: Linus Torvalds commit c02a5119e862dea9a1361182840d41ae1fe24227 Author: David S. Miller Date: Mon Aug 4 16:18:40 2008 -0700 sparc64: Disable local interrupts around xcall_deliver_impl() invocation. Signed-off-by: David S. Miller commit deb16999e452b74011dac5b2fe0d6258df81a2a1 Author: David S. Miller Date: Mon Aug 4 16:16:20 2008 -0700 sparc64: Make all xcall_deliver's go through common helper function. This just facilitates the next changeset where we'll be building the cpu list and mondo block in this helper function. Signed-off-by: David S. Miller commit 43f589235e223418d5807ebcddca73ec8a45f52c Author: David S. Miller Date: Mon Aug 4 16:13:51 2008 -0700 sparc64: Always allocate the send mondo blocks, even on non-sun4v. The idea is that we'll use this cpu list array and mondo block even for non-hypervisor platforms. Signed-off-by: David S. Miller commit 91a4231cc2efb9134373bb2a93be96a284955607 Author: David S. Miller Date: Mon Aug 4 00:51:18 2008 -0700 sparc64: Make smp_cross_call_masked() take a cpumask_t pointer. Ideally this could be simplified further such that we could pass the pointer down directly into the xcall_deliver() implementation. But if we do that we need to do the "cpu_online(cpu)" and "cpu != self" checks down in those functions. Signed-off-by: David S. Miller commit 24445a4ac9d3fdd3f96f0ad277cb2ba274470d94 Author: David S. Miller Date: Mon Aug 4 00:02:31 2008 -0700 sparc64: Directly call xcall_deliver() in smp_start_sync_tick_client. We know the cpu is online and not the current cpu here. Signed-off-by: David S. Miller commit 199266305311d060b6e057fa5c7de01f218bb911 Author: David S. Miller Date: Sun Aug 3 23:56:28 2008 -0700 sparc64: Call xcall_deliver() directly in some cases. For these cases the callers make sure: 1) The cpus indicated are online. 2) The current cpu is not in the list of indicated cpus. Therefore we can pass a pointer to the mask directly. One of the motivations in this transformation is to make use of "&cpumask_of_cpu(cpu)" which evaluates to a pointer to constant data in the kernel and thus takes up no stack space. Hopefully someone in the future will change the interface of arch_send_call_function_ipi() such that it passes a const cpumask_t pointer so that this will optimize ever further. Signed-off-by: David S. Miller commit cd5bc89debb4045d55eeffe325b97f2dfba4ddea Author: David S. Miller Date: Sun Aug 3 23:24:26 2008 -0700 sparc64: Use cpumask_t pointers and for_each_cpu_mask_nr() in xcall_deliver. Signed-off-by: David S. Miller commit 622824dbb536f7bdc241eefc3e1ae31c463b4eb8 Author: David S. Miller Date: Sun Aug 3 23:07:18 2008 -0700 sparc64: Use xcall_deliver() consistently. There remained some spots still vectoring to the appropriate *_xcall_deliver() function manually. Signed-off-by: David S. Miller commit 5e0797e5b84408a13260a107e2f7a49ee6342ae4 Author: David S. Miller Date: Sun Aug 3 22:52:41 2008 -0700 sparc64: Use function pointer for cross-call sending. Initialize it using the smp_setup_processor_id() hook. Signed-off-by: David S. Miller commit abd9e6982815ad7bd2c70dbf4cc0c08b48229d6e Author: Huang Weiyi Date: Sun Aug 3 00:04:13 2008 -0700 arch/sparc64/kernel/signal.c: removed duplicated #include Removed duplicated #include in arch/sparc64/kernel/signal.c. Signed-off-by: Huang Weiyi Signed-off-by: David S. Miller commit a3cf5e6b6f2548b036921da5ab6325dc8a76e207 Author: David S. Miller Date: Sun Aug 3 00:01:05 2008 -0700 sparc64: Need to disable preemption around smp_tsb_sync(). Based upon a bug report by Mariusz Kozlowski It uses smp_call_function_masked() now, which has a preemption-disabled requirement. Signed-off-by: David S. Miller commit f072181e6403b0fe2e2aa800a005497b748fd284 Author: Sam Ravnborg Date: Mon Aug 4 22:29:37 2008 +0200 kconfig: drop the ""trying to assign nonexistent symbol" warning They really stand out now that make *config is less chatty - and they are generally ignored - so drop them. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Cc: Adrian Bunk commit 22127f246dc37ed5bea0915f7860002ba6d87da7 Author: Sam Ravnborg Date: Mon Aug 4 22:18:07 2008 +0200 kconfig: always write out .config Always write out .config also in the case where config did not change. This fixes: http://bugzilla.kernel.org/show_bug.cgi?id=11230 Signed-off-by: Sam Ravnborg Cc: Josh Boyer Cc: Adrian Bunk commit 1a61c88defcd611bd148d6c960b498e1b8bbbe00 Author: zhangxiliang Date: Sat Aug 2 10:56:37 2008 +0800 Re: [PATCH] Fix the kernel panic of audit_filter_task when key field is set Sorry, I miss a blank between if and "(". And I add "unlikely" to check "ctx" in audit_match_perm() and audit_match_filetype(). This is a new patch for it. Signed-off-by: Zhang Xiliang Signed-off-by: Al Viro commit f5663f5bded3364158e2d31904173cb1debc2ecd Author: Paul Mundt Date: Mon Aug 4 16:52:34 2008 +0900 sh: enable maple_keyb in dreamcast_defconfig. Signed-off-by: Paul Mundt commit cce2d453e4940d3fccd42a6917d01027148e11c3 Author: Yoshinori Sato Date: Mon Aug 4 16:33:47 2008 +0900 SH2(A) cache update Includes: - SH2 (7619) Writeback support. - SH2A cache handling fix. Signed-off-by: Yoshinori Sato Signed-off-by: Paul Mundt commit 1af446edfe3239b2b731f3458b3c285c397464cc Author: Paul Mundt Date: Mon Aug 4 16:01:47 2008 +0900 nommu: Provide vmalloc_exec(). Now that SH has switched to vmalloc_exec() for PAGE_KERNEL_EXEC usage, it's apparent that nommu has no vmalloc_exec() definition of its own. Stub in the one from mm/vmalloc.c. Signed-off-by: Paul Mundt commit d8eb2fab18b856fcaebe2619e8eaaa152baebc66 Author: Takashi Yoshii Date: Mon Aug 4 14:28:38 2008 +0900 add addrespace definition for sh2a. Newfile: arch/sh/include/cpu-sh2a/cpu/addrspace.h This file seems had be removed to use fallback (cpu-common/cpu/addrspace.h), but, I'd like to add sh2a specific file here, because 1. the values defined there are not suitable for sh2a. 2. I don't think there is "common" definition for these values. Values are chosen by consideration of followings... P1 is 0. perhaps no question. P2 is from hardware manual, which says no-cache area starts at 20000000. It means that P? space size=20000000. P3 is P2+size since asm/ptrace.h uses P3 as a end of P2. P4 is P3+size since asm/fixup.h uses P4 as a end of P3. Signed-off-by: Takashi YOSHII Signed-off-by: Paul Mundt commit 42ced5561a3f49ba0ef09e94ccc016841fc94aa7 Author: Paul Mundt Date: Mon Aug 4 14:18:53 2008 +0900 sh: Kill off ARCH_SUPPORTS_AOUT and remnants of a.out support. SH never really supported a.out, so this was all just copied over blindly from x86 way back when. As we don't reference linux/a.out.h anywhere in the tree, these can now safely be killed off. Signed-off-by: Paul Mundt commit 5093c9a4e41518425d42c0bb5bb92f514ec77b1d Author: Paul Mundt Date: Mon Aug 4 14:17:13 2008 +0900 sh: define GENERIC_HARDIRQS_NO__DO_IRQ. We haven't called in to __do_IRQ() in a long time, so it seems like a reasonable time to switch this on by default. Signed-off-by: Paul Mundt commit bdcab87b1c54f61dbc0a77648fee4c2b17964d5c Author: Paul Mundt Date: Mon Aug 4 14:09:15 2008 +0900 sh: define GENERIC_LOCKBREAK. Needed for fixing up the __raw_spin_is_contended() reference which results in a build error. Signed-off-by: Paul Mundt commit c3b4adfa65bae300a143188491e285556ca80fff Author: Paul Mundt Date: Mon Aug 4 13:42:49 2008 +0900 sh: Save NUMA node data in vmcore for crash dumps. Presently the NUMA node data isn't saved on kexec. This implements a simple arch_crash_save_vmcoreinfo() for saving off the relevant data. Signed-off-by: Paul Mundt commit 4b59c97325371d51275bdb50523fa98a301615b0 Author: Paul Mundt Date: Mon Aug 4 13:34:29 2008 +0900 sh: module_alloc() should be using vmalloc_exec(). SH-X2 extended mode TLB allows for toggling of the exec bit, so make sure we are using the right protection bits for module space there also. Signed-off-by: Paul Mundt commit 3108cf061228c2c2951006c80fb6fe832000adda Author: Paul Mundt Date: Mon Aug 4 13:32:04 2008 +0900 sh: Fix up __bug_table handling in module loader. We should be calling in to the lib/bug.c module helpers, fix that up. Signed-off-by: Paul Mundt commit b5ed042249cb5f76a428aa40ca219d591dad9eea Author: Paul Mundt Date: Mon Aug 4 12:53:55 2008 +0900 sh: Add documentation and integrate into docbook build. This adds some preliminary docbook bits for SH, tying in to the few interfaces that are exposed and that have adequate kerneldoc comments. Signed-off-by: Paul Mundt commit 6a9545bd95e88d61df942b9087cb59b8c7a6dc56 Author: Paul Mundt Date: Mon Aug 4 12:51:06 2008 +0900 sh: Fix up broken kerneldoc comments. These were completely unparseable, so fix them up. Signed-off-by: Paul Mundt commit 9c4cb82515130c62224e23fdf7c13c8f6c59c614 Author: Kumar Gala Date: Sat Aug 2 02:44:11 2008 +1000 powerpc: Remove use of CONFIG_PPC_MERGE Now that arch/ppc is gone and CONFIG_PPC_MERGE is always set, remove the dead code associated with !CONFIG_PPC_MERGE from arch/powerpc and include/asm-powerpc. Signed-off-by: Kumar Gala Signed-off-by: Paul Mackerras commit c7c8eede2739289df02a1ab297cc476c6f38dca7 Author: Tony Breeds Date: Fri Aug 1 11:38:39 2008 +1000 powerpc: Force printing of 'total_memory' to unsigned long long total_memory is a 'phys_addr_t', Which can be either 64 or 32 bits. Force printing as unsigned long long to silence the warning. Signed-off-by: Tony Breeds Signed-off-by: Paul Mackerras commit fb61063587982b52304d62cdbb6a0a88d26ae7ef Author: Tony Breeds Date: Thu Jul 31 13:51:42 2008 +1000 powerpc: Fix compiler warning in arch/powerpc/mm/mem.c Explicitly cast to unsigned long long, rather than u64. Signed-off-by: Tony Breeds Signed-off-by: Paul Mackerras commit b8b572e1015f81b4e748417be2629dfe51ab99f9 Author: Stephen Rothwell Date: Fri Aug 1 15:20:30 2008 +1000 powerpc: Move include files to arch/powerpc/include/asm from include/asm-powerpc. This is the result of a mkdir arch/powerpc/include/asm git mv include/asm-powerpc/* arch/powerpc/include/asm Followed by a few documentation/comment fixups and a couple of places where was being used explicitly. Of the latter only one was outside the arch code and it is a driver only built for powerpc. Signed-off-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 617870632de6739fca0893f3e6648e9ae1bd0ddb Author: Paul Mundt Date: Mon Aug 4 10:58:24 2008 +0900 maple: Kill useless private_data pointer. We can simply wrap in to the dev_set/get_drvdata(), there's no reason to track an extra level of private data on top of the struct device. Signed-off-by: Paul Mundt commit 63870295de9adb365cd121dab94379b8cfdf986a Author: Paul Mundt Date: Mon Aug 4 10:39:46 2008 +0900 maple: Clean up maple_driver_register/unregister routines. These were completely inconsistent. Clean these up to take a maple_driver pointer directly for consistency. Signed-off-by: Paul Mundt commit 459021fe3627083ea6678a7b29f9f74accf9c6fd Author: Adrian McMenamin Date: Mon Aug 4 10:09:03 2008 +0900 input: Clean up maple keyboard driver Have a single probe function instead of a probe and a connect function. Also tidy a comment. Signed-off-by: Adrian McMenamin Signed-off-by: Paul Mundt commit 86d9d32c7b17f8145dc8cbc9667e6385bf8ebc67 Author: Adrian McMenamin Date: Wed Jul 30 12:31:38 2008 -0700 maple: allow removal and reinsertion of keyboard driver module Allow the removal (and subsequent reinsertion) of the maple_keyb (maple keyboard) driver by adding a working removal function. Also tidy long lines. Signed-off-by: Adrian McMenamin Cc: Dmitry Torokhov Cc: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Paul Mundt commit c07abb6dbec754511427dd847f10cfdec6d36b3c Author: Paul Mundt Date: Mon Aug 4 08:11:03 2008 +0900 sh: /proc/asids depends on MMU. Signed-off-by: Paul Mundt commit 8f616cd5249e03c9e1b371623d85e76d4b86bbc1 Merge: 7e31aa1... 7d55992... Author: Linus Torvalds Date: Sun Aug 3 10:50:44 2008 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext4: remove write-only variables from ext4_ordered_write_end ext4: unexport jbd2_journal_update_superblock ext4: Cleanup whitespace and other miscellaneous style issues ext4: improve ext4_fill_flex_info() a bit ext4: Cleanup the block reservation code path ext4: don't assume extents can't cross block groups when truncating ext4: Fix lack of credits BUG() when deleting a badly fragmented inode ext4: Fix ext4_ext_journal_restart() ext4: fix ext4_da_write_begin error path jbd2: don't abort if flushing file data failed ext4: don't read inode block if the buffer has a write error ext4: Don't allow lg prealloc list to be grow large. ext4: Convert the usage of NR_CPUS to nr_cpu_ids. ext4: Improve error handling in mballoc ext4: lock block groups when initializing ext4: sync up block and inode bitmap reading functions ext4: Allow read/only mounts with corrupted block group checksums ext4: Fix data corruption when writing to prealloc area commit 7e31aa11fc672bbe0dd0da59513c9efe3809ced7 Merge: 071f492... 9cb7117... Author: Linus Torvalds Date: Sun Aug 3 10:39:02 2008 -0700 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 5182/1: pxa: Fix pcm990 compilation [ARM] Fix explicit asm(-arm)?/arch-foo references [ARM] move include/asm-arm to arch/arm/include/asm [ARM] Remove explicit dependency for misc.o from compressed/Makefile [ARM] initrd: claim initrd memory exclusively [ARM] pxa: add support for L2 outer cache on XScale3 (attempt 2) [ARM] 5180/1: at91: Fix at91_nand -> atmel_nand rename fallout [ARM] add Sascha Hauer as Freescale i.MX Maintainer [ARM] i.MX: add missing clock functions exports [ARM] i.MX: remove set_imx_fb_info() export [ARM] mx1ads: make mmc platform data available for modules [ARM] mx2: add missing Kconfig dependency commit c48e64ae574a1e30a23174701560a222a192e4c3 Author: Huang Weiyi Date: Sun Aug 3 22:18:51 2008 +0800 arch/sh/boards/mach-se/7343/irq.c: removed duplicated #include Removed duplicated include in arch/sh/boards/mach-se/7343/irq.c. Signed-off-by: Huang Weiyi Signed-off-by: Paul Mundt commit 8edd744202e83ac2fce13f4898a90b403cc22141 Author: Huang Weiyi Date: Sun Aug 3 22:18:48 2008 +0800 arch/sh/boards/board-ap325rxa.c: removed duplicated #include Removed duplicated include in arch/sh/boards/board-ap325rxa.c. Signed-off-by: Huang Weiyi Signed-off-by: Paul Mundt commit 9cb7117fa4858468014f76bd996076985111e955 Author: Guennadi Liakhovetski Date: Sun Aug 3 00:02:35 2008 +0100 [ARM] 5182/1: pxa: Fix pcm990 compilation Compiling pcm990 produces an error: In file included from arch/arm/mach-pxa/pcm990-baseboard.c:25: include/linux/ide.h:645: error: 'CONFIG_IDE_MAX_HWIFS' undeclared here (not in a function) Fix it by removing unneeded header include. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Russell King commit cf368d2f9aced8adc8bd6b1f04294a71551d5fce Author: Alexander Beregalov Date: Sun Aug 3 03:03:57 2008 +0400 drivers/video/console/promcon.c: fix build error drivers/video/console/promcon.c:158: error: implicit declaration of function 'con_protect_unimap' Introduced by commit a29ccf6f823a84d89e1c7aaaf221cf7282022024 ("embedded: fix vc_translate operator precedence"). Signed-off-by: Alexander Beregalov Cc: Tim Bird Signed-off-by: David Woodhouse commit 7d55992d60caa390460bad1a974eb2b3c11538f4 Author: Eric Sandeen Date: Sat Aug 2 21:22:18 2008 -0400 ext4: remove write-only variables from ext4_ordered_write_end The variables 'from' and 'to' are not used anywhere. Signed-off-by: Eric Sandeen Acked-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit 596400f0f322c78347e35c197b66faf09a9c1e02 Author: Adrian Bunk Date: Sat Aug 2 19:53:44 2008 +0300 sh/boards/Makefile typo fix The following build error was caused by an obvious typo: <-- snip --> ... LD arch/sh/mm/built-in.o make[2]: *** No rule to make target `arch/sh/boards/board-shmin..o', needed by `arch/sh/boards/built-in.o'. Stop. <-- snip --> Reported-by: Adrian Bunk Signed-off-by: Adrian Bunk Signed-off-by: Paul Mundt commit bccf650270a94cec6e9238743e84c6e01de30c70 Author: Russell King Date: Sat Aug 2 22:33:18 2008 +0100 [ARM] Fix explicit asm(-arm)?/arch-foo references No file should be explicitly referencing its own platform headers by specifying an absolute include path. Fix these paths to use standard includes. Signed-off-by: Russell King commit 4baa9922430662431231ac637adedddbb0cfb2d7 Author: Russell King Date: Sat Aug 2 10:55:55 2008 +0100 [ARM] move include/asm-arm to arch/arm/include/asm Move platform independent header files to arch/arm/include/asm, leaving those in asm/arch* and asm/plat* alone. Signed-off-by: Russell King commit 85ebd00334099fd5d296bcae74a66c943d46686d Author: Marc Zyngier Date: Sat Aug 2 19:12:23 2008 +0200 Fix IHEX firmware generation/loading Fix both the IHEX firmware generation (len field always null, and EOF marker a byte too short) and loading (struct ihex_binrec needs to be packed to reflect the on-disk structure). Signed-off-by: Marc Zyngier Signed-off-by: David Woodhouse commit 071f4924844c435a3ae0cdbab7d7df2f1da85713 Merge: d9c5661... f1136d0... Author: Linus Torvalds Date: Sat Aug 2 09:14:49 2008 -0700 Merge git://git.infradead.org/users/dwmw2/random-2.6 * git://git.infradead.org/users/dwmw2/random-2.6: [MTD] Fix !CONFIG_BLOCK compile for mtdsuper.c firmware: silence __fw_modbuild and __fw_modinst 'Nothing to be done' messages commit d9c566198bfdf72a041322a093fdc1a2dc231170 Merge: 1726384... 0a4949c... Author: Linus Torvalds Date: Sat Aug 2 09:14:23 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Do not clobber %g7 in setcontext() trap. sparc64: Kill __show_regs(). sparc: Add __KERNEL__ ifdef protection to pt_regs helpers. sparc64: Kill smp_report_regs(). sparc64: Kill VERBOSE_SHOWREGS code. sparc64: Hook up trigger_all_cpu_backtrace(). sparc64: Make global reg dumping even more useful. sparc: Ignore drivers/video/console/promcon_tbl.c conmakehash generated file sparc64: FUTEX_OP_ANDN fix sparc: merge of_platform_{32,64}.h sparc64: Kill isa_bus_type. sparc64: Fix global reg snapshotting on self-cpu. commit 17263849c7ad2279667dd298083eceefcd1b5845 Author: OGAWA Hirofumi Date: Sat Aug 2 13:59:37 2008 +0900 fat: Fix allow_utime option FAT has to handle the newly introduced ATTR_TIMES_SET for allow_utime option. Signed-off-by: OGAWA Hirofumi Signed-off-by: Linus Torvalds commit 84209e02de48d72289650cc5a7ae8dd18223620f Author: Miklos Szeredi Date: Fri Aug 1 20:28:47 2008 +0200 mm: dont clear PG_uptodate on truncate/invalidate Brian Wang reported that a FUSE filesystem exported through NFS could return I/O errors on read. This was traced to splice_direct_to_actor() returning a short or zero count when racing with page invalidation. However this is not FUSE or NFSD specific, other filesystems (notably NFS) also call invalidate_inode_pages2() to purge stale data from the cache. If this happens while such pages are sitting in a pipe buffer, then splice(2) from the pipe can return zero, and read(2) from the pipe can return ENODATA. The zero return is especially bad, since it implies end-of-file or disconnected pipe/socket, and is documented as such for splice. But returning an error for read() is also nasty, when in fact there was no error (data becoming stale is not an error). The same problems can be triggered by "hole punching" with madvise(MADV_REMOVE). Fix this by not clearing the PG_uptodate flag on truncation and invalidation. Signed-off-by: Miklos Szeredi Acked-by: Nick Piggin Cc: Andrew Morton Cc: Jens Axboe Signed-off-by: Linus Torvalds commit 31981db0d0b665713ab3e9531f936fdb67947225 Author: Karsten Keil Date: Sat Aug 2 16:40:37 2008 +0200 Add DIP switch readout for HFC-4S IOB4ST Also the HFC-4S IOB4ST has DIP switches and jumpers to configure the port. Signed-off-by: Karsten Keil commit b3e0aeeb7e0f89791c4c3bdfd98b36074c5178e6 Author: Karsten Keil Date: Sat Aug 2 16:35:53 2008 +0200 Fix remaining big endian issue of hfcmulti The driver was not so bad at big endian at all, only the optimised fifo read/write functions need a fix, with this fix the driver works on a pegasus PPC machine. Signed-off-by: Karsten Keil commit ff4cc1de2401ad44ae084c3f5a9e898af0879520 Author: Karsten Keil Date: Wed Jul 30 18:26:58 2008 +0200 mISDN cleanup user interface The channelmap should have the same size on 32 and 64 bit systems and should not depend on endianess. Thanks to David Woodhouse for spotting this. Signed-off-by: Karsten Keil commit 780aefed1e179b23dcfbd6cfcb627ec3bd0a164c Author: Karsten Keil Date: Tue Jul 29 18:47:22 2008 +0200 mISDN fix main ISDN Makefile Compile hardware directory independent from selecting CAPI support. Signed-off-by: Karsten Keil commit ff4db0a043a5dee7180bdffd178e61cd02812c68 Author: Russell King Date: Sat Aug 2 15:21:31 2008 +0100 [ARM] Remove explicit dependency for misc.o from compressed/Makefile Signed-off-by: Russell King commit f1136d022af8f07a97f59c6d07483bdb82ffbd8e Author: David Woodhouse Date: Sat Aug 2 00:01:21 2008 +0100 [MTD] Fix !CONFIG_BLOCK compile for mtdsuper.c As reported by Adrian Bunk, commit d5686b444ff3f72808d2b3fbd58672a86cdf38e7 (switch mtd and dm-table to lookup_bdev()) causes the following compile error with CONFIG_BLOCK=n: CC drivers/mtd/mtdsuper.o drivers/mtd/mtdsuper.c: In function `get_sb_mtd': drivers/mtd/mtdsuper.c:184: error: implicit declaration of function 'lookup_bdev' drivers/mtd/mtdsuper.c:184: warning: assignment makes pointer from integer without a cast drivers/mtd/mtdsuper.c:197: error: implicit declaration of function 'bdput' make[3]: *** [drivers/mtd/mtdsuper.o] Error 1 Fix it by putting the block device lookup inside #ifdef CONFIG_BLOCK Signed-off-by: David Woodhouse commit 759da9267177e5005c8f21e11d29d26f4f459744 Author: David Woodhouse Date: Fri Aug 1 23:58:36 2008 +0100 firmware: silence __fw_modbuild and __fw_modinst 'Nothing to be done' messages People don't like them and think they're errors. Leave the __fw_install one though; when 'make firmware_install' does nothing, it's best to have a 'Nothing to be done for...' message rather than just doing nothing. Signed-off-by: David Woodhouse commit 49de935c107a53b0eba336efceb1dc3a8be64f87 Author: Adrian Bunk Date: Sat Aug 2 01:13:44 2008 +0300 sh: fix LIBGCC Commit f15cbe6f1a4b4d9df59142fc8e4abb973302cf44 (sh: migrate to arch/sh/include/) moved KBUILD_CFLAGS (which is used by LIBGCC) below LIBGCC, causing build errors like the following: <-- snip --> ... LD .tmp_vmlinux1 arch/sh/kernel/built-in.o: In function `module_clk_recalc': clock-sh4.c:(.text+0x80f0): undefined reference to `__udivsi3_i4i' ... make[1]: *** [.tmp_vmlinux1] Error 1 <-- snip --> Reported-by: Adrian Bunk Signed-off-by: Adrian Bunk Signed-off-by: Paul Mundt commit 4385e12b291a6816987cb88a74fc116f520180f8 Author: Paul Mundt Date: Sat Aug 2 07:14:09 2008 +0900 sh: Revert the location change of auto-generated asm/machtypes.h This ended up causing build breakage on O= builds, as reported by Adrian: <-- snip --> ... CC init/main.o In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/irq.h:4, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/irq.h:23, from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/hardirq.h:5, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/hardirq.h:7, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/asm-generic/local.h:5, from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/local.h:4, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/module.h:19, from /home/bunk/linux/kernel-2.6/git/linux-2.6/init/main.c:13: /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/machvec.h:15:27: error: asm/machtypes.h: No such file or directory make[2]: *** [init/main.o] Error 1 <-- snip --> So we simply move machtypes.h back to its original place. asm-offsets.h is still generated there regardless, until such a time that we find a better place to stash auto-generated files. Reported-by: Adrian Bunk Signed-off-by: Paul Mundt commit 2b12a4c524812fb3f6ee590a02e65b95c8c32229 Merge: 4744b43... 7f30491... Author: Linus Torvalds Date: Fri Aug 1 14:59:11 2008 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Move include/asm-ia64 to arch/ia64/include/asm commit 4744b43431e8613f920c5cba88346756f53c5165 Author: Tim Bird Date: Fri Aug 1 14:05:50 2008 -0700 embedded: fix vc_translate operator precedence This fixes a bug in operator precedence in the newly introduced vc_translate macro. Without this fix, the translation of some characters on the kernel console is garbled. This patch was copied to the e-mail list previously for testing. Now, all reports confirm that it works, so this is an official post for application. Signed-off-by: Tim Bird Signed-off-by: David Woodhouse commit 3669bc143fb3d389918379547f4a6b28a757b7fe Author: Jack Steiner Date: Fri Aug 1 15:08:15 2008 -0500 Remove EXPORTS of follow_page & zap_page_range Delete 2 EXPORTs that were accidentally sent upstream. Signed-off-by: Jack Steiner Signed-off-by: Linus Torvalds commit a97762a77f927577525868e39661084170ce3605 Author: Steven Rostedt Date: Thu Jul 31 12:40:52 2008 -0400 dual license ftrace.txt I asked legal about the licensing of ftrace.txt, and they told me that, unless the Documentation directory is specifically set up to handle non GPL licenses (which it does not appear to be), then it would be best to put ftrace.txt under the GPL. This patch adds a dual license to ftrace.txt such that it is under both the FDL and the GPL. Signed-off-by: Steven Rostedt Signed-off-by: Linus Torvalds commit 784dd7b64ca661722f539db906d56ce54906f2fb Author: David Howells Date: Thu Jul 31 13:46:33 2008 +0100 FRV: Wire up new system calls Wire up for FRV the system calls that were added in the last merge window. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 02c363808981b67e631fe71cc7e952497f761bef Author: David Howells Date: Thu Jul 31 13:01:30 2008 +0100 MN10300: Wire up new system calls Wire up system calls added in the last merge window for the MN10300 arch. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 3ab36ab68531ad90648fdeedcaf437f121572ede Author: Eugeniy Meshcheryakov Date: Thu Jul 31 10:03:19 2008 +0100 try harder to load tty ldisc driver Currently function tty_ldisc_get() tries to load an ldisc driver module only when tty_ldisc_try_get() returns -EAGAIN. This happens only if module is being unloaded. If ldisc module is not loaded tty_ldisc_try_get() returns -EINVAL and this case is not handled in tty_ldisc_get(), so request_module() is not called. Attached patch fixes this by calling request_module() if tty_ldisc_try_get() returned any error code. I discovered this when my UMTS modem stopped working with 2.6.27-rc1 because module ppp_async was not loaded. Signed-off-by: Eugeniy Meshcheryakov Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 84ff7a001270258f71d6ab0d164f351e32c9718a Merge: 478735e... 1f4170e... Author: Linus Torvalds Date: Fri Aug 1 12:48:16 2008 -0700 Merge branch 'kvm-updates-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm * 'kvm-updates-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: KVM: s390: Fix kvm on IBM System z10 KVM: Advertise synchronized mmu support to userspace KVM: Synchronize guest physical memory map to host virtual memory map KVM: Allow browsing memslots with mmu_lock KVM: Allow reading aliases with mmu_lock commit 478735e42bfa047384afa72dceb408035532db20 Merge: 0ef89d2... 6f5fd8e... Author: Linus Torvalds Date: Fri Aug 1 12:47:53 2008 -0700 Merge branch 'zero-len' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6 * 'zero-len' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6: drivers/media, include/media: delete zero-length files commit 0ef89d25d3e390dfa7c46772907951744a4067dc Author: Benjamin Herrenschmidt Date: Thu Jul 31 00:07:30 2008 -0700 mm/hugetlb: don't crash when HPAGE_SHIFT is 0 Some platform decide whether they support huge pages at boot time. On these, such as powerpc, HPAGE_SHIFT is a variable, not a constant, and is set to 0 when there is no such support. The patches to introduce multiple huge pages support broke that causing the kernel to crash at boot time on machines such as POWER3 which lack support for multiple page sizes. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c6de002617c199f80f9a2a713dffc263bdc69b81 Author: Yoshinori Sato Date: Thu Jul 31 00:07:29 2008 -0700 Missing symbol prefix on vmlinux.lds.h ARCH=h8300: init/main.c:781: undefined reference to `___early_initcall_end' Same problem have __start___bug_table __stop___bug_table __tracedata_start __tracedata_end __per_cpu_start __per_cpu_end When defining a symbol in vmlinux.lds, use the VMLINUX_SYMBOL macro. VMLINUX_SYMBOL adds a prefix charactor. You can't just use straight symbol names in common header files as they dont take into consideration weird arch-specific ABI conventions. in the case of Blackfin/h8300, the ABI dictates that any C-visible symbols have an underscore prefixed to them. Thus all symbols in vmlinux.lds.h need to be wrapped in VMLINUX_SYMBOL() so that each arch can put hide this magic in their own files. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Yoshinori Sato Cc: Jeremy Fitzhardinge Cc: "Mike Frysinger" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea44c1d60df3640bd956a67c392865c44fe9bc45 Author: Bjorn Helgaas Date: Thu Jul 31 00:07:27 2008 -0700 PNP: fix formatting of dbg_pnp_show_resources() output Each resource should be printed on its own line, so start snprintf'ing at the beginning of the buffer every time through the loop. Also, use scnprintf() rather than snprintf() when building up the buffer to print. scnprintf() returns the number of characters actually written into the buffer (not including the trailing NULL). snprintf() returns the number of characters that *would be* written, assuming everything would fit in the buffer. That's nice if we want to resize the buffer to make sure everything fits, but in this case, I just want to keep from overflowing the buffer, and it's OK if the output is truncated. Using snprintf() meant that my "len" could grow to be more than the the buffer size, which makes "sizeof(buf) - len" negative, which causes this alarming WARN_ON: http://marc.info/?l=linux-kernel&m=121736480005656&w=2 More useful snprintf/scnprintf discussion: http://lwn.net/Articles/69419/ Signed-off-by: Bjorn Helgaas Reported-by: Pete Clements Cc: Rene Herman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 61a2d07d3fb1ac34d142b9b62d4cd60a0f8c229e Author: Niels de Vos Date: Thu Jul 31 00:07:23 2008 -0700 Remove newline from the description of module parameters Some module parameters with only one line have the '\n' at the end of the description. This is not needed nor wanted as after the description the type (i.e. int) is followed by a newline. Some modules contain a multi-line description, these are not affected by this patch. Signed-off-by: Niels de Vos Acked-by: Randy Dunlap Cc: John W. Linville Cc: Ed L. Cashin Cc: Dave Airlie Cc: Roland Dreier Acked-by: Mauro Carvalho Chehab Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a4b7886ee59e122d359e1714ed89585a06645ad Merge: b8a327b... 963e497... Author: Linus Torvalds Date: Fri Aug 1 12:41:29 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: pata_it821x: Driver updates and reworking libata.h: replace __FUNCTION__ with __func__ ata_piix: subsys 106b:00a3 is apple ich8m too libata-core: make sure that ata_force_tbl is freed in case of an error libata: update atapi disable handling pata_via: add VX800 flag; add function for fixing h/w bugs pata_ali: misplaced pci_dev_put() commit 26a8ef5326e390d89290822fb1f4fcf16845fd84 Author: Paul Mundt Date: Thu Jul 31 16:24:19 2008 +0900 net: stnic: Fix up fallout from SH header migration. asm/se.h moved to mach-se/mach/se.h, update the path. We could use mach/se.h here also, but it's preferable to be explicit when there's only a single supported mach-type. Signed-off-by: Paul Mundt commit 9e5e21170e4de269cd5b9d53ac9d60d220e3be63 Author: Paul Mundt Date: Wed Jul 30 20:05:35 2008 +0900 sh: Fix up the audit arch endian specification. Presently this was always being set to AUDIT_ARCH_SH, which assumes big endian. Fix this up so that the architecture actually reflects what we're running on. Signed-off-by: Paul Mundt commit ab99c733ae73cce31f2a2434f7099564e5a73d95 Author: Paul Mundt Date: Wed Jul 30 19:55:30 2008 +0900 sh: Make syscall tracer use tracehook notifiers, add TIF_NOTIFY_RESUME. This follows the changes in commits: 7d6d637dac2050f30a1b57b0a3dc5de4a10616ba 4f72c4279eab1e5f3ed1ac4e55d4527617582392 on powerpc. Adding in TIF_NOTIFY_RESUME, and cleaning up the syscall tracing to be more generic. This is an incremental step to turning on tracehook, as well as unifying more of the ptrace and signal code across the 32/64 split. Signed-off-by: Paul Mundt commit c459dbf294b4a3d70490a468a7ca3907fb2c2f57 Author: Paul Mundt Date: Wed Jul 30 19:09:31 2008 +0900 sh: ptrace single stepping cleanups. This converts the single stepping done by sh/sh64 ptrace implementations to use the generic user_enable/disable_single_step(), and subsequently rips out a lot of ptrace request cases that are now handled generically. Signed-off-by: Paul Mundt commit c4637d475170ca0d99973efd07df727012db6cd1 Author: Paul Mundt Date: Wed Jul 30 15:30:52 2008 +0900 sh: seccomp support. This hooks up the seccomp thread flag and associated callback from the syscall tracer. Signed-off-by: Paul Mundt commit cec3fd3e2a7cacf37e2bd6d9fa915337245cc563 Author: Paul Mundt Date: Wed Jul 30 13:11:26 2008 +0900 sh: Tidy up the _TIF work masks, and fix syscall trace bug on singlestep. Signed-off-by: Paul Mundt commit daf423db3b6afd90ecdd776dbc32c0b57cc78edb Author: Simon Horman Date: Wed Jul 30 10:29:39 2008 +1000 kdump: sh: parse elfcorehdr command line argument A quick cut and paste from other architectures to allow SH to parse the elfcorehdr command line argument which is required for both is_kdump_kernel() and vmcore to function. (the former is as yet unused on SH). Tested compilation only Signed-off-by: Simon Horman Signed-off-by: Paul Mundt commit b8a327be3fbf05b5d3a935b4c03a3dcdb6db833e Merge: 46bd58e... f13fae2... Author: Linus Torvalds Date: Fri Aug 1 12:39:09 2008 -0700 Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-pull * 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-pull: (64 commits) [XFS] Remove vn_revalidate calls in xfs. [XFS] Now that xfs_setattr is only used for attributes set from ->setattr [XFS] xfs_setattr currently doesn't just handle the attributes set through [XFS] fix use after free with external logs or real-time devices [XFS] A bug was found in xfs_bmap_add_extent_unwritten_real(). In a [XFS] fix compilation without CONFIG_PROC_FS [XFS] s/XFS_PURGE_INODE/IRELE/g s/VN_HOLD(XFS_ITOV())/IHOLD()/ [XFS] fix mount option parsing in remount [XFS] Disable queue flag test in barrier check. [XFS] streamline init/exit path [XFS] Fix up problem when CONFIG_XFS_POSIX_ACL is not set and yet we still [XFS] Don't assert if trying to mount with blocksize > pagesize [XFS] Don't update mtime on rename source [XFS] Allow xfs_bmbt_split() to fallback to the lowspace allocator [XFS] Restore the lowspace extent allocator algorithm [XFS] use minleft when allocating in xfs_bmbt_split() [XFS] attrmulti cleanup [XFS] Check for invalid flags in xfs_attrlist_by_handle. [XFS] Fix CI lookup in leaf-form directories [XFS] Use the generic xattr methods. ... commit 46bd58eab21650fe820e4e3a27a6a134892cc2eb Author: Dean Nelson Date: Fri Aug 1 09:55:26 2008 -0500 add reverse dependency of CONFIG_SGI_XP upon CONFIG_SGI_GRU Add a reverse dependency of CONFIG_SGI_XP upon CONFIG_SGI_GRU to Kconfig. Signed-off-by: Dean Nelson Signed-off-by: Linus Torvalds commit 3b0de7b364c8b8a975f201fdae2fb394c876eb56 Author: Dean Nelson Date: Fri Aug 1 14:19:08 2008 -0500 add dependency of CONFIG_SGI_XP upon CONFIG_NET Add a dependency of CONFIG_SGI_XP upon CONFIG_NET to Kconfig. Signed-off-by: Dean Nelson Signed-off-by: Linus Torvalds commit 5c7edcd7ee6b77b88252fe4096dce1a46a60c829 Author: Roland McGrath Date: Thu Jul 31 02:04:09 2008 -0700 tracehook: fix exit_signal=0 case My commit 2b2a1ff64afbadac842bbc58c5166962cf4f7664 introduced a regression (sorry about that) for the odd case of exit_signal=0 (e.g. clone_flags=0). This is not a normal use, but it's used by a case in the glibc test suite. Dying with exit_signal=0 sends no signal, but it's supposed to wake up a parent's blocked wait*() calls (unlike the delayed_group_leader case). This fixes tracehook_notify_death() and its caller to distinguish a "signal 0" wakeup from the delayed_group_leader case (with no wakeup). Signed-off-by: Roland McGrath Tested-by: Serge Hallyn Signed-off-by: Linus Torvalds commit 1e24b15b267293567a8d752721c7ae63f281325a Merge: 63a16f9... 388667b... Author: Linus Torvalds Date: Fri Aug 1 11:56:07 2008 -0700 Merge branch 'for-linus' of git://neil.brown.name/md * 'for-linus' of git://neil.brown.name/md: md: raid10: wake up frozen array md: do not count blocked devices as spares md: do not progress the resync process if the stripe was blocked md: delay notification of 'active_idle' to the recovery thread md: fix merge error md: move async_tx_issue_pending_all outside spin_lock_irq commit 63a16f90167850010864a9e8ebb71d216983090f Merge: 5adf2b0... c259ae5... Author: Linus Torvalds Date: Fri Aug 1 11:54:05 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: [PATCH] ocfs2: Release mutex in error handling code [PATCH] ocfs2: Fix oops when racing files truncates with writes into an mmap region [PATCH 2/2] ocfs2: Fix race between mount and recovery [PATCH 1/2] ocfs2: Add counter in struct ocfs2_dinode to track journal replays [PATCH] configfs: Convenience macros for attribute definition. [PATCH] configfs: Pin configfs subsystems separately from new config_items. [PATCH] configfs: Fix open directory making rmdir() fail [PATCH] configfs: Lock new directory inodes before removing on cleanup after failure [PATCH] configfs: Prevent userspace from creating new entries under attaching directories [PATCH] configfs: Fix failing symlink() making rmdir() fail [PATCH] configfs: Fix symlink() to a removing item [PATCH] configfs: Include linux/err.h in linux/configfs.h commit 5adf2b03d97111c8955495ba11e8b7db27df8695 Merge: e811603... 0e241ff... Author: Linus Torvalds Date: Fri Aug 1 11:52:39 2008 -0700 Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: locking: fix mutex @key parameter kernel-doc notation commit e811603feb198079bcdb3f75f72cbf9681de2062 Merge: b17b3d4... 48a6156... Author: Linus Torvalds Date: Fri Aug 1 11:50:21 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes: kbuild: scripts/ver_linux: don't set PATH Kconfig/init: change help text to match default value kbuild: genksyms: Include extern information in dumps kbuild: genksyms parser: fix the __attribute__ rule kbuild: scripts/genksyms/lex.l: add %option noinput kconfig: scripts/kconfig/zconf.l: add %option noinput kbuild: fix O=... build of um commit b17b3d479c4c43c3a980ee553c3be3ca456523de Merge: 31582b0... 93769f5... Author: Linus Torvalds Date: Fri Aug 1 11:46:00 2008 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: md: the bitmap code needs to use blk_plug_device_unlocked() block: add a blk_plug_device_unlocked() that grabs the queue lock commit 31582b094d640fdab3fd29237b348a4c7c8646fb Merge: df1efe6... 25fc999... Author: Linus Torvalds Date: Fri Aug 1 11:45:09 2008 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb: kgdb: fix gdb serial thread queries kgdb: fix kgdb_validate_break_address to perform a mem write kgdb: remove the requirement for CONFIG_FRAME_POINTER commit df1efe6f871e2d3f83e6ad7b7a1d2b728b478fc2 Merge: 9a5467f... 1158941... Author: Linus Torvalds Date: Fri Aug 1 11:44:24 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: ASoC: Export dapm_reg_event() fully ALSA: ASoC: Update Poodle to current ASoC API ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers ALSA: sound/soc/pxa/tosa.c: removed duplicated include commit c6557e7f2b6ae76a44653d38f835174074c42e05 Author: Martin Schwidefsky Date: Fri Aug 1 20:42:05 2008 +0200 [S390] move include/asm-s390 to arch/s390/include/asm Signed-off-by: Martin Schwidefsky commit 9a5467fd600669cda488771dac3e951034fe2b08 Merge: 6760561... 00b1304... Author: Linus Torvalds Date: Fri Aug 1 11:35:16 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (46 commits) tcp: MD5: Fix IPv6 signatures skbuff: add missing kernel-doc for do_not_encrypt net/ipv4/route.c: fix build error tcp: MD5: Fix MD5 signatures on certain ACK packets ipv6: Fix ip6_xmit to send fragments if ipfragok is true ipvs: Move userspace definitions to include/linux/ip_vs.h netdev: Fix lockdep warnings in multiqueue configurations. netfilter: xt_hashlimit: fix race between htable_destroy and htable_gc netfilter: ipt_recent: fix race between recent_mt_destroy and proc manipulations netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged irda: replace __FUNCTION__ with __func__ nsc-ircc: default to dongle type 9 on IBM hardware bluetooth: add quirks for a few hci_usb devices hysdn: remove the packed attribute from PofTimStamp_tag isdn: use the common ascii hex helpers tg3: adapt tg3 to use reworked PCI PM code atm: fix direct casts of pointers to u32 in the InterPhase driver atm: fix const assignment/discard warnings in the ATM networking driver net: use the common ascii hex helpers random32: seeding improvement ... commit 676056132425ac425d7215cdaa8bd25582e07966 Merge: 623fa57... 47d715a... Author: Linus Torvalds Date: Fri Aug 1 11:33:19 2008 -0700 Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6 * 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6: hwmon: needs new maintainer hwmon: (lm85) Simplify device initialization function hwmon: (lm85) Misc cleanups hwmon: (lm85) Don't write back cached values hwmon: (lm85) Drop dead code hwmon: (lm85) Coding-style cleanups hwmon: (lm75) add new-style driver binding hwmon: (lm75) cleanup/reorg hwmon: (adt7473) clarify an awkward bit of code hwmon: (adt7473) Remove unused defines hwmon: (dme1737) fix voltage scaling hwmon: (dme1737) probe all addresses hwmon: (dme1737) demacrofy for readability commit 93769f58078e2a066b56217cae1e343ac5a6b78c Author: Jens Axboe Date: Fri Aug 1 20:32:31 2008 +0200 md: the bitmap code needs to use blk_plug_device_unlocked() It doesn't hold the queue lock, so it's both racey on the queue flags and thus spews a warning. Signed-off-by: Jens Axboe commit 6c5e0c4d518a37e1d5d794c14433e80284415079 Author: Jens Axboe Date: Fri Aug 1 20:31:32 2008 +0200 block: add a blk_plug_device_unlocked() that grabs the queue lock blk_plug_device() must be called with the queue lock held, so callers often just grab and release the lock for that purpose. Add a helper that does just that. Signed-off-by: Jens Axboe commit 623fa579e61f250c1913c70257ef3a753820bb68 Merge: d65f5c5... e4c094a... Author: Linus Torvalds Date: Fri Aug 1 11:29:54 2008 -0700 Merge git://git.infradead.org/mtd-2.6 * git://git.infradead.org/mtd-2.6: [MTD] [NAND] drivers/mtd/nand/nandsim.c: fix printk warnings [MTD] [NAND] Blackfin NFC Driver: Cleanup the error exit path of bf5xx_nand_probe function [MTD] [NAND] Blackfin NFC Driver: use standard dev_err() rather than printk() [MTD] [NAND] Blackfin NFC Driver: enable Blackfin nand HWECC support by default [MTD] [NAND] Blackfin NFC Driver: add proper devinit/devexit markings to probe/remove functions [MTD] [NAND] Blackfin NFC Driver: add support for the ECC layout the Blackfin bootrom uses [MTD] [NAND] Blackfin NFC Driver: fix bug - hw ecc calc by making sure we extract 11 bits from each register instead of 10 [MTD] [NAND] Blackfin NFC Driver: fix bug - do not clobber the status from the first 256 bytes if operating on 512 pages [MTD] [NAND] diskonchip.c fix sparse endian warnings [MTD] [NAND] drivers/mtd/nand/nandsim.c needs div64.h [JFFS2] Fix allocation of summary buffer Fix rename of at91_nand -> atmel_nand [MTD] [NOR] drivers/mtd/chips/jedec_probe.c: fix Am29DL800BB device ID [MTD] MTD_DEBUG always does compile-time typechecks [MTD] DataFlash: bugfix, binary page sizes now handled [MTD] [NAND] fsl_elbc_nand.c: fix printk warning [MTD] [NAND] nandsim: support random page read command [MTD] [NAND] fix subpage read for small page NAND commit d65f5c5803d9cd6fa0b540a0dddf956be671bc36 Merge: a8086ad... 8d66bf5... Author: Linus Torvalds Date: Fri Aug 1 11:26:51 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: [PATCH] pass struct path * to do_add_mount() [PATCH] switch mtd and dm-table to lookup_bdev() [patch 3/4] vfs: remove unused nameidata argument of may_create() [PATCH] devpts: switch to IDA [PATCH 2/2] proc: switch inode number allocation to IDA [PATCH 1/2] proc: fix inode number bogorithmetic [PATCH] fix bdev leak in block_dev.c do_open() [PATCH] fix races and leaks in vfs_quota_on() users [PATCH] clean dup2() up a bit [PATCH] merge locate_fd() and get_unused_fd() [PATCH] ipv4_static_sysctl_init() should be under CONFIG_SYSCTL Re: BUG at security/selinux/avc.c:883 (was: Re: linux-next: Tree commit a8086ad803fc4d251edb9a49838bf99c7fdfb44f Merge: b2bbf43... 20c6aaa... Author: Linus Torvalds Date: Fri Aug 1 11:23:09 2008 -0700 Merge branch 'audit.b54' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current * 'audit.b54' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: [PATCH] Fix the bug of using AUDIT_STATUS_RATE_LIMIT when set fail, no error output. [PATCH] Fix the kernel panic of audit_filter_task when key field is set Re: [PATCH] the loginuid field should be output in all AUDIT_CONFIG_CHANGE audit messages kernel/audit.c control character detection is off-by-one [PATCH] Audit: Collect signal info when SIGUSR2 is sent to auditd commit b2bbf43e60073f70a3c8663513710fa8d03a33f8 Merge: 561b35b... e491d23... Author: Linus Torvalds Date: Fri Aug 1 11:22:45 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: au1xmmc: raise segment size limit. mmc_block: use proper sg iterators mmc: properly iterate over sg list in debug check mmc_test: Revert "mmc_test: test oversized sg lists" sdhci: check correct return value sdhci: disable DMA for req, not completely sdhci: handle bug in JMB38x for sizes < 4 bytes commit 561b35b341b1aeeab486affe1ede0ee6640ce33b Merge: a7c2a10... 0eb5d5a... Author: Linus Torvalds Date: Fri Aug 1 10:56:40 2008 -0700 Merge branch 'reg-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 * 'reg-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: regulator: TI bq24022 Li-Ion Charger driver regulator: maintainers - add maintainers for regulator framework. regulator: documentation - ABI regulator: documentation - machine regulator: documentation - regulator driver regulator: documentation - consumer interface regulator: documentation - overview regulator: core kbuild files regulator: regulator test harness regulator: add support for fixed regulators. regulator: regulator framework core regulator: fixed regulator interface regulator: machine driver interface regulator: regulator driver interface regulator: consumer device interface commit a7c2a10dab4e5122cbcfa3d5e9d589a52ccc2287 Merge: b14f7fb... 383795c... Author: Linus Torvalds Date: Fri Aug 1 10:55:57 2008 -0700 Merge branch 'hotfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'hotfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: SELinux: /proc/mounts should show what it can commit b14f7fb5aa2f4289e3a9fa8d7d92417ec8607498 Merge: 00e9028... 9fec606... Author: Linus Torvalds Date: Fri Aug 1 10:55:07 2008 -0700 Merge git://git.infradead.org/battery-2.6 * git://git.infradead.org/battery-2.6: power_supply: Sharp SL-6000 (tosa) batteries support power_supply: fix up CHARGE_COUNTER output to be more precise power_supply: add CHARGE_COUNTER property and olpc_battery support for it power_supply: bump EC version check that we refuse to run with in olpc_battery power_supply: cleanup of the OLPC battery driver power_supply: add eeprom dump file to olpc_battery's sysfs power_supply: Support serial number in olpc_battery commit 00e9028a95fb8a4d79f2fb695a853f33ea7d3b57 Merge: 57b1494... 7cb9318... Author: Linus Torvalds Date: Fri Aug 1 10:53:43 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (28 commits) mm/hugetlb.c must #include video: Fix up hp6xx driver build regressions. sh: defconfig updates. sh: Kill off stray mach-rsk7203 reference. serial: sh-sci: Fix up SH7760/SH7780/SH7785 early printk regression. sh: Move out individual boards without mach groups. sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h. sh: Allow SH-3 and SH-5 to use common headers. sh: Provide common CPU headers, prune the SH-2 and SH-2A directories. sh/maple: clean maple bus code sh: More header path fixups for mach dir refactoring. sh: Move out the solution engine headers to arch/sh/include/mach-se/ sh: I2C fix for AP325RXA and Migo-R sh: Shuffle the board directories in to mach groups. sh: dma-sh: Fix up dreamcast dma.h mach path. sh: Switch KBUILD_DEFCONFIG to shx3_defconfig. sh: Add ARCH_DEFCONFIG entries for sh and sh64. sh: Fix compile error of Solution Engine sh: Proper __put_user_asm() size mismatch fix. sh: Stub in a dummy ENTRY_OFFSET for uImage offset calculation. ... commit 57b1494d2ba544c62673234da6115c21fac27ffc Merge: 9fe3b64... 8978b74... Author: Linus Torvalds Date: Fri Aug 1 10:28:17 2008 -0700 Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: generic, x86: fix add iommu_num_pages helper function x86: remove stray <6> in BogoMIPS printk x86: move dma32_reserve_bootmem() after reserve_crashkernel() commit 9fe3b64be3dc8313e9fa87255f169c608d074cbd Merge: 8b6d8c5... ab4227c... Author: Linus Torvalds Date: Fri Aug 1 10:27:10 2008 -0700 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] qeth: avoid use of include/asm-s390 [S390] dont use kthread for smp_rescan_cpus(). [S390] virtio console: fix section mismatch warning. [S390] cio: Include linux/string.h in schid.h. [S390] qdio: fix section mismatch bug. [S390] stp: fix section mismatch warning. [S390] Remove diag 0x260 call from memory detection. [S390] qdio: make sure qdr is aligned to page size [S390] Add support for memory hot-remove. [S390] Wire up new syscalls. [S390] cio: Memory allocation for idset changed. [S390] qeth: preallocated qeth header for hiper socket [S390] Optimize storage key operations for anon pages [S390] nohz/sclp: disable timer on synchronous waits. [S390] ipl: Reboot from alternate device does not work when booting from file [S390] dasd: Add support for enhanced VM UID [S390] Remove last P390 trace. commit 7f30491ccd28627742e37899453ae20e3da8e18f Author: Tony Luck Date: Fri Aug 1 10:13:32 2008 -0700 [IA64] Move include/asm-ia64 to arch/ia64/include/asm After moving the the include files there were a few clean-ups: 1) Some files used #include , changed to 2) Some comments alerted maintainers to look at various header files to make matching updates if certain code were to be changed. Updated these comments to use the new include paths. 3) Some header files mentioned their own names in initial comments. Just deleted these self references. Signed-off-by: Tony Luck commit e491d230fd398bb730e3c2dd734c5447463b9d38 Author: Manuel Lauss Date: Tue Jul 29 10:10:49 2008 +0200 au1xmmc: raise segment size limit. Raise the DMA block size limit from 2048 bytes to the maximum supported by the DMA controllers on the chip (64KB on Au1100, 4MB on Au1200). This gives a very small performance boost and apparently fixes an oops when MMC-DMA and network traffic are active at the same time. Signed-off-by: Manuel Lauss Signed-off-by: Pierre Ossman commit b41e9c7b8e14ea57aa0fc05fd63a0de0e935d58d Author: Pierre Ossman Date: Tue Jul 29 01:23:24 2008 +0200 mmc_block: use proper sg iterators Signed-off-by: Pierre Ossman commit a84756c5735f28bf000617f18734a9e94426386a Author: Pierre Ossman Date: Tue Jul 29 01:09:37 2008 +0200 mmc: properly iterate over sg list in debug check Signed-off-by: Pierre Ossman commit b7ac2cf1cdf346b34cbc2104d386a9d29d12aa4c Author: Pierre Ossman Date: Tue Jul 29 01:05:22 2008 +0200 mmc_test: Revert "mmc_test: test oversized sg lists" This reverts commit 48b5352ea1891455eb8e824cf7d92f66931a090f. Oversized sg lists are not allowed anymore, and the core even checks for them in debug mode, so this test is entirely incorrect. Signed-off-by: Pierre Ossman commit 980167b7fb20fb181766218b4771fc7420a7bbb4 Author: Pierre Ossman Date: Tue Jul 29 00:53:20 2008 +0200 sdhci: check correct return value Fix a copy-and-paste error. Signed-off-by: Pierre Ossman commit ebd6d357848edb8709dd9bed4b93834d1b4d7044 Author: Pierre Ossman Date: Tue Jul 29 00:45:51 2008 +0200 sdhci: disable DMA for req, not completely The wrong flag was manipulated when an invalid sg list was given, turning off DMA on the next (and all subsequent) request instead of the current one. Signed-off-by: Pierre Ossman commit 4a3cba32cb514168bb2516c045b178e6660421d1 Author: Pierre Ossman Date: Tue Jul 29 00:11:16 2008 +0200 sdhci: handle bug in JMB38x for sizes < 4 bytes Signed-off-by: Pierre Ossman commit 20c6aaa39ab735c7ed78e4e5a214d250efae0a6e Author: zhangxiliang Date: Thu Jul 31 10:11:19 2008 +0800 [PATCH] Fix the bug of using AUDIT_STATUS_RATE_LIMIT when set fail, no error output. When the "status_get->mask" is "AUDIT_STATUS_RATE_LIMIT || AUDIT_STATUS_BACKLOG_LIMIT". If "audit_set_rate_limit" fails and "audit_set_backlog_limit" succeeds, the "err" value will be greater than or equal to 0. It will miss the failure of rate set. Signed-off-by: Zhang Xiliang Acked-by: Eric Paris Signed-off-by: Al Viro commit 980dfb0db340b95094732d78b55311f2c539c1af Author: zhangxiliang Date: Fri Aug 1 19:15:47 2008 +0800 [PATCH] Fix the kernel panic of audit_filter_task when key field is set When calling audit_filter_task(), it calls audit_filter_rules() with audit_context is NULL. If the key field is set, the result in audit_filter_rules() will be set to 1 and ctx->filterkey will be set to key. But the ctx is NULL in this condition, so kernel will panic. Signed-off-by: Zhang Xiliang Signed-off-by: Al Viro commit 036bbf76ad9f83781590623111b80ba0b82930ac Author: zhangxiliang Date: Fri Aug 1 09:47:01 2008 +0800 Re: [PATCH] the loginuid field should be output in all AUDIT_CONFIG_CHANGE audit messages > shouldn't these be using the "audit_get_loginuid(current)" and if we > are going to output loginuid we also should be outputting sessionid Thanks for your detailed explanation. I have made a new patch for outputing "loginuid" and "sessionid" by audit_get_loginuid(current) and audit_get_sessionid(current). If there are some deficiencies, please give me your indication. Signed-off-by: Zhang Xiliang Signed-off-by: Al Viro commit 1d6c9649e236caa2e93e3647256216e57172b011 Author: Vesa-Matti J Kari Date: Wed Jul 23 00:06:13 2008 +0300 kernel/audit.c control character detection is off-by-one Hello, According to my understanding there is an off-by-one bug in the function: audit_string_contains_control() in: kernel/audit.c Patch is included. I do not know from how many places the function is called from, but for example, SELinux Access Vector Cache tries to log untrusted filenames via call path: avc_audit() audit_log_untrustedstring() audit_log_n_untrustedstring() audit_string_contains_control() If audit_string_contains_control() detects control characters, then the string is hex-encoded. But the hex=0x7f dec=127, DEL-character, is not detected. I guess this could have at least some minor security implications, since a user can create a filename with 0x7f in it, causing logged filename to possibly look different when someone reads it on the terminal. Signed-off-by: Vesa-Matti Kari Signed-off-by: Al Viro commit ee1d315663ee0b494898f813a266d6244b263b4f Author: Eric Paris Date: Mon Jul 7 10:49:45 2008 -0400 [PATCH] Audit: Collect signal info when SIGUSR2 is sent to auditd Makes the kernel audit subsystem collect information about the sending process when that process sends SIGUSR2 to the userspace audit daemon. SIGUSR2 is a new interesting signal to auditd telling auditd that it should try to start logging to disk again and the error condition which caused it to stop logging to disk (usually out of space) has been rectified. Signed-off-by: Eric Paris Signed-off-by: Al Viro commit 8d66bf5481002b0960aa49aed0987c73f5d7816c Author: Al Viro Date: Fri Aug 1 09:05:54 2008 -0400 [PATCH] pass struct path * to do_add_mount() Signed-off-by: Al Viro commit d5686b444ff3f72808d2b3fbd58672a86cdf38e7 Author: Al Viro Date: Fri Aug 1 05:00:11 2008 -0400 [PATCH] switch mtd and dm-table to lookup_bdev() No need to open-code it... Signed-off-by: Al Viro commit a95164d979c5ca061f15bcaadc829c146693d4d9 Author: Miklos Szeredi Date: Wed Jul 30 15:08:48 2008 +0200 [patch 3/4] vfs: remove unused nameidata argument of may_create() Signed-off-by: Miklos Szeredi Signed-off-by: Al Viro commit 7ee7c12b7121cd49d528de219e4ffd5459657998 Author: Alexey Dobriyan Date: Sat Jul 26 11:42:16 2008 +0400 [PATCH] devpts: switch to IDA Devpts code wants just numbers for tty indexes. Signed-off-by: Alexey Dobriyan Signed-off-by: Al Viro commit 9a18540915faaaadd7f71c16fa877a0c19675923 Author: Alexey Dobriyan Date: Sat Jul 26 11:21:37 2008 +0400 [PATCH 2/2] proc: switch inode number allocation to IDA proc doesn't use "associate pointer with id" feature of IDR, so switch to IDA. NOTE, NOTE, NOTE: Do not apply if release_inode_number() still mantions MAX_ID_MASK! Signed-off-by: Alexey Dobriyan Signed-off-by: Al Viro commit 67935df49dae836fa86621861979fafdfd37ae59 Author: Alexey Dobriyan Date: Sat Jul 26 11:18:28 2008 +0400 [PATCH 1/2] proc: fix inode number bogorithmetic Id which proc gets from IDR for inode number and id which proc removes from IDR do not match. E.g. 0x11a transforms into 0x8000011a. Which stayed unnoticed for a long time because, surprise, idr_remove() masks out that high bit before doing anything. All of this due to "| ~MAX_ID_MASK" in release_inode_number(). I still don't understand how it's supposed to work, because "| ~MASK" is not an inversion for "& MAX" operation. So, use just one nice, working addition. Make start offset unsigned int, while I'm at it. It's longness is not used anywhere. Signed-off-by: Alexey Dobriyan Signed-off-by: Al Viro commit 8266602033d6adc6d10cb8811c1fd694767909b0 Author: Al Viro Date: Fri Aug 1 05:32:04 2008 -0400 [PATCH] fix bdev leak in block_dev.c do_open() Callers expect it to drop reference to bdev on all failure exits. Signed-off-by: Al Viro commit 77e69dac3cefacee939cb107ae9cd520a62338e0 Author: Al Viro Date: Fri Aug 1 04:29:18 2008 -0400 [PATCH] fix races and leaks in vfs_quota_on() users * new helper: vfs_quota_on_path(); equivalent of vfs_quota_on() sans the pathname resolution. * callers of vfs_quota_on() that do their own pathname resolution and checks based on it are switched to vfs_quota_on_path(); that way we avoid the races. * reiserfs leaked dentry/vfsmount references on several failure exits. Signed-off-by: Al Viro commit 1b7e190b4764ea3ca1080404dd593eae5230d2b3 Author: Al Viro Date: Wed Jul 30 06:18:03 2008 -0400 [PATCH] clean dup2() up a bit Signed-off-by: Al Viro commit 1027abe8827b47f7e9c4ed6514fde3d44f79963c Author: Al Viro Date: Wed Jul 30 04:13:04 2008 -0400 [PATCH] merge locate_fd() and get_unused_fd() New primitive: alloc_fd(start, flags). get_unused_fd() and get_unused_fd_flags() become wrappers on top of it. Signed-off-by: Al Viro commit a1bc6eb4b499ae67ada9a01660010580b6569403 Author: Al Viro Date: Wed Jul 30 06:32:52 2008 -0400 [PATCH] ipv4_static_sysctl_init() should be under CONFIG_SYSCTL Signed-off-by: Al Viro commit f418b006079ce537daf9436215f1d2a47e451602 Author: Stephen Smalley Date: Mon Jul 28 13:32:38 2008 -0400 Re: BUG at security/selinux/avc.c:883 (was: Re: linux-next: Tree for July 17: early crash on x86-64) SELinux needs MAY_APPEND to be passed down to the security hook. Otherwise, we get permission denials when only append permission is granted by policy even if the opening process specified O_APPEND. Shows up as a regression in the ltp selinux testsuite, fixed by this patch. Signed-off-by: Stephen Smalley Signed-off-by: Al Viro commit e4c094a595ba8ea402e6b2153f7bbf6ef039eea0 Author: Andrew Morton Date: Wed Jul 30 12:35:04 2008 -0700 [MTD] [NAND] drivers/mtd/nand/nandsim.c: fix printk warnings Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 4f0ca70e52b67f41287d853f0d572dafa875e485 Author: Bryan Wu Date: Wed Jul 30 12:35:04 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: Cleanup the error exit path of bf5xx_nand_probe function Signed-off-by: Bryan Wu Cc: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 0ee002b041cb45ab3cc5384b86271d41ccf90fe1 Author: Mike Frysinger Date: Wed Jul 30 12:35:03 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: use standard dev_err() rather than printk() Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit a0dd20184becf5c90996d9ee0bb69426fe63581a Author: Mike Frysinger Date: Wed Jul 30 12:35:02 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: enable Blackfin nand HWECC support by default Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 2445af3853928bf3ee7960e09f548a1b07924091 Author: Mike Frysinger Date: Wed Jul 30 12:35:02 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: add proper devinit/devexit markings to probe/remove functions Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit fcb90ba7e9ba9a17ca5103be3f3ae3a446dadc14 Author: Mike Frysinger Date: Wed Jul 30 12:35:01 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: add support for the ECC layout the Blackfin bootrom uses Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit cf840392e83914b9fcdbce8a8a2bc17a84cf0353 Author: Mike Frysinger Date: Wed Jul 30 12:35:00 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: fix bug - hw ecc calc by making sure we extract 11 bits from each register instead of 10 Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit e274f025e2caaadc1a6dd41adc9c9a19be075110 Author: Mike Frysinger Date: Wed Jul 30 12:34:59 2008 -0700 [MTD] [NAND] Blackfin NFC Driver: fix bug - do not clobber the status from the first 256 bytes if operating on 512 pages Singed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit ab4227cb2d936886069ef1056c02500d05beb15d Author: Martin Schwidefsky Date: Fri Aug 1 16:39:24 2008 +0200 [S390] qeth: avoid use of include/asm-s390 The planned move of include/asm-s390 to arch/s390/include/asm requires that all includes for asm headers use include/asm and not include/asm-s390. Signed-off-by: Martin Schwidefsky commit fc7e1e4b1ca69109d0f694e47ef2328dcb0ebe6e Author: Heiko Carstens Date: Fri Aug 1 16:39:23 2008 +0200 [S390] dont use kthread for smp_rescan_cpus(). Since git commit 3da1c84c00c7e5fa8348336bd8c342f9128b0f14 "workqueues: make get_online_cpus() useable for work->func()" it is safe to call get_online_cpus() from workqueue context. So remove the kthread workaround again. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 26f746f3e3bb44b37a894318aa8e808b914ad663 Author: Heiko Carstens Date: Fri Aug 1 16:39:22 2008 +0200 [S390] virtio console: fix section mismatch warning. Fix these two false positive warnings: WARNING: vmlinux.o(.text+0x2e1cc4): Section mismatch in reference from the function s390_virtio_console_init() to the function .init.text:early_put_chars() The function s390_virtio_console_init() references the function __init early_put_chars(). This is often because s390_virtio_console_init lacks a __init annotation or the annotation of early_put_chars is wrong. WARNING: vmlinux.o(.text+0x2e1cd0): Section mismatch in reference from the function s390_virtio_console_init() to the function .init.text:virtio_cons_early_init() The function s390_virtio_console_init() references the function __init virtio_cons_early_init(). This is often because s390_virtio_console_init lacks a __init annotation or the annotation of virtio_cons_early_init is wrong. Cc: Christian Borntraeger Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 1378ee9b67298176edbcec0ab87b38e913d76ab9 Author: Cornelia Huck Date: Fri Aug 1 16:39:21 2008 +0200 [S390] cio: Include linux/string.h in schid.h. schid.h needs string.h for memset and memcmp. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 3f1934bc1a0dcc2b7c31c8fd4f41ea2dd6522c3e Author: Heiko Carstens Date: Fri Aug 1 16:39:20 2008 +0200 [S390] qdio: fix section mismatch bug. Fix the two section mismatch warnings below. This fixes two real bugs since the code which has __exit annotations may already be gone when it is called. WARNING: vmlinux.o(.init.text+0x1cc4a): Section mismatch in reference from the function init_QDIO() to the function .exit.text:qdio_setup_exit() The function __init init_QDIO() references a function __exit qdio_setup_exit(). This is often seen when error handling in the init function uses functionality in the exit path. The fix is often to remove the __exit annotation of qdio_setup_exit() so it may be used outside an exit section. WARNING: vmlinux.o(.init.text+0x1cc7a): Section mismatch in reference from the function init_QDIO() to the function .exit.text:qdio_remove_perf_stats() The function __init init_QDIO() references a function __exit qdio_remove_perf_stats(). This is often seen when error handling in the init function uses functionality in the exit path. The fix is often to remove the __exit annotation of qdio_remove_perf_stats() so it may be used outside an exit section. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 8f8470032570988af2eeff520ca01a32fd908b2b Author: Heiko Carstens Date: Fri Aug 1 16:39:19 2008 +0200 [S390] stp: fix section mismatch warning. Fix these two (false positive) warnings by adding an __init annoation: WARNING: vmlinux.o(.text+0x7e6a): Section mismatch in reference from the function stp_reset() to the function .init.text:__alloc_bootmem() The function stp_reset() references the function __init __alloc_bootmem(). This is often because stp_reset lacks a __init annotation or the annotation of __alloc_bootmem is wrong. WARNING: vmlinux.o(.text+0x7ece): Section mismatch in reference from the function stp_reset() to the function .init.text:free_bootmem() The function stp_reset() references the function __init free_bootmem(). This is often because stp_reset lacks a __init annotation or the annotation of free_bootmem is wrong. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit d918fe2bd72830dfbe8ca2bb30d49930d1356e6d Author: Heiko Carstens Date: Fri Aug 1 16:39:18 2008 +0200 [S390] Remove diag 0x260 call from memory detection. The result of the diag 0x260 call is not always what one would expect. So just remove it. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 3b8e3004aea95c687e8991583e7b150ec1416ff3 Author: Jan Glauber Date: Fri Aug 1 16:39:17 2008 +0200 [S390] qdio: make sure qdr is aligned to page size kzalloc does not guarantee the required alignment of qdr to page size, use get_zeroed_page instead. Signed-off-by: Jan Glauber commit 7e9238fbc10373effc2c3b0b516b0bdc8fefc27b Author: Gerald Schaefer Date: Fri Aug 1 16:39:16 2008 +0200 [S390] Add support for memory hot-remove. This patch enables memory hot-remove on s390. Signed-off-by: Gerald Schaefer Signed-off-by: Heiko Carstens Cc: Martin Schwidefsky commit 519620cc3d723d41522191ebd150fba4a3790296 Author: Heiko Carstens Date: Fri Aug 1 16:39:15 2008 +0200 [S390] Wire up new syscalls. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 883e512c99fc398d1b2b5e8e92b6bacff2551756 Author: Michael Ernst Date: Fri Aug 1 16:39:14 2008 +0200 [S390] cio: Memory allocation for idset changed. Memory allocation for the quite huge idset changed from kzalloc to vmalloc. Signed-off-by: Michael Ernst Signed-off-by: Martin Schwidefsky commit 683d718a893575a88c551ad71ea2c382eedbf67e Author: Frank Blaschka Date: Fri Aug 1 16:39:13 2008 +0200 [S390] qeth: preallocated qeth header for hiper socket For hiper socket devices this patch will economize the reallocation of the tx skb data segment by allocating separate memory for the qdio transport information (qeth header). Signed-off-by: Frank Blaschka Signed-off-by: Martin Schwidefsky commit a4b526b3ba6353cd89a38e41da48ed83b0ead16f Author: Martin Schwidefsky Date: Fri Aug 1 16:39:12 2008 +0200 [S390] Optimize storage key operations for anon pages For anonymous pages without a swap cache backing the check in page_remove_rmap for the physical dirty bit in page_remove_rmap is unnecessary. The instructions that are used to check and reset the dirty bit are expensive. Removing the check noticably speeds up process exit. In addition the clearing of the dirty bit in __SetPageUptodate is pointless as well. With these two changes there is no storage key operation for an anonymous page anymore if it does not hit the swap space. The micro benchmark which repeatedly executes an empty shell script gets about 5% faster. Signed-off-by: Martin Schwidefsky commit 934b2857cc576ae53c92a66e63fce7ddcfa74691 Author: Heiko Carstens Date: Fri Aug 1 16:39:11 2008 +0200 [S390] nohz/sclp: disable timer on synchronous waits. sclp_sync_wait wait synchronously for an sclp interrupt and disables timer interrupts. However on the irq enter paths there is an extra check if a timer interrupt would be due and calls the timer callback. This would schedule softirqs in the wrong context. So introduce local_tick_enable/disable which prevents this. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 3a95e8eb34f595a0144adb6e5513d456319bd8a5 Author: Michael Holzheu Date: Fri Aug 1 16:39:10 2008 +0200 [S390] ipl: Reboot from alternate device does not work when booting from file During startup we check if diag308 works using diag 308 subcode 6, which stores the actual ipl information. This fails with rc = 0x102, if the system has been ipled from the HMC using load from CD or load from file. In the case of rc = 0x102 we have to assume that diag 308 is working, since it still can be used to ipl from an alternative device. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 4abb08c24b5fa7b6ad0807c07077f0f216f6788b Author: Stefan Weinhuber Date: Fri Aug 1 16:39:09 2008 +0200 [S390] dasd: Add support for enhanced VM UID When z/VM provides two virtual devices (minidisks) that reside on the same real device, both will receive the configuration data from the real device and thus get the same uid. To fix this problem, z/VM provides an additional configuration data record that allows to distinguish between minidisks. z/VM APAR VM64273 needs be installed so this fix has an effect. Signed-off-by: Stefan Weinhuber Signed-off-by: Martin Schwidefsky commit c2bb4e5d497823437f0a11d342024ccdc6ff5b0d Author: Heiko Carstens Date: Fri Aug 1 16:39:08 2008 +0200 [S390] Remove last P390 trace. Seems like I forgot this hunk... Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 963724462a11668185dc67879ea8fe7590973322 Author: Harvey Harrison Date: Wed Jul 30 12:34:57 2008 -0700 [MTD] [NAND] diskonchip.c fix sparse endian warnings Signed-off-by: Harvey Harrison Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit fc1f397b2c7ef1c9bad58778e4041dfabf20c71c Author: Andrew Morton Date: Wed Jul 30 12:34:56 2008 -0700 [MTD] [NAND] drivers/mtd/nand/nandsim.c needs div64.h drivers/mtd/nand/nandsim.c: In function 'divide': drivers/mtd/nand/nandsim.c:462: error: implicit declaration of function 'do_div' Cc: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 25fc999913839a45cbb48ac7872e67f7521e7ed9 Author: Jason Wessel Date: Fri Aug 1 08:39:35 2008 -0500 kgdb: fix gdb serial thread queries The command "info threads" did not work correctly with kgdb. It would result in a silent kernel hang if used. This patach addresses several problems. - Fix use of deprecated NR_CPUS - Fix kgdb to not walk linearly through the pid space - Correctly implement shadow pids - Change the threads per query to a #define - Fix kgdb_hex2long to work with negated values The threads 0 and -1 are reserved to represent the current task. That means that CPU 0 will start with a shadow thread id of -2, and CPU 1 will have a shadow thread id of -3, etc... From the debugger you can switch to a shadow thread to see what one of the other cpus was doing, however it is not possible to execute run control operations on any other cpu execept the cpu executing the kgdb_handle_exception(). Signed-off-by: Jason Wessel commit a9b60bf4c29e07a5a2f26a6f74937972fee9b58b Author: Jason Wessel Date: Fri Aug 1 08:39:34 2008 -0500 kgdb: fix kgdb_validate_break_address to perform a mem write A regression to the kgdb core was found in the case of using the CONFIG_DEBUG_RODATA kernel option. When this option is on, a breakpoint cannot be written into any readonly memory page. When an external debugger requests a breakpoint to get set, the kgdb_validate_break_address() was only checking to see if the address to place the breakpoint was readable and lacked a write check. This patch changes the validate routine to try reading (via the breakpoint set request) and also to try immediately writing the break point. If either fails, an error is correctly returned and the debugger behaves correctly. Then an end user can make the descision to use hardware breakpoints. Also update the documentation to reflect that using CONFIG_DEBUG_RODATA will inhibit the use of software breakpoints. Signed-off-by: Jason Wessel commit 5f5ddfb3605d2a4f555a7ff034859e623eafcd27 Author: Jason Wessel Date: Fri Aug 1 08:39:34 2008 -0500 kgdb: remove the requirement for CONFIG_FRAME_POINTER There is no technical reason that the kgdb core requires frame pointers. It is up to the end user of KGDB to decide if they need them or not. [ anemo@mba.ocn.ne.jp: removed frame pointers on mips ] Signed-off-by: Jason Wessel commit b7600dba6d4fbf3897e517b322d006986cce831a Author: David Woodhouse Date: Fri Aug 1 10:07:51 2008 +0100 [JFFS2] Fix allocation of summary buffer We can't use vmalloc for the buffer we use for writing summaries, because some drivers may want to DMA from it. So limit the size to 64KiB and use kmalloc for it instead. Signed-off-by: David Woodhouse commit f6ed6f78d46b43b6d908b39ed3322f7cda23f4a8 Author: Pieter du Preez Date: Fri Aug 1 10:06:40 2008 +0100 Fix rename of at91_nand -> atmel_nand Structs called at91_nand_data where renamed to atmel_nand_data and configs called *MTD_NAND_AT91* where renamed to *MTD_NAND_ATMEL*. This was unfortunately not done consistently, causing NAND chips not being initialised on several ARM boards. I am aware that the author of the original change did not rename MTD_NAND_AT91_BUSWIDTH to MTD_NAND_ATMEL_BUSWIDTH, for example. All *MTD_NAND_AT91* where renamed to *MTD_NAND_ATMEL* in order to keep naming consistency. This patch was only tested on a MACH_SAM9_L9260, as this is the only ARM board I have to my disposal. Before this patch: $ git-ls-files |xargs grep atmel_nand |wc -l 105 $ git-ls-files |xargs grep at91_nand |wc -l 4 $ git-ls-files |xargs grep MTD_NAND_ATMEL |wc -l 8 $ git-ls-files |xargs grep MTD_NAND_AT91 |wc -l 47 After this patch: $ git-ls-files |xargs grep atmel_nand |wc -l 109 $ git-ls-files |xargs grep at91_nand |wc -l 0 $ git-ls-files |xargs grep MTD_NAND_ATMEL |wc -l 55 $ git-ls-files |xargs grep MTD_NAND_AT91 |wc -l 0 Signed-off-by: Pieter du Preez Signed-off-by: David Woodhouse commit 00b1304c4ca81dd893973cc620b87a5c3ff3f660 Author: Adam Langley Date: Thu Jul 31 21:36:07 2008 -0700 tcp: MD5: Fix IPv6 signatures Reported by Stefanos Harhalakis; although 2.6.27-rc1 talks to itself using IPv6 TCP MD5 packets just fine, Stefanos noted that tcpdump claimed that the signatures were invalid. I broke this in 49a72dfb8814c2d65bd9f8c9c6daf6395a1ec58d ("tcp: Fix MD5 signatures for non-linear skbs"), it was just a typo. Note that tcpdump will still sometimes claim that the signatures are incorrect. A patch to tcpdump has been submitted for this[1]. [1] http://tinyurl.com/6a4fl2 Signed-off-by: Adam Langley Signed-off-by: David S. Miller commit 4a7b61d23505854dff7d04cc11944566cffdd0ee Author: Randy Dunlap Date: Thu Jul 31 20:52:08 2008 -0700 skbuff: add missing kernel-doc for do_not_encrypt Add missing kernel-doc notation to sk_buff: Warning(linux-2.6.27-rc1-git2//include/linux/skbuff.h:345): No description found for parameter 'do_not_encrypt' Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit 8a9204db665365354b349ed5b0bc054f0433a2a4 Author: Ingo Molnar Date: Thu Jul 31 20:51:22 2008 -0700 net/ipv4/route.c: fix build error fix: net/ipv4/route.c: In function 'ip_static_sysctl_init': net/ipv4/route.c:3225: error: 'ipv4_route_path' undeclared (first use in this function) net/ipv4/route.c:3225: error: (Each undeclared identifier is reported only once net/ipv4/route.c:3225: error: for each function it appears in.) net/ipv4/route.c:3225: error: 'ipv4_route_table' undeclared (first use in this function) Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 47d715af0761012ab074a12b5b5959f0179eaa09 Author: Mark M. Hoffman Date: Thu Jul 31 23:48:25 2008 -0400 hwmon: needs new maintainer Signed-off-by: Mark M. Hoffman commit 90b7e1120bb43ffaabb88d28f80a0c2e13167b15 Author: Adam Langley Date: Thu Jul 31 20:49:48 2008 -0700 tcp: MD5: Fix MD5 signatures on certain ACK packets I noticed, looking at tcpdumps, that timewait ACKs were getting sent with an incorrect MD5 signature when signatures were enabled. I broke this in 49a72dfb8814c2d65bd9f8c9c6daf6395a1ec58d ("tcp: Fix MD5 signatures for non-linear skbs"). I didn't take into account that the skb passed to tcp_*_send_ack was the inbound packet, thus the source and dest addresses need to be swapped when calculating the MD5 pseudoheader. Signed-off-by: Adam Langley Signed-off-by: David S. Miller commit 77e2f14f71d68d05945f1d30ca55b5194d6ab1ce Author: Wei Yongjun Date: Thu Jul 31 20:46:47 2008 -0700 ipv6: Fix ip6_xmit to send fragments if ipfragok is true SCTP used ip6_xmit() to send fragments after received ICMP packet too big message. But while send packet used ip6_xmit, the skb->local_df is not initialized. So when skb if enter ip6_fragment(), the following code will discard the skb. ip6_fragment(...) { if (!skb->local_df) { ... return -EMSGSIZE; } ... } SCTP do the following step: 1. send packet ip6_xmit(skb, ipfragok=0) 2. received ICMP packet too big message 3. if PMTUD_ENABLE: ip6_xmit(skb, ipfragok=1) This patch fixed the problem by set local_df if ipfragok is true. Signed-off-by: Wei Yongjun Acked-by: Herbert Xu Signed-off-by: David S. Miller commit bc4768eb081a67642c0c44c34ea597c273bdedcb Author: Julius Volz Date: Thu Jul 31 20:45:24 2008 -0700 ipvs: Move userspace definitions to include/linux/ip_vs.h Current versions of ipvsadm include "/usr/src/linux/include/net/ip_vs.h" directly. This file also contains kernel-only definitions. Normally, public definitions should live in include/linux, so this patch moves the definitions shared with userspace to a new file, "include/linux/ip_vs.h". This also removes the unused NFC_IPVS_PROPERTY bitmask, which was once used to point into skb->nfcache. To make old ipvsadms still compile with this, the old header file includes the new one. Thanks to Dave Miller and Horms for noting/adding the missing Kbuild entry for the new header file. Signed-off-by: Julius Volz Acked-by: Simon Horman Signed-off-by: David S. Miller commit 5f44759470f7248f74947a39cba339009d62052c Author: Jean Delvare Date: Wed Jun 25 09:10:30 2008 -0400 hwmon: (lm85) Simplify device initialization function Clean up and simplify the device initialization function: * Degrade error messages to warnings - what they really are. * Stop warning about VxI mode, we don't really care. * Drop comment about lack of limit initialization - that's the standard way, all hardware monitoring drivers do that. * Only read the configuration register once. * Only write back to the configuration register if needed. * Don't attempt to clear the lock bit, it locks itself to 1. * Move the function to before it's called, so that we no longer need to forware declare it. Signed-off-by: Jean Delvare Signed-off-by: Mark M. Hoffman commit e89e22b23bceb3fbbcfb931ad17a564b7c1eaa55 Author: Jean Delvare Date: Wed Jun 25 08:47:35 2008 -0400 hwmon: (lm85) Misc cleanups Misc cleanups to the lm85 hardware monitoring driver: * Mark constant arrays as const. * Remove useless masks. * Have lm85_write_value return void - nobody is checking the returned value anyway and in some cases it was plain wrong. * Remove useless initializations. * Rename new_client to client in lm85_detect. * Replace cascaded if/else with a switch/case in lm85_detect. * Group similar loops in lm85_update_device. * Remove legacy comments. Signed-off-by: Jean Delvare Acked-by: Juerg Haefliger Signed-off-by: Mark M. Hoffman commit 7133e56f29030b13601d3399e20050053e560860 Author: Jean Delvare Date: Sat Apr 12 19:56:35 2008 +0200 hwmon: (lm85) Don't write back cached values In set_pwm_auto_pwm_minctl, we write cached register bits back to the chip. This is a bad idea as we have no guarantee that the cache is up-to-date. Better read a fresh register value from the chip, it's safer and in fact it is also more simple. Signed-off-by: Jean Delvare Acked-by: Juerg Haefliger Signed-off-by: Mark M. Hoffman commit dd1ac5384a08946a99e974bf5749d382e92ed3c0 Author: Jean Delvare Date: Thu May 1 08:47:33 2008 +0200 hwmon: (lm85) Drop dead code Drop a lot of useless register defines, conversion macros, data structure members and update code. All these register values were read from the device but nothing is done out of them, so this is all dead code in practice. Signed-off-by: Jean Delvare Acked-by: Juerg Haefliger Signed-off-by: Mark M. Hoffman commit 1f44809ac3d7a3fc977684dc3a95fa221f33fc15 Author: Jean Delvare Date: Tue Apr 29 14:03:37 2008 +0200 hwmon: (lm85) Coding-style cleanups Fix most style issues reported by checkpatch, including: * Trailing, missing and extra whitespace * Extra parentheses, curly braces and semi-colons * Broken indentation * Lines too long I verified that the generated code is the same before and after these changes. Signed-off-by: Jean Delvare Acked-by: Juerg Haefliger Signed-off-by: Mark M. Hoffman commit 9ebd3d822efeca2e73565516a80373c76ce3fa12 Author: David Brownell Date: Sat May 3 19:33:15 2008 -0700 hwmon: (lm75) add new-style driver binding More LM75 updates: - Teach the LM75 driver to use new-style driver binding: * Create a second driver struct, using new-style driver binding methods cribbed from the legacy code. * Add a MODULE_DEVICE_TABLE (for "newER-style binding") * The legacy probe logic delegates its work to this new code. * The legacy driver now uses the name "lm75_legacy". - More careful initialization. Chips are put into 9-bit mode so the current interconversion routines will never fail. - Save the original chip configuration, and restore it on exit. (Among other things, this normally turns off the mode where the chip is constantly sampling ... and thus saves power.) So the new-style code should catch all chips that boards declare, while the legacy code catches others. This particular coexistence strategy may need some work yet ... legacy modes might best be set up explicitly by some tool not unlike "sensors-detect". (Or else completely eradicated...) Signed-off-by: David Brownell Acked-by: Jean Delvare Signed-off-by: Mark M. Hoffman commit 01a52397e95a8532c59506691759dba9262d6be7 Author: David Brownell Date: Mon Apr 21 12:10:53 2008 -0700 hwmon: (lm75) cleanup/reorg Minor cleanup and reorg of the lm75 code. - Kconfig provides a larger list of lm75-compatible chips - A top comment now says what the driver does (!) ... as in, just what sort of sensor is this?? - Section comments now delineate the various sections of the driver: hwmon attributes, driver binding, register access, module glue. One driver binding function moved out of the attribute section, as did the driver struct itself. - Minor tweaks to legacy probe logic: correct a comment, and remove a pointless variable. - Whitespace, linelength, and comment fixes. This patch should include no functional changes. It's preparation for adding new-style (driver model) I2C driver binding. Signed-off-by: David Brownell Acked-by: Jean Delvare Acked-by: Laurent Pinchart Signed-off-by: Mark M. Hoffman commit 321c4138573da888ca30a387e9973f690c217e9e Author: Mark M. Hoffman Date: Mon May 26 15:09:36 2008 -0400 hwmon: (adt7473) clarify an awkward bit of code Signed-off-by: Mark M. Hoffman Acked-by: Jean Delvare commit 9d3e19afd35907bf58b205096cd33e97df8fb6a5 Author: Jean Delvare Date: Sat Apr 26 16:28:27 2008 +0200 hwmon: (adt7473) Remove unused defines All the *_MAX_ADDR defines are never used, so remove them. The number of registers of each type is already expressed by the *_COUNT defines. Signed-off-by: Jean Delvare Acked-by: Darrick J. Wong Signed-off-by: Mark M. Hoffman commit f994fb23d3c63dffc8127f227f3e0c530e3e4fd6 Author: Juerg Haefliger Date: Tue Mar 25 21:49:15 2008 -0700 hwmon: (dme1737) fix voltage scaling This patch fixes a voltage scaling issue for the sch311x device. Signed-Off-By: Juerg Haefliger Acked-by: Jean Delvare Signed-off-by: Mark M. Hoffman commit 92430b6feb19aba043171ff3094535b598052901 Author: Juerg Haefliger Date: Thu Apr 3 21:34:19 2008 -0700 hwmon: (dme1737) probe all addresses This patch adds a module load parameter to enable probing of non-standard LPC addresses 0x162e and 0x164e when scanning for supported ISA chips. Signed-Off-By: Juerg Haefliger Acked-by: Jean Delvare Signed-off-by: Mark M. Hoffman commit 9b257714a3f6f5c3ea133c44d3442e2340734b65 Author: Juerg Haefliger Date: Tue Mar 25 21:49:02 2008 -0700 hwmon: (dme1737) demacrofy for readability This patch gets rid of a couple of macros previously used for sysfs attribute generation and manipulation. This makes the source a little bigger but a lot more readable and maintainable. It also fixes an issue with pwm5 & pwm6 attributes not being created read-only initially. Signed-Off-By: Juerg Haefliger Acked-by: Jean Delvare Signed-off-by: Mark M. Hoffman commit 0a4949c4414af2eb91414bcd8e2a8ac3706f7dde Author: David S. Miller Date: Thu Jul 31 20:40:46 2008 -0700 sparc64: Do not clobber %g7 in setcontext() trap. That's the userland thread register, so we should never try to change it like this. Based upon glibc bug nptl/6577 and suggestions by Jakub Jelinek. Signed-off-by: David S. Miller commit dbf3e950679b2588e554baa4da94c445c7903e24 Author: David S. Miller Date: Thu Jul 31 20:33:43 2008 -0700 sparc64: Kill __show_regs(). The story is that what we used to do when we actually used smp_report_regs() is that if you specifically only wanted to have the current cpu's registers dumped you would call "__show_regs()" otherwise you would call show_regs() which also invoked smp_report_regs(). Now that we killed off smp_report_regs() there is no longer any reason to have these two routines, just show_regs() is sufficient. Also kill off a stray declaration of show_regs() in sparc64_ksym.c Signed-off-by: David S. Miller commit 6717c282e407650c29e7b058623d89f543015a33 Author: David S. Miller Date: Thu Jul 31 20:32:35 2008 -0700 sparc: Add __KERNEL__ ifdef protection to pt_regs helpers. Some of them use 'bool' and whatnot and therefore are not kosher for userspace, so don't export them there. Reported by Roland McGrath. Signed-off-by: David S. Miller commit 388667bed591b2359713bb17d5de0cf56e961447 Author: Arthur Jones Date: Fri Jul 25 12:03:38 2008 -0700 md: raid10: wake up frozen array When rescheduling a bio in raid10, we wake up the md thread, but if the array is frozen, this will have no effect. This causes the array to remain frozen for eternity. We add a wake_up to allow the array to de-freeze. This code is nearly identical to the raid1 code, which has this fix already. Signed-off-by: Arthur Jones Signed-off-by: NeilBrown commit c3f26a269c2421f97f10cf8ed05d5099b573af4d Author: David S. Miller Date: Thu Jul 31 16:58:50 2008 -0700 netdev: Fix lockdep warnings in multiqueue configurations. When support for multiple TX queues were added, the netif_tx_lock() routines we converted to iterate over all TX queues and grab each queue's spinlock. This causes heartburn for lockdep and it's not a healthy thing to do with lots of TX queues anyways. So modify this to use a top-level lock and a "frozen" state for the individual TX queues. Signed-off-by: David S. Miller commit c259ae52e204d42f8b2d484c85517a4c367030e1 Author: Julia Lawall Date: Mon Jul 21 09:59:15 2008 +0200 [PATCH] ocfs2: Release mutex in error handling code The mutex is released on a successful return, so it would seem that it should be released on an error return as well. The semantic patch finds this problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression l; @@ mutex_lock(l); ... when != mutex_unlock(l) when any when strict ( if (...) { ... when != mutex_unlock(l) + mutex_unlock(l); return ...; } | mutex_unlock(l); ) // Signed-off-by: Julia Lawall Signed-off-by: Mark Fasheh commit 961cecbee6786f4b1f1b8f695e87045b583f9f49 Author: Sunil Mushran Date: Wed Jul 16 17:22:22 2008 -0700 [PATCH] ocfs2: Fix oops when racing files truncates with writes into an mmap region This patch fixes an oops that is reproduced when one races writes to a mmap-ed region with another process truncating the file. Signed-off-by: Sunil Mushran Signed-off-by: Mark Fasheh commit 539d8264093560b917ee3afe4c7f74e5da09d6a5 Author: Sunil Mushran Date: Mon Jul 14 17:31:10 2008 -0700 [PATCH 2/2] ocfs2: Fix race between mount and recovery As the fs recovery is asynchronous, there is a small chance that another node can mount (and thus recover) the slot before the recovery thread gets to it. If this happens, the recovery thread will block indefinitely on the journal/slot lock as that lock will be held for the duration of the mount (by design) by the node assigned to that slot. The solution implemented is to keep track of the journal replays using a recovery generation in the journal inode, which will be incremented by the thread replaying that journal. The recovery thread, before attempting the blocking lock on the journal/slot lock, will compare the generation on disk with what it has cached and skip recovery if it does not match. This bug appears to have been inadvertently introduced during the mount/umount vote removal by mainline commit 34d024f84345807bf44163fac84e921513dde323. In the mount voting scheme, the messaging would indirectly indicate that the slot was being recovered. Signed-off-by: Sunil Mushran Signed-off-by: Mark Fasheh commit c69991aac71a8beb57c11d651c7fd4b24c32aa8b Author: Sunil Mushran Date: Mon Jul 14 17:31:09 2008 -0700 [PATCH 1/2] ocfs2: Add counter in struct ocfs2_dinode to track journal replays This patch renames the ij_pad to ij_recovery_generation in struct ocfs2_dinode. This will be used to keep count of journal replays after an unclean shutdown. Signed-off-by: Sunil Mushran Signed-off-by: Mark Fasheh commit ecb3d28c7edd58b54f16838c434b342ba9195bec Author: Joel Becker Date: Wed Jun 18 19:29:05 2008 -0700 [PATCH] configfs: Convenience macros for attribute definition. Sysfs has the _ATTR() and _ATTR_RO() macros to make defining extended form attributes easier. configfs should have something similiar. - _CONFIGFS_ATTR() and _CONFIGFS_ATTR_RO() are the counterparts to the sysfs macros. - CONFIGFS_ATTR_STRUCT() creates the extended form attribute structure. - CONFIGFS_ATTR_OPS() defines the show_attribute()/store_attribute() operations that call the show()/store() operations of the extended form configfs_attributes. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 70526b67443a980d5029d9cf06903bef731a4e96 Author: Joel Becker Date: Tue Jun 17 15:34:32 2008 -0700 [PATCH] configfs: Pin configfs subsystems separately from new config_items. configfs_mkdir() creates a new item by calling its parent's ->make_item/group() functions. Once that object is created, configfs_mkdir() calls try_module_get() on the new item's module. If it succeeds, the module owning the new item cannot be unloaded, and configfs is safe to reference the item. If the item and the subsystem it belongs to are part of the same module, the subsystem is also pinned. This is the common case. However, if the subsystem is made up of multiple modules, this may not pin the subsystem. Thus, it would be possible to unload the toplevel subsystem module while there is still a child item. Thus, we now try_module_get() the subsystem's module. This only really affects children of the toplevel subsystem group. Deeper children already have their parents pinned. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 99cefda42ac550863b5ae1df9e60322e377decf9 Author: Louis Rilling Date: Fri Jun 27 13:10:25 2008 +0200 [PATCH] configfs: Fix open directory making rmdir() fail When checking for user-created elements under an item to be removed by rmdir(), configfs_detach_prep() counts fake configfs_dirents created by dir_open() as user-created and fails when finding one. It is however perfectly valid to remove a directory that is open. Simply make configfs_detach_prep() skip fake configfs_dirent, like it already does for attributes, and like detach_groups() does. Signed-off-by: Louis Rilling Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 2e2ce171c3ba6f2753fb1fd2706b63683394da2d Author: Louis Rilling Date: Fri Jul 4 16:56:06 2008 +0200 [PATCH] configfs: Lock new directory inodes before removing on cleanup after failure Once a new configfs directory is created by configfs_attach_item() or configfs_attach_group(), a failure in the remaining initialization steps leads to removing a directory which inode the VFS may have already accessed. This commit adds the necessary inode locking to safely remove configfs directories while cleaning up after a failure. As an advantage, the locking rules of populate_groups() and detach_groups() become the same: the caller must have the group's inode mutex locked. Signed-off-by: Louis Rilling Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 2a109f2a4155f168047aa2f5b3a170e279bef89a Author: Louis Rilling Date: Fri Jul 4 16:56:05 2008 +0200 [PATCH] configfs: Prevent userspace from creating new entries under attaching directories process 1: process 2: configfs_mkdir("A") attach_group("A") attach_item("A") d_instantiate("A") populate_groups("A") mutex_lock("A") attach_group("A/B") attach_item("A") d_instantiate("A/B") mkdir("A/B/C") do_path_lookup("A/B/C", LOOKUP_PARENT) ok lookup_create("A/B/C") mutex_lock("A/B") ok configfs_mkdir("A/B/C") ok attach_group("A/C") attach_item("A/C") d_instantiate("A/C") populate_groups("A/C") mutex_lock("A/C") attach_group("A/C/D") attach_item("A/C/D") failure mutex_unlock("A/C") detach_groups("A/C") nothing to do mkdir("A/C/E") do_path_lookup("A/C/E", LOOKUP_PARENT) ok lookup_create("A/C/E") mutex_lock("A/C") ok configfs_mkdir("A/C/E") ok detach_item("A/C") d_delete("A/C") mutex_unlock("A") detach_groups("A") mutex_lock("A/B") detach_group("A/B") detach_groups("A/B") nothing since no _default_ group detach_item("A/B") mutex_unlock("A/B") d_delete("A/B") detach_item("A") d_delete("A") Two bugs: 1/ "A/B/C" and "A/C/E" are created, but never removed while their parent are removed in the end. The same could happen with symlink() instead of mkdir(). 2/ "A" and "A/C" inodes are not locked while detach_item() is called on them, which may probably confuse VFS. This commit fixes 1/, tagging new directories with CONFIGFS_USET_CREATING before building the inode and instantiating the dentry, and validating the whole group+default groups hierarchy in a second pass by clearing CONFIGFS_USET_CREATING. mkdir(), symlink(), lookup(), and dir_open() simply return -ENOENT if called in (or linking to) a directory tagged with CONFIGFS_USET_CREATING. This does not prevent userspace from calling stat() successfuly on such directories, but this prevents userspace from adding (children to | symlinking from/to | read/write attributes of | listing the contents of) not validated items. In other words, userspace will not interact with the subsystem on a new item until the new item creation completes correctly. It was first proposed to re-use CONFIGFS_USET_IN_MKDIR instead of a new flag CONFIGFS_USET_CREATING, but this generated conflicts when checking the target of a new symlink: a valid target directory in the middle of attaching a new user-created child item could be wrongly detected as being attached. 2/ is fixed by next commit. Signed-off-by: Louis Rilling Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 9a73d78cda750f12e25eb811878f2d9dbab1bc6e Author: Louis Rilling Date: Fri Jun 20 14:09:22 2008 +0200 [PATCH] configfs: Fix failing symlink() making rmdir() fail On a similar pattern as mkdir() vs rmdir(), a failing symlink() may make rmdir() fail for the symlink's parent and the symlink's target as well. failing symlink() making target's rmdir() fail: process 1: process 2: symlink("A/S" -> "B") allow_link() create_link() attach to "B" links list rmdir("B") detach_prep("B") error because of new link configfs_create_link("A", "S") error (eg -ENOMEM) failing symlink() making parent's rmdir() fail: process 1: process 2: symlink("A/D/S" -> "B") allow_link() create_link() attach to "B" links list configfs_create_link("A/D", "S") make_dirent("A/D", "S") rmdir("A") detach_prep("A") detach_prep("A/D") error because of "S" create("S") error (eg -ENOMEM) We cannot use the same solution as for mkdir() vs rmdir(), since rmdir() on the target cannot wait on the i_mutex of the new symlink's parent without risking a deadlock (with other symlink() or sys_rename()). Instead we define a global mutex protecting all configfs symlinks attachment, so that rmdir() can avoid the races above. Signed-off-by: Louis Rilling Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 4768e9b18dc63719209c68920d4ae52dc49b6161 Author: Louis Rilling Date: Mon Jun 23 14:16:17 2008 +0200 [PATCH] configfs: Fix symlink() to a removing item The rule for configfs symlinks is that symlinks always point to valid config_items, and prevent the target from being removed. However, configfs_symlink() only checks that it can grab a reference on the target item, without ensuring that it remains alive until the symlink is correctly attached. This patch makes configfs_symlink() fail whenever the target is being removed, using the CONFIGFS_USET_DROPPING flag set by configfs_detach_prep() and protected by configfs_dirent_lock. This patch introduces a similar (weird?) behavior as with mkdir failures making rmdir fail: if symlink() races with rmdir() of the parent directory (or its youngest user-created ancestor if parent is a default group) or rmdir() of the target directory, and then fails in configfs_create(), this can make the racing rmdir() fail despite the concerned directory having no user-created entry (resp. no symlink pointing to it or one of its default groups) in the end. This behavior is fixed in later patches. Signed-off-by: Louis Rilling Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit dacdd0e04768da1fd2b24a6ee274c582b40d0c5b Author: Joel Becker Date: Thu Jul 17 16:54:19 2008 -0700 [PATCH] configfs: Include linux/err.h in linux/configfs.h We now use PTR_ERR() in the ->make_item() and ->make_group() operations. Folks including configfs.h need err.h. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 48a61569bb5396415c5dad0e81e1cfeb87c0aca3 Author: Adrian Bunk Date: Wed Jul 23 22:50:45 2008 +0300 kbuild: scripts/ver_linux: don't set PATH It would have saved both a bug submitter and me a few hours if scripts/ver_linux had picked the same gcc as the build. Since I can't see any reason why it fiddles with PATH at all this patch therefore removes the PATH setting. Signed-off-by: Adrian Bunk Signed-off-by: Sam Ravnborg commit 775a7229ac862ea93924672e7e331edf8475415c Author: jkacur Date: Wed Jul 16 00:31:16 2008 +0200 Kconfig/init: change help text to match default value Change the "If unsure" message to match the default value. Signed-off-by: John Kacur Signed-off-by: Sam Ravnborg commit 3b40d38120c32798a4be8d8052f028deeca9d581 Author: Andreas Gruenbacher Date: Mon Jul 21 04:28:25 2008 +0200 kbuild: genksyms: Include extern information in dumps The extern flag currently is not included in type dump files (genksyms --dump-types). Include that flag there for completeness. Signed-off-by: Andreas Gruenbacher Signed-off-by: Sam Ravnborg commit 94aa3d716ee0244cc5b9f2ab3745aed5fdfa30e0 Author: Andreas Gruenbacher Date: Thu Jul 31 00:03:49 2008 +0200 kbuild: genksyms parser: fix the __attribute__ rule We are having two kinds of problems with genksyms today: fake checksum changes without actual ABI changes, and changes which we would rather like to ignore (such as an additional field at the end of a structure that modules are not supposed to touch, for example). I have thought about ways to improve genksyms and compute checksums differently to avoid those problems, but in the end I don't see a fundamentally better way. So here are some genksyms patches for at least making the checksums more easily manageable, if we cannot fully fix them. In addition to the bugfixes (the first two patches), this allows genksyms to track checksum changes and report why a checksum changed (third patch), and to selectively ignore changes (fourth patch). This patch: Gcc __attribute__ definitions may occur repeatedly, e.g., static int foo __attribute__((__used__)) __attribute__((aligned (16))); The genksyms parser does not understand this, and generates a syntax error. Fix this case. Signed-off-by: Andreas Gruenbacher Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit 1f4170e12db06fdde5279d665a7e6e2976b2b623 Author: Christian Borntraeger Date: Tue Jul 29 23:48:42 2008 +0200 KVM: s390: Fix kvm on IBM System z10 The z10 system supports large pages, kvm-s390 doesnt. Make sure that we dont advertise large pages to avoid the guest crashing as soon as the guest kernel activates DAT. Signed-off-by: Christian Borntraeger Signed-off-by: Avi Kivity commit 9c636e30a33aa37873c53977c429f0fdad4ec0eb Author: David S. Miller Date: Thu Jul 31 01:06:02 2008 -0700 sparc64: Kill smp_report_regs(). All the call sites are #if 0'd out and we have a much more useful global cpu dumping facility these days. smp_report_regs() is way too verbose to be usable. Signed-off-by: David S. Miller commit a014821340f068bea2fd39cb2578a043fc0dfc57 Author: David S. Miller Date: Thu Jul 31 00:58:35 2008 -0700 sparc64: Kill VERBOSE_SHOWREGS code. It just clutters everything up and even though I wrote that hack I can't remember having used it in the last 5 years or so. Signed-off-by: David S. Miller commit 6f5fd8e9b98423add5f67b964e7cc8733dd73460 Author: Jeff Garzik Date: Thu Jul 31 03:46:30 2008 -0400 drivers/media, include/media: delete zero-length files Signed-off-by: Jeff Garzik commit 967ab999a090b1a4e7d3c7febfd6d89b42fb4cf4 Author: Pavel Emelyanov Date: Thu Jul 31 00:38:52 2008 -0700 netfilter: xt_hashlimit: fix race between htable_destroy and htable_gc Deleting a timer with del_timer doesn't guarantee, that the timer function is not running at the moment of deletion. Thus in the xt_hashlimit case we can get into a ticklish situation when the htable_gc rearms the timer back and we'll actually delete an entry with a pending timer. Fix it with using del_timer_sync(). AFAIK del_timer_sync checks for the timer to be pending by itself, so I remove the check. Signed-off-by: Pavel Emelyanov Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a8ddc9163c6a16cd62531dba1ec5020484e33b02 Author: Pavel Emelyanov Date: Thu Jul 31 00:38:31 2008 -0700 netfilter: ipt_recent: fix race between recent_mt_destroy and proc manipulations The thing is that recent_mt_destroy first flushes the entries from table with the recent_table_flush and only *after* this removes the proc file, corresponding to that table. Thus, if we manage to write to this file the '+XXX' command we will leak some entries. If we manage to write there a 'clean' command we'll race in two recent_table_flush flows, since the recent_mt_destroy calls this outside the recent_lock. The proper solution as I see it is to remove the proc file first and then go on with flushing the table. This flushing becomes safe w/o the lock, since the table is already inaccessible from the outside. Signed-off-by: Pavel Emelyanov Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ae375044d31075a31de5a839e07ded7f67b660aa Author: Patrick McHardy Date: Thu Jul 31 00:38:01 2008 -0700 netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged In order to time out dead connections quicker, keep track of outstanding data and cap the timeout. Suggested by Herbert Xu. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4a22442faeb33bdf34016a7b1f6b3d6ecd4e33e5 Author: Jerry Hicks Date: Wed Jul 30 12:49:59 2008 -0700 [MTD] [NOR] drivers/mtd/chips/jedec_probe.c: fix Am29DL800BB device ID The device id for Am29DL800BB in jedec_probe.c is wrong. Reference: http://www.spansion.com/datasheets/21519c4.pdf I discovered this while working with u-boot. The u-boot folks mentioned Linux as an upstream reference, thought I'd post a heads-up here too. Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 963e4975c6f93c148ca809d986d412201df9af89 Author: Alan Cox Date: Thu Jul 24 17:16:06 2008 +0100 pata_it821x: Driver updates and reworking - Add support for the RDC 1010 variant - Rework the core library to have a read_id method. This allows the hacky bits of it821x to go and prepares us for pata_hd - Switch from WARN to BUG in ata_id_string as it will reboot if you get it wrong so WARN won't be seen - Allow the issue of command 0xFC on the 821x. This is needed to query rebuild status. - Tidy up printk formatting - Do more ident rewriting on RAID volumes to handle firmware provided ident data which is rather wonky - Report the firmware revision and device layout in RAID mode - Don't try and disable raid on the 8211 or RDC - they don't have the relevant bits Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 1f938d060a7bc01b5f82d46db3e38cd501b445a6 Author: Alexander Beregalov Date: Mon Jul 21 00:06:19 2008 +0400 libata.h: replace __FUNCTION__ with __func__ Signed-off-by: Alexander Beregalov Signed-off-by: Jeff Garzik commit 487eff68e42287fd45cf178063f1ce1bad23c612 Author: Tejun Heo Date: Tue Jul 29 15:06:26 2008 +0900 ata_piix: subsys 106b:00a3 is apple ich8m too Subsys 106b:00a3 also is the weird apple ich8m which chokes when the latter two ports are accessed, add it. Reported by Felipe Sere. Signed-off-by: Tejun Heo Cc: Felipe Sere Signed-off-by: Jeff Garzik commit 49ea3b04971ece6a5efe5d7b763ad9d2f169d441 Author: Elias Oltmanns Date: Wed Jul 30 12:32:39 2008 -0700 libata-core: make sure that ata_force_tbl is freed in case of an error Fix a potential memory leak when ata_init() encounters an error. Signed-off-by: Elias Oltmanns Cc: Tejun Heo Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 2486fa561a3192bbbec39c7feef87a1e07bd6342 Author: Tejun Heo Date: Thu Jul 31 07:52:40 2008 +0900 libata: update atapi disable handling Global and per-LLD ATAPI disable checks were done in the command issue path probably because it was left out during EH conversion. On affected machines, this can cause lots of warning messages. Move them to where they belong - the probing path. Reported by Chunbo Luo. Signed-off-by: Tejun Heo Cc: Chunbo Luo Signed-off-by: Jeff Garzik commit bfce5e0179ad059035df28558724ff60af708e09 Author: JosephChan@via.com.tw Date: Wed Jul 30 12:32:48 2008 -0700 pata_via: add VX800 flag; add function for fixing h/w bugs Add flag VIA_SATA_PATA for vx800, VX800 uses the same chipset(0x0581/0x5324) as CX700, which has 1 PATA channel(Master/Slave) and 1 SATA channel(Master/Slave) Add function . This is to fix the internal bug of VIA chipsets, which will reset the device register after changing the IEN bit in CTL register Signed-off-by: Joseph Chan Cc: Tejun Heo Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit e8389f0c44652ee63d95bc0a7f8d565ac25dac77 Author: Ben Dooks Date: Thu Jul 24 16:38:06 2008 +0100 pata_ali: misplaced pci_dev_put() The ali_init_one() function does a search for an isa_bridge, but then fails to release it if the revision information was not correctly found. the problem comes from: isa_bridge = pci_get_device(...); if (isa_bridge && ...) { pci_dev_put(isa_bridge); } where the pci_dev_put() is never called if isa_bridge was valid but the extra checks on the chip-revision fail to match. Signed-off-by: Ben Dooks Signed-off-by: Jeff Garzik commit 09ee167cbf3b7390c993c6699ce9fa84e55422bf Author: David S. Miller Date: Wed Jul 30 22:35:00 2008 -0700 sparc64: Hook up trigger_all_cpu_backtrace(). We already have code that does this, but it is only currently attached to sysrq-'y'. Signed-off-by: David S. Miller commit 5afe27380bc42454254c9c83c045240249c15e35 Author: David S. Miller Date: Wed Jul 30 21:57:59 2008 -0700 sparc64: Make global reg dumping even more useful. Record one more level of stack frame program counter. Particularly when lockdep and all sorts of spinlock debugging is enabled, figuring out the caller of spin_lock() is difficult when the cpu is stuck on the lock. Signed-off-by: David S. Miller commit a97a6f10771b90235b33c13a6db9279237a08422 Author: Harvey Harrison Date: Wed Jul 30 17:20:18 2008 -0700 irda: replace __FUNCTION__ with __func__ __FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 1fa98174ba980b2826edd1e4632a17916dfdb4fa Author: Matthew Garrett Date: Wed Jul 30 17:00:38 2008 -0700 nsc-ircc: default to dongle type 9 on IBM hardware This is necessary to set the dongle type on the nsc driver in order to get it to work correctly. Thinkpads all appear to use dongle type 9. This patch defaults nsc devices with an IBM PnP descriptor to use type 9. Signed-off-by: Matthew Garrett Signed-off-by: Ben Collins Signed-off-by: Andrew Morton commit 5aa10cad69d282acfaf89d3c16ee07f9b279dbd2 Author: Michael Frey Date: Wed Jul 30 16:59:15 2008 -0700 bluetooth: add quirks for a few hci_usb devices Preface: The "Broadcom" device is on unreleased hardware, so I can't disclose the actual model. When the Dell 370 and 410 BT adapters are put into BT radio mode, they need to be prepared like many other Broadcom adapters. Also, add quirk Broadcom 2046 devices with HCI_RESET. Reference for this bug: https://launchpad.net/bugs/249448 Signed-off-by: Michael Frey Signed-off-by: Mario Limonciello Signed-off-by: Tim Gardner Signed-off-by: Ben Collins Acked-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit c9b23e0c302377ccff700bee663b878d04e4ef3a Author: Florian Fainelli Date: Wed Jul 30 16:49:52 2008 -0700 sparc: Ignore drivers/video/console/promcon_tbl.c conmakehash generated file Add drivers/video/console/promcon_tbl.c to the list of ignored files. This file is generated by conmakehash against drivers/video/console/prom.uni. Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller commit a7403e807d5f6431a09abb13a00f8170dac1da29 Author: David Howells Date: Wed Jul 30 16:48:05 2008 -0700 hysdn: remove the packed attribute from PofTimStamp_tag Remove the packed attribute from PofTimStamp_tag in the hysdn driver as the thing being packed is just an array of chars and so is unpackable. This deals with a compiler warning: In file included from drivers/isdn/hysdn/hysdn_boot.c:19: drivers/isdn/hysdn/hysdn_pof.h:63: warning: 'packed' attribute ignored for field of type 'unsigned char[40]' Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 02137f2e80a4fb1481b2b1663d3d3795e705c5bc Author: Harvey Harrison Date: Wed Jul 30 16:40:22 2008 -0700 isdn: use the common ascii hex helpers Signed-off-by: Harvey Harrison Acked-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 12dac0756d357325b107fe6ec24921ec38661839 Author: Rafael J. Wysocki Date: Wed Jul 30 16:37:33 2008 -0700 tg3: adapt tg3 to use reworked PCI PM code Adapt the tg3 driver to use the reworked PCI PM and make it use the exported PCI PM core functions instead of accessing the PCI PM registers directly by itself. Signed-off-by: Rafael J. Wysocki Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 849e8caa477d72cf153e5c0b6ce0c00b89738abb Author: David Howells Date: Wed Jul 30 16:33:05 2008 -0700 atm: fix direct casts of pointers to u32 in the InterPhase driver Fix direct casts of pointers to u32 in the InterPhase ATM driver. These are all arguments being passed to printk() calls. So drop the cast and change the %x to a %p. Signed-off-by: David Howells Acked-by: Chas Williams Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit cba5cbd1559f49bec76e54de6ed21b7df3742ada Author: David Howells Date: Wed Jul 30 16:31:46 2008 -0700 atm: fix const assignment/discard warnings in the ATM networking driver Fix const assignment/discard warnings in the ATM networking driver. The lane2_assoc_ind() function needed its arguments changing to match changes in the lane2_ops struct (patch 61c33e012964ce358b42d2a1e9cd309af5dab02b "atm: use const where reasonable"). Signed-off-by: David Howells Acked-by: Chas Williams Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 6a8341b68b5269de71c32c6df91f4b0298da031d Author: Harvey Harrison Date: Wed Jul 30 16:30:15 2008 -0700 net: use the common ascii hex helpers Signed-off-by: Harvey Harrison Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 697f8d0348a652593d195a13dd1067d9df911a82 Author: Stephen Hemminger Date: Wed Jul 30 16:29:19 2008 -0700 random32: seeding improvement The rationale is: * use u32 consistently * no need to do LCG on values from (better) get_random_bytes * use more data from get_random_bytes for secondary seeding * don't reduce state space on srandom32() * enforce state variable initialization restrictions Note: the second paper has a version of random32() with even longer period and a version of random64() if needed. Signed-off-by: Stephen Hemminger Signed-off-by: Andrew Morton commit 4adf0af6818f3ea52421dc0bae836cfaf20ef72a Author: Simon Wunderlich Date: Wed Jul 30 16:27:55 2008 -0700 bridge: send correct MTU value in PMTU (revised) When bridging interfaces with different MTUs, the bridge correctly chooses the minimum of the MTUs of the physical devices as the bridges MTU. But when a frame is passed which fits through the incoming, but not through the outgoing interface, a "Fragmentation Needed" packet is generated. However, the propagated MTU is hardcoded to 1500, which is wrong in this situation. The sender will repeat the packet again with the same frame size, and the same problem will occur again. Instead of sending 1500, the (correct) MTU value of the bridge is now sent via PMTU. To achieve this, the corresponding rtable structure is stored in its net_bridge structure. Modified to get rid of fake_net_device as well. Signed-off-by: Simon Wunderlich Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit e62112c53acfefc67ccfbdc1895eebccf866bc1b Merge: 031cf19... 68905eb... Author: David S. Miller Date: Wed Jul 30 15:44:30 2008 -0700 Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit d72609e17fd93bb2f7e0f7e1bdc70b6d20e43843 Author: Mikael Pettersson Date: Wed Jul 30 15:40:50 2008 -0700 sparc64: FUTEX_OP_ANDN fix Correct sparc64's implementation of FUTEX_OP_ANDN to do a bitwise negate of the oparg parameter before applying the AND operation. All other archs that support FUTEX_OP_ANDN either negate oparg explicitly (frv, ia64, mips, sh, x86), or do so indirectly by using an and-not instruction (powerpc). Since sparc64 has and-not, I chose to use that solution. I've not found any use of FUTEX_OP_ANDN in glibc so the impact of this bug is probably minor. But other user-space components may try to use it so it should still get fixed. Signed-off-by: Mikael Pettersson Signed-off-by: David S. Miller commit 8b6d8c592fa7b8bfb1218447a273314c13a67e8a Merge: 94ad374... de1d7bb... Author: Linus Torvalds Date: Wed Jul 30 15:14:56 2008 -0700 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Cobalt: update defconfig [MIPS] kgdb: add arch support for the kernel's kgdb core [MIPS] kgdb: Remove existing implementation [MIPS] TXx9: Kconfig cleanup [MIPS] TXx9: Kill unused txx927.h [MIPS] TXx9: Support early_printk [MIPS] TXx9: Unify serial_txx9 setup [MIPS] TXx9: Random cleanup [MIPS] TXx9: Make tx4938-specific code more independent [MIPS] TXx9: Make tx3927-specific code more independent [MIPS] TXx9: Cleanup watchdog [MIPS] TXx9: Cleanup restart/halt/power_off [MIPS] TXx9: PCI error handling [MIPS] TXx9: Add some pci options [MIPS] Introduce pcibios_plat_setup [MIPS] TXx9: PCI fixes for tx3927/tx4927 [MIPS] TXx9: Fix JMR3927 irq numbers [MIPS] RB532: Flags are unsigned long [MIPS] Initialization of Alchemy boards [MIPS] tlb-r4k: Nuke broken paranoia error test. commit 94ad374a0751f40d25e22e036c37f7263569d24c Author: Linus Torvalds Date: Wed Jul 30 14:45:12 2008 -0700 Fix off-by-one error in iov_iter_advance() The iov_iter_advance() function would look at the iov->iov_len entry even though it might have iterated over the whole array, and iov was pointing past the end. This would cause DEBUG_PAGEALLOC to trigger a kernel page fault if the allocation was at the end of a page, and the next page was unallocated. The quick fix is to just change the order of the tests: check that there is any iovec data left before we check the iov entry itself. Thanks to Alexey Dobriyan for finding this case, and testing the fix. Reported-and-tested-by: Alexey Dobriyan Cc: Nick Piggin Cc: Andrew Morton Cc: [2.6.25.x, 2.6.26.x] Signed-off-by: Linus Torvalds commit 0056e65f9e28d83ee1a3fb4f7d0041e838f03c34 Author: Linus Torvalds Date: Wed Jul 30 14:26:25 2008 -0700 romfs_readpage: don't report errors for pages beyond i_size We zero-fill them like we are supposed to, and that's all fine. It's only an error if the 'romfs_copyfrom()' routine isn't able to fill the data that is supposed to be there. Most of the patch is really just re-organizing the code a bit, and using separate variables for the error value and for how much of the page we actually filled from the filesystem. Reported-and-tested-by: Chris Fester Cc: Alexander Viro Cc: Matt Waddel Cc: Greg Ungerer Signed-of-by: Linus Torvalds commit 68905eb4dc9c691ba09df767ac0641395025cef6 Author: Julia Lawall Date: Mon Jul 21 09:57:26 2008 +0200 drivers/net/ehea/ehea_main.c: Release mutex in error handling code The mutex is released on a successful return, so it would seem that it should be released on an error return as well. The semantic patch finds this problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression l; @@ mutex_lock(l); ... when != mutex_unlock(l) when any when strict ( if (...) { ... when != mutex_unlock(l) + mutex_unlock(l); return ...; } | mutex_unlock(l); ) // Signed-off-by: Julia Lawall Signed-off-by: Jeff Garzik commit b0ca2a21f769ae255bd6821cbc5af8af797f1da7 Author: Nobuhiro Iwamatsu Date: Mon Jun 30 11:08:17 2008 +0900 sh_eth: Add support of SH7763 to sh_eth SH7763 has Ethernet core same as SH7710/SH7712. Positions of some registry are different, but the basic part is the same. I add support of ethernet of sh7763 to sh_eth. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Jeff Garzik commit d02a4e31ed0385eb34fe49f19d69a860a020ca3c Author: Mikael Pettersson Date: Wed Jul 30 13:44:55 2008 +0200 fix NE2000 linkage error Trying to build with CONFIG_NE2000=m fails with: scripts/mod/modpost -o /tmp/tmp/linux-2.6.27-rc1/Module.symvers -S -s ERROR: "NS8390_init" [drivers/net/ne.ko] undefined! This is because the split of 8390 into pausing and non-pausing versions was incompletely propagated to ne.c. This fixes it. Signed-off-by: Mikael Pettersson Signed-off-by: Jeff Garzik commit de1d7bb63893b4246ce60797aa554341e908f034 Author: Yoichi Yuasa Date: Sat Jul 26 01:34:52 2008 +0900 [MIPS] Cobalt: update defconfig Select new LCD framebuffer driver. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 8854700115ecf8aa6f087aa915b7b6cf18090d39 Author: Jason Wessel Date: Tue Jul 29 15:58:53 2008 -0500 [MIPS] kgdb: add arch support for the kernel's kgdb core The new kgdb architecture specific handler registers and unregisters dynamically for exceptions depending on when you configure a kgdb I/O driver. Aside from initializing the exceptions earlier in the boot process, kgdb should have no impact on a device when it is compiled in so long as an I/O module is not configured for use. There have been quite a number of contributors during the existence of this patch (see arch/mips/kernel/kgdb.c). Most recently Jason re-wrote the mips kgdb logic to use the die notification handlers. Signed-off-by: Jason Wessel Signed-off-by: Ralf Baechle commit 8d60a903d986ffa26c41f0092320a3b9da20bfaf Author: Jason Wessel Date: Tue Jul 29 15:58:52 2008 -0500 [MIPS] kgdb: Remove existing implementation This patch explicitly removes the kgdb implementation, for mips which is intended to be followed by a patch that adds a kgdb implementation for MIPS that makes use of the kgdb core in the kernel. Signed-off-by: Jason Wessel Signed-off-by: Ralf Baechle commit 8f8da9adebdf04bfb3b812a7de8706fbf179fd2c Author: Atsushi Nemoto Date: Tue Jul 29 22:11:33 2008 +0900 [MIPS] TXx9: Kconfig cleanup Unify some entries in txx9/Kconfig. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 872bfdd9e61d7dacf011046b02442215a2757026 Author: Atsushi Nemoto Date: Tue Jul 29 22:10:47 2008 +0900 [MIPS] TXx9: Kill unused txx927.h include/asm-mips/txx9/txx927.h is no longer used. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit e352953ce00bb870124e9054dbbbda2262f9269c Author: Atsushi Nemoto Date: Tue Jul 29 22:10:08 2008 +0900 [MIPS] TXx9: Support early_printk Kill jmr3927-specific prom_putchar and add txx9-generic prom_putchar to support early_printk. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 7779a5e07d33fe316fe468e7afe7975fb686a831 Author: Atsushi Nemoto Date: Fri Jul 25 23:08:06 2008 +0900 [MIPS] TXx9: Unify serial_txx9 setup * Unify calling of early_serial_txx9_setup. * Use dedicated serial clock on RBTX4938. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit bb72f1f729dcbd6a6a93c74479eeaa19deebfb47 Author: Atsushi Nemoto Date: Thu Jul 24 00:25:21 2008 +0900 [MIPS] TXx9: Random cleanup * Random cleanups spotted by checkpatch script. * Do not initialize panic_timeout. "panic=" kernel parameter can be used. * Do not add "ip=any" or "ip=bootp". This options is not board specific. * Do not add "root=/dev/nfs". This is default on CONFIG_ROOT_NFS. * Kill unused error checking. * Fix IRQ comment to match current code. * Kill some unneeded includes * ST0_ERL is already cleared in generic code. * conswitchp is initialized generic code. * __init is not needed in prototype. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit c49f91f51e3cca796494f69fd967a7f72df5d457 Author: Atsushi Nemoto Date: Thu Jul 24 00:25:20 2008 +0900 [MIPS] TXx9: Make tx4938-specific code more independent Make some TX4938 SoC specific code independent from board specific code. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit f6727fb889c664be094fa041a0fdf0f1a1caefb6 Author: Atsushi Nemoto Date: Thu Jul 24 00:25:19 2008 +0900 [MIPS] TXx9: Make tx3927-specific code more independent Make some TX3927 SoC specific code independent from board specific code. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 683147254ef7e69ebbbe55280ba6a3c5ae2325d8 Author: Atsushi Nemoto Date: Thu Jul 24 00:25:18 2008 +0900 [MIPS] TXx9: Cleanup watchdog Unify registration of txx9wdt platform device. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit a49297e8fc8a9a835ac4ec124aa83028abdcc7d5 Author: Atsushi Nemoto Date: Thu Jul 24 00:25:17 2008 +0900 [MIPS] TXx9: Cleanup restart/halt/power_off Unify machine_restart/machine_halt/pm_power_off and add fallback machine_halt routine. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 455cc256eb23915100e203fb33ee143afd127954 Author: Atsushi Nemoto Date: Fri Jul 25 23:01:35 2008 +0900 [MIPS] TXx9: PCI error handling From: Atsushi Nemoto Date: Thu, 24 Jul 2008 00:25:16 +0900 Subject: [PATCH] txx9: PCI error handling Add more control and detailed report on PCI error interrupt. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 07517529225ae4ce770271f83d8cd1004733a01d Author: Atsushi Nemoto Date: Thu Jul 24 00:25:15 2008 +0900 [MIPS] TXx9: Add some pci options Add pci options for backplane type, clock selection, error handling, timeout values. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 47a5c976486e407fc0d0bc8fa165132b6f9bec26 Author: Atsushi Nemoto Date: Thu Jul 24 00:25:14 2008 +0900 [MIPS] Introduce pcibios_plat_setup Introduce pcibios_plat_setup for platform-specific pcibios_setup. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 32d00d0f933ea5d21c3cd0809461ebbf7ab89cef Author: Atsushi Nemoto Date: Thu Jul 24 00:25:13 2008 +0900 [MIPS] TXx9: PCI fixes for tx3927/tx4927 * Fix tx3927 pci ops for Type-1 configuration * Fix abort checking of tx3927 pci ops * Flush write buffer to avoid spurious PCI error interrupt * Add a quirk for FPCIB backplane Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit a0e31fb09056224c5d6fef09d25cb96b6149aa7c Author: Atsushi Nemoto Date: Thu Jul 24 00:25:12 2008 +0900 [MIPS] TXx9: Fix JMR3927 irq numbers * Fix wrong txx9_clockevent interrupt number * Fix TXX9_IRQ_BASE for JMR3927+FPCIB case Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 8b32d6d00ca890ebb204da1260247c11bba042b3 Author: Adrian Bunk Date: Tue Jul 29 09:46:34 2008 +0300 [MIPS] RB532: Flags are unsigned long A recent generic change now catches such bugs: <-- snip --> ... CC arch/mips/rb532/time.o cc1: warnings being treated as errors /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/mips/rb532/time.c: In function 'plat_time_init': /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/mips/rb532/time.c:55: error: comparison of distinct pointer types lacks a cast /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/mips/rb532/time.c:66: error: comparison of distinct pointer types lacks a cast make[2]: *** [arch/mips/rb532/time.o] Error 1 <-- snip --> Reported-by: Adrian Bunk Signed-off-by: Adrian Bunk Signed-off-by: Ralf Baechle commit fd7ccfa7ac64156a5c1c906e0986b73d481b6dfc Author: Kevin Hickey Date: Mon Jul 28 13:09:26 2008 -0500 [MIPS] Initialization of Alchemy boards An earlier update changed some calls from simple_strotl to strict_strtol but did not account for the differences in the syntax between the calls. simple_strotl returns the integer; strict_strtol returns an error code and takes a pointer to the result. As it was, NULL was being passed in place of the result, which led to failures during kernel initialization when using YAMON. Signed-off-by: Kevin Hickey Signed-off-by: Ralf Baechle commit af6dc22b03a95c31b690f299b2fd7acb279fe7f5 Author: Ralf Baechle Date: Tue Jul 22 18:04:38 2008 +0100 [MIPS] tlb-r4k: Nuke broken paranoia error test. Bug originally found and reported by Julia Lawall . I decieded that the whole error check was mostly useless paranoia and should be discarded. It would only ever trigger if r3k_have_wired_reg has a wrong value. Signed-off-by: Ralf Baechle commit 11ddad396086f8d1dfcb0056dc9d65d228f755c1 Author: Adrian Bunk Date: Thu Jul 17 02:08:12 2008 +0300 kbuild: scripts/genksyms/lex.l: add %option noinput gcc 4.3 correctly determines that input() is unused and gives the following warning: <-- snip --> ... HOSTCC scripts/genksyms/lex.o scripts/genksyms/lex.c:1487: warning: ‘input’ defined but not used ... <-- snip --> Fix it by adding %option noinput to scripts/genksyms/lex.l and regeneration of scripts/genksyms/lex.c_shipped. Signed-off-by: Adrian Bunk Signed-off-by: Sam Ravnborg commit be2be1d59035a28debb22555f103e676a8f74186 Author: Adrian Bunk Date: Thu Jul 17 02:07:59 2008 +0300 kconfig: scripts/kconfig/zconf.l: add %option noinput gcc 4.3 correctly determines that input() is unused and gives the following warning: <-- snip --> ... HOSTCC scripts/kconfig/zconf.tab.o scripts/kconfig/lex.zconf.c:1628: warning: ‘input’ defined but not used ... <-- snip --> Fix it by adding %option noinput to scripts/kconfig/zconf.l and regeneration of scripts/kconfig/lex.zconf.c_shipped. Signed-off-by: Adrian Bunk Cc: Roman Zippel Signed-off-by: Sam Ravnborg commit b962a286e500c6259af8ba133361f8528eed9172 Author: Russell King Date: Wed Jul 30 21:24:56 2008 +0100 [ARM] initrd: claim initrd memory exclusively Claim the initrd memory exclusively, and order other memory reservations beforehand. This allows us to determine whether the initrd memory was overwritten, and disable the initrd in that case. This avoids a 'bad page state' bug. Tested-by: Ralph Siemsen Signed-off-by: Russell King commit ea35455e0dc17d732436a5b98bd511cab64eb10e Author: Sam Ravnborg Date: Wed Jul 30 22:21:20 2008 +0200 kbuild: fix O=... build of um We used include/asm-$ARCH/system.h to check if we should create a symlink in include2 directory with make O=... builds. But um does not have such a file thus build filed. Let's try anohter filename: $ ls -d include/asm-* | wc -l 21 $ ls -d include/asm-*/errno.h | wc -l 21 Signed-off-by: Sam Ravnborg Cc: Jeff Dike commit 660fc1f4d88b0f5e4bb936e4a5a9b95b70df9e58 Merge: 3dd730f... ce0ad7f... Author: Linus Torvalds Date: Wed Jul 30 10:43:56 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/mm: Lockless get_user_pages_fast() for 64-bit (v3) powerpc: Don't use the wrong thread_struct for ptrace get/set VSX regs powerpc: Fix ptrace buffer size for VSX powerpc: Correctly hookup PTRACE_GET/SETVSRREGS for 32 bit processes ide/powermac: Fix use of uninitialized pointer on media-bay powerpc: Allow non-hcall return values for lparcfg writes ipmi/powerpc: Use linux/of_{device,platform}.h instead of asm powerpc/fsl: proliferate simple-bus compatibility to soc nodes Documentation: remove old sbc8260 board specific information cpm2: Rework baud rate generators configuration to support external clocks. powerpc: rtc_cmos_setup: assign interrupts only if there is i8259 PIC cpm_uart: Add generic clock API support to set baudrates cpm_uart: Modem control lines support powerpc: implement GPIO LIB API on CPM1 Freescale SoC. cpm2: Implement GPIO LIB API on CPM2 Freescale SoC. powerpc: Fix 8xx build failure powerpc: clean up the Book-E HW watchpoint support commit 3dd730f2b49f101b90d283c3efc4e6cd826dd8f6 Author: Stephen Rothwell Date: Tue Jul 29 16:07:37 2008 +1000 cpumask: statement expressions confuse some versions of gcc when you take the address of the result. Noticed on a sparc64 compile using a version 3.4.5 cross compiler. kernel/time/tick-common.c: In function `tick_check_new_device': kernel/time/tick-common.c:210: error: invalid lvalue in unary `&' ... Just make it a regular expression. Signed-off-by: Stephen Rothwell Acked-by: Ingo Molnar Signed-off-by: Linus Torvalds commit a4319d9fa02fb3f032596d18c6fcc8b05d01a3a5 Merge: afd962a... 031cf19... Author: Linus Torvalds Date: Wed Jul 30 10:13:37 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (47 commits) net: Make "networking" one-click deselectable. ipv6: Fix useless proc net sockstat6 removal tcp: MD5: Use MIB counter instead of warning for MD5 mismatch. pkt_sched: Fix OOPS on ingress qdisc add. niu: Fix error checking in niu_ethflow_to_class. IPv6: datagram_send_ctl() should exit immediately when an error occured mac80211: fix mesh beaconing PS3: gelic: use unsigned long for irqflags mac80211: fix cfg80211 hooks for master interface nl80211: fix dump callbacks mac80211: partially fix skb->cb use rtl8187: Improve wireless statistics for RTL8187B rtl8187: Fix for TX sequence number problem mac80211: append CONFIG_ to MAC80211_VERBOSE_PS_DEBUG in net/mac80211/tx.c. mac80211: fix sparse integer as NULL pointer warning drivers/net/wireless/iwlwifi/iwl-led.c: printk fix mac80211: return correct error return from ieee80211_wep_init mac80211: tx, use dev_kfree_skb_any for beacon_get rt2x00: Clear queue entry flags during initialization rt2x00: Force full register config after start() ... commit afd962a9e8708c571c5c0c4a6d098f931742c229 Author: Vitaly Mayatskikh Date: Wed Jul 30 13:30:14 2008 +0200 x86: wrong register was used in align macro New ALIGN_DESTINATION macro has sad typo: r8d register was used instead of ecx in fixup section. This can be considered as a regression. Register ecx was also wrongly loaded with value in r8d in copy_user_nocache routine. Signed-off-by: Vitaly Mayatskikh Signed-off-by: Linus Torvalds commit bd3e64c1759e4930315ebf022611468ee9621486 Author: Dean Nelson Date: Tue Jul 29 22:34:19 2008 -0700 sgi-xp: setup the notify GRU message queue Setup the notify GRU message queue that is used for sending user messages on UV systems. Signed-off-by: Dean Nelson Cc: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b8669dfd110a62a74eea525a009342f73987ea0 Author: Dean Nelson Date: Tue Jul 29 22:34:18 2008 -0700 sgi-xp: setup the activate GRU message queue Setup the activate GRU message queue that is used for partition activation and channel connection on UV systems. Signed-off-by: Dean Nelson Cc: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 83469b5525b4a35be40b17cb41d64118d84d9f80 Author: Dean Nelson Date: Tue Jul 29 22:34:18 2008 -0700 sgi-xp: cleanup naming of partition defines Cleanup naming of partition defines. Signed-off-by: Dean Nelson Cc: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 61deb86e98f51151b225f7563ee1cf2b50857d10 Author: Dean Nelson Date: Tue Jul 29 22:34:17 2008 -0700 sgi-xp: move xpc_check_remote_hb() to support both SN2 and UV Move xpc_check_remote_hb() so it can support both SN2 and UV. Signed-off-by: Dean Nelson Cc: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a812dcc3a298eef650c381e094e2cf41a4ecc9ad Author: Dean Nelson Date: Tue Jul 29 22:34:16 2008 -0700 sgi-xp: add usage of GRU driver by xpc_remote_memcpy() Add UV support to xpc_remote_memcpy(), which involves interfacing to the GRU driver. Signed-off-by: Dean Nelson Cc: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 261f3b4979db88d29fc86aad9f76fbc0c2c6d21a Author: Dean Nelson Date: Tue Jul 29 22:34:16 2008 -0700 sgi-xp: enable building of XPC/XPNET on x86_64 Get XPC/XPNET to build on x86_64. Trying to modprobe them up on a non-UV or sn2 system will result in a -ENODEV. Signed-off-by: Dean Nelson Cc: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81fe7883d2c8a80a7145ad22f8cd8514d05412b9 Author: Dean Nelson Date: Tue Jul 29 22:34:15 2008 -0700 sgi-xp: add 'jiffies' to reserved page's timestamp name Rename XPC's reserved page's timestamp member to reflect the units of time involved. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04de741885bc7565a28150e82c56a56e544440e6 Author: Dean Nelson Date: Tue Jul 29 22:34:14 2008 -0700 sgi-xp: use standard bitops macros and functions Change sgi-xp to use the standard bitops macros and functions instead of trying to invent its own mechanism. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea57f80c8c0e59cfc5095f7e856ce7c8e6ac2984 Author: Dean Nelson Date: Tue Jul 29 22:34:14 2008 -0700 sgi-xp: eliminate '>>>' in comments Comments in /drivers/misc/sgi-xp has been using '>>>' as a means to draw attention to something that needs to be done or considered. To avoid colliding with git rejects, '>>>' will now be replaced by '!!!' to indicate something to do, and by '???' to indicate something to be considered. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8e85c23ef04fe0d8414e0b1dc04543095282a27a Author: Dean Nelson Date: Tue Jul 29 22:34:13 2008 -0700 sgi-xp: add _sn2 suffix to a few variables Add an '_sn2' suffix to some variables found in xpc_sn2.c. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee6665e3b6e1283c30ae240732af1345bc02154e Author: Dean Nelson Date: Tue Jul 29 22:34:13 2008 -0700 sgi-xp: isolate remote copy buffer to sn2 only Make the remote copy buffer an sn2 only item. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a7b4d509205db5e9cd3ffc77b306d7b10fe6a34d Author: Dean Nelson Date: Tue Jul 29 22:34:12 2008 -0700 sgi-xp: enable XPNET to handle more than 64 partitions Enable XPNET to support more than 64 partitions. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 185c3a1b4bb4353529257f97caaeaac6c695e77d Author: Dean Nelson Date: Tue Jul 29 22:34:11 2008 -0700 sgi-xp: isolate allocation of XPC's msgqueues to sn2 only Move the allocation of XPC's msgqueues to xpc_sn2.c. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c39838ce21ca8e05857ed7f4be5d289011561905 Author: Dean Nelson Date: Tue Jul 29 22:34:11 2008 -0700 sgi-xp: replace AMO_t typedef by struct amo Replace the AMO_t typedef by a direct reference to 'struct amo'. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fb5e59d63deda89a8eefdbd5b3c8d622076afd4 Author: Dean Nelson Date: Tue Jul 29 22:34:10 2008 -0700 sgi-xp: separate chctl_flags from XPC's notify IRQ Tie current IPI references to either XPC's notify IRQ or channel control flags. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a47d5dac9d8481766382f8cf1483dd581df38b99 Author: Dean Nelson Date: Tue Jul 29 22:34:09 2008 -0700 sgi-xp: isolate additional sn2 specific code Move additional sn2 specific code into xpc_sn2.c. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6e41017aad9ed175ca51e4828eabc8c5cf5910be Author: Dean Nelson Date: Tue Jul 29 22:34:09 2008 -0700 sgi-xp: isolate activate IRQ's hardware specific components Isolate architecture specific code related to XPC's activate IRQ. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97bf1aa1e1bb18de9bb1987c6eb9ad751bf08aab Author: Dean Nelson Date: Tue Jul 29 22:34:08 2008 -0700 sgi-xp: move xpc_allocate() into xpc_send()/xpc_send_notify() Move xpc_allocate() functionality into xpc_send()/xpc_send_notify() so xpc_allocate() no longer needs to be called by XPNET. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aaa3cd694c0c4ae534e8aafdf4227e395c57d6bd Author: Dean Nelson Date: Tue Jul 29 22:34:07 2008 -0700 sgi-xp: base xpc_rsvd_page's timestamp on jiffies Change XPC's reserved page timestamp to be based on jiffies. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33ba3c7724be79f7cdbfc611335572c056d9a05a Author: Dean Nelson Date: Tue Jul 29 22:34:07 2008 -0700 sgi-xp: isolate xpc_vars structure to sn2 only Isolate the xpc_vars structure of XPC's reserved page to sn2 only. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e17d416b1bc947df68499863f13b401fb42b48f6 Author: Dean Nelson Date: Tue Jul 29 22:34:06 2008 -0700 sgi-xp: isolate xpc_vars_part structure to sn2 only Isolate the xpc_vars_part structure of XPC's reserved page to sn2 only. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 94bd2708d4a95d7da5a1c7c28a063eccd127fb69 Author: Dean Nelson Date: Tue Jul 29 22:34:05 2008 -0700 sgi-xp: prepare xpc_rsvd_page to work on either sn2 or uv hardware Prepare XPC's reserved page header to work for either sn2 or uv. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 908787db9b95f548270af18d83d62b9d2020ca10 Author: Dean Nelson Date: Tue Jul 29 22:34:05 2008 -0700 sgi-xp: create a common xp_remote_memcpy() function Create a common remote memcpy function that maps to what the hardware booted supports. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc63d387e4f5dbbe4ea0c5ade862c38073fd7fa3 Author: Dean Nelson Date: Tue Jul 29 22:34:04 2008 -0700 sgi-xp: support runtime selection of xp_max_npartitions Support runtime selection of the max number of partitions based on the hardware being run on. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78ce1bbe446e9b46dcd6c1e60a4768448a8ce355 Author: Dean Nelson Date: Tue Jul 29 22:34:03 2008 -0700 sgi-xp: define BYTES_PER_WORD Add a BYTES_PER_WORD #define. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da9705259848b968cdf6151b977334fe7b5b0461 Author: Dean Nelson Date: Tue Jul 29 22:34:03 2008 -0700 sgi-xp: define xpSalError reason code Define xpSalError reason code. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 355c54d2e70093f09910d2ecf343023aefc219e1 Author: Dean Nelson Date: Tue Jul 29 22:34:02 2008 -0700 sgi-xp: define is_shub() and is_uv() macros Define the is_shub()/is_uv() macros if they've not already been defined. Signed-off-by: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ca8e40c130c906c1060d105e63628410c860261 Author: Jack Steiner Date: Tue Jul 29 22:34:02 2008 -0700 GRU Driver V3: fixes to resolve code review comments Fixes problems identified in a code review: - add comment with high level dscription of the GRU - prepend "gru_" to all global names - delete unused function - couple of trivial bug fixes [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Jack Steiner Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d919e5f6b440bb0cc7996eb7628b29be09e6343 Author: Jack Steiner Date: Tue Jul 29 22:34:01 2008 -0700 GRU Driver: driver/misc Makefile & Kconfig changes Driver/misc changes for the GRU driver Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0d39741a27d86d305cc75ba626392be410dcbab9 Author: Jack Steiner Date: Tue Jul 29 22:34:01 2008 -0700 GRU Driver: export is_uv_system(), zap_page_range() & follow_page() Exports needed by the GRU driver. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c45f6928322773b1810fbec1ece77056f914114 Author: Jack Steiner Date: Tue Jul 29 22:34:00 2008 -0700 GRU Driver: driver makefile This patch adds the GRU driver makefile Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee5b8feca3af01400e26637209a72fbf137c82ff Author: Jack Steiner Date: Tue Jul 29 22:33:59 2008 -0700 GRU Driver: TLB flushing, MMUOPS callouts This file contains the functions for handlinf GRU TLB flushing, This includes functions to handle the MMUOPS callouts. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d09d737ab017ff7a9745962e19909713ac89b37 Author: Jack Steiner Date: Tue Jul 29 22:33:59 2008 -0700 GRU Driver: /proc interfaces This file externalizes some GRU state & statistics to the user using the /proc file system. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a0deecc90de62c91d7107611446c0c950091851 Author: Jack Steiner Date: Tue Jul 29 22:33:58 2008 -0700 GRU Driver: resource management This file contains functions realted to managing GRU resources provided to the user. Examples include GRU context assignment, load, unload, migration, etc.. Signed-off-by: Jack Steiner Cc: Nick Piggin Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28bffaf094a6d0992c85e1b01f04c9b0f56c9d62 Author: Jack Steiner Date: Tue Jul 29 22:33:57 2008 -0700 GRU Driver: kernel services provide by driver This file contains functions for handling services provided to other kernel modules that use the GRU. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 142586409c8be7dc071bb94d7cd2d69ccfd99b6b Author: Jack Steiner Date: Tue Jul 29 22:33:57 2008 -0700 GRU Driver: page faults & exceptions This file contains the functions that manage GRU page faults and exceptions. Signed-off-by: Jack Steiner Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78cf1de49b11c0e2edb35cce91ac6c279cc852b3 Author: Jack Steiner Date: Tue Jul 29 22:33:56 2008 -0700 GRU Driver: driver initialization, file & vma ops This file contains the functions for initializing the driver, handling file & vma operations and for processing IOCTL requests from the user. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2fb06fcb6d6c9912b43e61394891e3994d4b613 Author: Jack Steiner Date: Tue Jul 29 22:33:56 2008 -0700 GRU Driver: kernel services header files This patch contains the header file used to export GRU services to other kernel drivers such as XPMEM or XPNET. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13d19498b0446cad2c394f9fbec8149b44a60c6e Author: Jack Steiner Date: Tue Jul 29 22:33:55 2008 -0700 GRU Driver: driver internal header files This patch contains header files internal to the GRU driver. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4c921d4d8aa74140597fd8736261837f73ca6e7a Author: Jack Steiner Date: Tue Jul 29 22:33:54 2008 -0700 GRU Driver: GRU instructions & macros This patchs contains macros & inline functions used to issue instructions to the GRU. Signed-off-by: Jack Steiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34d8a380d784d1fbea941a68beebdd7f9a3bebdf Author: Jack Steiner Date: Tue Jul 29 22:33:54 2008 -0700 GRU Driver: hardware data structures This series of patches adds a driver for the SGI UV GRU. The driver is still in development but it currently compiles for both x86_64 & IA64. All simple regression tests pass on IA64. Although features remain to be added, I'd like to start the process of getting the driver into the kernel. Additional kernel drivers will depend on services provide by the GRU driver. The GRU is a hardware resource located in the system chipset. The GRU contains memory that is mmaped into the user address space. This memory is used to communicate with the GRU to perform functions such as load/store, scatter/gather, bcopy, AMOs, etc. The GRU is directly accessed by user instructions using user virtual addresses. GRU instructions (ex., bcopy) use user virtual addresses for operands. The GRU contains a large TLB that is functionally very similar to processor TLBs. Because the external contains a TLB with user virtual address, it requires callouts from the core VM system when certain types of changes are made to the process page tables. There are several MMUOPS patches currently being discussed but none has been accepted into the kernel. The GRU driver is built using version V18 from Andrea Arcangeli. This patch: Contains the definitions of the hardware GRU data structures that are used by the driver to manage the GRU. [akpm@linux-foundation;org: export hpage_shift] Signed-off-by: Jack Steiner Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c627f9cc046c7cd93b4525d89377fb409e170a18 Author: Jack Steiner Date: Tue Jul 29 22:33:53 2008 -0700 mm: add zap_vma_ptes(): a library function to unmap driver ptes zap_vma_ptes() is intended to be used by drivers to unmap ptes assigned to the driver private vmas. This interface is similar to zap_page_range() but is less general & less likely to be abused. Needed by the GRU driver. Signed-off-by: Jack Steiner Cc: Nick Piggin Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f718cd4add5aea9d379faff92f162571e356cc5f Author: Andi Kleen Date: Tue Jul 29 22:33:52 2008 -0700 sched: make scheduler sysfs attributes sysdev class devices They are really class devices, but were incorrectly declared. This leads to crashes with the recent changes that makes non normal sysdevs use a different prototype. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Andi Kleen Cc: Ingo Molnar Cc: Pierre Ossman Cc: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5cdc98b8f51310f7cca05ad780f18f80dd9571de Author: Tomas Janousek Date: Tue Jul 29 22:33:51 2008 -0700 rtc-dev: stop periodic interrupts on device release Solves http://bugzilla.kernel.org/show_bug.cgi?id=11127 The old rtc.c driver did it and some drivers (like rtc-sh) do it in their release function, though they should not -- because they should provide the irq_set_state op and the rtc framework itself should care about it. This patch makes it do so. I am aware that some drivers, like rtc-sh, handle userspace PIE sets in their ioctl op (instead of having the framework call the op), exporting the irq_set_state op at the same time. The logic in rtc_irq_set_state should make sure it doesn't matter and the driver should not need to care stopping periodic interrupts in its release routine any more. The correct way, in my opinion, should be this: 1) The driver provides the irq_set_state op and does not care closing the interrupts in its release op. 2) If the driver does not provide the op and handles PIE in the ioctl op, it's reponsible for closing them in its release op. 3) Something similar for other IRQs, like UIE -- if there's no in-kernel API like irq_set_state, handle it in ioctl and release ops. The framework will be responsible either for everything or for nothing. (This will probably change later.) Signed-off-by: Tomas Janousek Acked-by: David Brownell Acked-by: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d0b1c51eb8375f88c0886d2e9f71881e19d42a7 Author: Thomas Bogendoerfer Date: Tue Jul 29 22:33:49 2008 -0700 gbefb: cmap FIFO timeout Writes to the cmap fifo while the display is blanked caused cmap FIFO timeout messages and a wrong colormap. To avoid this the driver now maintains a colormap in memory and updates the colormap after the display is unblanked. Signed-off-by: Thomas Bogendoerfer Cc: Krzysztof Helt Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6af8bf3d86d55c98af6e453cb920ddc30867e5c7 Author: Oleg Nesterov Date: Tue Jul 29 22:33:49 2008 -0700 workqueues: add comments to __create_workqueue_key() Dmitry Adamushko pointed out that the error handling in __create_workqueue_key() is not clear, add the comment. Signed-off-by: Oleg Nesterov Cc: Dmitry Adamushko Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dbacefc9c4f6bd365243db379473ab7041656d90 Author: Thomas Petazzoni Date: Tue Jul 29 22:33:47 2008 -0700 fs/buffer.c: uninline __remove_assoc_queue() Uninline the __remove_assoc_queue() function in fs/buffer.c, called at too many places and too long to really be inlined. Size results: text data bss dec hex filename 1134606 118840 212992 1466438 166046 vmlinux.old 1134303 118840 212992 1466135 165f17 vmlinux -303 0 0 -303 -12F +/- This patch is part of the Linux Tiny project and has been originally written by Matt Mackall . Signed-off-by: Thomas Petazzoni Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d406f66ddb0d7491ddd53e4600c425d76a8a245f Author: Harvey Harrison Date: Tue Jul 29 22:33:46 2008 -0700 omfs: sparse annotations Missing cpu_to_be64 on some constant assignments. fs/omfs/dir.c:107:16: warning: incorrect type in assignment (different base types) fs/omfs/dir.c:107:16: expected restricted __be64 [usertype] i_sibling fs/omfs/dir.c:107:16: got unsigned long long fs/omfs/file.c:33:13: warning: incorrect type in assignment (different base types) fs/omfs/file.c:33:13: expected restricted __be64 [usertype] e_next fs/omfs/file.c:33:13: got unsigned long long fs/omfs/file.c:36:24: warning: incorrect type in assignment (different base types) fs/omfs/file.c:36:24: expected restricted __be64 [usertype] e_cluster fs/omfs/file.c:36:24: got unsigned long long fs/omfs/file.c:37:23: warning: incorrect type in assignment (different base types) fs/omfs/file.c:37:23: expected restricted __be64 [usertype] e_blocks fs/omfs/file.c:37:23: got unsigned long long fs/omfs/bitmap.c:74:18: warning: incorrect type in argument 2 (different signedness) fs/omfs/bitmap.c:74:18: expected unsigned long volatile *addr fs/omfs/bitmap.c:74:18: got long * fs/omfs/bitmap.c:77:20: warning: incorrect type in argument 2 (different signedness) fs/omfs/bitmap.c:77:20: expected unsigned long volatile *addr fs/omfs/bitmap.c:77:20: got long * fs/omfs/bitmap.c:112:17: warning: incorrect type in argument 2 (different signedness) fs/omfs/bitmap.c:112:17: expected unsigned long volatile *addr fs/omfs/bitmap.c:112:17: got long * Signed-off-by: Harvey Harrison Acked-by: Bob Copeland Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32be1d22327743134974c7b2ec1e2a143b6b6f86 Author: Ben Dooks Date: Tue Jul 29 22:33:44 2008 -0700 scripts/mod/modpost.c: fix spelling of module and happens Spelling fixes in scripts/mod/modpost.c Signed-off-by: Ben Dooks Cc: Rusty Russell Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07a887d399b84668bc26cd040d699b26ec3086c2 Author: Adrian Bunk Date: Tue Jul 29 22:33:44 2008 -0700 remove drivers/serial/v850e_uart.c The removal of drivers/serial/v850e_uart.c originally was in my v850 removal patch, but it seems it got lost somewhere. Reported-by: Robert P. J. Day Signed-off-by: Adrian Bunk Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 836e4b14b41d19d17341a2dd2c49af8dd54e3aac Author: Paul Mundt Date: Tue Jul 29 22:33:43 2008 -0700 USB: m66592-udc: Fix up dev_set_name() badness. Commit 0031a06e2f07ab0d1bc98c31dbb6801f95f4bf01 converted all of the USB drivers to use dev_set_name(), though there was a typo on the m66592-udc conversion that handed off the wrong pointer (we want the struct device here obviously, not the struct usb_gadget). Signed-off-by: Paul Mundt Cc: Kay Sievers Cc: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 204b885e7322656284626949e51f292fe61313fa Author: Joerg Roedel Date: Tue Jul 29 22:33:42 2008 -0700 introduce lower_32_bits() macro The file kernel.h contains the upper_32_bits macro. This patch adds the other part, the lower_32_bits macro. Its first use will be in the driver for AMD IOMMU. Cc: H. Peter Anvin Signed-off-by: Joerg Roedel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 87547ee95d81ec0ee1503fcaf9c9594469bc2510 Author: Fernando Luis Vazquez Cao Date: Tue Jul 29 22:33:42 2008 -0700 do_try_to_free_page: update comments related to vmscan functions Signed-off-by: Fernando Luis Vazquez Cao Cc: Hugh Dickins Cc: Nick Piggin Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7d03431cf98aaed635524024273668bb8cedadda Author: Fernando Luis Vazquez Cao Date: Tue Jul 29 22:33:41 2008 -0700 swapfile/vmscan: update comments related to vmscan functions Signed-off-by: Fernando Luis Vazquez Cao Cc: Hugh Dickins Cc: Nick Piggin Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab33dc09a5c0d2bd6757afa1c2f804c9657daec0 Author: Fernando Luis Vazquez Cao Date: Tue Jul 29 22:33:40 2008 -0700 swap: update function comment of release_pages Signed-off-by: Fernando Luis Vazquez Cao Cc: Hugh Dickins Cc: Nick Piggin Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e6cbea39aaa32480145915751119227f29f6f7b Author: Fernando Luis Vazquez Cao Date: Tue Jul 29 22:33:39 2008 -0700 madvise: update function comment of madvise_dontneed Signed-off-by: Fernando Luis Vazquez Cao Cc: Hugh Dickins Cc: Nick Piggin Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 641de9d8f505db055d451b50e6e38117f84e79bb Author: Uwe Kleine-König Date: Tue Jul 29 22:33:38 2008 -0700 printk: fix comment for printk ratelimiting The comment assumed the burst to be one and the ratelimit used to be named printk_ratelimit_jiffies. Signed-off-by: Uwe Kleine-König Cc: Dave Young Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f3d137e0d6cd470a4e404cbc67480a0febdb0b1 Author: Jiri Slaby Date: Tue Jul 29 22:33:38 2008 -0700 Char: mxser, ratelimit ioctl warning The GET_MAJOR ioctl prints out a warning, make it ratelimited. Signed-off-by: Jiri Slaby Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd673c7c3b1681dbfabab0062e67398dadf806af Author: Geert Uytterhoeven Date: Tue Jul 29 22:33:36 2008 -0700 initrd: cast `initrd_start' to `void *' commit fb6624ebd912e3d6907ca6490248e73368223da9 (initrd: Fix virtual/physical mix-up in overwrite test) introduced the compiler warning below on mips, as its virt_to_page() doesn't cast the passed address to unsigned long internally, unlike on most other architectures: init/main.c: In function `start_kernel': init/main.c:633: warning: passing argument 1 of `virt_to_phys' makes pointer from integer without a cast init/main.c:636: warning: passing argument 1 of `virt_to_phys' makes pointer from integer without a cast For now, kill the warning by explicitly casting initrd_start to `void *', as that's the type it should really be. Reported-by: Atsushi Nemoto Signed-off-by: Geert Uytterhoeven Cc: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 06ac667903ebea8191d4f7e7fa4e0936161e25fe Author: WANG Cong Date: Tue Jul 29 22:33:34 2008 -0700 uml: fix tty-related build error /home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c: In function `line_write_interrupt': /home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c:366: error: `struct tty_ldisc' has no member named `write_wakeup' /home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c:367: error: `struct tty_ldisc' has no member named `write_wakeup' Signed-off-by: WANG Cong Cc: Jeff Dike Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c203003f64de5fe55ae35712942100d270667fa Author: Jerome Arbez-Gindre Date: Tue Jul 29 22:33:33 2008 -0700 connector: add a BlackBoard user to connector Add a BlackBoard user to connector. BlackBoard is part of the TSP GPL sampling framework (http://savannah.nongnu.org/p/tsp) [akpm@linux-foundation.org: add comment] Signed-off-by: Jerome Arbez-Gindre Acked-by: Evgeniy Polyakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f1712bac586069d6c891a8201457283b27e8abe Author: Vegard Nossum Date: Tue Jul 29 22:33:32 2008 -0700 print_ip_sym(): use %pS Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c389d27b5e643d745f55ffb939b1426060ba63d4 Author: Borislav Petkov Date: Tue Jul 29 22:33:32 2008 -0700 8250.c: port.lock is irq-safe serial8250_startup() doesn't disable interrupts while taking the &up->port.lock which might race against the interrupt handler serial8250_interrupt(), which when entered, will deadlock waiting for the lock to be released. Signed-off-by: Borislav Petkov Tested-by: Ingo Molnar Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5def9a3a22e09c99717f41ab7f07ec9e1a1f3ec8 Author: Mathieu Desnoyers Date: Tue Jul 29 22:33:31 2008 -0700 markers: fix markers read barrier for multiple probes Paul pointed out two incorrect read barriers in the marker handler code in the path where multiple probes are connected. Those are ordering reads of "ptype" (single or multi probe marker), "multi" array pointer, and "multi" array data access. It should be ordered like this : read ptype smp_rmb() read multi array pointer smp_read_barrier_depends() access data referenced by multi array pointer The code with a single probe connected (optimized case, does not have to allocate an array) has correct memory ordering. It applies to kernel 2.6.26.x, 2.6.25.x and linux-next. Signed-off-by: Mathieu Desnoyers Cc: "Paul E. McKenney" Cc: [2.6.25.x, 2.6.26.x] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b68bb2632453a9ca7d10a00d79adf60968cb4c05 Author: David Brownell Date: Tue Jul 29 22:33:30 2008 -0700 rtc: don't return -EBUSY when mutex_lock_interruptible() fails It was pointed out that the RTC framework handles its mutex locks oddly ... returning -EBUSY when interrupted. This fixes that by returning the value of mutex_lock_interruptible() (i.e. -EINTR). Signed-off-by: David Brownell Acked-by: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 950d442ad053e660538cdaa6efc0e060c2a65062 Author: Julia Lawall Date: Tue Jul 29 22:33:28 2008 -0700 drivers/video: release mutex in error handling code The mutex is released on a successful return, so it would seem that it should be released on an error return as well. The semantic patch finds this problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression l; @@ mutex_lock(l); ... when != mutex_unlock(l) when any when strict ( if (...) { ... when != mutex_unlock(l) + mutex_unlock(l); return ...; } | mutex_unlock(l); ) // Signed-off-by: Julia Lawall Acked-by: Krzysztof Helt Acked-by: Ondrej Zajicek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d667b6ddbcdc036a27407c8b2c1243f1dfd69e26 Author: Alexey Dobriyan Date: Tue Jul 29 22:33:26 2008 -0700 hpwdt: don't use static flags Static (read: global) is potential problem. Two threads can corrupt each other's interrupt status, better avoid this. Signed-off-by: Alexey Dobriyan Cc: Wim Van Sebroeck Cc: Thomas Mingarelli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26c131c71e31973e273adde4027e6a80bde164dc Author: Jan Beulich Date: Tue Jul 29 22:33:25 2008 -0700 iscsi_ibft_find: fix modpost warning Exporting __init functions is wrong. Signed-off-by: Jan Beulich Acked-by: Konrad Rzeszutek Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 126ed36d0edee41c0775906a164ad7e8bef55864 Author: Ben Dooks Date: Tue Jul 29 22:33:25 2008 -0700 backlight: ensure platform_lcd on by default It seems that we need to ensure that the lcd is powered up at start, otherwise we do not see a display. Signed-off-by: Ben Dooks Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aeed682421a5ebfbf46940e30c3d1caf3bc64304 Author: Li Zefan Date: Tue Jul 29 22:33:24 2008 -0700 cpuset: clean up cpuset hierarchy traversal code Use cpuset.stack_list rather than kfifo, so we avoid memory allocation for kfifo. Signed-off-by: Li Zefan Signed-off-by: Lai Jiangshan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Cc: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93a6557558a13f9ff35213efeca483f353c39dd3 Author: Li Zefan Date: Tue Jul 29 22:33:23 2008 -0700 cpuset: fix wrong calculation of relax domain level When multiple cpusets are overlapping in their 'cpus' and hence they form a single sched domain, the largest sched_relax_domain_level among those should be used. But when top_cpuset's sched_load_balance is set, its sched_relax_domain_level is used regardless other sub-cpusets'. This patch fixes it by walking the cpuset hierarchy to find the largest sched_relax_domain_level. Signed-off-by: Lai Jiangshan Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Reviewed-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5393693e96393131a4a2e2743f883986d508503 Author: Lai Jiangshan Date: Tue Jul 29 22:33:22 2008 -0700 cpuset: speed up sched domain partition All child cpusets contain a subset of the parent's cpus, so we can skip them when partitioning sched domains. This decreases 'csa' greately for cpusets with multi-level hierarchy. Signed-off-by: Lai Jiangshan Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Reviewed-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d1e6266f512b3a94ef6d33528ff385f1aea0392 Author: Li Zefan Date: Tue Jul 29 22:33:21 2008 -0700 cpuset: a bit cleanup for scan_for_empty_cpusets() clean up hierarchy traversal code Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Cc: Paul Jackson Cc: Cliff Wickman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ef1b0fd61333b3b81ebe29283898c6c84b15c9f Author: Li Zefan Date: Tue Jul 29 22:33:20 2008 -0700 memcg: remove redundant check in move_task() It's guaranteed by cgroup that old_cgrp != cgrp. Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Acked-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 55b6fd0162ace1e0f1b52c8c092565c115127ef6 Author: Li Zefan Date: Tue Jul 29 22:33:20 2008 -0700 cgroup: uninline cgroup_has_css_refs() It's not small enough, and has 2 call sites. text data bss dec hex filename 12813 1676 4832 19321 4b79 cgroup.o.orig 12775 1676 4832 19283 4b53 cgroup.o Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36553434f475a84b653e25e74490ee8df43b86d5 Author: Li Zefan Date: Tue Jul 29 22:33:19 2008 -0700 cgroup: remove duplicate code in allocate_cg_link() - just call free_cg_links() in allocate_cg_links() - the list will get initialized in allocate_cg_links(), so don't init it twice Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a3eb9f6b7c598529f832b8baa6458ab1cbab2c6 Author: Li Zefan Date: Tue Jul 29 22:33:18 2008 -0700 cgroup: fix possible memory leak There's a leak if copy_from_user() returns failure. Signed-off-by: Li Zefan Cc: Paul Menage Cc: Cedric Le Goater Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d1958f05095a7e9ecbba86235122784a3d1b561 Author: Yinghai Lu Date: Tue Jul 29 22:33:16 2008 -0700 mm: remove find_max_pfn_with_active_regions It has no user now Also print out info about adding/removing active regions. Signed-off-by: Yinghai Lu Acked-by: Mel Gorman Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3971e1a917548977cff71418a7c3575ffbc9571f Author: Alex Nixon Date: Tue Jul 29 22:33:03 2008 -0700 VFS: increase pseudo-filesystem block size to PAGE_SIZE This commit: commit ba52de123d454b57369f291348266d86f4b35070 Author: Theodore Ts'o Date: Wed Sep 27 01:50:49 2006 -0700 [PATCH] inode-diet: Eliminate i_blksize from the inode structure caused the block size used by pseudo-filesystems to decrease from PAGE_SIZE to 1024 leading to a doubling of the number of context switches during a kernbench run. Signed-off-by: Alex Nixon Cc: Andi Kleen Cc: Jeremy Fitzhardinge Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Ian Campbell Cc: "Theodore Ts'o" Cc: Alexander Viro Cc: Hugh Dickins Cc: Jens Axboe Cc: [2.6.25.x, 2.6.26.x] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fdac4e69a1fc181652b37ce6a32ab8a56b0f3bcf Author: Helge Deller Date: Tue Jul 29 22:33:01 2008 -0700 sticore: don't activate unsupported GSC STI cards on HPPA On HPPA there exists some older GSC graphics cards, which need special graphic-card-BIOS patching to become supported. Since we don't have yet implemented the patching, it's better to detect such cards in advance, inform to the user that there are known problems and to not activate the card. Problematic GSC cards and BIOS versions are: * Hyperdrive/Hyperbowl (A4071A) graphics card series: * ID = 0x2BCB015A (Version 8.04/8) * ID = 0x2BCB015A (Version 8.04/11) * Thunder 1 VISUALIZE 48 card: * ID = 0x2F23E5FC (Version 8.05/9) * Thunder 2 VISUALIZE 48 XP card: * ID = 0x2F8D570E (Version 8.05/12) * Some Hyperion and ThunderHawk GSC cards Further details are described here: http://parisc-linux.org/faq/graphics-howto.html Signed-off-by: Helge Deller Cc: Kyle McMartin Cc: Krzysztof Helt Cc: "Antonino A. Daplas" Cc: Grant Grundler Cc: Matthew Wilcox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b67c5d48f104aae6118bbb052dd79a15ab9794b Author: Thomas Renninger Date: Tue Jul 29 22:32:59 2008 -0700 acpi cpufreq cleanup: move bailing out of function before locking the mutex Signed-off-by: Thomas Renninger Cc: Andi Kleen Cc: Len Brown Cc: Dave Jones Cc: Ingo Molnar Cc: Venkatesh Pallipadi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a1531acd43310a7e4571d52e8846640667f4c74b Author: Thomas Renninger Date: Tue Jul 29 22:32:58 2008 -0700 cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called already Ingo Molnar provided a fix to not call _PPC at processor driver initialization time in "[PATCH] ACPI: fix cpufreq regression" (git commit e4233dec749a3519069d9390561b5636a75c7579) But it can still happen that _PPC is called at processor driver initialization time. This patch should make sure that this is not possible anymore. Signed-off-by: Thomas Renninger Cc: Andi Kleen Cc: Len Brown Cc: Dave Jones Cc: Ingo Molnar Cc: Venkatesh Pallipadi Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a4e564b7db999fbe5d88318c96ac8747699d417 Author: Magnus Damm Date: Tue Jul 29 22:32:57 2008 -0700 resource: add resource_size() Avoid one-off errors by introducing a resource_size() function. Signed-off-by: Magnus Damm Cc: Ben Dooks Cc: Jean Delvare Cc: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e958d3ace7791f33518f0259cd3cf229408b135c Author: Ben Dooks Date: Tue Jul 29 22:32:56 2008 -0700 backlight: give platform_lcd the same name as the platform device. When registering an platform_lcd, use the name of the platform device specified in case there are more than one platform_lcd backlights registered. Signed-off-by: Ben Dooks Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8bac9e0647dd04c83fd0bfe7cdfe2f6dfb100d0 Author: James Bottomley Date: Tue Jul 29 12:52:20 2008 -0500 [SCSI] scsi_transport_spi: fix oops in revalidate The class_device->device conversion is causing an oops in revalidate because it's assuming that the device_for_each_child iterator will only return struct scsi_device children. The conversion made all former class_devices children of the device as well, so this assumption is broken. Fix it. Cc: Stable Tree Signed-off-by: James Bottomley commit 671a99c8eb2f1dde08ac5538d8cd912047c61ddf Author: James Bottomley Date: Tue Jul 29 11:38:25 2008 -0500 [SCSI] ses: fix VPD inquiry overrun There are a few kerneloops.org reports like this one: http://www.kerneloops.org/search.php?search=ses_match_to_enclosure That seem to imply we're running off the end of the VPD inquiry data (although at 512 bytes, it should be long enough for just about anything). we should be using correctly sized buffers anyway, so put those in and hope this oops goes away. Cc: Stable Tree Signed-off-by: James Bottomley commit ad337591f4fd20de6a0ca03d6715267a5c1d2b16 Author: Tim Wright Date: Sun Jul 27 17:50:38 2008 -0700 [SCSI] block: Fix miscalculation of sg_io timeout in CDROM_SEND_PACKET handler. It seems cdrwtool in the udftools has been unusable on "modern" kernels for some time. A Google search reveals many people with the same issue but no solution (cdrwtool fails to format the disk). After spending some time tracking down the issue, it comes down to the following: The udftools still use the older CDROM_SEND_PACKET interface to send things like FORMAT_UNIT through to the drive. They should really be updated, but that's another story. Since most distros are using libata now, the cd or dvd burner appears as a SCSI device, and we wind up in block/scsi_ioctl.c. Here, the code tries to take the "struct cdrom_generic_command" and translate it and stuff it into a "struct sg_io_hdr" structure so it can pass it to the modern sg_io() routine instead. Unfortunately, there is one error, or rather an omission in the translation. The timeout that is passed in in the "struct cdrom_generic_command" is in HZ=100 units, and this is modified and correctly converted to jiffies by use of clock_t_to_jiffies(). However, a little further down, this cgc.timeout value in jiffies is simply copied into the sg_io_hdr timeout, which should be in milliseconds. Since most modern x86 kernels seems to be getting build with HZ=250, the timeout that is passed to sg_io and eventually converted to the timeout_per_command member of the scsi_cmnd structure is now four times too small. Since cdrwtool tries to set the timeout to one hour for the FORMAT_UNIT command, and it takes about 20 minutes to format a 4x CDRW, the SCSI error-handler kicks in after the FORMAT_UNIT completes because it took longer than the incorrectly-calculated timeout. [jejb: fix up whitespace] Signed-off-by: Tim Wright Cc: Stable Tree Signed-off-by: James Bottomley commit dd07428b44944b42f699408fe31af47977f1e733 Author: HighPoint Linux Team Date: Fri Jul 25 13:29:24 2008 +0800 [SCSI] hptiop: add more PCI device IDs Add PCI device ID for new adapter models. Signed-off-by: HighPoint Linux Team Cc: Stable Tree Signed-off-by: James Bottomley commit 95b1bc20532c18e3f19cd460c8350350c84ffbb2 Author: David Brownell Date: Tue Jul 29 22:28:12 2008 -0700 [MTD] MTD_DEBUG always does compile-time typechecks The current style for debug messages is to ensure they're always parsed by the compiler and then subjected to dead code removal. That way builds won't break only when debug options get enabled, which is common when they are stripped out early by CPP. This patch makes CONFIG_MTD_DEBUG adopt that convention. Signed-off-by: David Brownell Signed-off-by: David Woodhouse commit 771999b65f79264acde4b855e5d35696eca5e80c Author: akpm@linux-foundation.org Date: Tue Jul 29 22:22:40 2008 -0700 [MTD] DataFlash: bugfix, binary page sizes now handled The wrong version of the "teach dataflash about binary density" patch just got merged (v2 not v3) ... this restores the missing updates: * Fix the cmdlinepart *regression* that caused testing failures (!!) by restoring the original part labels in relevant cases. * Don't reference things that don't exist (!) - An opcode that doesn't even exist for DataFlash - The part is "at45db642" not "at45db641" - ID zero in this JEDEC table * Make the JEDEC probe routine report and handle errors better: - If the SPI calls fail, return the error codes. - Don't depend on ordering of table entries. - Unrecognized ids are different from parts that have no ID. We won't actually know how to handle them correctly; display the ID and ignore the chip. * Move the original block comment about the "legacy" chip ID scheme back next to the code to which it applies ... not next to the new JEDEC query code, which uses an entirely different strategy. * Don't print a guessed erasesize; /proc/mtd has the real value. And add a few more comments. Signed-off-by: David Brownell Cc: Bryan Wu Cc: Michael Hennerich Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 650da9d0b7c401619c1df2953e975606b8d5dcbb Author: akpm@linux-foundation.org Date: Tue Jul 29 21:27:14 2008 -0700 [MTD] [NAND] fsl_elbc_nand.c: fix printk warning drivers/mtd/nand/fsl_elbc_nand.c:890: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'resource_size_t' Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 74216be41a61a809ad17b091068307e3d89f4a2f Author: Artem Bityutskiy Date: Wed Jul 30 11:18:42 2008 +0300 [MTD] [NAND] nandsim: support random page read command Commit 3d45955962496879dead8d4dd70bb9a23b07154b ("subpage read feature as a way to improve performance") broke nandsim because nandsim does not support the "random page read" NAND command. This patch adds corresponding support. Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 96d8b647cfff90c8ff07863866aacdcd9d13cead Author: Alexey Korolev Date: Tue Jul 29 13:54:11 2008 +0100 [MTD] [NAND] fix subpage read for small page NAND Current implementation of subpage read feature for NAND has issues with small page devices. Small page NAND do not support RNDOUT command. So subpage feature is not applicable for them. This patch disables support of subpage for small page NAND. The code is verified on nandsim(SP NAND simulation) and on LP NAND devices. Thanks a lot to Artem for finding this issue. Signed-off-by: Alexey Korolev Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 031cf19e6f63941506c9baf76ac7adac06edcf08 Author: Robert P. J. Day Date: Wed Jul 30 03:14:01 2008 -0700 net: Make "networking" one-click deselectable. Use a menuconfig directive to make all of networking support one-click deselectable from the top-level menu. Signed-off-by: Robert P. J. Day Signed-off-by: David S. Miller commit 17ef51fce03758736e9051c4360eca237dd0aaeb Author: Daniel Lezcano Date: Wed Jul 30 03:12:31 2008 -0700 ipv6: Fix useless proc net sockstat6 removal This call is no longer needed, sockstat6 is per namespace so it is removed at the namespace subsystem destruction. Signed-off-by: Daniel Lezcano Signed-off-by: David S. Miller commit 785957d3e8c6fb37b18bf671923a76dbd8240025 Author: David S. Miller Date: Wed Jul 30 03:03:15 2008 -0700 tcp: MD5: Use MIB counter instead of warning for MD5 mismatch. From a report by Matti Aarnio, and preliminary patch by Adam Langley. Signed-off-by: David S. Miller commit 8d50b53d66a8a6ae41bafbdcabe401467803f33a Author: David S. Miller Date: Wed Jul 30 02:37:46 2008 -0700 pkt_sched: Fix OOPS on ingress qdisc add. Bug report from Steven Jan Springl: Issuing the following command causes a kernel oops: tc qdisc add dev eth0 handle ffff: ingress The problem mostly stems from all of the special case handling of ingress qdiscs. So, to fix this, do the grafting operation the same way we do for TX qdiscs. Which means that dev_activate() and dev_deactivate() now do the "qdisc_sleeping <--> qdisc" transitions on dev->rx_queue too. Future simplifications are possible now, mainly because it is impossible for dev_queue->{qdisc,qdisc_sleeping} to be NULL. There are NULL checks all over to handle the ingress qdisc special case that used to exist before this commit. Signed-off-by: David S. Miller commit 0eb5d5ab3ec99bfd22ff16797d95835369ffb25b Author: Philipp Zabel Date: Fri Jul 11 17:28:06 2008 +0200 regulator: TI bq24022 Li-Ion Charger driver This adds a regulator driver for the TI bq24022 Single-Chip Li-Ion Charger with its nCE and ISET2 pins connected to GPIOs. Signed-off-by: Philipp Zabel Signed-off-by: Liam Girdwood commit e53e86c7ae123b11c269b0835c04e1b42ca4baed Author: Liam Girdwood Date: Thu Jul 10 15:48:00 2008 +0100 regulator: maintainers - add maintainers for regulator framework. Adds Liam Girdwood and Mark Brown as regulator framework maintainers. Signed-off-by: Liam Girdwood commit e941d0ce532daf8d8610b2495c06f787fd587b85 Author: Liam Girdwood Date: Wed Apr 30 17:23:59 2008 +0100 regulator: documentation - ABI This adds documentation describing the sysfs ABI used by the regulator framework. Signed-off-by: Liam Girdwood commit e7d0fe340557b202dc00135ab3cc877db794a01f Author: Liam Girdwood Date: Wed Apr 30 17:22:50 2008 +0100 regulator: documentation - machine This adds documenation describing the regulator machine interface. Signed-off-by: Liam Girdwood commit e8695ebe5568921c41c269f4434e17590735865c Author: Liam Girdwood Date: Wed Apr 30 17:20:11 2008 +0100 regulator: documentation - regulator driver This adds documentation describing the regulator driver interface. Signed-off-by: Liam Girdwood commit 6392776d262fcd290616ff5e4246ee95b22c13f0 Author: Liam Girdwood Date: Wed Apr 30 17:19:02 2008 +0100 regulator: documentation - consumer interface This adds documentation describing the consumer device interface. Signed-off-by: Liam Girdwood commit 8e6f0848be83c5c406ed73a6d7b4bfbf87880eec Author: Liam Girdwood Date: Wed Apr 30 17:16:51 2008 +0100 regulator: documentation - overview This adds overview documentation describing the regulator framework and nomenclature used in the interface specific documentation and code. Signed-off-by: Liam Girdwood commit ba7e4763437561763b6cca14a41f1d2a7def23e2 Author: Liam Girdwood Date: Wed Apr 30 17:13:42 2008 +0100 regulator: core kbuild files This patch adds kernel build support for the regulator core. Signed-off-by: Philipp Zabel Signed-off-by: Liam Girdwood commit c080909eef2b3e7fba70f57cde3264fba95bdf09 Author: Mark Brown Date: Wed Apr 30 17:05:33 2008 +0100 regulator: regulator test harness This provides a virtual regulator test harness which exposes a sysfs interface for setting power requirements, intended for test purposes only. Signed-off-by: Mark Brown Signed-off-by: Philipp Zabel Signed-off-by: Liam Girdwood commit 4b74ff6512492dedea353f89d9b56cb715df0d7f Author: Mark Brown Date: Wed Apr 30 16:27:12 2008 +0100 regulator: add support for fixed regulators. This adds supports for regulator that are not software controlable. It allows them to coexist in systems with mixed supplies. Signed-off-by: Mark Brown Signed-off-by: Mike Rapoport Signed-off-by: Liam Girdwood commit 414c70cb91c445ec813b61e16fe4882807e40240 Author: Liam Girdwood Date: Wed Apr 30 15:59:04 2008 +0100 regulator: regulator framework core This adds the regulator framework core. This framework is designed to provide a generic interface to voltage and current regulators within the Linux kernel. It's intended to provide voltage and current control to client or consumer drivers and also provide status information to user space applications through a sysfs interface. The intention is to allow systems to dynamically control regulator output in order to save power and prolong battery life. This applies to both voltage regulators (where voltage output is controllable) and current sinks (where current output is controllable). This framework safely compiles out if not selected so that client drivers can still be used in systems with no software controllable regulators. Signed-off-by: Liam Girdwood Signed-off-by: Greg Kroah-Hartman Signed-off-by: Mark Brown commit 48d335ba3164ce99cb8847513d0e3b6ee604eb20 Author: Mark Brown Date: Wed Apr 30 15:50:21 2008 +0100 regulator: fixed regulator interface This patch adds support for fixed regulators. This class of regulator is not software controllable but can coexist on machines with software controlable regulators. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 4c1184e85cb381121a5273ea20ad31ca3faa0a4f Author: Liam Girdwood Date: Wed Apr 30 15:46:09 2008 +0100 regulator: machine driver interface This interface is for machine specific code and allows the creation of voltage/current domains (with constraints) for each regulator. It can provide regulator constraints that will prevent device damage through overvoltage or over current caused by buggy client drivers. It also allows the creation of a regulator tree whereby some regulators are supplied by others (similar to a clock tree). Signed-off-by: Liam Girdwood Signed-off-by: Philipp Zabel Signed-off-by: Mark Brown commit 571a354b1542a274d88617e1f6703f3fe7a517f1 Author: Liam Girdwood Date: Wed Apr 30 15:42:28 2008 +0100 regulator: regulator driver interface This allows regulator drivers to register their regulators and provide operations to the core. It also has a notifier call chain for propagating regulator events to clients. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit e2ce4eaa76214f65a3f328ec5b45c30248115768 Author: Liam Girdwood Date: Wed Apr 30 15:10:07 2008 +0100 regulator: consumer device interface Add support to allow consumer device drivers to control their regulator power supply. This uses a similar API to the kernel clock interface in that consumer drivers can get and put a regulator (like they can with clocks atm) and get/set voltage, current limit, mode, enable and disable. This should allow consumers complete control over their supply voltage and current limit. This also compiles out if not in use so drivers can be reused in systems with no regulator based power control. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 4e891910f5fc7b94c720f587686636a88447c5e4 Author: Alan Cox Date: Tue Jul 8 19:35:13 2008 +0100 [netdrvr] wd: fix build breakage with new NS8390p API From: Alan Cox Signed-off-by: Jeff Garzik commit 16d78bc255a55d16c0888dde336978d633e80b01 Author: Peter Korsgaard Date: Mon Jul 14 09:07:32 2008 +0200 dm9601: don't do usb transfers of data on stack dm_{read,write}() were doing USB transfers of data on stack, which isn't allowed. Fix it by kmalloc'ing a temporary buffer. Clean up the error handling for short transfers while we're at it. Signed-off-by: Peter Korsgaard Acked-by: David Brownell Signed-off-by: Jeff Garzik commit 38c080ffa9c1b840390832b42ce8621464ab9f97 Author: Andreas Schwab Date: Tue Jul 29 23:59:20 2008 -0700 niu: Fix error checking in niu_ethflow_to_class. The callers of niu_ethflow_to_class expect zero as error, but it returns -1 instead. Signed-off-by: Andreas Schwab Signed-off-by: David S. Miller commit 4a36702e016947a0ce6c0c024673bb5b16d3f618 Author: Miao Xie Date: Tue Jul 29 23:57:58 2008 -0700 IPv6: datagram_send_ctl() should exit immediately when an error occured When an error occured, datagram_send_ctl() should exit immediately rather than continue to run the for loop. Otherwise, the variable err might be changed and the error might be hidden. Fix this bug by using "goto" instead of "break". Signed-off-by: Miao Xie Signed-off-by: David S. Miller commit 19fd3cabbabe5d37b83f833a1593592ed9878236 Author: Stephen Rothwell Date: Tue Jul 29 23:54:33 2008 -0700 sparc: merge of_platform_{32,64}.h Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit 71fc324b5beded4d55dc67fd39aab8b78c6898cb Author: David S. Miller Date: Tue Jul 29 23:47:17 2008 -0700 sparc64: Kill isa_bus_type. I forgot to delete this when I removed the ISA bus layer from the sparc ports. Signed-off-by: David S. Miller commit ce0ad7f0952581ba75ab6aee55bb1ed9bb22cf4f Author: Nick Piggin Date: Wed Jul 30 15:23:13 2008 +1000 powerpc/mm: Lockless get_user_pages_fast() for 64-bit (v3) Implement lockless get_user_pages_fast for 64-bit powerpc. Page table existence is guaranteed with RCU, and speculative page references are used to take a reference to the pages without having a prior existence guarantee on them. Signed-off-by: Nick Piggin Signed-off-by: Dave Kleikamp Signed-off-by: Andrew Morton Signed-off-by: Benjamin Herrenschmidt commit 7d2a175b9bf6e9422bebe95130a3c79a25ff4602 Author: Michael Neuling Date: Tue Jul 29 01:13:14 2008 +1000 powerpc: Don't use the wrong thread_struct for ptrace get/set VSX regs In PTRACE_GET/SETVSRREGS, we should be using the thread we are ptracing rather than current. Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit 1ac42ef844d7c0996f15c6f94f463ac94cb80818 Author: Michael Neuling Date: Tue Jul 29 01:13:14 2008 +1000 powerpc: Fix ptrace buffer size for VSX Fix cut-and-paste error in the size setting for ptrace buffers for VSX. Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit 33b3f03dccc26c377e9689790ecc41079a0c9ca7 Author: Michael Neuling Date: Tue Jul 29 01:13:14 2008 +1000 powerpc: Correctly hookup PTRACE_GET/SETVSRREGS for 32 bit processes Fix bug where PTRACE_GET/SETVSRREGS are not connected for 32 bit processes. Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit 9842727da7d95d8249087148048cc571f967c023 Author: Benjamin Herrenschmidt Date: Mon Jul 28 11:29:56 2008 +1000 ide/powermac: Fix use of uninitialized pointer on media-bay The current ide-pmac calls media_bay_set_ide_infos() with an uninitialized "hwif" argument. The proper fix is to split the allocation of the hwif from its registration in order to properly setup the mediabay informations before registration. Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Benjamin Herrenschmidt commit 9ee07f91a1fab61ff0d8d25be43351a049c0a821 Author: Nathan Fontenot Date: Sat Jul 26 04:27:06 2008 +1000 powerpc: Allow non-hcall return values for lparcfg writes The code to handle writes to /proc/ppc64/lparcfg incorrectly assumes that the return code from the helper routines to update processor or memory entitlement return a hcall return value. It then assumes any non-hcall return value is bad and sets the return code for the write to be -EIO. The update_[mp]pp routines can return values other than a hcall return value. This patch removes the automatic setting of any return code that is not an hcall return value from these routines to -EIO. Signed-off-by: Nathan Fontenot Signed-off-by: Benjamin Herrenschmidt commit 11c675cef2fbe471dc6103a89b156e65c3630f3a Author: Stephen Rothwell Date: Fri May 23 16:22:42 2008 +1000 ipmi/powerpc: Use linux/of_{device,platform}.h instead of asm Drivers should not include the asm variants anymore Signed-off-by: Stephen Rothwell Signed-off-by: Benjamin Herrenschmidt commit e93dc4891df93d7efa59d861fdcbb529a1819343 Merge: 6e86841... 56a6d13... Author: David S. Miller Date: Tue Jul 29 21:51:00 2008 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 3a1a8acf690873f0ee2d8a648c2ec185f4294bd2 Merge: 6e86841... cf0d19f... Author: Benjamin Herrenschmidt Date: Wed Jul 30 14:36:03 2008 +1000 Merge commit 'kumar/kumar-next' commit cf0d19fb3032ebf2cf8e5217da00f51dc025aa8e Author: Kim Phillips Date: Tue Jul 29 15:29:24 2008 -0500 powerpc/fsl: proliferate simple-bus compatibility to soc nodes add simple-bus compatible property to soc nodes for 83xx/85xx platforms that were missing them. Add same to platform probe code. This fixes SoC device drivers (such as talitos) to succeed in matching devices present in the soc node. also update mpc836x_rdk dts to new SEC bindings (overlooked in commit 3fd4473: powerpc/fsl: update crypto node definition and device tree instances). Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 383795c206946777d87ed5f6d61d6659110f9344 Author: Eric Paris Date: Tue Jul 29 17:07:26 2008 -0400 SELinux: /proc/mounts should show what it can Given a hosed SELinux config in which a system never loads policy or disables SELinux we currently just return -EINVAL for anyone trying to read /proc/mounts. This is a configuration problem but we can certainly be more graceful. This patch just ignores -EINVAL when displaying LSM options and causes /proc/mounts display everything else it can. If policy isn't loaded the obviously there are no options, so we aren't really loosing any information here. This is safe as the only other return of EINVAL comes from security_sid_to_context_core() in the case of an invalid sid. Even if a FS was mounted with a now invalidated context that sid should have been remapped to unlabeled and so we won't hit the EINVAL and will work like we should. (yes, I tested to make sure it worked like I thought) Signed-off-by: Eric Paris Tested-by: Marc Dionne Signed-off-by: James Morris commit dc56e634c807c6be69be8af919f20a746197b87d Author: Breno Leitao Date: Tue Jul 22 16:27:20 2008 -0300 S2io: fix statistics flush after a MTU change On s2io driver, when you change the interface MTU, it invokes a card reset, which flush some statistics. This patch solves this problem, and also set the net_device->stats as the default statistics structure, instead of s2io_nic->stats. To do that, s2io_nic->stats turned into a staging area, where is saved statistics of the last hardware statistics query. So, the difference between the current hardware statistics and s2io_nic->stats, is the value that should be summed up, in order to get the correct statistics value, even after a reset. Signed-off-by: Breno Leitao Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit c7b7b042068cd12b8b155722d24686f70b88ced1 Author: David Brownell Date: Thu Jul 24 17:47:56 2008 -0700 enc28j60: don't specify (wrong) IRQ type Recent changes to the IRQ framework have made passing the wrong trigger type to request_irq() become a fatal error. In the case of the enc28j60 driver, it stopped working in my test harness. (Specifically: the signal detects "pin change" events, both edges, not just falling edges. Similarly, other boards might route it through an inverter. Trigger type are board-specific.) This fixes that problem by the usual fix of expecting board setup code to have set up the correct IRQ trigger type. The best known example of that being x86 setup. Signed-off-by: David Brownell Signed-off-by: Jeff Garzik commit 74dfd9fb0ae390027cb5a908ab065a21158105d5 Author: Stephen Hemminger Date: Fri Jul 25 11:46:46 2008 -0700 blackfin_mac: unneeded assignment skb->dev is set by eth_type_trans already. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 16b237dc44c716dbd9aeee4ab8aa9c33a62d5998 Merge: 8051367... ac0a2d0... Author: Jeff Garzik Date: Tue Jul 29 18:23:13 2008 -0400 Merge branch 'for-2.6.27' of git://git.marvell.com/mv643xx_eth into upstream-fixes commit 9fec6060d9e48ed7db0dac0e16d0f0f0e615b7f6 Merge: fece418... 6e86841... Author: Anton Vorontsov Date: Wed Jul 30 02:05:23 2008 +0400 Merge branch 'master' of /home/cbou/linux-2.6 Conflicts: drivers/power/Kconfig drivers/power/Makefile commit 8051367586314ab005dacead790a3b2e4e3dcc58 Author: Steve Wise Date: Sat Jul 26 15:40:56 2008 -0500 cxgb3: Allow 64KB firmware images. Starting with FW version 7.0, the driver needs to allow larger images. Signed-off-by: Steve Wise Signed-off-by: Jeff Garzik commit ee02fee8f698aee72f43b3ee5fd818393b110402 Author: Michael Hennerich Date: Sun Jul 27 22:45:05 2008 +0800 Blackfin EMAC Driver: Functional power management support Reprogram MAC address after resume from Suspend Mem (Blackfin Hibernate looses all CORE and SYSTEM register content) Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik commit a50c0c05c3bdead1ac405ca8cefd8dc290043933 Author: Bryan Wu Date: Sun Jul 27 22:45:04 2008 +0800 Blackfin EMAC Driver: enable TXDWA new feature for new silicon (rev > 0.2) Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik commit d7b843d393cec677583e1aa971df09b140dcfd5e Author: Mike Frysinger Date: Sun Jul 27 22:45:03 2008 +0800 Blackfin EMAC Driver: add proper __devinit/__devexit markings Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik commit 22ae03a190011fa2241e68a6c51369d78039348e Author: Ayaz Abdulla Date: Fri Jul 25 15:31:29 2008 -0400 forcedeth bug fix: realtek phy 8211c errata This patch adds support for the realtek 8211c phy. The driver must perform a hardware reset of the phy due to an errata where the phy could not detect the link. Signed-off-by: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 56a6d13dfd49d90d72a1a962246206719dd9d143 Author: Luis Carlos Cobo Date: Tue Jul 29 19:59:31 2008 +0200 mac80211: fix mesh beaconing This patch fixes mesh beaconing, which was broken by "mac80211: revamp beacon configuration". Signed-off-by: Luis Carlos Cobo Signed-off-by: John W. Linville commit 77bbadd5ea893f364a0d1879723037678a03725c Author: Vegard Nossum Date: Tue Jul 29 13:31:47 2008 +0200 PS3: gelic: use unsigned long for irqflags The semantic patch I used was this: @@ expression lock; identifier flags; expression subclass; @@ - unsigned int flags; + unsigned long flags; ... <+... ( spin_lock_irqsave(lock, flags) | _spin_lock_irqsave(lock) | spin_unlock_irqrestore(lock, flags) | _spin_unlock_irqrestore(lock, flags) | read_lock_irqsave(lock, flags) | _read_lock_irqsave(lock) | read_unlock_irqrestore(lock, flags) | _read_unlock_irqrestore(lock, flags) | write_lock_irqsave(lock, flags) | _write_lock_irqsave(lock) | write_unlock_irqrestore(lock, flags) | _write_unlock_irqrestore(lock, flags) | spin_lock_irqsave_nested(lock, flags, subclass) | _spin_lock_irqsave_nested(lock, subclass) | spin_unlock_irqrestore(lock, flags) | _spin_unlock_irqrestore(lock, flags) | _raw_spin_lock_flags(lock, flags) | __raw_spin_lock_flags(lock, flags) ) ...+> This patch was generated using the Coccinelle framework. Cc: Masakazu Mokuno Cc: Julia Lawall Cc: Alexey Dobriyan Signed-off-by: Vegard Nossum Signed-off-by: John W. Linville commit 14db74bcc3f7a779cf395a47e26b06a28207571a Author: Johannes Berg Date: Tue Jul 29 13:22:52 2008 +0200 mac80211: fix cfg80211 hooks for master interface The master interface is a virtual interface that is registered to mac80211, changing that does not seem like a good idea at the moment. However, since it has no sdata, we cannot accept any configuration for it. This patch makes the cfg80211 hooks reject any such attempt. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit bba95fefb8e31f4799652666d05a4a9aad56e492 Author: Johannes Berg Date: Tue Jul 29 13:22:51 2008 +0200 nl80211: fix dump callbacks Julius Volz pointed out that the dump callbacks in nl80211 were broken and fixed one of them. This patch fixes the other three and also addresses the TODOs there. Signed-off-by: Johannes Berg Cc: Julius Volz Cc: Thomas Graf Signed-off-by: John W. Linville commit d0f09804144fd9471a13cf4d80e66842c7fa114f Author: Johannes Berg Date: Tue Jul 29 11:32:07 2008 +0200 mac80211: partially fix skb->cb use This patch fixes mac80211 to not use the skb->cb over the queue step from virtual interfaces to the master. The patch also, for now, disables aggregation because that would still require requeuing, will fix that in a separate patch. There are two other places (software requeue and powersaving stations) where requeue can happen, but that is not currently used by any drivers/not possible to use respectively. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 0ccd58fc03f40529f66190b1a41e92a732d2bda8 Author: Larry Finger Date: Mon Jul 28 22:25:08 2008 -0500 rtl8187: Improve wireless statistics for RTL8187B Wireless statistics produced by the RTL8187B driver are not particularly informative about the strength of the received signal. From the data sheet provided by Realtek, I discovered that certain parts of the RX header should have the information necessary to calculate signal quality and strength. With testing, it became clear that most of these quantities were very jittery - only the AGC correlated with the signals expected from nearby AP's. As a result, the quality and strength are derived from the agc value. The scaling has been determined so that the numbers are close to those obtained by b43 under the same conditions. The results are qualitatively correct. Statistics derived for the RTL8187 have not been changed. The RX header variables have been renamed to match the quantites described in the Realtek data sheet. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 1f690d7b549ef9c7424536475501885dd5b54930 Author: Larry Finger Date: Mon Jul 28 22:08:18 2008 -0500 rtl8187: Fix for TX sequence number problem "mac80211: fix TX sequence numbers" broke rtl8187. This patch makes the same kind of fix that was done for rt2x00. Note that this code will have to be reworked for proper sequence numbers on beacons. In addition, the sequence number has been placed in the hardware state, not the vif state. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 5422399518e8142198df888aab00acdac251f754 Author: Rami Rosen Date: Thu Jul 24 10:40:37 2008 +0300 mac80211: append CONFIG_ to MAC80211_VERBOSE_PS_DEBUG in net/mac80211/tx.c. In net/mac80211/tx.c, there are some #ifdef which checks MAC80211_VERBOSE_PS_DEBUG (which in fact is never set) instead of CONFIG_MAC80211_VERBOSE_PS_DEBUG, as should be. This patch replaces MAC80211_VERBOSE_PS_DEBUG with CONFIG_MAC80211_VERBOSE_PS_DEBUG in these #ifdef commands in net/mac80211/tx.c. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 0b06b2ae0e474fc6378117c832bcd94785a9e975 Author: Harvey Harrison Date: Wed Jul 23 18:36:38 2008 -0700 mac80211: fix sparse integer as NULL pointer warning drivers/net/wireless/mac80211_hwsim.c:503:20: warning: Using plain integer as NULL pointer Signed-off-by: Harvey Harrison Signed-off-by: John W. Linville commit 031211049b71619f7e776521963c082ca453d9fd Author: Andrew Morton Date: Tue Jul 22 23:50:04 2008 -0700 drivers/net/wireless/iwlwifi/iwl-led.c: printk fix ia64: drivers/net/wireless/iwlwifi/iwl-led.c: In function `iwl_get_blink_rate': drivers/net/wireless/iwlwifi/iwl-led.c:271: warning: long long int format, s64 arg (arg 6) drivers/net/wireless/iwlwifi/iwl-led.c:271: warning: long long int format, u64 arg (arg 7) We do not know what type the architecture uses to impement u64 and s64, hence we must cast the variables for printing. Cc: Tomas Winkler Cc: John W. Linville Cc: Zhu Yi Signed-off-by: Andrew Morton Signed-off-by: John W. Linville commit 023a04bebe7030c1e6d5347bd3f27a3e49a1f222 Author: Jeremy Fitzhardinge Date: Mon Jul 14 12:52:08 2008 -0700 mac80211: return correct error return from ieee80211_wep_init Return the proper error code rather than a hard-coded ENOMEM from ieee80211_wep_init. Also, print the error code on failure. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: John W. Linville commit 1b0241656b658522a15e7aad570cb8ea6b255a2a Author: Jiri Slaby Date: Mon Jul 14 12:43:23 2008 +0200 mac80211: tx, use dev_kfree_skb_any for beacon_get Use dev_kfree_skb_any(); instead of dev_kfree_skb();, since ieee80211_beacon_get function might be called from atomic. (It's in a fail path.) Signed-off-by: Jiri Slaby Cc: Johannes Berg Cc: Michael Wu Signed-off-by: John W. Linville commit 9c0ab712c7e40b61063431cae74a3e763535a4e7 Author: Ivo van Doorn Date: Mon Jul 21 19:06:02 2008 +0200 rt2x00: Clear queue entry flags during initialization When the queues are being initialized the entry flags fields must be reset to 0. When this does not happen some entries might still be marked as "occupied" after an ifdown & ifup cycle which would trigger errors when the entry is being accessed: phy0 -> rt2x00queue_write_tx_frame: Error - Arrived at non-free entry in the non-full queue 0. Please file bug report to http://rt2x00.serialmonkey.com. This also fixes the mac80211 warning: ------------[ cut here ]------------ WARNING: at net/mac80211/tx.c:1238 ieee80211_master_start_xmit+0x30a/0x350 [mac80211]() which was triggered by the queue error. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 74c0ee9b59bdaa81a666d5d58022f847390e4b0c Author: Ivo van Doorn Date: Mon Jul 21 11:52:44 2008 +0200 rt2x00: Force full register config after start() rt2x00 will only perform configuration changes from mac80211 when the configuration option has changed. This means it keeps track of the current active configuration and will check these values when the config() callback function is used. However this causes breakage when the interface has been brought down and up again, since all stored active values aren't reset while the registers might have. This is for example the case with rt61pci antenna registers which will jump to invalid values when the interface has been started. To make sure a full configuration takes place after the start() callback function, a new flag is added which will be checked during config() and skips the "what's changed" phase. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 4104863fb4a724723d1d5f3cba9d3c5084087e45 Author: Julia Lawall Date: Mon Jul 21 11:29:34 2008 +0200 b43legacy: Release mutex in error handling code The mutex is released on a successful return, so it would seem that it should be released on an error return as well. The semantic patch finds this problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression l; @@ mutex_lock(l); ... when != mutex_unlock(l) when any when strict ( if (...) { ... when != mutex_unlock(l) + mutex_unlock(l); return ...; } | mutex_unlock(l); ) // Signed-off-by: Julia Lawall Signed-off-by: Michael Buesch Cc: stable Signed-off-by: John W. Linville commit 80c42affad970c8ebc5ebec4681aef8dadf21c32 Author: Julia Lawall Date: Mon Jul 21 09:58:11 2008 +0200 drivers/net/wireless/ipw2100.c: Release mutex in error handling code The mutex is released on a successful return, so it would seem that it should be released on an error return as well. The semantic patch finds this problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression l; @@ mutex_lock(l); ... when != mutex_unlock(l) when any when strict ( if (...) { ... when != mutex_unlock(l) + mutex_unlock(l); return ...; } | mutex_unlock(l); ) // Signed-off-by: Julia Lawall Signed-off-by: John W. Linville commit e7087a828f8714e464fff18d93618727530dfd89 Author: Ivo van Doorn Date: Sun Jul 20 18:03:58 2008 +0200 rt2x00: Fix memleak when RTS/CTS fails When sending the RTS/CTS frame fails, we should free the skb buffer which was created. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 5adf6d63c1697ce1835daf2b5393488a71ee0dca Author: Ivo van Doorn Date: Sun Jul 20 18:03:38 2008 +0200 rt2x00: Fix QOS sequence counting When IEEE80211_TX_CTL_ASSIGN_SEQ is not set, the driver should disable hardware sequence counting to make sure the mac80211 provided counter is used. This fixes QOS sequence counting, since that is one of the cases where mac80211 provides a seperate sequence counter. By moving the sequence counting code to rt2x00queue we make sure that _all_ frames get the sequence counter, including RTS/CTS and Beacon frames. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit b93ce437eba7e0232683326f30d9d1167a872fad Author: Iwo Mergler Date: Sat Jul 19 16:17:40 2008 +0200 rt2x00: Fix the beacon length bug When setting up a beacon template, the length of the beacon is calculated with the assumption that the SKB already contains the Tx descriptor. In the case of beacons it doesn't. This patch undoes the damage by adding the Tx descriptor length to the beacon length. This is safe, because the shortest possible beacon is longer than the Tx header. Signed-off-by: Iwo Mergler Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3e0c1abe748a30bc705a55f71bca8e04a83820f1 Author: Iwo Mergler Date: Sat Jul 19 16:17:16 2008 +0200 rt2x00: Large vendor requests for rt73usb firmware upload and beacons Switches rt73usb to use large vendor requests for firmware and beacons. This also fixes the garbled beacon bug. Signed-off-by: Iwo Mergler Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ed0dbeeb92bdb1030bcec67e20b294bd2020cb31 Author: Iwo Mergler Date: Sat Jul 19 16:16:54 2008 +0200 rt2x00: Support for large vendor requests Adds an extra rt2x00 vendor request function to support register transfers beyond the CSR_CACHE_SIZE / USB packet size limit. This is useful for firmware uploads, beacon templates and keys, all of which are to large to do with a single USB request. Signed-off-by: Iwo Mergler Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f2fdbc4847e0d3991474949f21aa439c361391db Author: Ivo van Doorn Date: Sat Jul 19 16:16:12 2008 +0200 rt2x00: Fix EIFS timing value Olivier reported a difference between the EIFS values used in the legacy driver and the one in the rt2x00 drivers. In rt2x00 the value was ( SIFS + (8 * (IEEE80211_HEADER + ACK_SIZE)) ) which comes down to 314us while the legacy driver uses the value 364us This was caused because EIFS is: SIFS + DIFS + AckTime This patch will fix this by adding the DIFS by the above value, and creating a SHORT_EIFS define which uses the SHORT_DIFS. Reported-by: Olivier Cornu Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ed06387b44f0501f7298b559dc8ddfcd410c8fa0 Author: Ivo van Doorn Date: Sat Jul 19 16:15:42 2008 +0200 rt2x00: Remove duplicate declaration rt2x00queue_free_skb() was declared twice. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 256b152b005e319f985f50f2a910a75ba0def74f Author: Pavel Roskin Date: Fri Jul 18 12:56:59 2008 -0400 ath5k: don't enable MSI, we cannot handle it yet MSI is a nice thing, but we cannot enable it without changing the interrupt handler. If we do it, we break MSI capable hardware, specifically AR5006 chipset. Signed-off-by: Pavel Roskin Acked-by: Nick Kossifidis Cc: stable Signed-off-by: John W. Linville commit bc05116ab33d30342e2b4b1bcc6d6e1184e9df97 Author: Bob Copeland Date: Fri Jul 18 11:11:21 2008 -0400 ath5k: fix recursive locking in ath5k_beacon_update ath5k_beacon_update takes sc->lock upon entry. However, it is only called from within ath5k_config_interface, which already holds the lock. Remove the unnecessary locking from ath5k_beacon_update. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit cb9289cb798502a5010c8f1d8d003842cd1449a4 Author: Denis V. Lunev Date: Fri Jul 18 10:56:12 2008 +0400 iwlwifi: small compile warnings without CONFIG_IWLWIFI_DEBUG CC [M] drivers/net/wireless/iwlwifi/iwl-scan.o drivers/net/wireless/iwlwifi/iwl-scan.c: In function 'iwl_rx_scan_complete_notif': drivers/net/wireless/iwlwifi/iwl-scan.c:274: warning: unused variable 'scan_notif' Signed-off-by: Denis V. Lunev Acked-by: Tomas Winkler Signed-off-by: John W. Linville commit c0b6a1c9be3acac0f600072ebc2bc6ad3d8c8f76 Author: Denis V. Lunev Date: Thu Jul 17 13:19:24 2008 +0400 iwlwifi: compilation error when CONFIG_IWLWIFI_DEBUG is not set CC [M] drivers/net/wireless/iwlwifi/iwl-rfkill.o drivers/net/wireless/iwlwifi/iwl-led.c: In function 'iwl_led_brightness_set': drivers/net/wireless/iwlwifi/iwl-led.c:198: error: 'led_type_str' undeclared (first use in this function) drivers/net/wireless/iwlwifi/iwl-led.c:198: error: (Each undeclared identifier is reported only once drivers/net/wireless/iwlwifi/iwl-led.c:198: error: for each function it appears in.) The problem is that led_type_str is defined under CONFIG_IWLWIFI_DEBUG while IWL_DEBUG is a static inline function in this case. Replace it with macro. Signed-off-by: Denis V. Lunev Signed-off-by: John W. Linville commit fb904907fb1a02a64af9f2d1fb1ef35d963231f9 Author: Brian Cavagnolo Date: Wed Jul 16 12:15:26 2008 -0700 libertas: check bounds and only use decimal for sysfs persistent features. Some persistent settings were using hex and others decimal. In some cases, values were set in hex but reported in decimal. Confusing. Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 699669f331a9e459713e4327a468db8fbb8cd60f Author: Rami Rosen Date: Wed Jul 16 16:39:56 2008 +0300 iwl-3945: add #ifdef CONFIG_IWL3945_LEDS to avoid compile warning. When building the wireless-next-2.6 tree with CONFIG_IWL3945 (for building iwl-3945 driver) and where CONFIG_IWL3945_LEDS is not set, we get this warning: drivers/net/wireless/iwlwifi/iwl-3945.c: In function 'iwl3945_pass_packet_to_mac80211': drivers/net/wireless/iwlwifi/iwl-3945.c:633: warning: unused variable 'hdr' This patch adds #ifdef to iwl3945_pass_packet_to_mac80211() to avoid this warning. (The variable 'hdr' is used only if CONFIG_IWL3945_LEDS is set) Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 435307a365ceedc4f4e1813e405f583f434d98e4 Author: Henrique de Moraes Holschuh Date: Mon Jul 21 21:18:22 2008 -0300 rfkill: yet more minor kernel-doc fixes For some stupid reason, I sent and old version of the patch minor kernel doc-fix patch, and it got merged before I noticed the problem. This is an incremental fix on top. Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 064af1117b4aa64a0e52f6b741df7356ef055142 Author: Henrique de Moraes Holschuh Date: Mon Jul 21 21:18:20 2008 -0300 rfkill: mutex fixes There are two mutexes in rfkill: rfkill->mutex, which protects some of the fields of a rfkill struct, and is also used for callback serialization. rfkill_mutex, which protects the global state, the list of registered rfkill structs and rfkill->claim. Make sure to use the correct mutex, and to not miss locking rfkill->mutex even when we already took rfkill_mutex. Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit f1b23361a0f15497d4c6795a2935b2e98064ddfb Author: Henrique de Moraes Holschuh Date: Mon Jul 21 21:18:19 2008 -0300 rfkill: document the rfkill struct locking (v2) Reorder fields in struct rfkill and add comments to make it clear which fields are protected by rfkill->mutex. Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 37f55e9d78d1b63047b1b7ae175cdce650547ba8 Author: Henrique de Moraes Holschuh Date: Mon Jul 21 21:18:18 2008 -0300 rfkill: fix led-trigger unregister order in error unwind rfkill needs to unregister the led trigger AFTER a call to rfkill_remove_switch(), otherwise it will not update the LED state, possibly leaving it ON when it should be OFF. To make led-trigger unregistering safer, guard against unregistering a trigger twice, and also against issuing trigger events to a led trigger that was unregistered. This makes the error unwind paths more resilient. Refer to "rfkill: Register LED triggers before registering switch". Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Cc: Michael Buesch Cc: Dmitry Baryshkov Signed-off-by: John W. Linville commit 2fd9b2212e25e6411b6f309707f4e2683d164250 Author: Henrique de Moraes Holschuh Date: Mon Jul 21 21:18:17 2008 -0300 rfkill: document rfkill_force_state as required (v2) While the rfkill class does work with just get_state(), it doesn't work well on devices that are subject to external events that cause rfkill state changes. Document that rfkill_force_state() is required in those cases. Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 734b5aa911dc65f4563048f069dfc631c9aa7de7 Author: Bob Copeland Date: Tue Jul 15 13:07:16 2008 -0400 ath5k: use positive logic for HP laptop LEDs Helge Deller reports that HP laptops (NC4010 and NC6000) use active- high signals to turn on the LEDs. Previous code used active-low for all devices. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 3e4242b99ce46fed82aa7f40ad5a1817a2b3bd45 Author: Jiri Slaby Date: Tue Jul 15 17:44:21 2008 +0200 Ath5k: suspend/resume fixes - free and re-request irq since it might have changed during suspend - disable and enable msi - don't set D0 state of the device, it's already done by the PCI layer - do restore_state before enable_device, it's safer - check ath5k_init return value Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Cc: Jesse Barnes Signed-off-by: John W. Linville commit e86600c7b4e9b9b22ba51620613d6159bf5cf504 Author: Jiri Slaby Date: Tue Jul 15 17:44:43 2008 +0200 Ath5k: fix dma operation Don't sync - coherent mapping (descriptors) - before unmap, it's useless - (wrongly anyway -- for_cpu) beacon skb, it's just mapped, so by the device yet Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Signed-off-by: John W. Linville commit 274c7c3638cd027b46f76d0caef96c1bad8b6701 Author: Jiri Slaby Date: Tue Jul 15 17:44:20 2008 +0200 Ath5k: flush work Make sure that the irq is not in progress after stop. This means two things: - ensure the intr setting register is set by flushing posted values - call synchronize_irq() after that Also flush stop tx write, inform callers of the tx stop about still pending transfers (unsuccessful stop) and finally don't wait another 3ms in ath5k_rx_stop, since ath5k_hw_stop_rx_dma ensures transfer to be finished. Make sure all writes will be ordered in respect to locks by mmiowb(). Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Signed-off-by: John W. Linville commit 10488f8ad62be3b860bad74e60b4fe6ab87aece3 Author: Jiri Slaby Date: Tue Jul 15 17:44:19 2008 +0200 Ath5k: kill tasklets on shutdown Don't forget to kill tasklets on stop to not panic if they fire after freeing some structures. Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Signed-off-by: John W. Linville commit 3a0f2c871849f23c1070965bf94dec3f9c0b479d Author: Jiri Slaby Date: Tue Jul 15 17:44:18 2008 +0200 Ath5k: fix memory corruption When signal is noisy, hardware can use all RX buffers and since the last entry in the list is self-linked, it overwrites the entry until we link new buffers. Ensure that we don't free this last one until we are 100% sure that it is not used by the hardware anymore to not cause memory curruption as can be seen below. This is done by checking next buffer in the list. Even after that we know that the hardware refetched the new link and proceeded further (the next buffer is ready) we can finally free the overwritten buffer. We discard it since the status in its descriptor is overwritten (OR-ed by new status) too. ============================================================================= BUG kmalloc-4096: Poison overwritten ----------------------------------------------------------------------------- INFO: 0xffff810067419060-0xffff810067419667. First byte 0x8 instead of 0x6b INFO: Allocated in dev_alloc_skb+0x18/0x30 age=1118 cpu=1 pid=0 INFO: Freed in skb_release_data+0x85/0xd0 age=1105 cpu=1 pid=3718 INFO: Slab 0xffffe200019d0600 objects=7 used=0 fp=0xffff810067419048 flags=0x40000000000020c3 INFO: Object 0xffff810067419048 @offset=4168 fp=0xffff81006741c120 Bytes b4 0xffff810067419038: 4f 0b 02 00 01 00 00 00 5a 5a 5a 5a 5a 5a 5a 5a O.......ZZZZZZZZ Object 0xffff810067419048: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xffff810067419058: 6b 6b 6b 6b 6b 6b 6b 6b 08 42 30 00 00 0b 6b 80 kkkkkkkk.B0...k. Object 0xffff810067419068: f0 5d 00 4f 62 08 a3 64 00 0c 42 16 52 e4 f0 5a 360].Ob.243d..B.R344360Z Object 0xffff810067419078: 68 81 00 00 7b a5 b4 be 7d 3b 8f 53 cd d5 de 12 h...{245264276};.S315325336. Object 0xffff810067419088: 96 10 0b 89 48 54 23 41 0f 4e 2d b9 37 c3 cb 29 ....HT#A.N-2717303313) Object 0xffff810067419098: d1 e0 de 14 8a 57 2a cc 3b 44 0d 78 7a 19 12 15 321340336..W*314;D.xz... Object 0xffff8100674190a8: a9 ec d4 35 a8 10 ec 8c 40 a7 06 0a 51 a7 48 bb 2513543245250.354.@247..Q247H273 Object 0xffff8100674190b8: 3e cf a1 c7 38 60 63 3f 51 15 c7 20 eb ba 65 30 >ϡ3078`c?Q.307.353272e0 Redzone 0xffff81006741a048: bb bb bb bb bb bb bb bb 273273273273273273273273 Padding 0xffff81006741a088: 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZ Pid: 3297, comm: ath5k_pci Not tainted 2.6.26-rc8-mm1_64 #427 Call Trace: [] print_trailer+0xf6/0x150 [] check_bytes_and_report+0x125/0x180 [] check_object+0xac/0x260 [] __slab_alloc+0x368/0x6d0 [] ? wireless_send_event+0x142/0x310 [] ? __alloc_skb+0x44/0x150 [] ? wireless_send_event+0x142/0x310 [] __kmalloc_track_caller+0xc3/0xf0 [] __alloc_skb+0x6e/0x150 [... stack snipped] FIX kmalloc-4096: Restoring 0xffff810067419060-0xffff810067419667=0x6b FIX kmalloc-4096: Marking all objects used Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Signed-off-by: John W. Linville commit 605a0bd66d9d55e9ba46da1a9e5140c68bdf6d85 Author: Johannes Berg Date: Tue Jul 15 10:10:01 2008 +0200 mac80211: remove IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE flag I forgot this in the previous patch that made it unused. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7cb93181629c613ee2b8f4ffe3446f8003074842 Author: Adrian Bunk Date: Wed Jul 30 02:18:26 2008 +0900 mm/hugetlb.c must #include This patch fixes the following build error on sh caused by commit aa888a74977a8f2120ae9332376e179c39a6b07d (hugetlb: support larger than MAX_ORDER): <-- snip --> ... CC mm/hugetlb.o /home/bunk/linux/kernel-2.6/git/linux-2.6/mm/hugetlb.c: In function 'alloc_bootmem_huge_page': /home/bunk/linux/kernel-2.6/git/linux-2.6/mm/hugetlb.c:958: error: implicit declaration of function 'virt_to_phys' make[2]: *** [mm/hugetlb.o] Error 1 <-- snip --> Reported-by: Adrian Bunk Signed-off-by: Adrian Bunk Signed-off-by: Paul Mundt commit 193f3c2f1531ec9755a87a33038fba3ee29f6ca5 Author: Paul Mundt Date: Wed Jul 30 02:16:12 2008 +0900 video: Fix up hp6xx driver build regressions. This is some more fallout from the header reorganization, fix up the paths accordingly. Signed-off-by: Paul Mundt commit cc8dccdc74c06ea91e6979130b742fef44e4b0c4 Author: Paul Mundt Date: Wed Jul 30 02:15:20 2008 +0900 sh: defconfig updates. Signed-off-by: Paul Mundt commit 9b4d10ff247a440d3d4ec130866f7f5b7d1c7c14 Author: Paul Mundt Date: Wed Jul 30 01:01:08 2008 +0900 sh: Kill off stray mach-rsk7203 reference. Signed-off-by: Paul Mundt commit c2697968c012cfdba2d92fa6e27e3e34f918af2f Author: Paul Mundt Date: Wed Jul 30 00:56:39 2008 +0900 serial: sh-sci: Fix up SH7760/SH7780/SH7785 early printk regression. As noted by Manuel: Commit c63847a3621d2bac054f5709783860ecabd0ee7e ("sh: Add SCIF2 support for SH7763.") broke build with CONFIG_EARLY_PRINTK enabled for me (SH7760): CC arch/sh/kernel/early_printk.o /mnt/work/sh7760/kernel/linux-2.6.git/arch/sh/kernel/early_printk.c: In function 'scif_sercon_putc': /mnt/work/sh7760/kernel/linux-2.6.git/arch/sh/kernel/early_printk.c:84: error: implicit declaration of function 'sci_SCFDR_in' Move the SH7763 definitions out on their own, so they don't create additional confusion within the SH7760/SH7780/SH7785 block. Restore the deleted SCFDR definition for these parts. Reported-by: Manuel Lauss Signed-off-by: Paul Mundt commit c8b5d9dcbc94ae5e7d9ed647246df4454d25332e Author: Paul Mundt Date: Wed Jul 30 00:13:39 2008 +0900 sh: Move out individual boards without mach groups. Signed-off-by: Paul Mundt commit c170f86e31410cc38971c1dedd8b25885e6e43b6 Author: Paul Mundt Date: Tue Jul 29 23:12:25 2008 +0900 sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h. Presently this is protected by a CONFIG_VSYSCALL ifdef so we don't inadvertently trigger the creation of the gate VMA on CPUs where we don't enable the vDSO, which is obviously not visible to userspace. Fix this up by adding in an ifndef __KERNEL__ check at the same time. Signed-off-by: Paul Mundt commit 11589418a1c4cf68be9367f802898d35e07809c4 Author: Mark Brown Date: Tue Jul 29 11:42:23 2008 +0100 ALSA: ASoC: Export dapm_reg_event() fully dapm_reg_event() is used by devices using SND_SOC_DAPM_REG() so needs to be exported to support building them as modules and prototyped to avoid sparse warnings and potential build issues. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 51f3547d619956e9b428bfff17004d8f4d259a02 Author: Paul Mundt Date: Tue Jul 29 22:52:49 2008 +0900 sh: Allow SH-3 and SH-5 to use common headers. Signed-off-by: Paul Mundt commit 93dc544cf4892b9188d7d0d4946b0394020b4551 Author: Paul Mundt Date: Tue Jul 29 22:46:55 2008 +0900 sh: Provide common CPU headers, prune the SH-2 and SH-2A directories. Signed-off-by: Paul Mundt commit 1795cf48b322b4d19230a40dbe7181acedd34a94 Author: Adrian McMenamin Date: Tue Jul 29 22:10:56 2008 +0900 sh/maple: clean maple bus code This patch cleans up the handling of the maple bus queue to remove the risk of races when adding packets. It also removes references to the redundant connect and disconnect functions. Signed-off-by: Adrian McMenamin Signed-off-by: Paul Mundt commit 0764bff445bb13cd17e41b6ab196ef83c23c6c17 Author: Paul Mundt Date: Tue Jul 29 22:10:01 2008 +0900 sh: More header path fixups for mach dir refactoring. Signed-off-by: Paul Mundt commit 939a24a6df24649cea9fd0ff54fe71ee0dc1d61e Author: Paul Mundt Date: Tue Jul 29 21:41:37 2008 +0900 sh: Move out the solution engine headers to arch/sh/include/mach-se/ Signed-off-by: Paul Mundt commit e565b518ec3a62aebf54da31c65bb6036bb5a276 Author: Magnus Damm Date: Tue Jul 29 20:57:38 2008 +0900 sh: I2C fix for AP325RXA and Migo-R Fix recently introduced I2C build breakage on AP325RXA and Migo-R. Reported-by: Adrian Bunk Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit da2014a2b080e7f3024a4eb6917d47069ad9620b Author: Paul Mundt Date: Tue Jul 29 21:01:19 2008 +0900 sh: Shuffle the board directories in to mach groups. This flattens out the board directories in to individual mach groups, we will use this for getting rid of unneeded directories, simplifying the build system, and becoming more coherent with the refactored arch/sh/include topology. Signed-off-by: Paul Mundt commit 71b8064e7df5698520d73b4c1566a3dbc98eb9ef Author: Paul Mundt Date: Tue Jul 29 20:20:36 2008 +0900 sh: dma-sh: Fix up dreamcast dma.h mach path. Signed-off-by: Paul Mundt commit cfb81f361a3e73bb4eb7207a88f720e2f652dd63 Author: Paul Mundt Date: Tue Jul 29 20:19:43 2008 +0900 sh: Switch KBUILD_DEFCONFIG to shx3_defconfig. Signed-off-by: Paul Mundt commit f42b7e3dbe1e2c004a47aa89f09137ee5f04499d Author: Paul Mundt Date: Tue Jul 29 20:12:51 2008 +0900 sh: Add ARCH_DEFCONFIG entries for sh and sh64. Signed-off-by: Paul Mundt commit 877db3c1af24a65f78ae865b1fb642165e065a8b Author: Dmitry Baryshkov Date: Tue Jul 29 11:42:22 2008 +0100 ALSA: ASoC: Update Poodle to current ASoC API Signed-off-by: Dmitry Baryshkov Cc: Richard Purdie Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit be41e941d5f1a48bde7f44d09d56e8d2605f98e1 Author: Timur Tabi Date: Mon Jul 28 17:04:39 2008 -0500 ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers The Freescale MPC8610 SSI device has the option of using one clock for both transmit and receive (synchronous mode), or independent clocks (asynchronous). The SSI driver, however, programs the SSI into synchronous mode and then tries to program the clock registers independently. The result is that the wrong sample size is usually generated during recording. This patch fixes the discrepancy by restricting the sample rate and sample size of the playback and capture streams. The SSI driver remembers which stream is opened first. When a second stream is opened, that stream is constrained to the same sample rate and size as the first stream. A future version of this driver will lift the sample size restriction. Supporting independent sample rates is more difficult, because only certain codecs provide dual independent clocks. Signed-off-by: Timur Tabi Signed-off-by: Takashi Iwai commit a7b815169aae65072017efb1fba9dcecc82ba7c1 Author: Huang Weiyi Date: Sat Jul 26 20:43:01 2008 +0800 ALSA: sound/soc/pxa/tosa.c: removed duplicated include Removed duplicated include in sound/soc/pxa/tosa.c. Signed-off-by: Huang Weiyi Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit 8978b74253280d59e97cf49a3ec2c0cbccd5b801 Author: FUJITA Tomonori Date: Tue Jul 29 13:38:53 2008 +0900 generic, x86: fix add iommu_num_pages helper function This IOMMU helper function doesn't work for some architectures: http://marc.info/?l=linux-kernel&m=121699304403202&w=2 It also breaks POWER and SPARC builds: http://marc.info/?l=linux-kernel&m=121730388001890&w=2 Currently, only x86 IOMMUs use this so let's move it to x86 for now. Reported-by: Stephen Rothwell Signed-off-by: FUJITA Tomonori Signed-off-by: Ingo Molnar commit 35780c8ea7ad5c6d5483244d5f5bf37176fda86a Merge: 6ce37a5... 6e86841... Author: Ingo Molnar Date: Tue Jul 29 12:10:50 2008 +0200 Merge commit 'v2.6.27-rc1' into x86/urgent commit ed8486243379ef3e6c61363df915882945c0eaec Author: Avi Kivity Date: Tue Jul 29 11:30:57 2008 +0300 KVM: Advertise synchronized mmu support to userspace Signed-off-by: Avi Kivity commit e930bffe95e1e886a1ede80726ea38df5838d067 Author: Andrea Arcangeli Date: Fri Jul 25 16:24:52 2008 +0200 KVM: Synchronize guest physical memory map to host virtual memory map Synchronize changes to host virtual addresses which are part of a KVM memory slot to the KVM shadow mmu. This allows pte operations like swapping, page migration, and madvise() to transparently work with KVM. Signed-off-by: Andrea Arcangeli Signed-off-by: Avi Kivity commit 604b38ac0369bd50fcbb33344aa5553c071009f7 Author: Andrea Arcangeli Date: Fri Jul 25 16:32:03 2008 +0200 KVM: Allow browsing memslots with mmu_lock This allows reading memslots with only the mmu_lock hold for mmu notifiers that runs in atomic context and with mmu_lock held. Signed-off-by: Andrea Arcangeli Signed-off-by: Avi Kivity commit a1708ce8a362c4999f1201237ae7b77c4d13af82 Author: Andrea Arcangeli Date: Fri Jul 25 16:26:39 2008 +0200 KVM: Allow reading aliases with mmu_lock This allows the mmu notifier code to run unalias_gfn with only the mmu_lock held. Only alias writes need the mmu_lock held. Readers will either take the slots_lock in read mode or the mmu_lock. Signed-off-by: Andrea Arcangeli Signed-off-by: Avi Kivity commit 4864841a34ad77a5054f20d18453ae38a926afd8 Author: Nobuhiro Iwamatsu Date: Tue Jul 29 14:37:25 2008 +0900 sh: Fix compile error of Solution Engine When I compiled Solution Engine, this become compile error because plaform device of sh_eth device becomes enable. When sh7710/sh7712 which could use sh_eth was chosen, revised it so that platform device of sh_eth device became enable. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit e542713529e323ff09d7aeb5806cf29f6f160f53 Author: Dan Williams Date: Mon Jul 28 23:28:06 2008 -0700 md: do not count blocked devices as spares remove_and_add_spares() assumes that failed devices have been hot-removed from the array. Removal is skipped in the 'blocked' case so do not count a device in this state as 'spare'. Signed-off-by: Dan Williams commit df10cfbc4d7ab93260d997df754219d390d62a9d Author: Dan Williams Date: Mon Jul 28 23:10:39 2008 -0700 md: do not progress the resync process if the stripe was blocked handle_stripe will take no action on a stripe when waiting for userspace to unblock the array, so do not report completed sectors. Signed-off-by: Dan Williams commit 6de9c6481d47c6da5f8b81f75a5c24c69c366f37 Author: OGAWA Hirofumi Date: Tue Jul 29 09:16:33 2008 +0900 sh: Proper __put_user_asm() size mismatch fix. This fixes up the workaround in 2b4b2bb42137c779ef0084de5df66ff21b4cd86e and cleans up __put_user_asm() to get the sizing right from the onset. Signed-off-by: OGAWA Hirofumi Signed-off-by: Paul Mundt commit d27e0854d5773fffe1a1d475032b715d124325ae Author: Paul Mundt Date: Tue Jul 29 09:15:01 2008 +0900 sh: Stub in a dummy ENTRY_OFFSET for uImage offset calculation. If none is defined, provide a sane default, as we do for the other options. Signed-off-by: Paul Mundt commit b9edb17cc268bc4c6f344264fb9af73f646a02c1 Author: Paul Mundt Date: Tue Jul 29 08:29:32 2008 +0900 sh: Add an arch/sh/kernel/.gitignore Ignore vmlinux.lds. Signed-off-by: Paul Mundt commit cc64f7f70033d6cf18f716c885a7df858ad51766 Author: Paul Mundt Date: Tue Jul 29 08:24:50 2008 +0900 sh: dreamcast: fix build failure from header reorg. Oops, machvec.h is in asm/, it was previously removed due to overzealous trimming. Fix up the path again. Signed-off-by: Paul Mundt commit f15cbe6f1a4b4d9df59142fc8e4abb973302cf44 Author: Paul Mundt Date: Tue Jul 29 08:09:44 2008 +0900 sh: migrate to arch/sh/include/ This follows the sparc changes a439fe51a1f8eb087c22dd24d69cebae4a3addac. Most of the moving about was done with Sam's directions at: http://marc.info/?l=linux-sh&m=121724823706062&w=2 with subsequent hacking and fixups entirely my fault. Signed-off-by: Sam Ravnborg Signed-off-by: Paul Mundt commit 905a09d57afcc49511de18a95605c11ad9c88649 Author: Eric Miao Date: Fri Jun 6 16:34:03 2008 +0800 [ARM] pxa: add support for L2 outer cache on XScale3 (attempt 2) (20072fd0c93349e19527dd2fa9588b4335960e62 lost most of its changes somehow, came from a mbox archive applied with git-am. No idea what happened. This puts back the missing bits. --rmk) The initial patch from Lothar, and Lennert make it into a cleaner one, modified and tested on PXA320 by Eric Miao. This patch moves the L2 cache operations out of proc-xsc3.S into dedicated outer cache support code. CACHE_XSC3L2 can be deselected so no L2 cache specific code will be linked in, and that L2 enable bit will not be set, this applies to the following cases: a. _only_ PXA300/PXA310 support included and no L2 cache wanted b. PXA320 support included, but want L2 be disabled So the enabling of L2 depends on two things: - CACHE_XSC3L2 is selected - and L2 cache is present Where the latter is only a safeguard (previous testing shows it works OK even when this bit is turned on). IXP series of processors with XScale3 cannot disable L2 cache for the moment since they depend on the L2 cache for its coherent memory, so IXP may always select CACHE_XSC3L2. Other L2 relevant bits are always turned on (i.e. the original code enclosed by #if L2_CACHE_ENABLED .. #endif), as they showed no side effects. Specifically, these bits are: - OC bits in TTBASE register (table walk outer cache attributes) - LLR Outer Cache Attributes (OC) in Auxiliary Control Register Signed-off-by: Lothar WaÃ<9f>mann Signed-off-by: Lennert Buytenhek Signed-off-by: Eric Miao Signed-off-by: Russell King commit 25326277d8d1393d1c66240e6255aca780f9e3eb Author: Paul Mundt Date: Tue Jul 29 06:39:26 2008 +0900 video: Kill off leaked CONFIG_FB_SH7343VOU reference. This came in with the SH-Mobile LCDC changes in commit cfb4f5d1750e05f43902197713c50c29e7dfbc99, kill it off. Reported-by: Robert P. J. Day Signed-off-by: Paul Mundt commit 5c806b208b390969a6051543e96bb4eae40554ac Author: Paul Mundt Date: Tue Jul 29 06:34:01 2008 +0900 MAINTAINERS: Switch SUPERH to Supported. Apparently the SH entry ought to be Supported instead of Maintained, given the suble difference in terminology. Though it's been this way for years now, thanks to Renesas. Signed-off-by: Paul Mundt commit 103340cc36384c1afee4453b65a784d8b20d9d8d Author: Paul Mundt Date: Mon Jul 28 22:32:03 2008 +0900 sh: Fix up unaligned current_text_addr(). As noted by Adrian: Commit 3ab83521378268044a448113c6aa9a9e245f4d2f (kexec jump) causes the following build error on sh: <-- snip --> ... CC kernel/kexec.o {standard input}: Assembler messages: {standard input}:1518: Error: offset to unaligned destination make[2]: *** [kernel/kexec.o] Error 1 <-- snip --> If I understand the assembler correctly it fails at include/asm-sh/kexec.h:59 The issue here is that the mova reference lacks an explicit alignment, and previous code paths would end up with this on a 16-bit boundary, so we make the alignment explicit. Reported-by: Adrian Bunk Signed-off-by: Paul Mundt commit 11325f035edba6ba4bc005d2cdebea19d7d8f388 Author: Paul Mundt Date: Mon Jul 28 22:31:43 2008 +0900 sh: rsk7203: update defconfig. Signed-off-by: Paul Mundt commit 6d0b365731682857ecc754163e7c5cb9edaae846 Author: Paul Mundt Date: Mon Jul 28 22:31:02 2008 +0900 sh: rsk7203: Add smc911x platform data. This hooks up platform data for the SMC9118 on the RSK+7203. Signed-off-by: Paul Mundt commit 74deace2f952f7a28d2c516facc9954199881937 Author: Paul Gortmaker Date: Mon Jul 28 14:50:31 2008 -0400 Documentation: remove old sbc8260 board specific information This file contains 8 yr. old board specific information that was for the now gone ppc implementation, and it pre-dates widespread u-boot support. Any of the technical details of the board memory map would be more appropriately captured in a dts if I revive it as powerpc anyway. Signed-off-by: Paul Gortmaker Acked-by: Jason Wessel Signed-off-by: Kumar Gala commit e76e3ac69e62d3f93e935526bc9afa371e7f38ba Merge: 7c89683... 86183a5... Author: Russell King Date: Mon Jul 28 18:45:57 2008 +0100 Merge branch 'for-rmk' of git://pasiphae.extern.pengutronix.de/git/imx/linux-2.6 commit 0e241ffd306c0896bb9959be7faa4d4cfcb706d9 Author: Randy Dunlap Date: Thu Jul 24 16:58:42 2008 -0700 locking: fix mutex @key parameter kernel-doc notation Fix @key parameter to mutex_init() and one of its callers. Warning(linux-2.6.26-git11//drivers/base/class.c:210): No description found for parameter 'key' Signed-off-by: Randy Dunlap Acked-by: Greg Kroah-Hartman Signed-off-by: Ingo Molnar commit 7c896834735f497cc405068d16a51717f993af7f Author: Haavard Skinnemoen Date: Mon Jul 28 16:57:22 2008 +0100 [ARM] 5180/1: at91: Fix at91_nand -> atmel_nand rename fallout struct at91_nand has been renamed atmel_nand. Fix the four boards that were added since the patch was created. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Russell King commit 6ce37a58e334ef773f88283939afc9f4965c7697 Merge: d7ba11d... 91467bd... Author: Ingo Molnar Date: Mon Jul 28 17:19:02 2008 +0200 Merge branch 'x86/crashdump' into x86/urgent commit 0e09c863dbb8b1816ebc106df1a1cae4c588ce0e Author: Dominik Brodowski Date: Mon Jul 28 16:37:10 2008 +0200 pcmcia: rsrc_nonstatic: check value, not pointer Bug found by Harvey Harrison and Stephen Rothwell. Signed-off-by: Dominik Brodowski commit dddb8d311157d054da5441385f681b8cc0e5a94b Author: Laurent Pinchart Date: Tue Jul 22 18:00:43 2008 +0200 cpm2: Rework baud rate generators configuration to support external clocks. The CPM2 BRG setup functions cpm_setbrg and cpm2_fastbrg don't support external clocks. This patch adds a new exported __cpm2_setbrg function that takes the clock rate and clock source as extra parameters, and moves cpm_setbrg and cpm2_fastbrg to include/asm-powerpc/cpm2.h where they become inline wrappers around __cpm2_setbrg. Signed-off-by: Laurent Pinchart Signed-off-by: Kumar Gala commit e517881e427757afc3cce6d76173b1d898b30ab3 Author: Anton Vorontsov Date: Thu Jun 12 03:04:31 2008 +0400 powerpc: rtc_cmos_setup: assign interrupts only if there is i8259 PIC i8259 PIC is disabled on MPC8610HPCD boards, thus currently rtc-cmos driver fails to probe. To fix the issue, we lookup the device tree for "chrp,iic" and "pnpPNP,000" compatible devices, and if not found we do not assign RTC IRQ and assuming that i8259 was disabled. Though this patch fixes RTC on some boards (and surely should not break any other), the whole approach is still broken. We can't easily fix this though, because old device trees do not specify i8259 interrupts for the cmos rtc node. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit 80776554b6c93cf828ddc702010c6a189aa0d0e9 Author: Laurent Pinchart Date: Mon Jul 28 10:42:16 2008 +0200 cpm_uart: Add generic clock API support to set baudrates This patch introduces baudrate setting support via the generic clock API. When present the optional device tree clock property is used instead of fsl-cpm-brg. Platforms can then define complex clock schemes, to output the serial clock on an external pin for instance. Signed-off-by: Laurent Pinchart Signed-off-by: Kumar Gala commit 7485d26b7e13ee8ff82adb271ac90a996c1fe830 Author: Laurent Pinchart Date: Thu Jul 24 18:36:37 2008 +0200 cpm_uart: Modem control lines support This patch replaces the get_mctrl/set_mctrl stubs with modem control line read/write access through the GPIO lib. Available modem control lines are described in the device tree using GPIO bindings. The driver expect a GPIO pin for each of the CTS, RTS, DCD, DSR, DTR and RI signals. Unused control lines can be left out. Signed-off-by: Laurent Pinchart Signed-off-by: Kumar Gala commit dc2380ec8572fcd7f7e9579afc9fb223300d922f Author: Jochen Friedrich Date: Thu Jul 3 02:18:23 2008 +1000 powerpc: implement GPIO LIB API on CPM1 Freescale SoC. This patch implement GPIO LIB support for the CPM1 GPIOs. Signed-off-by: Jochen Friedrich Signed-off-by: Kumar Gala commit e193325e3e3de188ae2aa5207adc7129aacc5c9d Author: Laurent Pinchart Date: Mon Jul 28 10:43:22 2008 +0200 cpm2: Implement GPIO LIB API on CPM2 Freescale SoC. This patch implement GPIO LIB support for the CPM2 GPIOs. The code can also be used for CPM1 GPIO port E, as both cores are compatible at the register level. Based on earlier work by Laurent Pinchart. Signed-off-by: Jochen Friedrich Cc: Laurent Pinchart Signed-off-by: Kumar Gala commit d7ba11d01cfedf63b50391fbe4a05274b6992b43 Author: Joe Perches Date: Sun Jul 27 12:02:04 2008 -0700 x86: remove stray <6> in BogoMIPS printk Rabin Vincent noticed that there's a stray <6> in BogoMIPS printk: > Remove the extra KERN_INFO which causes this: > Calibrating delay loop... <6>179.40 BogoMIPS (lpj=897024) > - printk(KERN_INFO "%lu.%02lu BogoMIPS (lpj=%lu)\n", > - loops_per_jiffy/(500000/HZ), > - (loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy); > + printk("%lu.%02lu BogoMIPS (lpj=%lu)\n", > + loops_per_jiffy/(500000/HZ), > + (loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy); > } How about just using KERN_CONT and leaving the whitespace for a patch that does the entire file? Reported-by: Rabin Vincent commit 86183a5fd0ce67cb28d6e4af4775105edc8872b7 Author: Sascha Hauer Date: Thu Jul 24 23:50:35 2008 +0200 [ARM] add Sascha Hauer as Freescale i.MX Maintainer Signed-off-by: Sascha Hauer commit 79a13b29782e252d4f4e8f6111b978519b876cf7 Author: Paulius Zaleckas Date: Mon Jul 21 18:44:13 2008 +0300 [ARM] i.MX: add missing clock functions exports Export missing Clock API symbols. Signed-off-by: Paulius Zaleckas Signed-off-by: Sascha Hauer commit d7098e31404a25f70f82aa7513e7f5893763576b Author: Paulius Zaleckas Date: Thu Jul 17 19:10:20 2008 +0300 [ARM] i.MX: remove set_imx_fb_info() export Remove not needed export and fix warning: WARNING: vmlinux.o(__ksymtab+0x400): Section mismatch in reference from the variable __ksymtab_set_imx_fb_info to the function .init.text:set_imx_fb_info() The symbol set_imx_fb_info is exported and annotated __init Fix this by removing the __init annotation of set_imx_fb_info or drop the export. Signed-off-by: Paulius Zaleckas Signed-off-by: Sascha Hauer commit 2809fc06f2fc0aac180644cabf9330e50f015bbb Author: Sascha Hauer Date: Fri Jul 18 08:33:26 2008 +0200 [ARM] mx1ads: make mmc platform data available for modules Signed-off-by: Paulius Zaleckas Acked-by: Pavel Pisa Signed-off-by: Sascha Hauer commit 221d62c1882d05fc20163347d7e6af279bdffb8e Author: Sascha Hauer Date: Wed Jul 16 08:46:08 2008 +0200 [ARM] mx2: add missing Kconfig dependency It seems this small label was lost in the last merge. Without it no CPU type is selected for the MX2 family of processors. And a build will fail badly... Signed-off-by: Juergen Beisert Signed-off-by: Sascha Hauer commit 17b6f586b8e27914b36c9ed7f3e4d289e6274a80 Author: David S. Miller Date: Mon Jul 28 00:44:29 2008 -0700 sparc64: Fix global reg snapshotting on self-cpu. We were picking %i7 out of the wrong register window stack slot. Signed-off-by: David S. Miller commit f13fae2d2a9372a5155d20bc9da4c14f02193277 Author: Christoph Hellwig Date: Mon Jul 21 16:16:15 2008 +1000 [XFS] Remove vn_revalidate calls in xfs. These days most of the attributes in struct inode are properly kept in sync by XFS. This patch removes the need for vn_revalidate completely by: - keeping inode.i_flags uptodate after any flags are updated in xfs_ioctl_setattr - keeping i_mode, i_uid and i_gid uptodate in xfs_setattr SGI-PV: 984566 SGI-Modid: xfs-linux-melb:xfs-kern:31679a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 0f285c8a1c4cacfd9f2aec077b06e2b537ee57ab Author: Christoph Hellwig Date: Fri Jul 18 17:13:28 2008 +1000 [XFS] Now that xfs_setattr is only used for attributes set from ->setattr it can be switched to take struct iattr directly and thus simplify the implementation greatly. Also rename the ATTR_ flags to XFS_ATTR_ to not conflict with the ATTR_ flags used by the VFS. SGI-PV: 984565 SGI-Modid: xfs-linux-melb:xfs-kern:31678a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 25fe55e814a2964c7e16d16a5d08cae6e9313a3a Author: Christoph Hellwig Date: Fri Jul 18 17:13:20 2008 +1000 [XFS] xfs_setattr currently doesn't just handle the attributes set through ->setattr but also addition XFS-specific attributes: project id, inode flags and extent size hint. Having these in a single function makes it more complicated and forces to have us a bhv_vattr intermediate structure eating up stackspace. This patch adds a new xfs_ioctl_setattr helper for the XFS ioctls that set these attributes and remove the code to set them through xfs_setattr. SGI-PV: 984564 SGI-Modid: xfs-linux-melb:xfs-kern:31677a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit c032bfcf468013643e05c8274824af10dd7cbb61 Author: Lachlan McIlroy Date: Fri Jul 18 17:13:12 2008 +1000 [XFS] fix use after free with external logs or real-time devices SGI-PV: 983806 SGI-Modid: xfs-linux-melb:xfs-kern:31666a Signed-off-by: Lachlan McIlroy Signed-off-by: Christoph Hellwig commit 6a617dd22bdbf5a4c9828db98c1a8b076c9e95c8 Author: Tim Shimmin Date: Fri Jul 18 17:13:04 2008 +1000 [XFS] A bug was found in xfs_bmap_add_extent_unwritten_real(). In a particular case, the delta param which is supposed to describe the region where extents have changed was not updated appropriately. SGI-PV: 984030 SGI-Modid: xfs-linux-melb:xfs-kern:31663a Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy Signed-off-by: Olaf Weber commit 766b0925c07cd363c17ff54ebf59b6d34d8042d5 Author: Christoph Hellwig Date: Fri Jul 18 17:12:50 2008 +1000 [XFS] fix compilation without CONFIG_PROC_FS SGI-PV: 984019 SGI-Modid: xfs-linux-melb:xfs-kern:31408a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 26cc0021805e66daa6342174fb5a8c1c862f7c8e Author: Christoph Hellwig Date: Fri Jul 18 17:12:43 2008 +1000 [XFS] s/XFS_PURGE_INODE/IRELE/g s/VN_HOLD(XFS_ITOV())/IHOLD()/ SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31405a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 62a877e35d5085c65936ed3194d1bbaf84f419e1 Author: Christoph Hellwig Date: Fri Jul 18 17:12:36 2008 +1000 [XFS] fix mount option parsing in remount Remount currently happily accept any option thrown at it, although the only filesystem specific option it actually handles is barrier/nobarrier. And it actually doesn't handle these correctly either because it only uses the value it parsed when we're doing a ro->rw transition. In addition to that there's also a bad bug in xfs_parseargs which doesn't touch the actual option in the mount point except for a single one, XFS_MOUNT_SMALL_INUMS and thus forced any filesystem that's every remounted in some way to not support 64bit inodes with no way to recover unless unmounted. This patch changes xfs_fs_remount to use it's own linux/parser.h based options parse instead of xfs_parseargs and reject all options except for barrier/nobarrier and to the right thing in general. Eventually I'd like to have a single big option table used for mount aswell but that can wait for a while. SGI-PV: 983964 SGI-Modid: xfs-linux-melb:xfs-kern:31382a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit deeb5912db12e8b7ccf3f4b1afaad60bc29abed9 Author: Eric Sandeen Date: Fri Jul 18 17:12:18 2008 +1000 [XFS] Disable queue flag test in barrier check. md raid1 can pass down barriers, but does not set an ordered flag on the queue, so xfs does not even attempt a barrier write, and will never use barriers on these block devices. Remove the flag check and just let the barrier write test determine barrier support. A possible risk here is that if something does not set an ordered flag and also does not properly return an error on a barrier write... but if it's any consolation jbd/ext3/reiserfs never test the flag, and don't even do a test write, they just disable barriers the first time an actual journal barrier write fails. SGI-PV: 983924 SGI-Modid: xfs-linux-melb:xfs-kern:31377a Signed-off-by: Eric Sandeen Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 9f8868ffb39c2f80ba69df4552cb530b6634f646 Author: Christoph Hellwig Date: Fri Jul 18 17:11:46 2008 +1000 [XFS] streamline init/exit path Currently the xfs module init/exit code is a mess. It's farmed out over a lot of function with very little error checking. This patch makes sure we propagate all initialization failures properly and clean up after them. Various runtime initializations are replaced with compile-time initializations where possible to make this easier. The exit path is similarly consolidated. There's now split out function to create/destroy the kmem zones and alloc/free the trace buffers. I've also changed the ktrace allocations to KM_MAYFAIL and handled errors resulting from that. And yes, we really should replace the XFS_*_TRACE ifdefs with a single XFS_TRACE.. SGI-PV: 976035 SGI-Modid: xfs-linux-melb:xfs-kern:31354a Signed-off-by: Christoph Hellwig Signed-off-by: Niv Sardi Signed-off-by: Lachlan McIlroy commit 136f8f21b6d564f553abe6130127d16fb50432d3 Author: Tim Shimmin Date: Fri Jun 27 13:34:42 2008 +1000 [XFS] Fix up problem when CONFIG_XFS_POSIX_ACL is not set and yet we still can use the _ACL_TYPE_* definitions in linux-2.6/xfs_xattr.c. The forthcoming generic acl code will also fix this problem. SGI-PV: 982343 SGI-Modid: xfs-linux-melb:xfs-kern:31369a Signed-off-by: Tim Shimmin Signed-off-by: Christoph Hellwig Signed-off-by: Lachlan McIlroy commit 2edbddd5f46cc123b68c11179115041c54759fa2 Author: Lachlan McIlroy Date: Fri Jun 27 13:34:34 2008 +1000 [XFS] Don't assert if trying to mount with blocksize > pagesize If we don't do the blocksize/PAGESIZE check before calling xfs_sb_validate_fsb_count() we can assert if we try to mount with a blocksize > pagesize. The assert is valid so leave it and just move the blocksize/pagesize check earlier. SGI-PV: 983734 SGI-Modid: xfs-linux-melb:xfs-kern:31365a Signed-off-by: Lachlan McIlroy Signed-off-by: David Chinner commit 8f8670bb1cfa177d35c54e4cc96152dc425a7ab3 Author: Christoph Hellwig Date: Fri Jun 27 13:34:26 2008 +1000 [XFS] Don't update mtime on rename source As reported by Michael-John Turner XFS updates the mtime on the source inode of a rename call in case it's a directory and changes the parent. This doesn't make any sense, is not mentioned in the standards and not performed by any other Linux filesystems so remove it. SGI-PV: 983684 SGI-Modid: xfs-linux-melb:xfs-kern:31364a Signed-off-by: Christoph Hellwig Signed-off-by: Barry Naujok Signed-off-by: Lachlan McIlroy commit 313b5c767a044c7a0db5e773cb7aea70383b2627 Author: Lachlan McIlroy Date: Fri Jun 27 13:33:11 2008 +1000 [XFS] Allow xfs_bmbt_split() to fallback to the lowspace allocator algorithm If xfs_bmbt_split() cannot find an AG with sufficient free space to satisfy a full extent btree split then fall back to the lowspace allocator algorithm. SGI-PV: 983338 SGI-Modid: xfs-linux-melb:xfs-kern:31359a Signed-off-by: Lachlan McIlroy Signed-off-by: David Chinner commit b877e3d37dda0154868a3c78f02f38a1ec14ce79 Author: Lachlan McIlroy Date: Fri Jun 27 13:33:03 2008 +1000 [XFS] Restore the lowspace extent allocator algorithm When free space is running low the extent allocator may choose to allocate an extent from an AG without leaving sufficient space for a btree split when inserting the new extent (see where xfs_bmap_btalloc() sets minleft to 0). In this case the allocator will enable the lowspace algorithm which is supposed to allow further allocations (such as btree splits and newroots) to allocate from sequential AGs. This algorithm has been broken for a long time and this patch restores its behaviour. SGI-PV: 983338 SGI-Modid: xfs-linux-melb:xfs-kern:31358a Signed-off-by: Lachlan McIlroy Signed-off-by: David Chinner commit 4ddd8bb1d25f9cbb345e1f64a56c0f641a787ede Author: Lachlan McIlroy Date: Fri Jun 27 13:32:53 2008 +1000 [XFS] use minleft when allocating in xfs_bmbt_split() The bmap btree split code relies on a previous data extent allocation (from xfs_bmap_btalloc()) to find an AG that has sufficient space to perform a full btree split, when inserting the extent. When converting unwritten extents we don't allocate a data extent so a btree split will be the first allocation. In this case we need to set minleft so the allocator will pick an AG that has space to complete the split(s). SGI-PV: 983338 SGI-Modid: xfs-linux-melb:xfs-kern:31357a Signed-off-by: Lachlan McIlroy Signed-off-by: David Chinner commit e182f57ac019b034b40d16f3c6d8e86826aecd56 Author: Christoph Hellwig Date: Fri Jun 27 13:32:31 2008 +1000 [XFS] attrmulti cleanup xfs_attrmulti_by_handle currently request the size based on sizeof(attr_multiop_t) but should be using sizeof(xfs_attr_multiop_t) because that is what it is dealing with. Despite beeing wrong this actually harmless in practice because both structures are the same size on all platforms. But this sizeof was the only user of struct attr_multiop so we can just kill it. Also move the ATTR_OP_* defines xfs_attr.h into the struct xfs_attr_multiop defintion in xfs_fs.h because they are only used with that structure, and are part of the user ABI for the XFS_IOC_ATTRMULTI_BY_HANDLE ioctl. SGI-PV: 983508 SGI-Modid: xfs-linux-melb:xfs-kern:31352a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 90ad58a83accbeb8de09de4a55d3e6b429767eae Author: Christoph Hellwig Date: Fri Jun 27 13:32:19 2008 +1000 [XFS] Check for invalid flags in xfs_attrlist_by_handle. xfs_attrlist_by_handle should only take the ATTR_ flags for the root namespaces. The ATTR_KERN* flags may change at anytime and expect special preconditions that can't be guaranteed for userspace-originating requests. For example passing down ATTR_KERNNOVAL through xfs_attrlist_by_handle will hit an assert in debug builds currently. SGI-PV: 983677 SGI-Modid: xfs-linux-melb:xfs-kern:31351a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 07fe4dd48d046feeff8705a2a224a8fba050b1c6 Author: Barry Naujok Date: Fri Jun 27 13:32:11 2008 +1000 [XFS] Fix CI lookup in leaf-form directories Instead of comparing buffer pointers, compare buffer block numbers and don't keep buff SGI-PV: 983564 SGI-Modid: xfs-linux-melb:xfs-kern:31346a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig Signed-off-by: Lachlan McIlroy commit f9e09f095f323948b26ba09638d2eb3b0578d094 Author: Lachlan McIlroy Date: Mon Jun 23 13:34:09 2008 +1000 [XFS] Use the generic xattr methods. Add missing file fs/xfs/linux-2.6/xfs_xattr.c SGI-PV: 982343 SGI-Modid: xfs-linux-melb:xfs-kern:31234a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit ddea2d5246b4ffbe49bbfb700aa3dbe717eb0915 Author: Lachlan McIlroy Date: Mon Jun 23 13:25:53 2008 +1000 [XFS] Always reset btree cursor after an insert After a btree insert operation a cursor can be invalid due to block splits and a maybe a new root block. We reset the cursor in xfs_bmbt_insert() in the cases where we think we need to but it isn't enough as we still see assertions. Just do what we do elsewhere and reset the cursor unconditionally. Also remove the fix to revalidate the original cursor in xfs_bmbt_insert(). SGI-PV: 983336 SGI-Modid: xfs-linux-melb:xfs-kern:31342a Signed-off-by: Lachlan McIlroy Signed-off-by: David Chinner commit 6bd8fc8a55cba263bab0b1c24786e95c5a2dc720 Author: Lachlan McIlroy Date: Mon Jun 23 13:25:46 2008 +1000 [XFS] Convert ASSERTs to XFS_WANT_CORRUPTED_GOTOs ASSERTs are no good to us on a non-debug build so use XFS_WANT_CORRUPTED_GOTOs to report extent btree corruption ASAP. SGI-PV: 983500 SGI-Modid: xfs-linux-melb:xfs-kern:31338a Signed-off-by: Lachlan McIlroy Signed-off-by: Christoph Hellwig commit 90bb7ab077a63facbe3aa0b9e3763a0cb956a4c1 Author: Barry Naujok Date: Mon Jun 23 13:25:38 2008 +1000 [XFS] Fix returning case-preserved name with CI node form directories xfs_dir2_node_lookup() calls xfs_da_node_lookup_int() which iterates through leaf blocks containing the matching hash value for the name being looked up. Inside xfs_da_node_lookup_int(), it calls the xfs_dir2_leafn_lookup_for_entry() for each leaf block. xfs_dir2_leafn_lookup_for_entry() iterates through each matching hash/offset pair doing a name comparison to find the matching dirent. For CI mode, the state->extrablk retains the details of the block that has the CI match so xfs_dir2_node_lookup() can return the case-preserved name. The original implementation didn't retain the xfs_da_buf_t properly, so the lookup was returning a bogus name to be stored in the dentry. In the case of unlink, the bad name was passed and in debug mode, ASSERTed when it can't find the entry. SGI-PV: 983284 SGI-Modid: xfs-linux-melb:xfs-kern:31337a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig Signed-off-by: Lachlan McIlroy commit e5700704b2b0853c059e424284cceeff3032ea28 Author: Christoph Hellwig Date: Mon Jun 23 13:25:25 2008 +1000 [XFS] Don't update i_size for directories and special files The core kernel uses vfs_getattr to look at the inode size and similar attributes, so there is no need to keep i_size uptodate for directories or special files. This means we can remove xfs_validate_fields because the I/O path already keeps i_size uptodate for regular files. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31336a Signed-off-by: Christoph Hellwig Signed-off-by: Barry Naujok Signed-off-by: Lachlan McIlroy commit 8f112e3bc3508afc8d1612868d178359446c08fd Author: Christoph Hellwig Date: Mon Jun 23 13:25:17 2008 +1000 [XFS] Merge xfs_rmdir into xfs_remove xfs_remove and xfs_rmdir are almost the same with a little more work performed in xfs_rmdir due to the . and .. entries. This patch merges xfs_rmdir into xfs_remove and performs these actions conditionally. Also clean up the error handling which was a nightmare in both versions before. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31335a Signed-off-by: Christoph Hellwig Signed-off-by: Barry Naujok Signed-off-by: Lachlan McIlroy commit 61f10fad1947116055c694321d9d8f21152c0582 Author: Tim Shimmin Date: Mon Jun 23 13:25:09 2008 +1000 [XFS] Fix up warning for xfs_vn_listxatt's call of list_one_attr() with context count of ssize_t versus int. Change context count to be ssize_t. SGI-PV: 983395 SGI-Modid: xfs-linux-melb:xfs-kern:31333a Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 6278debdf95b100a516b803f90d6f11b41c34171 Author: Lachlan McIlroy Date: Mon Jun 23 13:25:02 2008 +1000 [XFS] fix extent corruption in xfs_iext_irec_compact_full() This function is used to compact the indirect extent list by moving extents from one page to the previous to fill them up. After we move some extents to an earlier page we need to shuffle the remaining extents to the start of the page. The actual bug here is the second argument to memmove() needs to index past the extents, that were copied to the previous page, and move the remaining extents. For pages that are already full (ie ext_avail == 0) the compaction code has no net effect so don't do it. SGI-PV: 983337 SGI-Modid: xfs-linux-melb:xfs-kern:31332a Signed-off-by: Lachlan McIlroy Signed-off-by: Christoph Hellwig commit 7f871d5d1b9b126c1a0cece737a37c6980c988e3 Author: Lachlan McIlroy Date: Mon Jun 23 13:23:57 2008 +1000 [XFS] make inode reclaim wait for log I/O to complete During a forced shutdown a xfs inode can be destroyed before log I/O involving that inode is complete. We need to wait for the inode to be unpinned before tearing it down. Version 2 cleans up the code a bit by relying on xfs_iflush() to do the unpinning and forced shutdown check. SGI-PV: 981240 SGI-Modid: xfs-linux-melb:xfs-kern:31326a Signed-off-by: Lachlan McIlroy Signed-off-by: David Chinner commit ad9b463aa206b8c8f0bab378cf7c090c1a9a8e34 Author: Christoph Hellwig Date: Mon Jun 23 13:23:48 2008 +1000 [XFS] Switches xfs_vn_listxattr to set it's put_listent callback directly and not go through xfs_attr_list. SGI-PV: 983395 SGI-Modid: xfs-linux-melb:xfs-kern:31324a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit caf8aabdbc6849de772850d26d3dbe35e8f63bff Author: Christoph Hellwig Date: Mon Jun 23 13:23:41 2008 +1000 [XFS] Factor out code for whether inode has attributes or not. SGI-PV: 983394 SGI-Modid: xfs-linux-melb:xfs-kern:31323a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit ae23a5e87dbbf4657a82e1ff8ebc52ab50361c14 Author: Eric Sandeen Date: Mon Jun 23 13:23:32 2008 +1000 [XFS] Pack some shortform dir2 structures for the ARM old ABI architecture. This should fix the longstanding issues with xfs and old ABI arm boxes, which lead to various asserts and xfs shutdowns, and for which an (incorrect) patch has been floating around for years. I've verified this patch by comparing the on-disk structure layouts using pahole from the dwarves package, as well as running through a bit of xfsqa under qemu-arm, modified so that the check/repair phase after each test actually executes check/repair from the x86 host, on the filesystem populated by the arm emulator. Thus far it all looks good. There are 2 other structures with extra padding at the end, but they don't seem to cause trouble. I suppose they could be packed as well: xfs_dir2_data_unused_t and xfs_dir2_sf_t. Note that userspace needs a similar treatment, and any filesystems which were running with the previous rogue "fix" will now see corruption (either in the kernel, or during xfs_repair) with this fix properly in place; it may be worth teaching xfs_repair to identify and fix that specific issue. SGI-PV: 982930 SGI-Modid: xfs-linux-melb:xfs-kern:31280a Signed-off-by: Eric Sandeen Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit 0ec585163ac81e329bde25fb6311a043a1c63952 Author: Lachlan McIlroy Date: Mon Jun 23 13:23:01 2008 +1000 [XFS] Use the generic xattr methods. Use the generic set, get and removexattr methods and supply the s_xattr array with fine-grained handlers. All XFS/Linux highlevel attr handling is rewritten from scratch and placed into fs/xfs/linux-2.6/xfs_xattr.c so that it's separated from the generic low-level code. SGI-PV: 982343 SGI-Modid: xfs-linux-melb:xfs-kern:31234a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit d532506cd8b59543b376e155508f88a03a81dad1 Author: Barry Naujok Date: Mon Jun 16 12:07:41 2008 +1000 [XFS] Invalidate dentry in unlink/rmdir if in case-insensitive mode The vfs_unlink/d_delete functionality in the Linux VFS make the dentry negative if it is the only inode being referenced. Case-insensitive mode doesn't work with negative dentries, so if using CI-mode, invalidate the dentry on unlink/rmdir. SGI-PV: 983102 SGI-Modid: xfs-linux-melb:xfs-kern:31308a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 87affd08bc9c741b99053cabb908cf54a135a0fa Author: Barry Naujok Date: Tue Jun 3 11:59:18 2008 +1000 [XFS] Zero uninitialised xfs_da_args structure in xfs_dir2.c Fixes a problem in the xfs_dir2_remove and xfs_dir2_replace paths which intenally call directory format specific lookup funtions that assume args->cmpresult is zeroed. SGI-PV: 982606 SGI-Modid: xfs-linux-melb:xfs-kern:31268a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 866d5dc974682c6247d5fde94dbc6545f864e7d7 Author: Barry Naujok Date: Thu May 22 17:21:40 2008 +1000 [XFS] Remove d_add call for an ENOENT lookup return code SGI-PV: 981521 SGI-Modid: xfs-linux-melb:xfs-kern:31214a Signed-off-by: Barry Naujok Signed-off-by: David Chinner commit d3689d7687dbbc46c5004557d53349f6952fbc93 Author: Barry Naujok Date: Wed May 21 18:38:40 2008 +1000 [XFS] kmem_free and kmem_realloc to use const void * SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31212a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 189f4bf22bdc3c2402b038016d11fd3cb1c89f07 Author: Barry Naujok Date: Wed May 21 16:58:55 2008 +1000 [XFS] XFS: ASCII case-insensitive support Implement ASCII case-insensitive support. It's primary purpose is for supporting existing filesystems that already use this case-insensitive mode migrated from IRIX. But, if you only need ASCII-only case-insensitive support (ie. English only) and will never use another language, then this mode is perfectly adequate. ASCII-CI is implemented by generating hashes based on lower-case letters and doing lower-case compares. It implements a new xfs_nameops vector for doing the hashes and comparisons for all filename operations. To create a filesystem with this CI mode, use: # mkfs.xfs -n version=ci SGI-PV: 981516 SGI-Modid: xfs-linux-melb:xfs-kern:31209a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 384f3ced07efdddf6838f6527366089d37843c94 Author: Barry Naujok Date: Wed May 21 16:58:22 2008 +1000 [XFS] Return case-insensitive match for dentry cache This implements the code to store the actual filename found during a lookup in the dentry cache and to avoid multiple entries in the dcache pointing to the same inode. To avoid polluting the dcache, we implement a new directory inode operations for lookup. xfs_vn_ci_lookup() stores the correct case name in the dcache. The "actual name" is only allocated and returned for a case- insensitive match and not an actual match. Another unusual interaction with the dcache is not storing negative dentries like other filesystems doing a d_add(dentry, NULL) when an ENOENT is returned. During the VFS lookup, if a dentry returned has no inode, dput is called and ENOENT is returned. By not doing a d_add, this actually removes it completely from the dcache to be reused. create/rename have to be modified to support unhashed dentries being passed in. SGI-PV: 981521 SGI-Modid: xfs-linux-melb:xfs-kern:31208a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 9403540c0653122ca34884a180439ddbfcbcb524 Author: Barry Naujok Date: Wed May 21 16:50:46 2008 +1000 dcache: Add case-insensitive support d_ci_add() routine This add a dcache entry to the dcache for lookup, but changing the name that is associated with the entry rather than the one passed in to the lookup routine. First, it sees if the case-exact match already exists in the dcache and uses it if one exists. Otherwise, it allocates a new node with the new name and splices it into the dcache. Original code from ntfs_lookup in fs/ntfs/namei.c by Anton Altaparmakov. Signed-off-by: Barry Naujok Signed-off-by: Anton Altaparmakov Acked-by: Christoph Hellwig commit 6a178100abf01282eb697ab62b6086b2886dfc00 Author: Barry Naujok Date: Wed May 21 16:42:05 2008 +1000 [XFS] Add op_flags field and helpers to xfs_da_args The end of the xfs_da_args structure has 4 unsigned char fields for true/false information on directory and attr operations using the xfs_da_args structure. The following converts these 4 into a op_flags field that uses the first 4 bits for these fields and allows expansion for future operation information (eg. case-insensitive lookup request). SGI-PV: 981520 SGI-Modid: xfs-linux-melb:xfs-kern:31206a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 5163f95a08cbf058ae16452c2242c5600fedc32e Author: Barry Naujok Date: Wed May 21 16:41:01 2008 +1000 [XFS] Name operation vector for hash and compare Adds two pieces of functionality for the basis of case-insensitive support in XFS: 1. A comparison result enumerated type: xfs_dacmp. It represents an exact match, case-insensitive match or no match at all. This patch only implements different and exact results. 2. xfs_nameops vector for specifying how to perform the hash generation of filenames and comparision methods. In this patch the hash vector points to the existing xfs_da_hashname function and the comparison method does a length compare, and if the same, does a memcmp and return the xfs_dacmp result. All filename functions that use the hash (create, lookup remove, rename, etc) now use the xfs_nameops.hashname function and all directory lookup functions also use the xfs_nameops.compname function. The lookup functions also handle case-insensitive results even though the default comparison function cannot return that. And important aspect of the lookup functions is that an exact match always has precedence over a case-insensitive. So while a case-insensitive match is found, we have to keep looking just in case there is an exact match. In the meantime, the info for the first case-insensitive match is retained if no exact match is found. SGI-PV: 981519 SGI-Modid: xfs-linux-melb:xfs-kern:31205a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig commit 68f34d5107dbace3d14a1c2f060fc8941894879c Author: Eric Sandeen Date: Tue May 20 15:11:17 2008 +1000 [XFS] de-duplicate calls to xfs_attr_trace_enter Every call to xfs_attr_trace_enter() shares the exact same 16 args in the middle... just send in the context pointer and let the next level down split it into the ktrace. Compile tested only. SGI-PV: 976035 SGI-Modid: xfs-linux-melb:xfs-kern:31200a Signed-off-by: Eric Sandeen Signed-off-by: Niv Sardi Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Lachlan McIlroy commit 120226c11a6277d3e761393f0995c55218fabebb Author: Christoph Hellwig Date: Tue May 20 15:11:11 2008 +1000 [XFS] add missing call to xfs_filestream_unmount on xfs_mountfs failure SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31199a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit effa2eda3ab9c013585349b8afd305dc5decf771 Author: Christoph Hellwig Date: Tue May 20 15:11:05 2008 +1000 [XFS] rename error2 goto label in xfs_fs_fill_super SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31198a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 95db4e21b72603217f0bcafa4da9ee01fc1d2389 Author: Christoph Hellwig Date: Tue May 20 15:10:58 2008 +1000 [XFS] kill calls to xfs_binval in the mount error path xfs_binval aka xfs_flush_buftarg is the first thing done in xfs_free_buftarg, so there is no need to have duplicated calls just before xfs_free_buftarg in the mount failure path. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31197a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit c962fb7902669a48a2c613649c1f03865c0ffd1e Author: Christoph Hellwig Date: Tue May 20 15:10:52 2008 +1000 [XFS] kill xfs_mount_init xfs_mount_init is inlined into xfs_fs_fill_super and allocation switched to kzalloc. Plug a leak of the mount structure for most early mount failures. Move xfs_icsb_init_counters to as late as possible in the mount path and make sure to undo it so that no stale hotplug cpu notifiers are left around on mount failures. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31196a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit bdd907bab78419f34113c51470192945741b839e Author: Christoph Hellwig Date: Tue May 20 15:10:44 2008 +1000 [XFS] allow xfs_args_allocate to fail Switch xfs_args_allocate to kzalloc and handle failures. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31195a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit e34b562c6bbffc3c466251ffa1d2adaf163db566 Author: Christoph Hellwig Date: Tue May 20 15:10:36 2008 +1000 [XFS] add xfs_setup_devices helper Split setting the block and sector size out of xfs_fs_fill_super into a small helper to make xfs_fs_fill_super more readable. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31194a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 19f354d4c3f4c48bf6b2a86227d8e3050e5f7d50 Author: Christoph Hellwig Date: Tue May 20 11:31:13 2008 +1000 [XFS] sort out opening and closing of the block devices Currently closing the rt/log block device is done in the wrong spot, and far too early. So revampt it: - xfs_blkdev_put moved out of xfs_free_buftarg into the caller so that it is done after tearing down the buftarg completely. - call to xfs_unmountfs_close moved from xfs_mountfs into caller so that it's done after tearing down the filesystem completely. - xfs_unmountfs_close is renamed to xfs_close_devices and made static in xfs_super.c - opening of the block devices is split into a helper xfs_open_devices that is symetric in use to xfs_close_devices - xfs_unmountfs can now lose struct cred - error handling around device opening sanitized in xfs_fs_fill_super SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31193a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit af15b8953a60d336aade96a2c162abffdba75ec9 Author: Christoph Hellwig Date: Tue May 20 11:31:05 2008 +1000 [XFS] don't call xfs_freesb from xfs_mountfs failure case Freeing of the superblock is already handled in the caller, and that is more symmetric with the mount path, too. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31192a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit f8f15e42b408edce6ca9e9d8bd0d0e2078a39efd Author: Christoph Hellwig Date: Tue May 20 11:30:59 2008 +1000 [XFS] merge xfs_mount into xfs_fs_fill_super xfs_mount is already pretty linux-specific so merge it into xfs_fs_fill_super to allow for a more structured mount code in the next patches. xfs_start_flags and xfs_finish_flags also move to xfs_super.c. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31189a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit e48ad3160e5c5f5b952c7a7ed814f6f289a60100 Author: Christoph Hellwig Date: Tue May 20 11:30:52 2008 +1000 [XFS] merge xfs_unmount into xfs_fs_put_super / xfs_fs_fill_super xfs_unmount is small and already pretty Linux specific, so merge it into the callers. The real unmount path is simplified a little by doing a WARN_ON on the xfs_unmount_flush retval directly instead of propagating the error back to the caller, and the mout failure case in simplified significantly by removing the forced shutdown case and all the dmapi events that shouldn't be sent because the dmapi mount event hasn't been sent by that time either. SGI-PV: 981951 SGI-Modid: xfs-linux-melb:xfs-kern:31188a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 61436febae29085bffc7c291db03cbd709dc68a3 Author: Christoph Hellwig Date: Tue May 20 11:30:46 2008 +1000 [XFS] kill xfs_igrow_start and xfs_igrow_finish xfs_igrow_start just expands to xfs_zero_eof with two asserts that are useless in the context of the only caller and some rather confusing comments. xfs_igrow_finish is just a few lines of code decorated again with useless asserts and confusing comments. Just kill those two and merge them into xfs_setattr. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31186a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 48b62a1a97f118a5a71ae9222bc6d3481d6b757b Author: Christoph Hellwig Date: Tue May 20 11:30:39 2008 +1000 [XFS] merge xfs_mntupdate into xfs_fs_remount xfs_mntupdate already is completely Linux specific due to the VFS flags passed in, so it might aswell be merged into xfs_fs_remount. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31185a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit fa6adbe08825274a3803abb9aef365f939be7da5 Author: Christoph Hellwig Date: Tue May 20 11:30:33 2008 +1000 [XFS] kill xfs_uuid_unmount Quite useless wrapper that doesn't help making the code more readable. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31184a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 4b166de0a061e4e89d0741a5d080b141f11e2c9b Author: David Chinner Date: Tue May 20 11:30:27 2008 +1000 [XFS] Update valid fields in xfs_mount_log_sb() Recent changes to update the version number during mount (attr2 stuff) failed to change the assert that checked for calid flags being changed on mount. Clearly this path hasn't been exercised by the test code.... SGI-PV: 981950 SGI-Modid: xfs-linux-melb:xfs-kern:31183a Signed-off-by: David Chinner Signed-off-by: Eric Sandeen Signed-off-by: Lachlan McIlroy commit 911ee3de3d1cb6620e2ac4e0678ff434867e2644 Author: Christoph Hellwig Date: Mon May 19 16:34:34 2008 +1000 [XFS] Kill attr_capable checks as already done in xattr_permission. No need for addition permission checks in the xattr handler, fs/xattr.c:xattr_permission() already does them, and in fact slightly more strict then what was in the attr_capable handlers. SGI-PV: 981809 SGI-Modid: xfs-linux-melb:xfs-kern:31164a Signed-off-by: Christoph Hellwig Signed-off-by: Tim Shimmin Signed-off-by: Lachlan McIlroy commit d748c62367eb630cc30b91d561a5362f597a0892 Author: Matthew Wilcox Date: Mon May 19 16:34:27 2008 +1000 [XFS] Convert l_flushsema to a sv_t The l_flushsema doesn't exactly have completion semantics, nor mutex semantics. It's used as a list of tasks which are waiting to be notified that a flush has completed. It was also being used in a way that was potentially racy, depending on the semaphore implementation. By using a sv_t instead of a semaphore we avoid the need for a separate counter, since we know we just need to wake everything on the queue. Original waitqueue implementation from Matthew Wilcox. Cleanup and conversion to sv_t by Christoph Hellwig. SGI-PV: 981507 SGI-Modid: xfs-linux-melb:xfs-kern:31059a Signed-off-by: Matthew Wilcox Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit d729eae8933cb3eb8edf1446532c178b66b293a9 Author: Michael Nishimoto Date: Mon May 19 16:34:20 2008 +1000 [XFS] Ensure that 2 GiB xfs logs work properly. We found this while experimenting with 2GiB xfs logs. The previous code never assumed that xfs logs would ever get so large. SGI-PV: 981502 SGI-Modid: xfs-linux-melb:xfs-kern:31058a Signed-off-by: Michael Nishimoto Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit b41759cf11c84ad0d569c0ef200c449ad2cc24e3 Author: Denys Vlasenko Date: Mon May 19 16:34:11 2008 +1000 [XFS] Remove unused wbc parameter from xfs_start_page_writeback() SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31057a Signed-off-by: Denys Vlasenko Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 4f0e8a9816e78306bb821018613dbd2513184d8a Author: Denys Vlasenko Date: Mon May 19 16:34:04 2008 +1000 [XFS] Remove unused Falgs parameter from xfs_qm_dqpurge() SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31056a Signed-off-by: Denys Vlasenko Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit f0e2d93c29dc39ffd24cac180a19d48f700c0706 Author: Denys Vlasenko Date: Mon May 19 16:31:57 2008 +1000 [XFS] Remove unused arg from kmem_free() kmem_free() function takes (ptr, size) arguments but doesn't actually use second one. This patch removes size argument from all callsites. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31050a Signed-off-by: Denys Vlasenko Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit 7c12f296500e1157872ef45b3f3bb06b4b73f1c1 Author: Tim Shimmin Date: Wed Apr 30 18:15:28 2008 +1000 [XFS] Fix up noattr2 so that it will properly update the versionnum and features2 fields. Previously, mounting with noattr2 failed to achieve anything because although it cleared the attr2 mount flag, it would set it again as soon as it processed the superblock fields. The fix now has an explicit noattr2 flag and uses it later to fix up the versionnum and features2 fields. SGI-PV: 980021 SGI-Modid: xfs-linux-melb:xfs-kern:31003a Signed-off-by: Tim Shimmin Signed-off-by: Christoph Hellwig Signed-off-by: Lachlan McIlroy commit f9f6dce01905179d9a209cc1e69fe9047736c112 Author: Barry Naujok Date: Thu Apr 17 16:49:43 2008 +1000 [XFS] Split xfs_dir2_leafn_lookup_int into its two pieces of functionality SGI-PV: 976035 SGI-Modid: xfs-linux-melb:xfs-kern:30834a Signed-off-by: Barry Naujok Signed-off-by: Christoph Hellwig Signed-off-by: Lachlan McIlroy commit 00b32b7fb671e797bdd2736524a497f18a8df7bf Author: Theodore Ts'o Date: Sat Jul 26 17:33:53 2008 -0400 ext4: unexport jbd2_journal_update_superblock Remove the unused EXPORT_SYMBOL(jbd2_journal_update_superblock). Signed-off-by: Adrian Bunk Signed-off-by: "Theodore Ts'o" commit 2b2d6d019724de6e51ac5bcf22b5ef969daefa8b Author: Theodore Ts'o Date: Sat Jul 26 16:15:44 2008 -0400 ext4: Cleanup whitespace and other miscellaneous style issues Signed-off-by: "Theodore Ts'o" commit 4c920de37d29284d4cb65d76a97a567247c2ac32 Author: Kumar Gala Date: Sat Jul 26 12:55:09 2008 -0500 powerpc: Fix 8xx build failure The 'powerpc ioremap_prot' broke 8xx builds: include2/asm/pgtable-ppc32.h:555: error: '_PAGE_WRITETHRU' undeclared (first use in this function) include2/asm/pgtable-ppc32.h:555: error: (Each undeclared identifier is reported only once include2/asm/pgtable-ppc32.h:555: error: for each function it appears in.) Signed-off-by: Kumar Gala commit 0b21bb49187a863e3fc3c4f3356baf03578a9d1a Author: Kumar Gala Date: Fri Jul 25 14:22:02 2008 -0500 powerpc: clean up the Book-E HW watchpoint support * CONFIG_BOOKE is selected by CONFIG_44x so we dont need both * Fixed a few comments * Go back to only using DBCR0_IDM to determine if we are using debug resources. Signed-off-by: Kumar Gala commit ec05e868ac80cc8fc7de6e5cf773b232198e49af Author: Li Zefan Date: Thu Jul 24 12:49:59 2008 -0400 ext4: improve ext4_fill_flex_info() a bit - use kzalloc() instead of kmalloc() + memset() - improve a printk info Signed-off-by: Li Zefan Signed-off-by: Theodore Ts'o commit ac0a2d0c8ab18045ab217339a71e76c76e186ede Author: Lennert Buytenhek Date: Tue Jul 15 12:26:16 2008 +0200 mv643xx_eth: bump version to 1.2 Signed-off-by: Lennert Buytenhek commit e32b66175072d75bde1ddca4227a6723ca17e0af Author: Lennert Buytenhek Date: Thu Jul 24 06:22:59 2008 +0200 mv643xx_eth: enable hardware TX checksumming with vlan tags Although mv643xx_eth has no hardware support for inserting a vlan tag by twiddling some bits in the TX descriptor, it does support hardware TX checksumming on packets where the IP header starts {a limited set of values other than 14} bytes into the packet. This patch sets mv643xx_eth's ->vlan_features to NETIF_F_SG | NETIF_F_IP_CSUM, which prevents the stack from checksumming vlan'ed packets in software, and if vlan tags are present on a transmitted packet, notifies the hardware of this fact by toggling the right bits in the TX descriptor. Signed-off-by: Lennert Buytenhek commit 2f7eb47a7b9f703d4f7dfdab358df6ff1f2a2204 Author: Lennert Buytenhek Date: Thu Jul 24 06:22:59 2008 +0200 mv643xx_eth: print message on link status change When there is a link status change (link or phy status interrupt), print a message notifying the user of the new link status. Signed-off-by: Lennert Buytenhek commit 81600eea98789da09a32de69ca9d3be8b9503c54 Author: Lennert Buytenhek Date: Mon Jul 14 14:29:40 2008 +0200 mv643xx_eth: use auto phy polling for configuring (R)(G)MII interface The mv643xx_eth hardware has a provision for polling the PHY's MII management registers to obtain the (R)(G)MII interface speed (10/100/1000) and duplex (half/full) and pause (off/symmetric) settings to use to talk to the PHY. The driver currently does not make use of this feature. Instead, whenever there is a link status change event, it reads the current link parameters from the PHY, and programs those parameters into the mv643xx_eth MAC by hand. This patch switches the mv643xx_eth driver to letting the MAC auto-determine the (R)(G)MII link parameters by PHY polling, if there is a PHY present. For PHYless ports (when e.g. the (R)(G)MII interface is connected to a hardware switch), we keep hardcoding the MII interface parameters. Signed-off-by: Lennert Buytenhek commit 7dde154d3d0d9701ecfb5533017a8f1a20bb4214 Author: Lennert Buytenhek Date: Tue Jul 15 12:20:30 2008 +0200 mv643xx_eth: print driver version on init Print the mv643xx_eth driver version on init to help debugging. Signed-off-by: Lennert Buytenhek commit 7f106c1d050c085c84d148ba56293e60b2c4e756 Author: Lennert Buytenhek Date: Tue Jul 15 02:28:47 2008 +0200 mv643xx_eth: use symbolic MII register addresses and values Instead of hardcoding MII register addresses and values, use the symbolic constants defined in linux/mii.h. Signed-off-by: Lennert Buytenhek commit cd4ccf76bfd2c36d351e68be7e6a597268f98a1a Author: Lennert Buytenhek Date: Thu Jul 10 14:40:51 2008 +0200 mv643xx_eth: use longer DMA bursts The mv643xx_eth driver is limiting DMA bursts to 32 bytes, while using the largest burst size (128 bytes) gives a couple percentage points performance improvement in throughput tests, and the docs say that the 128 byte default should not need to be changed, so use 128 byte bursts instead. Signed-off-by: Lennert Buytenhek commit ae9ae06443f7bfa4f013c0e2c035d549e999ad3e Author: Lennert Buytenhek Date: Tue Jul 15 02:15:24 2008 +0200 mv643xx_eth: also check TX_IN_PROGRESS when disabling transmit path The recommended sequence for waiting for the transmit path to clear after disabling all of the transmit queues is to wait for the TX_FIFO_EMPTY bit in the Port Status register to become set as well as the TX_IN_PROGRESS bit to clear. Signed-off-by: Lennert Buytenhek commit 65193a91fc60fdb79e392c9842c10552a1fa3e1c Author: Lennert Buytenhek Date: Fri Jul 11 00:39:41 2008 +0200 mv643xx_eth: don't fiddle with maximum receive packet size setting The maximum receive packet size field in the Port Serial Control register controls at what size received packets are flagged overlength in the receive descriptor, but it doesn't prevent overlength packets from being DMAd to memory and signaled to the host like other received packets. mv643xx_eth does not support receiving jumbo frames in 10/100 mode, but setting the packet threshold to larger than 1522 bytes in 10/100 mode won't cause breakage by itself. If we really want to enforce maximum packet size on the receiving end instead of on the sending end where it should be done, we can always just add a length check to the software receive handler instead of relying on the hardware to do the comparison for us. What's more, changing the maximum packet size field requires temporarily disabling the RX/TX paths. So once the link comes up in 10/100 Mb/s mode or 1000 Mb/s mode, we'd have to disable it again just to set the right maximum packet size field (1522 in 10/100 Mb/s mode or 9700 in 1000 Mb/s mode), just so that we can offload one comparison operation to hardware that we might as well do in software, assuming that we'd want to do it at all. Contrary to what the documentation suggests, there is no harm in just setting a 9700 byte maximum packet size in 10/100 mode, so use the maximum maximum packet size for all modes. Signed-off-by: Lennert Buytenhek commit 4dfc1c87af46f9d8abf2ef78a4e22891d7a564c3 Author: Lennert Buytenhek Date: Tue Jul 15 13:34:51 2008 +0200 mv643xx_eth: fix transmit-reclaim-in-napi-poll The mv643xx_eth driver allows doing transmit reclaim from within the napi poll routine, but after doing reclaim, it would forget to check the free transmit descriptor count and wake up the transmit queue if the reclaim caused enough descriptors for a new packet to become available. This would cause the netdev watchdog to occasionally kick in during certain workloads with combined receive and transmit traffic. Fix this by adding a wakeup check identical to the one in the interrupt handler to the napi poll routine. Signed-off-by: Lennert Buytenhek commit 6b368f6859c80343e5d7c6e2a7c49df0a8a273c1 Author: Lennert Buytenhek Date: Fri Jul 11 19:38:34 2008 +0200 mv643xx_eth: prevent breakage when link goes down during transmit When the ethernet link goes down while mv643xx_eth is transmitting data, transmit DMA can stop before all queued transmit descriptors have been processed. But even the descriptors that _have_ been processed might not be properly marked as done before the transmit DMA unit shuts down. Then when the link comes up again, the hardware transmit pointer might have advanced while not all previous packet descriptors have been marked as transmitted, causing software transmit reclaim to hang waiting for the hardware to finish transmitting a descriptor that it has already skipped. This patch forcibly reclaims all packets on the transmit ring on a link down interrupt, and then resyncs the hardware transmit pointer to what the software's idea of the first free descriptor is. Also, we need to prevent re-waking the transmit queue if we get a 'transmit done' interrupt at the same time as a 'link down' interrupt, which this patch does as well. Signed-off-by: Lennert Buytenhek commit 8fa89bf5de066b11190ac804903021700c2b1185 Author: Lennert Buytenhek Date: Mon Jul 14 22:56:55 2008 +0200 mv643xx_eth: fix TX hang erratum workaround The previously merged TX hang erratum workaround ("mv643xx_eth: work around TX hang hardware issue") assumes that TX_END interrupts are delivered simultaneously with or after their corresponding TX interrupts, but this is not always true in practise. In particular, it appears that TX_END interrupts are issued as soon as descriptor fetch returns an invalid descriptor, which may happen before earlier descriptors have been fully transmitted and written back to memory as being done. This hardware behavior can lead to a situation where the current driver code mistakenly assumes that the MAC has given up transmitting before noticing the packets that it is in fact still currently working on, causing the driver to re-kick the transmit queue, which will only cause the MAC to re-fetch the invalid head descriptor, and generate another TX_END interrupt, et cetera, until the packets in the pipe finally finish transmitting and have their descriptors written back to memory, which will then finally break the loop. Fix this by having the erratum workaround not check the 'number of unfinished descriptor', but instead, to compare the software's idea of what the head descriptor pointer should be to the hardware's head descriptor pointer (which is updated on the same conditions as the TX_END interupt is generated on, i.e. possibly before all previous descriptors have been transmitted and written back). Signed-off-by: Lennert Buytenhek commit d8e64406a037a64444175730294e449c9e21f5ec Author: Dan Williams Date: Wed Jul 23 13:09:48 2008 -0700 md: delay notification of 'active_idle' to the recovery thread sysfs_notify might sleep, so do not call it from md_safemode_timeout. Signed-off-by: Dan Williams commit 2339788376e2d69a9154130e4dacd5b21ce63094 Author: Dan Williams Date: Wed Jul 23 20:05:34 2008 -0700 md: fix merge error The original STRIPE_OP_IO removal patch had the following hunk: - for (i = conf->raid_disks; i--; ) { + for (i = conf->raid_disks; i--; ) set_bit(R5_Wantwrite, &sh->dev[i].flags); - if (!test_and_set_bit(STRIPE_OP_IO, &sh->ops.pending)) - sh->ops.count++; - } However it appears the hunk became broken after merging: - for (i = conf->raid_disks; i--; ) { + for (i = conf->raid_disks; i--; ) set_bit(R5_Wantwrite, &sh->dev[i].flags); set_bit(R5_LOCKED, &dev->flags); s.locked++; - if (!test_and_set_bit(STRIPE_OP_IO, &sh->ops.pending)) - sh->ops.count++; - } Signed-off-by: Dan Williams commit c9f21aaff1d1fb5629325130af469532d19beb93 Author: Dan Williams Date: Wed Jul 23 12:05:51 2008 -0700 md: move async_tx_issue_pending_all outside spin_lock_irq Some dma drivers need to call spin_lock_bh in their device_issue_pending routines. This change avoids: WARNING: at kernel/softirq.c:136 local_bh_enable_ip+0x3a/0x85() Signed-off-by: Dan Williams commit 91467bdf6e53058af13fd255375d6634ba0c70e0 Author: Bernhard Walle Date: Fri Jul 18 19:07:53 2008 +0200 x86: move dma32_reserve_bootmem() after reserve_crashkernel() On a x86-64 machine (nothing special I could encounter) I had the problem that crashkernel reservation with the usual "64M@16M" failed. While debugging that, I encountered that dma32_reserve_bootmem() reserves a memory region which is in that area. Because dma32_reserve_bootmem() does not rely on a specific offset but crashkernel does, it makes sense to move the dma32_reserve_bootmem() reservation down a bit. I tested that patch and it works without problems. I don't see any negative effects of that move, but maybe I oversaw something ... While we strictly don't need that patch in 2.6.27 because we have the automatic, dynamic offset detection, it makes sense to also include it here because: - it's easier to get it in -stable then, - many people are still used to the 'crashkernel=...@16M' syntax, - not everybody may be using a reloatable kernel. Signed-off-by: Bernhard Walle Cc: kexec@lists.infradead.org Cc: vgoyal@redhat.com Cc: akpm@linux-foundation.org Cc: Bernhard Walle Cc: yhlu.kernel@gmail.com Signed-off-by: Ingo Molnar commit 12219aea6b944e36795267be31d43f9c484841be Author: Aneesh Kumar K.V Date: Thu Jul 17 16:12:08 2008 -0400 ext4: Cleanup the block reservation code path The truncate patch should not use the i_allocated_meta_blocks value. So add seperate functions to be used in the truncate and alloc path. We also need to release the meta-data block that we reserved for the blocks that we are truncating. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Theodore Ts'o commit 34071da71a665d8c81e3b3467c9a2e7c56386fec Author: Theodore Ts'o Date: Fri Aug 1 21:59:19 2008 -0400 ext4: don't assume extents can't cross block groups when truncating With the FLEX_BG layout, there is no reason why extents can't cross block groups, so make the truncate code reserve enough credits so we don't BUG if we come across such an extent. Signed-off-by: "Theodore Ts'o" commit bc965ab3f2b4b7bb898b11d61d25295c2053b8ac Author: Theodore Ts'o Date: Sat Aug 2 21:10:38 2008 -0400 ext4: Fix lack of credits BUG() when deleting a badly fragmented inode The extents codepath for ext4_truncate() requests journal transaction credits in very small chunks, requesting only what is needed. This means there may not be enough credits left on the transaction handle after ext4_truncate() returns and then when ext4_delete_inode() tries finish up its work, it may not have enough transaction credits, causing a BUG() oops in the jbd2 core. Also, reserve an extra 2 blocks when starting an ext4_delete_inode() since we need to update the inode bitmap, as well as update the orphaned inode linked list. Signed-off-by: "Theodore Ts'o" commit 0123c93998511978556b03d2bb023af92aa24d55 Author: Theodore Ts'o Date: Fri Aug 1 20:57:54 2008 -0400 ext4: Fix ext4_ext_journal_restart() The ext4_ext_journal_restart() is a convenience function which checks to see if the requested number of credits is present, and if so it closes the current transaction and attaches the current handle to the new transaction. Unfortunately, it wasn't proprely checking the return value from ext4_journal_extend(), so it was starting a new transaction when one was not necessary, and returning an error when all that was necessary was to restart the handle with a new transaction. Signed-off-by: "Theodore Ts'o" commit d5a0d4f732af3438e592efab4cb80076d1dd81b5 Author: Eric Sandeen Date: Sat Aug 2 18:51:06 2008 -0400 ext4: fix ext4_da_write_begin error path ext4_da_write_begin needs to call journal_stop before returning, if the page allocation fails. Signed-off-by: Eric Sandeen Acked-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit e9e34f4e8f42177c66754fec1edfd35e70c18f99 Author: Hidehiro Kawai Date: Thu Jul 31 22:26:04 2008 -0400 jbd2: don't abort if flushing file data failed In ordered mode, the current jbd2 aborts the journal if a file data buffer has an error. But this behavior is unintended, and we found that it has been adopted accidentally. This patch undoes it and just calls printk() instead of aborting the journal. Unlike a similar patch for ext3/jbd, file data buffers are written via generic_writepages(). But we also need to set AS_EIO into their mappings because wait_on_page_writeback_range() clears AS_EIO before a user process sees it. Signed-off-by: Hidehiro Kawai Signed-off-by: "Theodore Ts'o" commit 9c83a923c67df311c467ec956009f0eb4019195d Author: Hidehiro Kawai Date: Sat Jul 26 16:39:26 2008 -0400 ext4: don't read inode block if the buffer has a write error A transient I/O error can corrupt inode data. Here is the scenario: (1) update inode_A at the block_B (2) pdflush writes out new inode_A to the filesystem, but it results in write I/O error, at this point, BH_Uptodate flag of the buffer for block_B is cleared and BH_Write_EIO is set (3) create new inode_C which located at block_B, and __ext4_get_inode_loc() tries to read on-disk block_B because the buffer is not uptodate (4) if it can read on-disk block_B successfully, inode_A is overwritten by old data This patch makes __ext4_get_inode_loc() not read the inode block if the buffer has BH_Write_EIO flag. In this case, the buffer should have the latest information, so setting the uptodate flag to the buffer (this avoids WARN_ON_ONCE() in mark_buffer_dirty().) According to this change, we would need to test BH_Write_EIO flag for the error checking. Currently nobody checks write I/O errors on metadata buffers, but it will be done in other patches I'm working on. Signed-off-by: Hidehiro Kawai Cc: sugita Cc: Satoshi OSHIMA Cc: Nick Piggin Cc: Jan Kara Cc: Signed-off-by: Andrew Morton Signed-off-by: Theodore Ts'o commit 6be2ded1d7c51b39144b9f07d2c839e1bd8707f1 Author: Aneesh Kumar K.V Date: Wed Jul 23 14:14:05 2008 -0400 ext4: Don't allow lg prealloc list to be grow large. Currently, the locality group prealloc list is freed only when there is a block allocation failure. This can result in large number of entries in the preallocation list making ext4_mb_use_preallocated() expensive. To fix this, we convert the locality group prealloc list to a hash list. The hash index is the order of number of blocks in the prealloc space with a max order of 9. When adding prealloc space to the list we make sure total entries for each order does not exceed 8. If it is more than 8 we discard few entries and make sure the we have only <= 5 entries. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Theodore Ts'o commit 1320cbcf771a20b44cf580712b843d213ae75cd3 Author: Aneesh Kumar K.V Date: Wed Jul 23 14:09:26 2008 -0400 ext4: Convert the usage of NR_CPUS to nr_cpu_ids. NR_CPUS can be really large. We should be using nr_cpu_ids instead. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Theodore Ts'o commit ce89f46cb833f89c58a08240faa6b5e963086b8a Author: Aneesh Kumar K.V Date: Wed Jul 23 14:09:29 2008 -0400 ext4: Improve error handling in mballoc Don't call BUG_ON on file system failures. Instead use ext4_error and also handle the continue case properly. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Theodore Ts'o commit b5f10eed8125702929e57cca7e5956b1b9b6d015 Author: Eric Sandeen Date: Sat Aug 2 21:21:08 2008 -0400 ext4: lock block groups when initializing I noticed when filling a 1T filesystem with 4 threads using the fs_mark benchmark: fs_mark -d /mnt/test -D 256 -n 100000 -t 4 -s 20480 -F -S 0 that I occasionally got checksum mismatch errors: EXT4-fs error (device sdb): ext4_init_inode_bitmap: Checksum bad for group 6935 etc. I'd reliably get 4-5 of them during the run. It appears that the problem is likely a race to init the bg's when the uninit_bg feature is enabled. With the patch below, which adds sb_bgl_locking around initialization, I was able to complete several runs with no errors or warnings. Signed-off-by: Eric Sandeen Signed-off-by: Theodore Ts'o commit e29d1cde63be0b5f1739416b5574a83c34bf8eeb Author: Eric Sandeen Date: Sat Aug 2 21:21:02 2008 -0400 ext4: sync up block and inode bitmap reading functions ext4_read_block_bitmap and read_inode_bitmap do essentially the same thing, and yet they are structured quite differently. I came across this difference while looking at doing bg locking during bg initialization. This patch: * removes unnecessary casts in the error messages * renames read_inode_bitmap to ext4_read_inode_bitmap * and more substantially, restructures the inode bitmap reading function to be more like the block bitmap counterpart. The change to the inode bitmap reader simplifies the locking to be applied in the next patch. Signed-off-by: Eric Sandeen Signed-off-by: Theodore Ts'o commit 8a266467b8c4841ca994d0fe59f39e584650e3df Author: Theodore Ts'o Date: Sat Jul 26 14:34:21 2008 -0400 ext4: Allow read/only mounts with corrupted block group checksums If the block group checksums are corrupted, still allow the mount to succeed, so e2fsck can have a chance to try to fix things up. Add code in the remount r/w path to make sure the block group checksums are valid before allowing the filesystem to be remounted read/write. Signed-off-by: "Theodore Ts'o" commit d03856bd5e5abac717da137dc60fe4a691769bd0 Author: Aneesh Kumar K.V Date: Sat Aug 2 18:51:32 2008 -0400 ext4: Fix data corruption when writing to prealloc area Inserting an extent can cause a new entry in the already existing index block. That doesn't increase the depth of the instead. Instead it adds a new leaf block. Now with the new leaf block the path information corresponding to the logical block should be fetched from the new block. The old path will be pointing to the old leaf block. We need to recalucate the path information on extent insert even if depth doesn't change. Without this change, the extent merge after converting an unwritten extent to initialized extent takes the wrong extent and cause data corruption. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit fece418418f51e92dd7e67e17c5e3fe5a28d3279 Author: Dmitry Baryshkov Date: Tue Jun 24 18:51:07 2008 +0400 power_supply: Sharp SL-6000 (tosa) batteries support This patch adds common battery interface support for Sharp SL-6000 (tosa). Signed-off-by: Dmitry Baryshkov Signed-off-by: Anton Vorontsov commit 75d8807962fc7529b4946e9ec92cae197be5a967 Author: Andres Salomon Date: Wed May 14 16:20:38 2008 -0700 power_supply: fix up CHARGE_COUNTER output to be more precise As Richard Smith pointed out, ACR * 6250 / 15 provides for less precision loss than ACR * 4167 / 10, _and_ it doesn't overflow. Switch to using that equation for CHARGE_COUNTER. Signed-off-by: Andres Salomon Cc: "Richard A. Smith" Signed-off-by: Andrew Morton Signed-off-by: Anton Vorontsov commit 8e552c36d90c03d2cabf5373788998966751b609 Author: Andres Salomon Date: Mon May 12 21:46:29 2008 -0400 power_supply: add CHARGE_COUNTER property and olpc_battery support for it This adds PROP_CHARGE_COUNTER to the power supply class (documenting it as well). The OLPC battery driver uses this for spitting out its ACR values (in uAh). We have some rounding errors (the data sheet claims 416.7, the math actually works out to 416.666667, so we're forced to choose between overflows or precision loss. I chose precision loss, and stuck w/ data sheet values), but I don't think anyone will care that much. Signed-off-by: Andres Salomon Signed-off-by: Anton Vorontsov commit 484d6d50cca3941db6e063113d124333aed0abc0 Author: Andres Salomon Date: Fri May 2 13:41:59 2008 -0700 power_supply: bump EC version check that we refuse to run with in olpc_battery Refuse to run with an EC < 0x44. We're playing it safe, and this is a pretty old EC version. Also, add a comment about why we're checking the EC version. Signed-off-by: Andres Salomon Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Anton Vorontsov commit b2bd8a3bcdd18101eb5d85c267c1a1fb8ce9acc7 Author: Andres Salomon Date: Fri May 2 13:41:59 2008 -0700 power_supply: cleanup of the OLPC battery driver Move portions of the massive switch statement into functions. The layout of this thing has already caused one bug (a break in the wrong place), it needed to shrink. Signed-off-by: Andres Salomon Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Anton Vorontsov commit d7eb9e36c42504e87c7d92dd5c05cb6f2cf74d28 Author: Andres Salomon Date: Fri May 2 13:41:58 2008 -0700 power_supply: add eeprom dump file to olpc_battery's sysfs This allows you to dump 0x60 bytes from the battery's EEPROM (starting at address 0x20). Note that it does an EC command for each byte, so it's pretty slow. OTOH, if you want to grab just a single byte from somewhere in the EEPROM, you can do something like: dd bs=1 count=1 skip=16 if=/sys/class/power_supply/olpc-battery/eeprom | od -x Userspace battery collection/logging information needs this. Signed-off-by: Andres Salomon Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Anton Vorontsov commit 1ca5b9d2183f11bb8b69e04b19a7faf7f600a840 Author: David Woodhouse Date: Sun May 4 01:31:42 2008 -0400 power_supply: Support serial number in olpc_battery This adds serial number support to the OLPC battery driver. Signed-off-by: David Woodhouse Signed-off-by: Andres Salomon Signed-off-by: Anton Vorontsov