commit 492c2e476eac010962850006c49df326919b284c Author: Linus Torvalds Date: Sun May 11 17:09:41 2008 -0700 Linux 2.6.26-rc2 commit 57014123512633ab0c38a4fea4140bf156f6a3a0 Merge: c3921ab... ae42908... Author: Linus Torvalds Date: Sun May 11 17:09:24 2008 -0700 Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c: Convert some more new-style drivers to use module aliasing i2c: Match dummy devices by type i2c-sibyte: Mark i2c_sibyte_add_bus() as static i2c-sibyte: Correct a comment about frequency i2c: Improve the functionality documentation i2c: Improve smbus-protocol documentation i2c-piix4: Blacklist two mainboards i2c-piix4: Increase the intitial delay for the ServerWorks CSB5 i2c-mpc: Compare to NO_IRQ instead of zero commit c3921ab71507b108d51a0f1ee960f80cd668a93d Author: Linus Torvalds Date: Sun May 11 16:04:48 2008 -0700 Add new 'cond_resched_bkl()' helper function It acts exactly like a regular 'cond_resched()', but will not get optimized away when CONFIG_PREEMPT is set. Normal kernel code is already preemptable in the presense of CONFIG_PREEMPT, so cond_resched() is optimized away (see commit 02b67cc3ba36bdba351d6c3a00593f4ec550d9d3 "sched: do not do cond_resched() when CONFIG_PREEMPT"). But when wanting to conditionally reschedule while holding a lock, you need to use "cond_sched_lock(lock)", and the new function is the BKL equivalent of that. Also make fs/locks.c use it. Signed-off-by: Linus Torvalds commit ae429083efe996ca2c569c44fd6fea440676dc33 Author: Jean Delvare Date: Sun May 11 20:37:06 2008 +0200 i2c: Convert some more new-style drivers to use module aliasing Update 3 more new-style i2c drivers to use standard module aliasing instead of the old driver_name/type driver matching scheme. These video drivers aren't used yet so converting them is trivial. Signed-off-by: Jean Delvare commit 60b129d7bfa3e20450816983bd52c49bb0bc1c21 Author: Jean Delvare Date: Sun May 11 20:37:06 2008 +0200 i2c: Match dummy devices by type As the old driver_name/type matching scheme is going away soon, change the dummy device mechanism to use the new matching scheme. This has the downside that dummy i2c clients can no longer choose their name, they'll all appear as "dummy" in sysfs and in log messages. I don't think it is a problem in practice though, as there is little reason to use these i2c clients to log messages. Signed-off-by: Jean Delvare commit b11a9d8392a698f01337232aa8c5d5603519943f Author: Maciej W. Rozycki Date: Sun May 11 20:37:05 2008 +0200 i2c-sibyte: Mark i2c_sibyte_add_bus() as static The i2c_sibyte_add_bus() function is not called, nor meant to, from outside, so mark it as static; fixing a sparse warning too. Signed-off-by: Maciej W. Rozycki Signed-off-by: Jean Delvare commit b3eb5a0bc3c359dbb5ccb0708df18525ab6a1430 Author: Maciej W. Rozycki Date: Sun May 11 20:37:05 2008 +0200 i2c-sibyte: Correct a comment about frequency The frequency may have been once hardcoded to 100 kHz, but currently it is passed as an argument to i2c_sibyte_add_bus(), so update the comment to match code. While at it, reformat a nearby comment for consistency. No functional changes. Signed-off-by: Maciej W. Rozycki Signed-off-by: Jean Delvare commit 88b283281f1c783a79af175c400b5d20f10af2aa Author: Jean Delvare Date: Sun May 11 20:37:05 2008 +0200 i2c: Improve the functionality documentation Attempt to make the documentation about the I2C/SMBus functionality checking API clearer. Signed-off-by: Jean Delvare commit 1a31a88f4f1a14f0b28ec3c5c179b93a10b24a18 Author: David Brownell Date: Sun May 11 20:37:05 2008 +0200 i2c: Improve smbus-protocol documentation Improve the smbus-protocol documentation file somewhat: - Use the names of the SMBus protocol operations (from the 2.0 specification), not made-up-for-Linux names. - Add the name of the call used to execute each operation ... and point out that there are mismatches, where functions execute different protocol operations than their names specify. The most confusing examples are that "Read Byte" isn't executed by i2c_smbus_read_byte(), and that "Write Byte" isn't executed by i2c_smbus_write_byte(). When coding, that's not as bad as it may seem; but that case would seem to be worth fixing. Signed-off-by: David Brownell Signed-off-by: Jean Delvare commit c2fc54fcd340cbee47510aa84c346aab3440ba09 Author: Jean Delvare Date: Sun May 11 20:37:05 2008 +0200 i2c-piix4: Blacklist two mainboards We had a report that running sensors-detect on a Sapphire AM2RD790 motherbord killed the CPU. While the exact cause is still unknown, I'd rather play it safe and prevent any access to the SMBus on that machine by not letting the i2c-piix4 driver attach to the SMBus host device on that machine. Also blacklist a similar board made by DFI. Signed-off-by: Jean Delvare commit b1c1759cd192fe1d27989f986c7f6b2939905e0c Author: David Milburn Date: Sun May 11 20:37:05 2008 +0200 i2c-piix4: Increase the intitial delay for the ServerWorks CSB5 Per the PIIX4 errata, there maybe a delay between setting the start bit in the Smbus Host Controller Register and the transaction actually starting. If the driver doesn't delay long enough, it may appear that the transaction is complete when actually it hasn't started, this may lead to bus collisions. While 1 ms appears to be enough for most chips, the ServerWorks CSB5 wants 2 ms. Signed-off-by: David Milburn Signed-off-by: Jean Delvare commit f5fff3602a67ff8c98fccdbf15959780be542802 Author: Jon Smirl Date: Sun May 11 20:37:04 2008 +0200 i2c-mpc: Compare to NO_IRQ instead of zero Alter the mpc i2c driver to use the NO_IRQ symbol instead of the constant zero when checking for valid interrupts. NO_IRQ=-1 on ppc and NO_IRQ=0 on powerpc so the checks against zero are not correct. Signed-off-by: Jon Smirl Signed-off-by: Jean Delvare commit 9662369786b9d07fd46d65b0f9e3938a3e01a5d9 Author: Bernhard Beck Date: Sun May 11 09:23:13 2008 -0700 usb-serial: Add ThinkOptics WavIT Add ThinkOptics WavIt to cp2101 device table Signed-off-by: Bernhard Beck Signed-off-by: Linus Torvalds commit 854a989546c12683186c84601d4902591dddd8a9 Merge: 633331f... 28e6103... Author: Linus Torvalds Date: Sun May 11 09:55:48 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: sparc: Fix debugger syscall restart interactions. sparc: Fix ptrace() detach. sparc32: Don't twiddle PT_DTRACE in exec. sparc video: remove open boot prom code commit 633331f389c2d9c631371d09a54626a5e4749452 Merge: 5bb7ff7... 005b1f7... Author: Linus Torvalds Date: Sun May 11 09:52:45 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: [libata] revert new check-ready Status register logic commit 28e6103665301ce60634e8a77f0b657c6cc099de Author: David S. Miller Date: Sun May 11 02:07:19 2008 -0700 sparc: Fix debugger syscall restart interactions. So, forever, we've had this ptrace_signal_deliver implementation which tries to handle all of the nasties that can occur when the debugger looks at a process about to take a signal. It's meant to address all of these issues inside of the kernel so that the debugger need not be mindful of such things. Problem is, this doesn't work. The idea was that we should do the syscall restart business first, so that the debugger captures that state. Otherwise, if the debugger for example saves the child's state, makes the child execute something else, then restores the saved state, we won't handle the syscall restart properly because we lose the "we're in a syscall" state. The code here worked for most cases, but if the debugger actually passes the signal through to the child unaltered, it's possible that we would do a syscall restart when we shouldn't have. In particular this breaks the case of debugging a process under a gdb which is being debugged by yet another gdb. gdb uses sigsuspend to wait for SIGCHLD of the inferior, but if gdb itself is being debugged by a top-level gdb we get a ptrace_stop(). The top-level gdb does a PTRACE_CONT with SIGCHLD to let the inferior gdb see the signal. But ptrace_signal_deliver() assumed the debugger would cancel out the signal and therefore did a syscall restart, because the return error was ERESTARTNOHAND. Fix this by simply making ptrace_signal_deliver() a nop, and providing a way for the debugger to control system call restarting properly: 1) Report a "in syscall" software bit in regs->{tstate,psr}. It is set early on in trap entry to a system call and is fully visible to the debugger via ptrace() and regsets. 2) Test this bit right before doing a syscall restart. We have to do a final recheck right after get_signal_to_deliver() in case the debugger cleared the bit during ptrace_stop(). 3) Clear the bit in trap return so we don't accidently try to set that bit in the real register. As a result we also get a ptrace_{is,clear}_syscall() for sparc32 just like sparc64 has. M68K has this same exact bug, and is now the only other user of the ptrace_signal_deliver hook. It needs to be fixed in the same exact way as sparc. Signed-off-by: David S. Miller commit 986bef854fab44012df678a5b51817d5274d3ca1 Author: David S. Miller Date: Sat May 10 21:11:23 2008 -0700 sparc: Fix ptrace() detach. Forever we had a PTRACE_SUNOS_DETACH which was unconditionally recognized, regardless of the personality of the process. Unfortunately, this value is what ended up in the GLIBC sys/ptrace.h header file on sparc as PTRACE_DETACH and PT_DETACH. So continue to recognize this old value. Luckily, it doesn't conflict with anything we actually care about. Signed-off-by: David S. Miller commit 5bb7ff795fffc9418e3039cac77b42adcaae1a57 Merge: 3e1b83a... 1f2ee64... Author: Linus Torvalds Date: Sat May 10 21:14:05 2008 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 5033/1: Unbreak corgi_ssp by registering ssp drivers earlier. [ARM] Orion: clean up addr-map.c after window setting code purge [ARM] Orion: pass proper t_clk into mv643xx_eth [ARM] Orion: use mv643xx_eth driver mbus window handling [ARM] pxa: Fix RCSR handling [ARM] lubbock: fix compilation [ARM] 5032/1: Added cpufreq support for pxa27x CPU [ARM] 5031/1: Indentation correction in cpu-pxa.c. [ARM] 5028/1: pxafb: fix broken "backward compatibility way" in framebuffer [ARM] 4882/2: Correction for S3C2410 clkout generation [ARM] 5027/1: Fixed random memory corruption on pxa suspend cycle. [ARM] 5024/1: Fix some minor clk issues in the MMCI PL18x driver [ARM] 5023/1: Fix broken gpio interrupts on ep93xx ns9xxx: fix sparse warning ns9xxx: check for irq lockups ns9xxx: fix handle_prio_irq to unmask irqs with lower priority commit 3e1b83ab3912a6f583897635bee0a2e0cd1545f7 Merge: 8e3e076... 82fd866... Author: Linus Torvalds Date: Sat May 10 21:10:48 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: rdc: leds build/config fix x86: sysfs cpu?/topology is empty in 2.6.25 (32-bit Intel system) x86: revert commit 709f744 ("x86: bitops asm constraint fixes") x86: restrict keyboard io ports reservation to make ipmi driver work x86: fix fpu restore from sig return x86: remove spew print out about bus to node mapping x86: revert printk format warning change which is for linux-next x86: cleanup PAT cpu validation x86: geode: define geode_has_vsa2() even if CONFIG_MGEODE_LX is not set x86: GEODE: cache results from geode_has_vsa2() and uninline x86: revert geode config dependency commit 8e3e076c5a78519a9f64cd384e8f18bc21882ce0 Author: Linus Torvalds Date: Sat May 10 20:58:02 2008 -0700 BKL: revert back to the old spinlock implementation The generic semaphore rewrite had a huge performance regression on AIM7 (and potentially other BKL-heavy benchmarks) because the generic semaphores had been rewritten to be simple to understand and fair. The latter, in particular, turns a semaphore-based BKL implementation into a mess of scheduling. The attempt to fix the performance regression failed miserably (see the previous commit 00b41ec2611dc98f87f30753ee00a53db648d662 'Revert "semaphore: fix"'), and so for now the simple and sane approach is to instead just go back to the old spinlock-based BKL implementation that never had any issues like this. This patch also has the advantage of being reported to fix the regression completely according to Yanmin Zhang, unlike the semaphore hack which still left a couple percentage point regression. As a spinlock, the BKL obviously has the potential to be a latency issue, but it's not really any different from any other spinlock in that respect. We do want to get rid of the BKL asap, but that has been the plan for several years. These days, the biggest users are in the tty layer (open/release in particular) and Alan holds out some hope: "tty release is probably a few months away from getting cured - I'm afraid it will almost certainly be the very last user of the BKL in tty to get fixed as it depends on everything else being sanely locked." so while we're not there yet, we do have a plan of action. Tested-by: Yanmin Zhang Cc: Ingo Molnar Cc: Andi Kleen Cc: Matthew Wilcox Cc: Alexander Viro Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 00b41ec2611dc98f87f30753ee00a53db648d662 Author: Linus Torvalds Date: Sat May 10 20:43:22 2008 -0700 Revert "semaphore: fix" This reverts commit bf726eab3711cf192405d21688a4b21e07b6188a, as it has been reported to cause a regression with processes stuck in __down(), apparently because some missing wakeup. Quoth Sven Wegener: "I'm currently investigating a regression that has showed up with my last git pull yesterday. Bisecting the commits showed bf726e "semaphore: fix" to be the culprit, reverting it fixed the issue. Symptoms: During heavy filesystem usage (e.g. a kernel compile) I get several compiler processes in uninterruptible sleep, blocking all i/o on the filesystem. System is an Intel Core 2 Quad running a 64bit kernel and userspace. Filesystem is xfs on top of lvm. See below for the output of sysrq-w." See http://lkml.org/lkml/2008/5/10/45 for full report. In the meantime, we can just fix the BKL performance regression by reverting back to the good old BKL spinlock implementation instead, since any sleeping lock will generally perform badly, especially if it tries to be fair. Reported-by: Sven Wegener Cc: Andrew Morton Cc: Ingo Molnar Signed-off-by: Linus Torvalds commit 39f004ba27fcd2431030a3bb3c949fa3f93fa4ca Author: Linus Torvalds Date: Sat May 10 19:52:43 2008 -0700 Make use ACCESS_ONCE() ..instead of cooking up its own uglier local version of it. Signed-off-by: Linus Torvalds commit 9c3cdc1f83a6e07092392ff4aba6466517dbd1d0 Author: Linus Torvalds Date: Sat May 10 19:51:16 2008 -0700 Move ACCESS_ONCE() to It actually makes much more sense there, and we do tend to need it for non-RCU usage too. Moving it to will allow some other cases that have open-coded the same logic to use the same helper function that RCU has used. Signed-off-by: Linus Torvalds commit 82fd866701881623d69fe280dbac06ddff1fdef9 Author: Ingo Molnar Date: Thu May 1 03:46:22 2008 +0200 x86: rdc: leds build/config fix select NEW_LEDS for now until the Kconfig dependencies have been fixed. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 5c3a121d52b30a1e53cdaa802fa1965fcd243164 Author: Vaidyanathan Srinivasan Date: Mon May 5 19:22:15 2008 +0530 x86: sysfs cpu?/topology is empty in 2.6.25 (32-bit Intel system) System topology on intel based system needs to be exported for non-numa case as well. All parts of asm-i386/topology.h has come under #ifdef CONFIG_NUMA after the merge to asm-x86/topology.h /sys/devices/system/cpu/cpu?/topology/* is populated based on ENABLE_TOPO_DEFINES The sysfs cpu topology is not being populated on my dual socket dual core xeon 5160 processor based (x86 32 bit) system. CONFIG_NUMA is not set in my case yet the topology is relevant and useful. irqbalance daemon application depends on topology to build the cpus and package list and it fails on Fedora9 beta since the sysfs topology was not being populated in the 2.6.25 kernel. I am not sure if it was intentional to not define ENABLE_TOPO_DEFINES for non-numa systems. This fix has been tested on the above mentioned dual core, dual socket system. Signed-off-by: Vaidyanathan Srinivasan Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner Cc: stable@kernel.org commit eb2b4e682a6d5b4779a7f1a6a8419982919795f6 Author: Simon Holm Thøgersen Date: Mon May 5 15:45:28 2008 +0200 x86: revert commit 709f744 ("x86: bitops asm constraint fixes") 709f744 causes my computer to freeze during the start up of X and my login manger (GDM). It gets to the point where it has shown the default X mouse cursor logo (a big X / cross) and does not respond to anything from that point on. This worked fine before 709f744, and it works fine with 709f744 reverted on top of Linus' current tree (f74d505). The revert had conflicts, as far as I can tell due to white space changes. The diff I ended up with is below. It is 100% reproducible. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 9096bd7a66efbe406910365c5206a32eed3875af Author: Helge Wagner Date: Tue Apr 29 14:20:40 2008 +0200 x86: restrict keyboard io ports reservation to make ipmi driver work On some of our (single board computer) boards (x86) we are using an IPMI controller that uses I/O ports 0x62 and 0x66 for a KCS (keyboard controller style) IPMI system interface. Trying to load the openipmi driver fails, because the ports (0x62/0x66) are reserved for keyboard. keyboard reserves the full range 0x60-0x6F while it doesn't need to. Reserve only ports 0x60 and 0x64 for the legacy PS/2 i8042 keyboad controller instead of 0x60-0x6F to allow the openipmi driver to work. [ tglx: added 64bit fixup ] Signed-off-by: Thomas Gleixner Acked-by: H. Peter Anvin Signed-off-by: Ingo Molnar commit fd3c3ed5d1e3ceb37635cbe6d220ab94aae0781d Author: Suresh Siddha Date: Wed May 7 12:09:52 2008 -0700 x86: fix fpu restore from sig return If the task never used fpu, initialize the fpu before restoring the FP state from the signal handler context. This will allocate the fpu state, if the task never needed it before. Reported-and-bisected-by: Eric Sesterhenn Signed-off-by: Suresh Siddha Tested-by: Eric Sesterhenn Cc: Frederik Deweerdt Signed-off-by: Thomas Gleixner commit 0646153921892cc7a81320a6920beaca06b3e9f0 Author: Yinghai Lu Date: Sun May 4 13:41:02 2008 -0700 x86: remove spew print out about bus to node mapping Jeff Garzik pointed out that this printout is not needed. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 5ecddcebfb7c737fe36494c77bd99ad045eab5ae Author: Thomas Gleixner Date: Thu May 8 16:38:11 2008 +0200 x86: revert printk format warning change which is for linux-next commit 62179849b40aded9e727cca5006627a1c4d6446e x86: fix setup printk format warning is for linux-next and not for .26 Signed-off-by: Thomas Gleixner commit c07c6053c41f736711ed856aa377007078c7c396 Author: David S. Miller Date: Sat May 10 00:31:28 2008 -0700 sparc32: Don't twiddle PT_DTRACE in exec. That bit isn't used on this platform. Signed-off-by: David S. Miller commit 1f2ee6496b1f71e9d5aa2448745e65fbafdc3bd5 Merge: 5bf6c6e... da10989... Author: Russell King Date: Fri May 9 23:24:09 2008 +0100 Merge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/nico/orion into fixes commit 5bf6c6e30d8b71d092e8830208e182d84b907fcd Author: Dmitry Baryshkov Date: Fri May 9 08:56:54 2008 +0100 [ARM] 5033/1: Unbreak corgi_ssp by registering ssp drivers earlier. A lot of stuff in spitz/akita/etc. depends on corgi_ssp to be initialised early. However corgi_ssp initialisation fails, because at that time pxa*-ssp devices don't have drivers. Move ssp earlier in the makefile so they are registered before corgi-ssp. Also move sleep/suspend and cpu-freq to more logical places Signed-off-by: Dmitry Baryshkov Signed-off-by: Russell King commit 005b1f7495e812b99b73de5adbc73afd7a1cbcaf Author: Jeff Garzik Date: Fri May 9 15:00:55 2008 -0400 [libata] revert new check-ready Status register logic This behavior differs across multiple controllers, so we cannot use common logic for all controllers. Revert back to the basic common behavior, and specific drivers will be updated from here to take into account the unusual Status return values. Signed-off-by: Jeff Garzik commit 3ed43c745d2ce0c4ca15ad406285d1cc7e8ceec3 Merge: 26c5e98... 45828b8... Author: Linus Torvalds Date: Fri May 9 10:34:00 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (21 commits) Blackfin Serial Driver: abstract away DLAB differences into header Blackfin Serial Driver: macro away the IER differences between processors [Blackfin] arch: remove useless IRQ_SW_INT defines [Blackfin] arch: protect linux/usb/musb.h include until the driver gets mainlined [Blackfin] arch: protect linux/usb/isp1362.h include until the driver gets mainlined [Blackfin] arch: add EBIU supporting for BF54x EZKIT SMSC LAN911x/LAN921x families embedded ethernet driver [Blackfin] arch: Set spi flash partition on bf527 as like bf548. [Blackfin] arch: fix bug - Remove module will not free L1 memory used [Blackfin] arch: fix wrong header name in comment [Blackfin] arch: Fix BUG - spi flash on bf527 ezkit would fail at mount [Blackfin] arch: add twi_lcd and twi_keypad i2c board info to bf527-ezkit [Blackfin] arch: Add physmap partition for BF527-EZkit [Blackfin] arch: fix gdb testing regression [Blackfin] arch: disable single stepping when delivering a signal [Blackfin] arch: Delete unused (copied from m68k) entries in asm-offsets.c. [Blackfin] arch: In the double fault handler, set up the PT_RETI slot [Blackfin] arch: Support for CPU_FREQ and NOHZ [Blackfin] arch: Functional power management support: Add CPU and platform voltage scaling support [Blackfin] arch: fix bug - breaking the atomic sections code. [Blackfin] arch: Equalize include files: Add VR_CTL masks ... commit 26c5e98e88a6126adef2ddce21899e5afe823a2b Merge: a9545ee... af4b3c3... Author: Linus Torvalds Date: Fri May 9 08:10:09 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] fix build warning [CIFS] Fixed build warning in is_ip [CIFS] cleanup cifsd completion [CIFS] Remove over-indented code in find_unc(). [CIFS] fix typo [CIFS] Remove duplicate call to mode_to_acl [CIFS] convert usage of implicit booleans to bool [CIFS] fixed compatibility issue with samba refferal request [CIFS] Fix statfs formatting [CIFS] Adds to dns_resolver checking if the server name is an IP addr and skipping upcall in this case. [CIFS] Fix spelling mistake [CIFS] Update cifs version number commit a9545ee3c8153e133556aaaa8110337ca3f864dc Merge: c20b4b6... 9731e28... Author: Linus Torvalds Date: Fri May 9 08:07:58 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: (37 commits) SH: catch negative denormal_subf1() retval in denormal_add() sh: Fix DMAC base address for SH7709S sh: update smc91x platform data for se7206. sh: Stub in cpu_to_node() and friends for NUMA build. sh: intc register modify fix sh: no high level trigger on some sh3 cpus sh: clean up sh7710 and sh7720 intc tables sh: add interrupt ack code to sh3 sh: unify external irq pin code for sh3 sh-sci: avoid writing to nonexistent registers sh-sci: sh7722 lacks scsptr registers sh-sci: improve sh7722 support sh: reset hardware from early printk sh: drain and wait for early printk sh: use sci_out() for early printk sh: add memory resources to /proc/iomem sh: add kernel bss resource sh: fix sh7705 interrupt vector typo sh: update smc91x platform data for se7722 sh: update smc91x platform data for MigoR ... commit c20b4b69f774896623a8ad87d974982bc89af7ed Merge: d9a9a23... 67412f0... Author: Linus Torvalds Date: Fri May 9 08:07:21 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: [CRYPTO] hmac: Avoid calling virt_to_page on key commit d9a9a23ff2b00463f25e880d13364938b321ab8a Merge: 9b013c2... 53962ec... Author: Linus Torvalds Date: Fri May 9 08:06:31 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: (23 commits) [POWERPC] Remove leftover printk in isa-bridge.c [POWERPC] Remove duplicate #include [POWERPC] Initialize lockdep earlier [POWERPC] Document when printk is useable [POWERPC] Fix bogus paca->_current initialization [POWERPC] Fix of_i2c include for module compilation [POWERPC] Make default cputable entries reflect selected CPU family [POWERPC] spufs: lockdep annotations for spufs_dir_close [POWERPC] spufs: don't requeue victim contex in find_victim if it's not in spu_run [POWERPC] 4xx: Fix PCI mem in sequoia DTS [POWERPC] 4xx: Add endpoint support to 4xx PCIe driver [POWERPC] 4xx: Fix problem with new TLB storage attibute fields on 440x6 core [POWERPC] spufs: spu_create should send inotify IM_CREATE event [POWERPC] spufs: handle faults while the context switch pending flag is set [POWERPC] spufs: fix concurrent delivery of class 0 & 1 exceptions [POWERPC] spufs: try to route SPU interrupts to local node [POWERPC] spufs: set SPU_CONTEXT_SWITCH_PENDING before synchronising SPU irqs [POWERPC] spufs: don't acquire state_mutex interruptible while performing callback [POWERPC] spufs: update master runcntl with context lock held [POWERPC] spufs: fix post-stopped update of MFC_CNTL register ... commit 9b013c2820c409ff84871e55e407ec2181782773 Author: Christoph Hellwig Date: Fri May 9 14:44:02 2008 +0200 m32r: use generic sys_pipe m32r can use the generic sys_pipe implementation. The current sys_pipe implementation on m32r only differes from the generic one by passing a lot of additional unused registers to sys_pipe. Reviewed and tested by Hirokazu Takata. Signed-off-by: Christoph Hellwig Acked-by: Hirokazu Takata Signed-off-by: Linus Torvalds commit 41d88d55b2891203e98d1dc0acab949ffd0af078 Author: Christoph Hellwig Date: Fri May 9 12:41:17 2008 +0200 cris: kill sys_pipe implementation The cris implementation of sys_pipe only differs from the generic one by taking the BKL before calling do_pipe which isn't not nessecary. Just kill the cris implementation and use the generic one. Signed-off-by: Christoph Hellwig Signed-off-by: Linus Torvalds commit a8f43ee7e108cecf68cac652d0a3aeedb8131220 Merge: 91e37a7... 36ca34c... Author: Linus Torvalds Date: Fri May 9 08:01:19 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: sit: Add missing kfree_skb() on pskb_may_pull() failure. tipc: Increase buffer header to support worst-case device commit 91e37a793b5a9436a2d12b2f0a8f52db3a133e1d Author: Rusty Russell Date: Fri May 9 16:25:28 2008 +1000 module: don't ignore vermagic string if module doesn't have modversions Linus found a logic bug: we ignore the version number in a module's vermagic string if we have CONFIG_MODVERSIONS set, but modversions also lets through a module with no __versions section for modprobe --force (with tainting, but still). We should only ignore the start of the vermagic string if the module actually *has* crcs to check. Rather than (say) having an entertaining hissy fit and creating a config option to work around the buggy code. Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit a5dd69707424a35d2d2cc094e870f595ad61e916 Author: Rusty Russell Date: Fri May 9 16:24:21 2008 +1000 module: be more picky about allowing missing module versions We allow missing __versions sections, because modprobe --force strips it. It makes less sense to allow sections where there's no version for a specific symbol the module uses, so disallow that. Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit 6c2545eefffc452e52302c96c955d9aa26353aa9 Author: Rusty Russell Date: Fri May 9 16:23:17 2008 +1000 module: put modversions in vermagic Don't allow a module built without versions altogether to be inserted into a kernel which expects modversions. modprobe --force will strip vermagic as well as modversions, so it won't be effected, but this will make sure that a non-CONFIG_MODVERSIONS module won't be accidentally inserted into a CONFIG_MODVERSIONS kernel. Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit da109897a142dd017172c0ce7abf0be8646f7109 Author: Lennert Buytenhek Date: Sat Apr 26 14:48:11 2008 -0400 [ARM] Orion: clean up addr-map.c after window setting code purge This patch cleans up Orion's addr-map.c a bit after all peripheral window programming code has been moved out into the relevant drivers. Signed-off-by: Lennert Buytenhek Reviewed-by: Tzachi Perelstein Acked-by: Russell King Signed-off-by: Nicolas Pitre commit b8c15a6084e84497e31e75c9cededb73af768632 Author: Lennert Buytenhek Date: Sat Apr 26 14:48:11 2008 -0400 [ARM] Orion: pass proper t_clk into mv643xx_eth Pass the Orion TCLK tick rate into the ethernet driver. Signed-off-by: Lennert Buytenhek Signed-off-by: Nicolas Pitre commit d236f5a5f77183c270223e8816804e7763463282 Author: Lennert Buytenhek Date: Sat Apr 26 14:48:11 2008 -0400 [ARM] Orion: use mv643xx_eth driver mbus window handling Make the Orion 5x platform code use the mbus window handling code that's in the mv643xx_eth driver, instead of programming the GigE block's mbus window registers by hand. Signed-off-by: Lennert Buytenhek Reviewed-by: Tzachi Perelstein Acked-by: Russell King Signed-off-by: Nicolas Pitre commit 9731e287e08b804592191d8bffaad023154af2aa Author: Roel Kluin <12o3l@tiscali.nl> Date: Fri May 9 20:05:10 2008 +0900 SH: catch negative denormal_subf1() retval in denormal_add() 'ix' is unsigned but denormal_subf1() may return a negative int. Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Paul Mundt commit 53962ecf6ebbdb5b15a8b35fbefe34430eb25609 Author: Nate Case Date: Fri May 9 02:41:17 2008 +1000 [POWERPC] Remove leftover printk in isa-bridge.c This printk() appears twice in the same function. Only the latter one in the inval_range: section appears to be legitimate. Signed-off-by: Nate Case Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 1c4a8119123e7e064344588d9a059bc0bb24e1ae Author: Huang Weiyi Date: Thu May 8 23:34:29 2008 +1000 [POWERPC] Remove duplicate #include Remove duplicate #include of in arch/powerpc/kernel/btext.c. Signed-off-by: Huang Weiyi Signed-off-by: Paul Mackerras commit f2fd25131b5a9c802faa1de1e9b5f1b06d16eec3 Author: Benjamin Herrenschmidt Date: Wed May 7 10:25:34 2008 +1000 [POWERPC] Initialize lockdep earlier This moves lockdep_init() to before udbg_early_init() as the later can call things that acquire spinlocks etc... This also makes printk safer to use earlier. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 24d9649574fbe591fdfa6b00893d4096f513e539 Author: Benjamin Herrenschmidt Date: Wed May 7 10:00:56 2008 +1000 [POWERPC] Document when printk is useable When debugging early boot problems, it's common to sprinkle printk's all over the place. However, on 64-bit powerpc, this can lead to memory corruption if done too early due to the PACA pointer and lockdep core not being initialized. This adds some comments to early_setup() that document when it is safe to do so in order to save time for whoever has to debug that stuff next. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 1b70c5a6491dd02263e6d104b72d9b536f987021 Author: Benjamin Herrenschmidt Date: Wed May 7 10:00:55 2008 +1000 [POWERPC] Fix bogus paca->_current initialization When doing lockdep, I had two patches to initialize paca->_current early, one bogus, and one correct. Unfortunately both got merged as the bad one ended up being part of the main lockdep patch by mistake. This causes memory corruption at boot. This removes the offending code. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 8af302e2dc91d4229968b8eedd4b45c0dd9fc717 Author: Jochen Friedrich Date: Wed May 7 04:40:01 2008 +1000 [POWERPC] Fix of_i2c include for module compilation Remove #ifdef CONFIG_OF_I2C as this breaks module compilation. Drivers using this header should depend on OF_I2C anyways, so there's no need to make this conditional. Signed-off-by: Jochen Friedrich Signed-off-by: Paul Mackerras commit 76bc080ef5a34aedb63e1691f28c6b42f3468e4e Author: Benjamin Herrenschmidt Date: Mon May 5 15:22:27 2008 +1000 [POWERPC] Make default cputable entries reflect selected CPU family Changes the cputable so that various CPU families that have an exclusive CONFIG_ option have a more sensible default entry to use if the specific processor hasn't been identified. This makes the kernel more generally useful when booted on an unknown PVR for things like new 4xx variants. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 2a5f2e3e6cd1ce9fb3f8b186b6bc9aa1f1497a92 Merge: 02539d7... 78be764... Author: Paul Mackerras Date: Fri May 9 20:12:06 2008 +1000 Merge branch 'for-2.6.26' of master.kernel.org:/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx into merge commit cdf7da899d840d47e075ff3bd761290653c68b77 Author: Steve Glendinning Date: Tue May 6 11:36:27 2008 +0100 sh: Fix DMAC base address for SH7709S On SH7709S, DMAC can be found at 0xa4000020 (as with most of the other sh3 cpu subtypes). Split out definition of DMAC base address from definitions of DMTE irqs. Signed-off-by: Steve Glendinning Signed-off-by: Paul Mundt commit 36ca34cc3b8335eb1fe8bd9a1d0a2592980c3f02 Author: David S. Miller Date: Thu May 8 23:40:26 2008 -0700 sit: Add missing kfree_skb() on pskb_may_pull() failure. Noticed by Paul Marks . Signed-off-by: David S. Miller commit f11c9c2fd9ab1732acd577bcf08a4a2be7f9aa65 Author: Paul Mundt Date: Fri May 9 14:13:17 2008 +0900 sh: update smc91x platform data for se7206. Follows the se7722 change. Signed-off-by: Paul Mundt commit f08269d3ecbb9300aeeb2d4272580f660afe9db9 Author: Allan Stephens Date: Thu May 8 21:38:24 2008 -0700 tipc: Increase buffer header to support worst-case device This patch increases the headroom TIPC reserves in each sk_buff to accommodate the largest possible link level device header. Signed-off-by: Allan Stephens Signed-off-by: David S. Miller commit 6cd5a86b56ec8fc8651c043bdb05ea0c662fb704 Author: Robert Reif Date: Thu May 8 21:37:30 2008 -0700 sparc video: remove open boot prom code Replace remaining open boot prom code with of. Boot tested on sparc32 and compile tested on sparc64. Signed-off-by: Robert Reif Signed-off-by: David S. Miller commit af4b3c355cbd38703471e55d11f42d8640db4118 Author: Steve French Date: Fri May 9 03:48:05 2008 +0000 [CIFS] fix build warning Signed-off-by: Steve French commit 28a4acb48586dc21d2d14a75a7aab7be78b7c83b Merge: 89f92d6... e46b66b... Author: Linus Torvalds Date: Thu May 8 19:03:26 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: (32 commits) net: Added ASSERT_RTNL() to dev_open() and dev_close(). can: Fix can_send() handling on dev_queue_xmit() failures netns: Fix arbitrary net_device-s corruptions on net_ns stop. netfilter: Kconfig: default DCCP/SCTP conntrack support to the protocol config values netfilter: nf_conntrack_sip: restrict RTP expect flushing on error to last request macvlan: Fix memleak on device removal/crash on module removal net/ipv4: correct RFC 1122 section reference in comment tcp FRTO: SACK variant is errorneously used with NewReno e1000e: don't return half-read eeprom on error ucc_geth: Don't use RX clock as TX clock. cxgb3: Use CAP_SYS_RAWIO for firmware pcnet32: delete non NAPI code from driver. fs_enet: Fix a memory leak in fs_enet_mdio_probe [netdrvr] eexpress: IPv6 fails - multicast problems 3c59x: use netstats in net_device structure 3c980-TX needs EXTRA_PREAMBLE fix warning in drivers/net/appletalk/cops.c e1000e: Add support for BM PHYs on ICH9 uli526x: fix endianness issues in the setup frame uli526x: initialize the hardware prior to requesting interrupts ... commit 89f92d6425b099538932e9b881588f87ef9f3184 Merge: 8d53910... dc5dc7e... Author: Linus Torvalds Date: Thu May 8 19:03:19 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: sparc: Fix SA_ONSTACK signal handling. commit 8d539108560ec121d59eee05160236488266221c Author: Linus Torvalds Date: Thu May 8 18:41:48 2008 -0700 Revert "PCI: remove default PCI expansion ROM memory allocation" This reverts commit 9f8daccaa05c14e5643bdd4faf5aed9cc8e6f11e, which was reported to break X startup (xf86-video-ati-6.8.0). See http://bugs.freedesktop.org/show_bug.cgi?id=15523 for details. Reported-by: Laurence Withers Cc: Gary Hade Cc: Greg KH Cc: Jan Beulich Cc: "Jun'ichi Nomura" Cc: Andrew Morton Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Linus Torvalds commit 7c5e628f95b440b69332b1ed3eb112648fc8f7ff Author: Igor Mammedov Date: Thu May 8 20:48:42 2008 +0000 [CIFS] Fixed build warning in is_ip Signed-off-by: Igor Mammedov Signed-off-by: Steve French commit c4f51b4662074c6ee26c972126a317c05f65be06 Merge: f589274... 4615112... Author: Linus Torvalds Date: Thu May 8 11:31:07 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes: sched: fix weight calculations semaphore: fix commit f589274533eb94e0217acc1db6240ce6e621bb56 Merge: 625fc3a... e3a2efa... Author: Linus Torvalds Date: Thu May 8 10:58:45 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] soc at91 minor bug fixes [ALSA] soc - at91-pcm - Fix line wrapping pcspkr: fix dependancies commit 625fc3a37511cbecfe1253867fe105c28d6a95f0 Author: Huang Weiyi Date: Thu May 8 22:48:31 2008 +0800 Remove duplicated include in net/sunrpc/svc.c we included twice. Signed-off-by: Huang Weiyi Signed-off-by: Linus Torvalds commit 19566ca6dc26600bae4b75701d4dced8d8540f16 Author: Huang Weiyi Date: Thu May 8 22:36:27 2008 +0800 fs/proc/task_mmu.c: remove duplicated include files Removed duplicated include files and in fs/proc/task_mmu.c. Signed-off-by: Huang Weiyi Signed-off-by: Linus Torvalds commit f7c83a0aaa772f8d0189fa197d77c762caaa367a Author: Ingo Molnar Date: Wed Apr 30 09:48:07 2008 +0200 Fix drivers/media build for modular builds Fix allmodconfig build bug introduced in latest -git by commit 7c91f0624a9 ("V4L/DVB(7767): Move tuners to common/tuners"): LD kernel/built-in.o LD drivers/built-in.o ld: drivers/media/built-in.o: No such file: No such file or directory which happens if all media drivers are modular: http://redhat.com/~mingo/misc/config-Wed_Apr_30_09_24_48_CEST_2008.bad In that case there's no obj-y rule connecting all the built-in.o files and the link tree breaks. The fix is to add a guaranteed obj-y rule for the core vmlinux to build. (which results in an empty object file if all media drivers are modular) Signed-off-by: Ingo Molnar Acked-by: Sam Ravnborg Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 8e1bf9ffb1aca693e3cf4a4f7144c8f70c8a08b0 Merge: 148c69b... 12137c5... Author: Linus Torvalds Date: Thu May 8 10:50:34 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/ehca: Wait for async events to finish before destroying QP IB/ipath: Fix SDMA error recovery in absence of link status change IB/ipath: Need to always request and handle PIO avail interrupts IB/ipath: Fix count of packets received by kernel IB/ipath: Return the correct opcode for RDMA WRITE with immediate IB/ipath: Fix bug that can leave sends disabled after freeze recovery IB/ipath: Only increment SSN if WQE is put on send queue IB/ipath: Only warn about prototype chip during init RDMA/cxgb3: Fix severe limit on userspace memory registration size RDMA/cxgb3: Don't add PBL memory to gen_pool in chunks commit 148c69b4b0ec267b08d3619651ae4a10a1768b04 Author: David Howells Date: Wed May 7 15:31:54 2008 +0100 MN10300: Make cpu_relax() invoke barrier() Make cpu_relax() invoke barrier() to be the same as other arches. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 7a34912d90c17a90d9fad12c4c51833b4e70707b Merge: 0f1bce4... 75065ff... Author: Linus Torvalds Date: Thu May 8 10:48:36 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: Revert "relay: fix splice problem" docbook: fix bio missing parameter block: use unitialized_var() in bio_alloc_bioset() block: avoid duplicate calls to get_part() in disk stat code cfq-iosched: make io priorities inherit CPU scheduling class as well as nice block: optimize generic_unplug_device() block: get rid of likely/unlikely predictions in merge logic vfs: splice remove_suid() cleanup cfq-iosched: fix RCU race in the cfq io_context destructor handling block: adjust tagging function queue bit locking block: sysfs store function needs to grab queue_lock and use queue_flag_*() commit 0f1bce41fed02e45f31c2409f29e69e1fedebcdc Merge: da1ba89... 9afadc4... Author: Linus Torvalds Date: Thu May 8 10:48:03 2008 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6: udf: Fix memory corruption when fs mounted with noadinicb option udf: Make udf exportable udf: fs/udf/partition.c:udf_get_pblock() mustn't be inline commit da1ba891f22835db9a2c349315c3763e9f4e4e67 Merge: 8b2cc91... 45e576b... Author: Linus Torvalds Date: Thu May 8 10:47:39 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] guest page hinting light [S390] tty3270: fix put_char fail/success conversion. [S390] compat ptrace cleanup [S390] s390mach compile warning [S390] cio: Fix parsing mechanism for blacklisted devices. [S390] cio: Remove cio_msg kernel parameter. [S390] s390-kvm: leave sie context on work. Removes preemption requirement [S390] s390: Optimize user and work TIF check commit 8b2cc917a02936c3ea7d8da46801c7b7b6233093 Author: Andrew Morton Date: Tue May 6 20:42:42 2008 -0700 drivers/scsi/dpt_i2o.c: fix build on alpha alpha: drivers/scsi/dpt_i2o.c:1997: error: implicit declaration of function 'adpt_alpha_info' drivers/scsi/dpt_i2o.c: At top level: drivers/scsi/dpt_i2o.c:2032: warning: conflicting types for 'adpt_alpha_info' drivers/scsi/dpt_i2o.c:2032: error: static declaration of 'adpt_alpha_info' follows non-static declaration drivers/scsi/dpt_i2o.c:1997: error: previous implicit declaration of 'adpt_alpha_info' was here Due to a copy-n-paste error in drivers/scsi/dpti.h. Fix that up and remove some of the many daft static-declarations-in-a-header which this driver enjoys. Cc: Miquel van Smoorenburg Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5be7a4792a31df6f2cd44bfba8da467ea20a0642 Author: Paul Menage Date: Tue May 6 20:42:41 2008 -0700 Fix cpuset sched_relax_domain_level control file Due to a merge conflict, the sched_relax_domain_level control file was marked as being handled by cpuset_read/write_u64, but the code to handle it was actually in cpuset_common_file_read/write. Since the value being written/read is in fact a signed integer, it should be treated as such; this patch adds cpuset_read/write_s64 functions, and uses them to handle the sched_relax_domain_level file. With this patch, the sched_relax_domain_level can be read and written, and the correct contents seen/updated. Signed-off-by: Paul Menage Cc: Hidetoshi Seto Cc: Paul Jackson Cc: Ingo Molnar Reviewed-by: Li Zefan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ea33e2dc2dab10960877e1649ee527c033f42c0 Author: Benjamin Herrenschmidt Date: Tue May 6 20:42:39 2008 -0700 slub: fix atomic usage in any_slab_objects() any_slab_objects() does an atomic_read on an atomic_long_t, this fixes it to use atomic_long_read instead. Signed-off-by: Benjamin Herrenschmidt Cc: Christoph Lameter Cc: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba719baeabbff5476eeb91c223e6921ba29e1490 Author: Ulrich Drepper Date: Tue May 6 20:42:38 2008 -0700 sys_pipe(): fix file descriptor leaks Remember to close the files if copy_to_user() failed. Spotted by dm.n9107@gmail.com. Signed-off-by: Ulrich Drepper Cc: DM Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1236d31a1b9fc018b85e15a3e58e3601ddc90ae Author: Samuel Thibault Date: Tue May 6 20:42:37 2008 -0700 vt: fix canonical input in UTF-8 mode For e.g. proper TTY canonical support, IUTF8 termios flag has to be set as appropriate. Linux used to not care about setting that flag for VT TTYs. This patch fixes that by activating it according to the current mode of the VT, and sets the default value according to the vt.default_utf8 parameter. Signed-off-by: Samuel Thibault Cc: Willy Tarreau Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac7b77f13f2f33270276f88ad0f427e031552e04 Author: Mattia Dongili Date: Tue May 6 20:42:35 2008 -0700 usb/asix: add Buffalo LUA-U2-GT 10/100/1000 The USB net adapter Buffalo LUA-U2-GT (0411:006e) carries a AX88178 chip. Tested on the above HW. Signed-off-by: Mattia Dongili Acked-off-by: David Hollis Cc: Greg KH Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32fb3ca8fda036936053b4bbfbc6589626cb2437 Author: Andrew Morton Date: Tue May 6 20:42:35 2008 -0700 sx.c: fix printk warnings on sparc32 drivers/char/sx.c: In function 'sx_set_real_termios': drivers/char/sx.c:973: warning: format '%u' expects type 'unsigned int', but argument 2 has type 'long unsigned int' drivers/char/sx.c:999: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'tcflag_t' drivers/char/sx.c:1012: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'tcflag_t' sparc32 seems to use weird types for its tty things. [ Fine by me but this is ancient debug and most of the debug in sx just wants deleting eventually. - Alan ] Signed-off-by: Andrew Morton Acked-by: Alan Cox Signed-off-by: Linus Torvalds commit 3168cb98be7199325de633052680098660ccaf84 Author: WANG Cong Date: Tue May 6 20:42:33 2008 -0700 uml: fix inconsistence due to tty_operation change 'put_char' of 'struct tty_operations' has changed from 'void' into 'int'. This can also shut up compiler warnings. Cc: Jeff Dike Signed-off-by: WANG Cong Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb6969e8cdef39e613b1755eff595f830b89bc82 Author: Harvey Harrison Date: Tue May 6 20:42:32 2008 -0700 misc: fix integer as NULL pointer warnings drivers/md/raid10.c:889:17: warning: Using plain integer as NULL pointer drivers/media/video/cx18/cx18-driver.c:616:12: warning: Using plain integer as NULL pointer sound/oss/kahlua.c:70:12: warning: Using plain integer as NULL pointer Signed-off-by: Harvey Harrison Cc: Neil Brown Cc: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8594303a7abc1a117b1d91412ce9b3d77ed35d02 Author: Steven Rostedt Date: Tue May 6 20:42:31 2008 -0700 fix irq flags for iuu_phoenix.c The file drivers/usb/serial/iuu_phoenix.c uses "int" for flags. This can cause hard to find bugs on some architectures. This patch converts the flags to use "long" instead. This bug was discovered by doing an allyesconfig make on the -rt kernel where checks are done to ensure all flags are of size sizeof(long). Signed-off-by: Steven Rostedt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a0f4aea878315ba87cb8a4d0dddc67832218e3f Author: Steven Rostedt Date: Tue May 6 20:42:30 2008 -0700 fix irq flags in rtc-ds1511 The file in drivers/rtc/rtc-ds1551.c uses "int" for flags. This can cause hard to find bugs on some architectures. This patch converts the flags to use "long" instead. This bug was discovered by doing an allyesconfig make on the -rt kernel where checks are done to ensure all flags are of size sizeof(long). Signed-off-by: Steven Rostedt Cc: Alessandro Zummo Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8b1ecf3d5c48ebde9fed61c7a682b2270e09d2b Author: Steven Rostedt Date: Tue May 6 20:42:29 2008 -0700 fix irq flags in saa7134 Some files in the drivers/media/video/saa7134 directory uses "int" for flags. This can cause hard to find bugs on some architectures. This patch converts the flags to use "long" instead. This bug was discovered by doing an allyesconfig make on the -rt kernel where checks are done to ensure all flags are of size sizeof(long). Signed-off-by: Steven Rostedt Acked-by: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a1f2aa1be2f7a6883ba46faa53ed82595dee2a06 Author: Steven Rostedt Date: Tue May 6 20:42:28 2008 -0700 fix irq flags in mac80211 code A file in the net/mac80211 directory uses "int" for flags. This can cause hard to find bugs on some architectures. This patch converts the flags to use "long" instead. This bug was discovered by doing an allyesconfig make on the -rt kernel where checks are done to ensure all flags are of size sizeof(long). Signed-off-by: Steven Rostedt Cc: "John W. Linville" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 55d7b68996a5064f011d681bca412b6281d2f711 Author: Tetsuo Handa Date: Tue May 6 20:42:27 2008 -0700 serial: access after NULL check in uart_flush_buffer() I noticed that static void uart_flush_buffer(struct tty_struct *tty) { struct uart_state *state = tty->driver_data; struct uart_port *port = state->port; unsigned long flags; /* * This means you called this function _after_ the port was * closed. No cookie for you. */ if (!state || !state->info) { WARN_ON(1); return; } is too late for checking state != NULL. Signed-off-by: Tetsuo Handa Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f9827bc05581b6bb34ab0c6b5d8e028f71b4e78 Author: Samuel Thibault Date: Tue May 6 20:42:26 2008 -0700 Kconfig: improved help for CONFIG_ACCESSIBILITY Add a small explanation of what accessibility is. Signed-off-by: Samuel Thibault Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc38e2ad53ca27968919dea6d7fa60575782d5a6 Author: Russell King Date: Thu May 8 16:50:39 2008 +0100 [ARM] pxa: Fix RCSR handling Related to d3930614e68bdf83a120d904c039a64e9f75dba1. RCSR is only present on PXA2xx CPUs, not on PXA3xx CPUs. Therefore, we should not be unconditionally writing to RCSR from generic code. Since we now clear the RCSR status from the SoC specific PXA PM code and before reset in the arch_reset() function, the duplication in the corgi, poodle, spitz and tosa code can be removed. Acked-by: Richard Purdie Signed-off-by: Russell King commit 46151122e0a2e80e5a6b2889f595e371fe2b600d Author: Mike Galbraith Date: Thu May 8 17:00:42 2008 +0200 sched: fix weight calculations The conversion between virtual and real time is as follows: dvt = rw/w * dt <=> dt = w/rw * dvt Since we want the fair sleeper granularity to be in real time, we actually need to do: dvt = - rw/w * l This bug could be related to the regression reported by Yanmin Zhang: | Comparing with kernel 2.6.25, sysbench+mysql(oltp, readonly) has lots | of regressions with 2.6.26-rc1: | | 1) 8-core stoakley: 28%; | 2) 16-core tigerton: 20%; | 3) Itanium Montvale: 50%. Reported-by: "Zhang, Yanmin" Signed-off-by: Mike Galbraith Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit bf726eab3711cf192405d21688a4b21e07b6188a Author: Ingo Molnar Date: Thu May 8 11:53:48 2008 +0200 semaphore: fix Yanmin Zhang reported: | Comparing with kernel 2.6.25, AIM7 (use tmpfs) has more th | regression under 2.6.26-rc1 on my 8-core stoakley, 16-core tigerton, | and Itanium Montecito. Bisect located the patch below: | | 64ac24e738823161693bf791f87adc802cf529ff is first bad commit | commit 64ac24e738823161693bf791f87adc802cf529ff | Author: Matthew Wilcox | Date: Fri Mar 7 21:55:58 2008 -0500 | | Generic semaphore implementation | | After I manually reverted the patch against 2.6.26-rc1 while fixing | lots of conflicts/errors, aim7 regression became less than 2%. i reproduced the AIM7 workload and can confirm Yanmin's findings that -.26-rc1 regresses over .25 - by over 67% here. Looking at the workload i found and fixed what i believe to be the real bug causing the AIM7 regression: it was inefficient wakeup / scheduling / locking behavior of the new generic semaphore code, causing suboptimal performance. The problem comes from the following code. The new semaphore code does this on down(): spin_lock_irqsave(&sem->lock, flags); if (likely(sem->count > 0)) sem->count--; else __down(sem); spin_unlock_irqrestore(&sem->lock, flags); and this on up(): spin_lock_irqsave(&sem->lock, flags); if (likely(list_empty(&sem->wait_list))) sem->count++; else __up(sem); spin_unlock_irqrestore(&sem->lock, flags); where __up() does: list_del(&waiter->list); waiter->up = 1; wake_up_process(waiter->task); and where __down() does this in essence: list_add_tail(&waiter.list, &sem->wait_list); waiter.task = task; waiter.up = 0; for (;;) { [...] spin_unlock_irq(&sem->lock); timeout = schedule_timeout(timeout); spin_lock_irq(&sem->lock); if (waiter.up) return 0; } the fastpath looks good and obvious, but note the following property of the contended path: if there's a task on the ->wait_list, the up() of the current owner will "pass over" ownership to that waiting task, in a wake-one manner, via the waiter->up flag and by removing the waiter from the wait list. That is all and fine in principle, but as implemented in kernel/semaphore.c it also creates a nasty, hidden source of contention! The contention comes from the following property of the new semaphore code: the new owner owns the semaphore exclusively, even if it is not running yet. So if the old owner, even if just a few instructions later, does a down() [lock_kernel()] again, it will be blocked and will have to wait on the new owner to eventually be scheduled (possibly on another CPU)! Or if another task gets to lock_kernel() sooner than the "new owner" scheduled, it will be blocked unnecessarily and for a very long time when there are 2000 tasks running. I.e. the implementation of the new semaphores code does wake-one and lock ownership in a very restrictive way - it does not allow opportunistic re-locking of the lock at all and keeps the scheduler from picking task order intelligently. This kind of scheduling, with 2000 AIM7 processes running, creates awful cross-scheduling between those 2000 tasks, causes reduced parallelism, a throttled runqueue length and a lot of idle time. With increasing number of CPUs it causes an exponentially worse behavior in AIM7, as the chance for a newly woken new-owner task to actually run anytime soon is less and less likely. Note that it takes just a tiny bit of contention for the 'new-semaphore catastrophy' to happen: the wakeup latencies get added to whatever small contention there is, and quickly snowball out of control! I believe Yanmin's findings and numbers support this analysis too. The best fix for this problem is to use the same scheduling logic that the kernel/mutex.c code uses: keep the wake-one behavior (that is OK and wanted because we do not want to over-schedule), but also allow opportunistic locking of the lock even if a wakee is already "in flight". The patch below implements this new logic. With this patch applied the AIM7 regression is largely fixed on my quad testbox: # v2.6.25 vanilla: .................. Tasks Jobs/Min JTI Real CPU Jobs/sec/task 2000 56096.4 91 207.5 789.7 0.4675 2000 55894.4 94 208.2 792.7 0.4658 # v2.6.26-rc1-166-gc0a1811 vanilla: ................................... Tasks Jobs/Min JTI Real CPU Jobs/sec/task 2000 33230.6 83 350.3 784.5 0.2769 2000 31778.1 86 366.3 783.6 0.2648 # v2.6.26-rc1-166-gc0a1811 + semaphore-speedup: ............................................... Tasks Jobs/Min JTI Real CPU Jobs/sec/task 2000 55707.1 92 209.0 795.6 0.4642 2000 55704.4 96 209.0 796.0 0.4642 i.e. a 67% speedup. We are now back to within 1% of the v2.6.25 performance levels and have zero idle time during the test, as expected. Btw., interactivity also improved dramatically with the fix - for example console-switching became almost instantaneous during this workload (which after all is running 2000 tasks at once!), without the patch it was stuck for a minute at times. There's another nice side-effect of this speedup patch, the new generic semaphore code got even smaller: text data bss dec hex filename 1241 0 0 1241 4d9 semaphore.o.before 1207 0 0 1207 4b7 semaphore.o.after (because the waiter.up complication got removed.) Longer-term we should look into using the mutex code for the generic semaphore code as well - but i's not easy due to legacies and it's outside of the scope of v2.6.26 and outside the scope of this patch as well. Bisected-by: "Zhang, Yanmin" Signed-off-by: Ingo Molnar commit 8d4a4300854f3971502e81dacd930704cb88f606 Author: Thomas Gleixner Date: Thu May 8 09:18:43 2008 +0200 x86: cleanup PAT cpu validation Move the scattered checks for PAT support to a single function. Its moved to addon_cpuid_features.c as this file is shared between 32 and 64 bit. Remove the manipulation of the PAT feature bit and just disable PAT in the PAT layer, based on the PAT bit provided by the CPU and the current CPU version/model white list. Change the boot CPU check so it works on Voyager somewhere in the future as well :) Also panic, when a secondary has PAT disabled but the primary one has alrady switched to PAT. We have no way to undo that. The white list is kept for now to ensure that we can rely on known to work CPU types and concentrate on the software induced problems instead of fighthing CPU erratas and subtle wreckage caused by not yet verified CPUs. Once the PAT code has stabilized enough, we can remove the white list and open the can of worms. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit cb3f43b22bbb5ddbf6ce3e2bac40ce6eba30aba0 Author: Andres Salomon Date: Wed May 7 13:07:38 2008 -0700 x86: geode: define geode_has_vsa2() even if CONFIG_MGEODE_LX is not set We want drivers to be able to use geode_has_vsa2 without having to worry about what model geode is being compiled for. This patch ensures that geode_has_vsa2 is always defined. Signed-off-by: Andres Salomon Cc: Jordan Crouse Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 547acec7ecc32b14c2740de3f32ce7d1b36a0f69 Author: Andres Salomon Date: Wed May 7 13:07:37 2008 -0700 x86: GEODE: cache results from geode_has_vsa2() and uninline This moves geode_has_vsa2 into a .c file, caches the result we get from the VSA virtual registers, and causes the function to no longer be inline. [akpm@linux-foundation.org: cleanup] Signed-off-by: Andres Salomon Cc: Jordan Crouse Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit ac44cc96fbc8f44c056fa37573e8447eec512b10 Author: Thomas Gleixner Date: Thu May 8 13:58:01 2008 +0200 x86: revert geode config dependency commit e26a28d190304d910ee49b81cbfe6d9241f56e86 x86: olpc build fix was a fix to a patch that was withdrawn/delayed and then erroneously commited to x86.git. Revert it. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 75065ff619e42fe35178eda863cbcddd57776794 Author: Jens Axboe Date: Thu May 8 14:06:19 2008 +0200 Revert "relay: fix splice problem" This reverts commit c3270e577c18b3d0e984c3371493205a4807db9d. commit e3a2efa67a029453b8098dba179ec2d9d8df612e Author: Patrik Sevallius Date: Thu May 8 14:04:08 2008 +0200 [ALSA] soc at91 minor bug fixes Found these two bugs while browsing through the code. The first one is a cut-n-paste bug, instead of disabling the clock when request_irq() fails, it enabled it once more. The second one fixes a debug printout, AT91_SSC_IER is write only, AT91_SSC_IMR is readable (the printed string actually says imr). Frank Mandarino was busy so he asked me to send these to this list. /Patrik Signed-off-by: Patrik Sevallius Acked-by: Frank Mandarino Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 30a717f7e951ec0260f31c0637ecf8e6268ba607 Author: Mark Brown Date: Thu May 8 14:03:30 2008 +0200 [ALSA] soc - at91-pcm - Fix line wrapping There's more checkpatch stuff to fix in the driver, this just fixes the minimum required for the following patch to be clean. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit ffebabe0bf0de9ee500d4605d6acb71e1ee3b79f Author: Alexey Dobriyan Date: Thu May 8 10:58:39 2008 +0100 [ARM] lubbock: fix compilation arch/arm/mach-pxa/lubbock.c:399: error: expected '}' before ';' token Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Russell King commit e46b66bc42b6b1430b04cc5c207ecb2b2f4553dc Author: Ben Hutchings Date: Thu May 8 02:53:17 2008 -0700 net: Added ASSERT_RTNL() to dev_open() and dev_close(). dev_open() and dev_close() must be called holding the RTNL, since they call device functions and netdevice notifiers that are promised the RTNL. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit c2ab7ac225e29006b7117d6a9fe8f3be8d98b0c2 Author: Oliver Hartkopp Date: Thu May 8 02:49:55 2008 -0700 can: Fix can_send() handling on dev_queue_xmit() failures The tx packet counting and the local loopback of CAN frames should only happen in the case that the CAN frame has been enqueued to the netdevice tx queue successfully. Thanks to Andre Naujoks for reporting this issue. Signed-off-by: Oliver Hartkopp Signed-off-by: Urs Thuermann Signed-off-by: David S. Miller commit 33f9936b2b73dba6c8685994c441c4fd30b04814 Merge: aca5139... f227ec3... Author: David S. Miller Date: Thu May 8 02:35:54 2008 -0700 Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit aca51397d01474f80cab8fc978559b45f2e453ad Author: Pavel Emelyanov Date: Thu May 8 01:24:25 2008 -0700 netns: Fix arbitrary net_device-s corruptions on net_ns stop. When a net namespace is destroyed, some devices (those, not killed on ns stop explicitly) are moved back to init_net. The problem, is that this net_ns change has one point of failure - the __dev_alloc_name() may be called if a name collision occurs (and this is easy to trigger). This allocator performs a likely-to-fail GFP_ATOMIC allocation to find a suitable number. Other possible conditions that may cause error (for device being ns local or not registered) are always false in this case. So, when this call fails, the device is unregistered. But this is *not* the right thing to do, since after this the device may be released (and kfree-ed) improperly. E. g. bridges require more actions (sysfs update, timer disarming, etc.), some other devices want to remove their private areas from lists, etc. I. e. arbitrary use-after-free cases may occur. The proposed fix is the following: since the only reason for the dev_change_net_namespace to fail is the name generation, we may give it a unique fall-back name w/o %d-s in it - the dev one, since ifindexes are still unique. So make this change, raise the failure-case printk loglevel to EMERG and replace the unregister_netdevice call with BUG(). [ Use snprintf() -DaveM ] Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit f3261aff35cbc811fee0e23eaea277f1b7286eca Author: Patrick McHardy Date: Thu May 8 01:16:04 2008 -0700 netfilter: Kconfig: default DCCP/SCTP conntrack support to the protocol config values When conntrack and DCCP/SCTP protocols are enabled, chances are good that people also want DCCP/SCTP conntrack and NAT support. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ef75d49f116bccbb80bccd423ecf3cb86c4509a5 Author: Patrick McHardy Date: Thu May 8 01:15:21 2008 -0700 netfilter: nf_conntrack_sip: restrict RTP expect flushing on error to last request Some Inovaphone PBXs exhibit very stange behaviour: when dialing for example "123", the device sends INVITE requests for "1", "12" and "123" back to back. The first requests will elicit error responses from the receiver, causing the SIP helper to flush the RTP expectations even though we might still see a positive response. Note the sequence number of the last INVITE request that contained a media description and only flush the expectations when receiving a negative response for that sequence number. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 7312096454b6cd71267eaa3d0efb408e449e9ff3 Author: Patrick McHardy Date: Thu May 8 01:13:31 2008 -0700 macvlan: Fix memleak on device removal/crash on module removal As noticed by Ben Greear, macvlan crashes the kernel when unloading the module. The reason is that it tries to clean up the macvlan_port pointer on the macvlan device itself instead of the underlying device. A non-NULL pointer is taken as indication that the macvlan_handle_frame_hook is valid, when receiving the next packet on the underlying device it tries to call the NULL hook and crashes. Clean up the macvlan_port on the correct device to fix this. Signed-off-by; Patrick McHardy Tested-by: Ben Greear Signed-off-by: David S. Miller commit c67fa02799bccca3d2e16582493da6d57812ec01 Author: J.H.M. Dassen (Ray) Date: Thu May 8 01:11:04 2008 -0700 net/ipv4: correct RFC 1122 section reference in comment RFC 1122 does not have a section 3.1.2.2. The requirement to silently discard datagrams with a bad checksum is in section 3.2.1.2 instead. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=10611 Signed-off-by: J.H.M. Dassen (Ray) Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 62ab22278308a40bcb7f4079e9719ab8b7fe11b5 Author: Ilpo Järvinen Date: Thu May 8 01:09:11 2008 -0700 tcp FRTO: SACK variant is errorneously used with NewReno Note: there's actually another bug in FRTO's SACK variant, which is the causing failure in NewReno case because of the error that's fixed here. I'll fix the SACK case separately (it's a separate bug really, though related, but in order to fix that I need to audit tp->snd_nxt usage a bit). There were two places where SACK variant of FRTO is getting incorrectly used even if SACK wasn't negotiated by the TCP flow. This leads to incorrect setting of frto_highmark with NewReno if a previous recovery was interrupted by another RTO. An eventual fallback to conventional recovery then incorrectly considers one or couple of segments as forward transmissions though they weren't, which then are not LOST marked during fallback making them "non-retransmittable" until the next RTO. In a bad case, those segments are really lost and are the only one left in the window. Thus TCP needs another RTO to continue. The next FRTO, however, could again repeat the same events making the progress of the TCP flow extremely slow. In order for these events to occur at all, FRTO must occur again in FRTOs step 3 while the key segments must be lost as well, which is not too likely in practice. It seems to most frequently with some small devices such as network printers that *seem* to accept TCP segments only in-order. In cases were key segments weren't lost, things get automatically resolved because those wrongly marked segments don't need to be retransmitted in order to continue. I found a reproducer after digging up relevant reports (few reports in total, none at netdev or lkml I know of), some cases seemed to indicate middlebox issues which seems now to be a false assumption some people had made. Bugzilla #10063 _might_ be related. Damon L. Chesser had a reproducable case and was kind enough to tcpdump it for me. With the tcpdump log it was quite trivial to figure out. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 02539d71fa98d5737bb668b02286c76241e4bac9 Author: Christoph Hellwig Date: Thu May 8 15:29:12 2008 +1000 [POWERPC] spufs: lockdep annotations for spufs_dir_close We need to acquire the parent i_mutex with I_MUTEX_PARENT to keep lockdep happy. Signed-off-by: Christoph Hellwig Signed-off-by: Jeremy Kerr commit 7a28a1549f9514f3b0dd3dde5c7337ba5d44fba3 Author: Christoph Hellwig Date: Thu May 8 15:26:32 2008 +1000 [POWERPC] spufs: don't requeue victim contex in find_victim if it's not in spu_run We should not requeue the victim context in find_victim if the owner is not in spu_run. It's first not needed because leaving the context on the spu is an optimization and second is harmful because it means the owner could re-enter spu_run when the context is on the runqueue and trip the BUG_ON in __spu_update_sched_info. Signed-off-by: Christoph Hellwig Signed-off-by: Jeremy Kerr commit 1e0f50ae11ab5838009994a3266accc1319c90d9 Author: Paul Mundt Date: Thu May 8 13:40:17 2008 +0900 sh: Stub in cpu_to_node() and friends for NUMA build. Signed-off-by: Paul Mundt commit 4370fe1c06ffa251b63b12a41e2599037a4b7f87 Author: Magnus Damm Date: Thu Apr 24 21:53:07 2008 +0900 sh: intc register modify fix Make sure register modifications stay atomic. Fixes processors with shared priority register masking. Dual bitmap masking is unaffected. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 720be99006c5830970d5b62633c92b29e4cef137 Author: Magnus Damm Date: Thu Apr 24 21:47:15 2008 +0900 sh: no high level trigger on some sh3 cpus The processor models sh7706, sh7707 and sh7709 don't support high level trigger sense configuration. And the intc code looks like crap these days so what's the difference. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 995d538a5b09e3c129d8aac559f07a0f5cc3fc3c Author: Magnus Damm Date: Thu Apr 24 21:41:12 2008 +0900 sh: clean up sh7710 and sh7720 intc tables Clean up the intc tables by removing unneeded #ifdefs. The vector list is what selects which interrupt sources that should be added, having unsupported bitfields listed is ok as long as the vector is excluded from the list. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit d58876e289b0153bf86162aa1a43249e0f0aa03d Author: Magnus Damm Date: Thu Apr 24 21:36:34 2008 +0900 sh: add interrupt ack code to sh3 This patch adds interrupt acknowledge code for external interrupt sources on sh3 processors. Only really required for edge triggered interrupts, but we ack regardless of sense configuration. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit a276e588a92737889c21e736f2bbed8aecda25fb Author: Magnus Damm Date: Thu Apr 24 21:30:09 2008 +0900 sh: unify external irq pin code for sh3 This patch unifies the sh3 external irq pin code. It buys us some savings with reduced code redundancy, but the main feature with this change is irq sense selection support for all sh3 processors. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 3d2c2f3ef7c5425d23424326a2345c385bb2d415 Author: Magnus Damm Date: Wed Apr 23 21:37:39 2008 +0900 sh-sci: avoid writing to nonexistent registers Only write to hardware in SCI_OUT() if the register size is valid. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 9b4e466f93c6b614d05139d84a930a55fe4cd781 Author: Magnus Damm Date: Wed Apr 23 21:31:14 2008 +0900 sh-sci: sh7722 lacks scsptr registers The sh7722 serial ports all lack SCSPTR registers, so mark them as nonexistent in the register table. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 346b746300f470bb4a72b66275d6a43987c5dfa6 Author: Magnus Damm Date: Wed Apr 23 21:25:29 2008 +0900 sh-sci: improve sh7722 support Improve sh7722 support for SCIF1 and SCIF2 and separate code from sh7366 implementation. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 191d4437b9c028afee1a0568d9c7e6e0b264c703 Author: Magnus Damm Date: Wed Apr 23 21:16:06 2008 +0900 sh: reset hardware from early printk Reset the transmitter and receiver when setting up early printk. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 4a65e3827bcff072e5f4a96b3f73f9f17eb7d6d8 Author: Magnus Damm Date: Wed Apr 23 21:05:11 2008 +0900 sh: drain and wait for early printk Drain by waiting for all characters to be sent, and make sure to wait a little bit after setting up the baud rate. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 0fba32136579648a5782a41e93d4a79547456a89 Author: Magnus Damm Date: Wed Apr 23 21:00:54 2008 +0900 sh: use sci_out() for early printk Use sci_out() instead of ctrl_outw() for early printk setup code. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 0146ba78b9339c27ed12545f9bdc208604354bb3 Author: Magnus Damm Date: Wed Apr 23 20:56:44 2008 +0900 sh: add memory resources to /proc/iomem Add physical memory resources such as System RAM, Kernel code/data/bss and reserved crash dump area to /proc/iomem. Same strategy as on x86. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 3d83984e99d80672b1d2e3c7dfdd393631883428 Author: Magnus Damm Date: Wed Apr 23 20:50:27 2008 +0900 sh: add kernel bss resource Do like everyone else and have a struct resource for kernel bss. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 65c07d4b3d919ec4a9a95cf576b0685bd382cdf3 Author: Magnus Damm Date: Wed Apr 23 20:24:52 2008 +0900 sh: fix sh7705 interrupt vector typo Fix sh7705 interrupt sources for vectors 0xc80 and 0xca0. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 57b84f2b674228e61d7e7b05493aa819244a7b56 Author: Magnus Damm Date: Wed Apr 23 20:18:04 2008 +0900 sh: update smc91x platform data for se7722 Select smc91x bus width using platform data for se7722 now when the smc91x header file is in place. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 8a3ee0fc8fe3a7ad89997619ceed555288cf8366 Author: Magnus Damm Date: Wed Apr 23 20:13:59 2008 +0900 sh: update smc91x platform data for MigoR Select smc91x bus width and irg flags using platform data for MigoR now when the smc91x header file is in place. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 8cd9612e9b56222cf8d851153df7060de2b36273 Author: Mathieu Desnoyers Date: Fri Apr 25 18:01:17 2008 +0900 sh: remove -traditional. Signed-off-by: Mathieu Desnoyers CC: Sam Ravnborg CC: linux-sh@vger.kernel.org Signed-off-by: Paul Mundt commit 0305794c7a86f1b25281fb9109b76fc4578f6038 Author: Paul Mundt Date: Fri Apr 25 17:58:42 2008 +0900 rtc: rtc-sh: Fixup for 64-bit resources. ioremap() and friends get the size information right, so force everything to go through there. Signed-off-by: Paul Mundt commit ae8a5348acaefc5cb1f60199ded30900d445c986 Author: Paul Mundt Date: Fri Apr 25 17:58:21 2008 +0900 sh: r7780rp: Kill off unneded ifdefs for irq setup. Signed-off-by: Paul Mundt commit e305ec80eae8c1ea117d4a39e58181643d382a52 Author: Paul Mundt Date: Fri Apr 25 16:10:53 2008 +0900 sh: rts7751r2d: Kill off unneeded ifdefs. Signed-off-by: Paul Mundt commit a1dc4b59fa4af97ae68ee214d4d72bbd7c7ec1dc Author: Paul Mundt Date: Fri Apr 25 16:08:37 2008 +0900 sh: intc_sh5 depends on cayman board for IRQ priority table. Signed-off-by: Paul Mundt commit 105eabfd5164dac5c3c825ae6bc050c1ad45ca51 Author: Paul Mundt Date: Fri Apr 25 16:07:53 2008 +0900 input: i8042: sh64 IRQ definitions depend on cayman board. Signed-off-by: Paul Mundt commit 85f094ecb1c52b9ec9a88c9d2c8beaba72b4f21f Author: Paul Mundt Date: Fri Apr 25 16:04:20 2008 +0900 sh: Enable use of the clk fwk on SH-5. Signed-off-by: Paul Mundt commit 5e2c2872bd481ee20758d7cf4860f4ad1cefff98 Author: Paul Mundt Date: Fri Apr 25 16:03:21 2008 +0900 sh64: export onchip_remap/unmap() too. Signed-off-by: Paul Mundt commit 971ac16d56301c7150771409607846f9facc2f13 Author: Paul Mundt Date: Fri Apr 25 16:01:38 2008 +0900 sh64: Some symbol exports to make the allmodconfig happier. Signed-off-by: Paul Mundt commit e35e283fa065f4c420d9469b2d87ec2e0180b784 Author: Paul Mundt Date: Fri Apr 25 14:27:08 2008 +0900 mtd: solutionengine flash map depends on solution engine mach group. Signed-off-by: Paul Mundt commit f5f826c685464301e4316a9321eb95801c653158 Author: Adrian Bunk Date: Mon Mar 31 01:40:17 2008 +0300 sh: remove the broken SH_MPC1211 support SH_MPC1211 has been marked as BROKEN for some time. Unless someone is working on reviving it now, I'd therefore suggest this patch to remove it. Signed-off-by: Adrian Bunk Signed-off-by: Paul Mundt commit 2a6b8148c050941dd61779cb0b49c5c3ea854ebf Author: Paul Mundt Date: Fri Apr 25 13:05:17 2008 +0900 sh64: Setup I/D-TLB defaults in SH-5 probe path. Signed-off-by: Paul Mundt commit 640f7487a919dec4ea98b88a050331f6a4044ea9 Author: Paul Mundt Date: Fri Apr 25 13:04:56 2008 +0900 sh: kexec and kdump depend on SUPERH32. Signed-off-by: Paul Mundt commit 824fcdded0591b879dc0d5c1873c168ca4bf6fae Author: Paul Mundt Date: Fri Apr 25 12:59:09 2008 +0900 sh64: Fix up compile warning in event tracer. Signed-off-by: Paul Mundt commit ccd805874198c248498b5f269656ec14397eeede Author: Paul Mundt Date: Fri Apr 25 12:58:40 2008 +0900 sh64: Fixup the nommu build. Signed-off-by: Paul Mundt commit 9141d30a480850d989fc245909b98670a7b66ec1 Author: Paul Mundt Date: Fri Apr 25 11:54:24 2008 +0900 sh64: fixups for xtime_lock seqlock conversion. Signed-off-by: Paul Mundt commit 1a013e2ffc1154ce8ee7076385d83c574066d83c Author: Paul Mundt Date: Fri Apr 25 11:54:06 2008 +0900 sh: sh-bios depends on SUPERH32. Signed-off-by: Paul Mundt commit dc5dc7e6d71ca9fd1ea01a1418150af3b2937489 Author: David S. Miller Date: Wed May 7 18:54:05 2008 -0700 sparc: Fix SA_ONSTACK signal handling. We need to be more liberal about the alignment of the buffer given to us by sigaltstack(). The user should not need to be mindful of all of the alignment constraints we have for the stack frame. This mirrors how we handle this situation in clone() as well. Also, we align the stack even in non-SA_ONSTACK cases so that signals due to bad stack alignment can be delivered properly. This makes such errors easier to debug and recover from. Finally, add the sanity check x86 has to make sure we won't overflow the signal stack. This fixes glibc testcases nptl/tst-cancel20.c and nptl/tst-cancelx20.c Signed-off-by: David S. Miller commit 3de2403e6659d71b36ec820dc9b942762ddfe6eb Merge: e0164af... 1e38c12... Author: Linus Torvalds Date: Wed May 7 17:04:49 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: sparc: Fix fork/clone/vfork system call restart. sparc: Fix mmap VA span checking. commit 1e38c126c9252b612697e34f43b1b3371c8ee31d Author: David S. Miller Date: Wed May 7 16:21:28 2008 -0700 sparc: Fix fork/clone/vfork system call restart. We clobber %i1 as well as %i0 for these system calls, because they give two return values. Therefore, on error, we have to restore %i1 properly or else the restart explodes since it uses the wrong arguments. This fixes glibc's nptl/tst-eintr1.c testcase. Signed-off-by: David S. Miller commit e0164af66b6ec165836d1d862b3f800890713452 Author: Auke Kok Date: Wed May 7 13:42:33 2008 -0700 [MAINTAINERS] New maintainer for Intel ethernet adapters I'm handing over maintainership to Jeff Kirsher and moving on to other Linux/Open Source work within Intel. Good luck to Jeff ;) Signed-off-by: Auke Kok Signed-off-by: Linus Torvalds commit d9cadb0d2ffed847851945a66e80d0b9d767611c Merge: 592eb99... 21f20b6... Author: Russell King Date: Wed May 7 21:54:02 2008 +0100 Merge branch 'irq-fix' of git://www.modarm9.com/gitsrc/pub/people/ukleinek/linux-2.6.git commit 592eb9997dc89cd0c8f89a505e5348bbddce70f6 Author: Robert Jarzmik Date: Wed May 7 20:39:06 2008 +0100 [ARM] 5032/1: Added cpufreq support for pxa27x CPU PXA cpus maximum frequency depends on the cpu (624 for pxa270, 520 for pxa272, 416 for pxa271). It should be provided on kernel or module start (cpu-pxa pxa27x_maxfreq parameter). Make use of cpufreq_frequency_table_cpuinfo (patch by Bill Reese provided by Philipp Zabel). Some additionnal fixes from Philipp Zabel include : * rename PXA cpufreq driver to reflect added PXA27x support * remove unused variable ramstart from PXA cpufreq driver Signed-off-by: Philipp Zabel Signed-off-by: Robert Jarzmik Signed-off-by: Russell King commit 3679389b880a318f9b9cfebab5714443796f2f71 Author: Robert Jarzmik Date: Wed May 7 20:36:34 2008 +0100 [ARM] 5031/1: Indentation correction in cpu-pxa.c. These indentation corrections prepare the pxa27x support. Signed-off-by: Robert Jarzmik Signed-off-by: Russell King commit ebdf982aaeb0005d5093b10872adce17ea12f5ba Author: Guennadi Liakhovetski Date: Mon May 5 15:31:44 2008 +0100 [ARM] 5028/1: pxafb: fix broken "backward compatibility way" in framebuffer configuration Commit 84f43c308b73a6a12128288721a1007ba4f1a8da "pxafb: introduce register independent LCD connection type for pxafb" implements compatibility mode for old style pxafb_mach_info initialization data wrongly, causing the system to Oops repeatedly - first during probe, then when drawing. Fix it and make pxafb_decode_mach_info void. Signed-off-by: Guennadi Liakhovetski Acked-by: Eric Miao Signed-off-by: Russell King commit bdd0f5f06e7647b545bec3ead2fa2a5fcdf0f0f9 Author: Davide Rizzo Date: Sat May 3 07:53:14 2008 +0100 [ARM] 4882/2: Correction for S3C2410 clkout generation This is a correction for 2 small bugs for the Samsung S3C2410 ARM9 SoC clocks generator Signed-off-by: Davide Rizzo Acked-by: Ben Dooks Signed-off-by: Russell King commit 12137c593d127c6c1a3eb050674da047682badaf Author: Stefan Roscher Date: Wed May 7 11:35:06 2008 -0700 IB/ehca: Wait for async events to finish before destroying QP This is necessary because, in a multicore environment, a race between uverbs async handler and destroy QP could occur. Signed-off-by: Stefan Roscher Signed-off-by: Roland Dreier commit ab69b3cf1219e0d07bb4ea373f36b1de38af531c Author: John Gregor Date: Wed May 7 11:01:10 2008 -0700 IB/ipath: Fix SDMA error recovery in absence of link status change What's fixed: in ipath_cancel_sends() We need to unconditionally set ABORTING. So, swap the tests so the set_bit() isn't shadowed by the &&. If we've disarmed the piobufs, then we need to unconditionally set DISARMED. So, move it out from the overly protective if at the bottom. in sdma_abort_task() Abort_task was written knowing that the SDMA engine would always be reset (and restarted) on error. A recent change broke that fundamental assumption by taking the restart portion and making it conditional on a link status change. But, SDMA can go boom without a link status change in some conditions. Signed-off-by: John Gregor Signed-off-by: Roland Dreier commit e2ab41cae418108f376ad1634d7507f56379f7a2 Author: Dave Olson Date: Wed May 7 11:00:15 2008 -0700 IB/ipath: Need to always request and handle PIO avail interrupts Now that we always use PIO for vl15 on 7220, we could get stuck forever if we happened to run out of PIO buffers from the verbs code, because the setup code wouldn't run; the interrupt was also ignored if SDMA was supported. We also have to reduce the pio update threshold if we have fewer kernel buffers than the existing threshold. Clean up the initialization a bit to get ordering safer and more sensible, and use the existing ipath_chg_kernavail call to do init, rather than doing it separately. Drop unnecessary clearing of pio buffer on pio parity error. Drop incorrect updating of pioavailshadow when exitting freeze mode (software state may not match chip state if buffer has been allocated and not yet written). If we couldn't get a kernel buffer for a while, make sure we are in sync with hardware, mainly to handle the exitting freeze case. Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 2889d1ef1240591fa4c72a6753e0a8d1c6e18140 Author: Michael Albaugh Date: Wed May 7 10:59:23 2008 -0700 IB/ipath: Fix count of packets received by kernel The loop in ipath_kreceive() that processes packets increments the loop-index 'i' once too often, because the exit condition does not depend on it, and is checked after the increment. By adding a check for !last to the iterator in the for loop, we correct that in a way that is not so likely to be re-broken by changes in the loop body. Signed-off-by: Michael Albaugh Signed-off-by: Roland Dreier commit 2bfc8e9edf200aeeca18ee44bcbf6bce65438a42 Author: Ralph Campbell Date: Wed May 7 10:58:50 2008 -0700 IB/ipath: Return the correct opcode for RDMA WRITE with immediate This patch fixes a bug in the RC responder which generates a completion entry with the wrong opcode when an RDMA WRITE with immediate is received. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit b4d390d8d219452e5d4257c87134a6934d7fabeb Author: Dave Olson Date: Wed May 7 10:57:48 2008 -0700 IB/ipath: Fix bug that can leave sends disabled after freeze recovery The semantics of cancel_sends changed, but the code using it was missed. Don't leave sends and pioavail updates disabled, and add a comment as to why the force update is needed. Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 6e87d1500713767866db0668bbcec75719576f3c Author: Ralph Campbell Date: Wed May 7 10:57:14 2008 -0700 IB/ipath: Only increment SSN if WQE is put on send queue If a send work request has immediate errors and is not put on the send queue, we shouldn't update any of the QP state. The increment of the SSN wasn't obeying this. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 5f51efc195dfb860c60fafb4e47fe4b7cad2626d Author: Michael Albaugh Date: Wed May 7 10:56:47 2008 -0700 IB/ipath: Only warn about prototype chip during init We warn about prototype chips, but the function that checks for support is also called as a result of a get_portinfo request, which can clutter the logs. Restrict warning to only appear during initialization. Signed-off-by: Michael Albaugh Signed-off-by: Roland Dreier commit ffee0259c9edcc4c0f06b60df51c461eeecad4c0 Author: Randy Dunlap Date: Wed Apr 30 09:08:54 2008 +0200 docbook: fix bio missing parameter Fix fs/bio.c kernel-doc parameter warning: Warning(linux-2.6.25-git14//fs/bio.c:972): No description found for parameter 'reading' Signed-off-by: Randy Dunlap Signed-off-by: Jens Axboe commit 67412f0e78dfbbbcb36e631d9df70c6c559d60d4 Author: Herbert Xu Date: Tue May 6 20:46:49 2008 +0800 [CRYPTO] hmac: Avoid calling virt_to_page on key When HMAC gets a key longer than the block size of the hash, it needs to feed it as input to the hash to reduce it to a fixed length. As it is HMAC converts the key to a scatter and gather list. However, this doesn't work on certain platforms if the key is not allocated via kmalloc. For example, the keys from tcrypt are stored in the rodata section and this causes it to fail with HMAC on x86-64. This patch fixes this by copying the key to memory obtained via kmalloc before hashing it. Signed-off-by: Herbert Xu commit eeae1d48c011839d9e1cdc1e8aacf0193c9d8197 Author: Jens Axboe Date: Wed May 7 13:26:27 2008 +0200 block: use unitialized_var() in bio_alloc_bioset() Better than setting idx to some random value and it silences the same bogus gcc warning. Signed-off-by: Jens Axboe commit e5e1d3cb20034a3cbcfff1f0bae12201aa2ce17e Author: Stas Sergeev Date: Wed May 7 12:39:56 2008 +0200 pcspkr: fix dependancies fix pcspkr dependancies: make the pcspkr platform drivers to depend on a platform device, and not the other way around. Signed-off-by: Stas Sergeev Acked-by: Thomas Gleixner Acked-by: Dmitry Torokhov CC: Vojtech Pavlik CC: Michael Opdenacker [fixed for 2.6.26-rc1 by tiwai] Signed-off-by: Takashi Iwai commit 5816339310b2d9623cf413d33e538b45e815da5d Author: David S. Miller Date: Wed May 7 02:24:28 2008 -0700 sparc: Fix mmap VA span checking. We should not conditionalize VA range checks on MAP_FIXED. Signed-off-by: David S. Miller commit 28f13702f03e527fcb979747a882cf366c489c50 Author: Jens Axboe Date: Wed May 7 10:15:46 2008 +0200 block: avoid duplicate calls to get_part() in disk stat code get_part() is fairly expensive, as it O(N) loops over partitions to find the right one. In lots of normal IO paths we end up looking up the partition twice, to make matters even worse. Change the stat add code to accept a passed in partition instead. Signed-off-by: Jens Axboe commit 6d63c275572d1e6f00d4fa154f16fbb0d8c2d2bf Author: Jens Axboe Date: Wed May 7 09:51:23 2008 +0200 cfq-iosched: make io priorities inherit CPU scheduling class as well as nice We currently set all processes to the best-effort scheduling class, regardless of what CPU scheduling class they belong to. Improve that so that we correctly track idle and rt scheduling classes as well. Signed-off-by: Jens Axboe commit 9afadc4b1fd25337003832c9a4668f9bd42cdda9 Author: Jan Kara Date: Tue May 6 18:26:17 2008 +0200 udf: Fix memory corruption when fs mounted with noadinicb option When UDF filesystem is mounted with noadinicb mount option, it happens that we extend an empty directory with a block. A code in udf_add_entry() didn't count with this possibility and used uninitialized data leading to memory and filesystem corruption. Add a check whether file already has some extents before operating on them. Signed-off-by: Jan Kara commit 221e583a735fc5d879d83c2a76b8ee5afcbdf146 Author: Rasmus Rohde Date: Wed Apr 30 17:22:06 2008 +0200 udf: Make udf exportable Cc: Christoph Hellwig Signed-off-by: Rasmus Rohde Signed-off-by: Jan Kara commit dbaf2c003e151ad9231778819b0977f95e20e06f Author: Jens Axboe Date: Wed May 7 09:48:17 2008 +0200 block: optimize generic_unplug_device() Original patch from Mikulas Patocka Mike Anderson was doing an OLTP benchmark on a computer with 48 physical disks mapped to one logical device via device mapper. He found that there was a slowdown on request_queue->lock in function generic_unplug_device. The slowdown is caused by the fact that when some code calls unplug on the device mapper, device mapper calls unplug on all physical disks. These unplug calls take the lock, find that the queue is already unplugged, release the lock and exit. With the below patch, performance of the benchmark was increased by 18% (the whole OLTP application, not just block layer microbenchmarks). So I'm submitting this patch for upstream. I think the patch is correct, because when more threads call simultaneously plug and unplug, it is unspecified, if the queue is or isn't plugged (so the patch can't make this worse). And the caller that plugged the queue should unplug it anyway. (if it doesn't, there's 3ms timeout). Signed-off-by: Mikulas Patocka Signed-off-by: Jens Axboe commit 2cdf79cafbd11580f5b63cd4993b45c1c4952415 Author: Jens Axboe Date: Wed May 7 09:33:55 2008 +0200 block: get rid of likely/unlikely predictions in merge logic They tend to depend a lot on the workload, so not a clear-cut likely or unlikely fit. Signed-off-by: Jens Axboe commit 7f3d4ee108c184ab215036051087aaaaa8de7661 Author: Miklos Szeredi Date: Wed May 7 09:22:39 2008 +0200 vfs: splice remove_suid() cleanup generic_file_splice_write() duplicates remove_suid() just because it doesn't hold i_mutex. But it grabs i_mutex inside splice_from_pipe() anyway, so this is rather pointless. Move locking to generic_file_splice_write() and call remove_suid() and __splice_from_pipe() instead. Signed-off-by: Miklos Szeredi Signed-off-by: Jens Axboe commit 07416d29bcf608257f1e5280642dcbe0021518a3 Author: Jens Axboe Date: Wed May 7 09:17:12 2008 +0200 cfq-iosched: fix RCU race in the cfq io_context destructor handling put_io_context() drops the RCU read lock before calling into cfq_dtor(), however we need to hold off freeing there before grabbing and dereferencing the first object on the list. So extend the rcu_read_lock() scope to cover the calling of cfq_dtor(), and optimize cfq_free_io_context() to use a new variant for call_for_each_cic() that assumes the RCU read lock is already held. Hit in the wild by Alexey Dobriyan Signed-off-by: Jens Axboe commit aa94b5371f6f898558d9fa5690cc6e4bf917a572 Author: Jens Axboe Date: Wed May 7 09:27:43 2008 +0200 block: adjust tagging function queue bit locking For most initialization purposes, calling blk_queue_init_tags() without the queue lock held is OK. Only if called for resizing an existing map must the lock be held. Ditto for tag cleanup, the maps are reference counted. So switch the general queue flag setting to the unlocked variant, but retain the locked variant for resizing. Signed-off-by: Jens Axboe commit 45e576b1c3d0020607b8666c0247164e92c7d719 Author: Martin Schwidefsky Date: Wed May 7 09:22:59 2008 +0200 [S390] guest page hinting light Use the existing arch_alloc_page/arch_free_page callbacks to do the guest page state transitions between stable and unused. Acked-by: Rik van Riel Signed-off-by: Martin Schwidefsky commit 74c76c84576eb2d806f40f6cb2fc8302c01869d8 Author: Heiko Carstens Date: Wed May 7 09:22:58 2008 +0200 [S390] tty3270: fix put_char fail/success conversion. The wrong function got coverted ;) CC drivers/s390/char/tty3270.o drivers/s390/char/tty3270.c:1747: warning: initialization from incompatible pointer type Acked-by: Alan Cox Cc: Peter Oberparleiter Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit b499d76bfd78e900039155247e1c21bfdf807b7b Author: Roland McGrath Date: Wed May 7 09:22:57 2008 +0200 [S390] compat ptrace cleanup This removes redundant arch code for generic ptrace requests already handled by ptrace_request and compat_ptrace_request. It simplifies things to just have the standard entry points, and use the generic compat_sys_ptrace. Signed-off-by: Roland McGrath Signed-off-by: Martin Schwidefsky commit c6ca1850e78d60c299ceb4c240a04af9e2384f70 Author: Martin Schwidefsky Date: Wed May 7 09:22:56 2008 +0200 [S390] s390mach compile warning Fix the following compile warning: drivers/s390/s390mach.c: In function 's390_collect_crw_info': drivers/s390/s390mach.c:77: warning: ignoring return value of 'down_interruptibl Signed-off-by: Martin Schwidefsky commit 5b8909871b80a6cc2bd21aa5262c1424e3d26339 Author: Michael Ernst Date: Wed May 7 09:22:55 2008 +0200 [S390] cio: Fix parsing mechanism for blacklisted devices. New format cssid.ssid.devno is now parsed correctly. Signed-off-by: Michael Ernst Signed-off-by: Martin Schwidefsky commit 139b83dd57248a3c8fcfb256e562311ad61478e9 Author: Michael Ernst Date: Wed May 7 09:22:54 2008 +0200 [S390] cio: Remove cio_msg kernel parameter. The only sporadically used CIO_DEBUG messages are replaced by ordinary CIO_MSG_EVENT messages. The CIO_MSG_EVENT messages debug levels are consolidated. Signed-off-by: Michael Ernst Signed-off-by: Martin Schwidefsky commit 0eaeafa10f3b2bd027e95859a6785d4c7fcc174c Author: Christian Borntraeger Date: Wed May 7 09:22:53 2008 +0200 [S390] s390-kvm: leave sie context on work. Removes preemption requirement From: Martin Schwidefsky This patch fixes a bug with cpu bound guest on kvm-s390. Sometimes it was impossible to deliver a signal to a spinning guest. We used preemption as a circumvention. The preemption notifiers called vcpu_load, which checked for pending signals and triggered a host intercept. But even with preemption, a sigkill was not delivered immediately. This patch changes the low level host interrupt handler to check for the SIE instruction, if TIF_WORK is set. In that case we change the instruction pointer of the return PSW to rerun the vcpu_run loop. The kvm code sees an intercept reason 0 if that happens. This patch adds accounting for these types of intercept as well. The advantages: - works with and without preemption - signals are delivered immediately - much better host latencies without preemption Acked-by: Carsten Otte Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 2688905e6a9b3647bf7b452cb0ff2bdb166bd8fe Author: Martin Schwidefsky Date: Wed May 7 09:22:52 2008 +0200 [S390] s390: Optimize user and work TIF check On return from syscall or interrupt, we have to check if we return to userspace (likely) and if there is work todo (less likely) to decide if we handle the work. We can optimize this check: we first check for the less likely work case and then check for userspace. This patch is also a preparation for an additional patch, that fixes a bug in KVM dealing with cpu bound guests. Signed-off-by: Martin Schwidefsky commit bf0f97025c7306870b86ccd63669aa278e7ec1c2 Author: Jens Axboe Date: Wed May 7 09:09:39 2008 +0200 block: sysfs store function needs to grab queue_lock and use queue_flag_*() Concurrency isn't a big deal here since we have requests in flight at this point, but do the locked variant to set a better example. Signed-off-by: Jens Axboe commit 45828b812ddb608ddf83eff11601f62b726d13ab Author: Mike Frysinger Date: Wed May 7 11:41:26 2008 +0800 Blackfin Serial Driver: abstract away DLAB differences into header Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 89bf6dc51ac7adb5a7d443648d9eb76909a1df8e Author: Mike Frysinger Date: Wed May 7 11:41:26 2008 +0800 Blackfin Serial Driver: macro away the IER differences between processors Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 56f87713022a6bdf00b0a50d086fdaddb54e8e5c Author: Michael Hennerich Date: Sat May 10 00:11:59 2008 +0800 [Blackfin] arch: remove useless IRQ_SW_INT defines IRQ_SW_INT1 and IRQ_SW_INT2 obsolete: Remove useless defines Fix SYS_IRQS Keep numbering scheme, so we don't break existing configurations. Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit e4f7c0bf1f2e8a1b184a33ab60e874391d70f86c Author: Mike Frysinger Date: Sat May 10 00:08:12 2008 +0800 [Blackfin] arch: protect linux/usb/musb.h include until the driver gets mainlined Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b964c592d42a7146a0b157147432da882abd3404 Author: Mike Frysinger Date: Sat May 10 00:06:10 2008 +0800 [Blackfin] arch: protect linux/usb/isp1362.h include until the driver gets mainlined Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 197fba56864082951ec52ae7d75b8177e44e471e Author: Michael Hennerich Date: Wed May 7 17:03:27 2008 +0800 [Blackfin] arch: add EBIU supporting for BF54x EZKIT SMSC LAN911x/LAN921x families embedded ethernet driver Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit d7323696a910e1c00dc055ecc8c52dfedd9bbb59 Author: Grace Pan Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Set spi flash partition on bf527 as like bf548. Signed-off-by: Grace Pan Signed-off-by: Bryan Wu commit 96a87e2f158084f237dc7f871cee0ce8b55744f1 Author: Meihui Fan Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: fix bug - Remove module will not free L1 memory used Remove module will not free L1 memory used which caused by memory access after free. This patch fixes it. Signed-off-by: Meihui Fan Signed-off-by: Bryan Wu commit 60c05953c1908626d1d8aa6e6f24bac8b1c65602 Author: Mike Frysinger Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: fix wrong header name in comment Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b9c9e788942308cf295074a68d2081f20e554eb2 Author: Michael Hennerich Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Fix BUG - spi flash on bf527 ezkit would fail at mount BF527-EZKit features 16MBit M25P16 flash Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 72268689cf28091ba202d7c5f4e7c5d613edd4ac Author: Bryan Wu Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: add twi_lcd and twi_keypad i2c board info to bf527-ezkit - JP3 should be installed for STAMP enable - IRQ for twi_keypad driver is IRQ_PF8 Signed-off-by: Bryan Wu commit d7e5dd41e394397aefd25ea412aeb47cf1b54d80 Author: Michael Hennerich Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Add physmap partition for BF527-EZkit Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 0893f1250f87e0a832f47bb60fb69ed0d52be7a3 Author: Bernd Schmidt Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: fix gdb testing regression When transferring to IRQ5 from an exception, save SYSCFG in memory across the transfer and clear the trace bit. When we get a single step exception, check whether we can safely clear the trace bit in SYSCFG. We can (and should) clear it after the first instruction of the interrupt handler; the first insn saves SYSCFG to the stack in all handlers. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit 8513c42edb3f1c91a8418fae11846c87cf7b8581 Author: Bernd Schmidt Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: disable single stepping when delivering a signal When delivering a signal, disable single stepping but call ptrace_notify if it was enabled before. The idea was taken from the x86 port. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit 7d39270d31b91647722823a0919164dea9fd4ad7 Author: Bernd Schmidt Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Delete unused (copied from m68k) entries in asm-offsets.c. Fix some really ancient code that was correct only for the m68k port. Delete unused (i.e. copied from m68k) entries in asm-offsets.c. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit ddb3f00ca0897f585128a6cca229eeb9d91fa6ef Author: Bernd Schmidt Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: In the double fault handler, set up the PT_RETI slot In the double fault handler, set up the PT_RETI slot so that we print out the correct return address in the dumping code. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit 1bfb4b21c7c39295f5535c139f796df1d51ec009 Author: Vitja Makarov Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Support for CPU_FREQ and NOHZ Singed-off-by: Vitja Makarov commit 14b03204c8060d036b04cbb18bbd6f6f311f4fed Author: Michael Hennerich Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Functional power management support: Add CPU and platform voltage scaling support Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 19d6d7d53c8ff809182a1f092d2c6918146414e9 Author: Bernd Schmidt Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: fix bug - breaking the atomic sections code. The following cleanup patch: add __user markings to a few userspace system functions mysteriously added a "&" operator that doesn't belong in there, breaking the atomic sections code. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit c2f9527979c14a21bbaa31c12a14204aabeb6e45 Author: Michael Hennerich Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Equalize include files: Add VR_CTL masks Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 67dea022d84f7c2b1e4d8c74a16fb07bf1a7d8f0 Author: Michael Hennerich Date: Wed May 7 11:41:26 2008 +0800 [Blackfin] arch: Cleanup Kconfig, fix comment and make sure we exclude CCLK=SCLK for some configurations Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit bd1d23a81083f03ac63afbb7656b87eed04d8953 Merge: c0a1811... d45100f... Author: Linus Torvalds Date: Tue May 6 18:18:43 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: Fix initrd regression. usb: Sparc build fix, make USB_ISP1760_OF depend on PPC_OF sparc64: remove online_page() sparc64: use compat_sys_utimes instead of home-grown local copy. sbus: Fix bpp driver build. sparc video: make blank use proper constant Revert "[SPARC64]: Wrap SMP IPIs with irq_enter()/irq_exit()." sparc: tcx.c remove unnecessary function commit c0a18111e571138747a98af18b3a2124df56a0d1 Author: Linus Torvalds