aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-11-02ext4: Remove useless spinlock in ext4_getattr()Theodore Ts'o1-2/+0
Linus noted, and complained to me, that doing while lots of "git diff"'s of kernel sources, these spinlocks were responsible for 27% of the spinlock cost on his two-processor system as reported by perf. Git was doing lots of parallel stats, and this was putting a lot of pressure on ext4_getattr(). A spinlock to protect a single memory-to-memory copy is pointless, so remove it. Signed-off-by: "Theodore Ts'o" <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-11-02Merge commit 'v2.6.37-rc1' into for-2.6.37Mark Brown9796-503090/+962593
2010-11-02ASoC: fix the building issue of missing codec field in 'struct snd_soc_card'Eric Miao1-1/+1
Signed-off-by: Mark Brown <[email protected]>
2010-11-02preempt: fix kernel build with !CONFIG_BKLArnd Bergmann1-2/+6
The preempt count logic tries to take the BKL into account, which breaks when CONFIG_BKL is not set. Use the same preempt_count offset that we use without CONFIG_PREEMPT when CONFIG_BKL is disabled. Signed-off-by: Arnd Bergmann <[email protected]> Reported-and-tested-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-11-02ALSA: usb-audio - Support for Power/Status LED on Creative USB X-Fi S51Mandar Joshi1-2/+13
This patch adds support for Power/Status LED on Creative USB X-Fi S51. There is just one LED on the device. The LED can either be On or it can be set to Blink. There doesn't seem to be a way to switch it off. The control message to change LED status is similar to that of audigy2nx except that the index is to be set to 0 and value is 1 for Blink and 0 for On. The 'Power LED' control in alsamixer when muted will cause the LED to Blink continuously. When unmuted the LED will stay On. The Creative driver under Windows sets the LED to blink whenever audio is muted. This LED can be treated as the CMSS LED but I figured since there is just one LED, it should be treated as the Power LED. Is that alright? I've also changed the comment "Usb X-Fi" to "Usb X-Fi S51" as there are other external X-Fi devices from Creative like Usb X-Fi Go and Xmod. The volume knob and LED support patch doesn't apply to them. Signed-off-by: Mandar Joshi <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2010-11-02ALSA: asihpi - Unsafe memory management when allocating control cacheJesper Juhl3-3/+13
I noticed that sound/pci/asihpi/hpicmn.c::hpi_alloc_control_cache() does not check the return value from kmalloc(), which may fail. If kmalloc() fails we'll dereference a null pointer and things will go bad fast. There are two memory allocations in that function and there's also the problem that the first may succeed and the second may fail and nothing is done about that either which will also go wrong down the line. Signed-off-by: Jesper Juhl <[email protected]> Acked-by: Eliot Blennerhassett <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2010-11-02Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6Steve French1-1/+1
2010-11-02FS: cifs, remove unneeded NULL testsJiri Slaby2-18/+11
Stanse found that pSMBFile in cifs_ioctl and file->f_path.dentry in cifs_user_write are dereferenced prior their test to NULL. The alternative is not to dereference them before the tests. The patch is to point out the problem, you have to decide. While at it we cache the inode in cifs_user_write to a local variable and use all over the function. Signed-off-by: Jiri Slaby <[email protected]> Cc: Steve French <[email protected]> Cc: [email protected] Cc: Jeff Layton <[email protected]> Cc: Christoph Hellwig <[email protected]> Signed-off-by: Steve French <[email protected]>
2010-11-01cxgb4vf: remove call to stop TX queues at load time.Divy Le Ray1-1/+0
Stopping TX queues at driver load time is not necessary. Signed-off-by: Casey Leedom <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01cxgb4: remove call to stop TX queues at load time.Divy Le Ray1-1/+0
Remove racy queue stopping after device registration. Signed-off-by: Dimitris Michailidis <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01cxgb3: remove call to stop TX queues at load time.Divy Le Ray1-1/+0
Remove racy queue stopping after device registration. Signed-off-by: Divy Le Ray <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01kconfig: sym_expand_string_value: allow for string termination when reallocingAndy Whitcroft1-1/+1
When expanding a parameterised string we may run out of space, this triggers a realloc. When computing the new allocation size we do not allow for the terminating '\0'. Allow for this when calculating the new length. Signed-off-by: Andy Whitcroft <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-11-01fs: logfs: Fix up MTD=y build.Paul Mundt1-1/+1
Commit 7d945a3aa760 ("logfs get_sb, part 3") broke the logfs build when CONFIG_MTD is set due to a mangled logfs_get_sb_mtd() definition. Signed-off-by: Paul Mundt <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-11-01sh: intc: Update for single IRQ reservation helper.Paul Mundt2-2/+2
Signed-off-by: Paul Mundt <[email protected]>
2010-11-01net: check queue_index from sock is valid for deviceTom Herbert1-1/+1
In dev_pick_tx recompute the queue index if the value stored in the socket is greater than or equal to the number of real queues for the device. The saved index in the sock structure is not guaranteed to be appropriate for the egress device (this could happen on a route change or in presence of tunnelling). The result of the queue index being bad would be to return a bogus queue (crash could prersumably follow). Signed-off-by: Tom Herbert <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01ASoC: Update WARN uses in wm_hubsJoe Perches1-1/+1
Add missing newlines. Signed-off-by: Joe Perches <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-11-01arch/tile: mark "hardwall" device as non-seekableChris Metcalf1-1/+1
Arnd's recent patch series tagged this device with noop_llseek, conservatively. In fact, it should be no_llseek, which we arrange for by opening the device with nonseekable_open(). Signed-off-by: Chris Metcalf <[email protected]>
2010-11-01asm-generic/stat.h: support 64-bit file time_t for stat()Chris Metcalf4-12/+16
The existing asm-generic/stat.h specifies st_mtime, etc., as a 32-value, and works well for 32-bit architectures (currently microblaze, score, and 32-bit tile). However, for 64-bit architectures it isn't sufficient to return 32 bits of time_t; this isn't good insurance against the 2037 rollover. (It also makes glibc support less convenient, since we can't use glibc's handy STAT_IS_KERNEL_STAT mode.) This change extends the two "timespec" fields for each of the three atime, mtime, and ctime fields from "int" to "long". As a result, on 32-bit platforms nothing changes, and 64-bit platforms will now work as expected. The only wrinkle is 32-bit userspace under 64-bit kernels taking advantage of COMPAT mode. For these, we leave the "struct stat64" definitions with the "int" versions of the time_t and nsec fields, so that architectures can implement compat_sys_stat64() and friends with sys_stat64(), etc., and get the expected 32-bit structure layout. This requires a field-by-field copy in the kernel, implemented by the code guarded under __ARCH_WANT_STAT64. This does mean that the shape of the "struct stat" and "struct stat64" structures is different on a 64-bit kernel, but only one of the two structures should ever be used by any given process: "struct stat" is meant for 64-bit userspace only, and "struct stat64" for 32-bit userspace only. (On a 32-bit kernel the two structures continue to have the same shape, since "long" is 32 bits.) The alternative is keeping the two structures the same shape on 64-bit kernels, which means a 64-bit time_t in "struct stat64" for 32-bit processes. This is a little unnatural since 32-bit userspace can't do anything with 64 bits of time_t information, since time_t is just "long", not "int64_t"; and in any case 32-bit userspace might expect to be running under a 32-bit kernel, which can't provide the high 32 bits anyway. In the case of a 32-bit kernel we'd then be extending the kernel's 32-bit time_t to 64 bits, then truncating it back to 32 bits again in userspace, for no particular reason. And, as mentioned above, if we have 64-bit time_t for 32-bit processes we can't easily use glibc's STAT_IS_KERNEL_STAT, since glibc's stat structure requires an embedded "struct timespec", which is a pair of "long" (32-bit) values in a 32-bit userspace. "Inventive" solutions are possible, but are pretty hacky. Signed-off-by: Chris Metcalf <[email protected]> Acked-by: Arnd Bergmann <[email protected]>
2010-11-01arch/tile: don't allow user code to set the PL via ptrace or signal returnChris Metcalf2-18/+24
The kernel was allowing any component of the pt_regs to be updated either by signal handlers writing to the stack, or by processes writing via PTRACE_POKEUSR or PTRACE_SETREGS, which meant they could set their PL up from 0 to 1 and get access to kernel code and data (or, in practice, cause a kernel panic). We now always reset the ex1 field, allowing the user to set their ICS bit only. Signed-off-by: Chris Metcalf <[email protected]>
2010-11-01arch/tile: correct double syscall restart for nested signalsChris Metcalf1-1/+5
This change is modelled on similar fixes for other architectures. The pt_regs "faultnum" member is set to the trap (fault) number that caused us to enter the kernel, and is INT_SWINT_1 for the syscall software interrupt. We already supported a pseudo value, INT_SWINT_1_SIGRETURN, that we used for the rt_sigreturn syscall; it avoided the case where one signal was handled, then we "tail-called" to another handler. This change avoids the similar case where we start to call one handler, then are preempted into another handler when we start trying to run the first handler. We clear ->faultnum after calling handle_signal(), and to be paranoid also in the case where there was no signal to deliver. Signed-off-by: Chris Metcalf <[email protected]>
2010-11-01arch/tile: avoid __must_check warning on one strict_strtol checkChris Metcalf1-2/+6
For the "initfree" boot argument it's not that big a deal, but to avoid warnings in the code, we check for a valid value before allowing the specified argument to override the kernel default. Signed-off-by: Chris Metcalf <[email protected]>
2010-11-01arch/tile: bomb raw_local_irq_ to arch_local_irq_Chris Metcalf8-18/+18
This completes the tile migration to the new naming scheme for the architecture-specific irq management code. Signed-off-by: Chris Metcalf <[email protected]>
2010-11-01arch/tile: complete migration to new kmap_atomic schemeChris Metcalf7-24/+40
This change makes KM_TYPE_NR independent of the actual deprecated list of km_type values, which are no longer used in tile code anywhere. For now we leave it set to 8, allowing that many nested mappings, and thus reserving 32MB of address space. A few remaining places using KM_* values were cleaned up as well. Signed-off-by: Chris Metcalf <[email protected]>
2010-11-01sh: clkfwk: Fix up rate rounding error handling.Paul Mundt1-2/+2
According to the linux/clk.h definition we should be handing back an errno value or a valid rate. This fixes up the case where 0 can be returned for invalid frequencies or cases where rounding has no selectable candidate. Reported-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2010-11-01USB: gadget: fix ethernet gadget crash in gether_setupDmitry Artamonow1-1/+0
Crash is triggered by commit e6484930d7 ("net: allocate tx queues in register_netdevice"), which moved tx netqueue creation into register_netdev. So now calling netif_stop_queue() before register_netdev causes an oops. Move netif_stop_queue() after net device registration to fix crash. Signed-off-by: Dmitry Artamonow <[email protected]> Signed-off-by: Denis Kirjanov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01ibm_newemac: Remove netif_stop_queue() in emac_probe().David S. Miller1-1/+0
Touching the queue state before register_netdev is not allowed, and besides the queue state before ->open() is "don't care" Reported-by: Josh Boyer <[email protected]> Reported-by: Stephen Rothwell <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01ARM: mach-shmobile: include drivers/sh/KconfigPaul Mundt1-0/+2
Many of the config bit are presently duplicated between the platforms, which will gradually cleaned up through centralization. For the moment we expose some new INTC features through drivers/sh/Kconfig that the ARM platforms presently don't enable, so make it generally available. Signed-off-by: Paul Mundt <[email protected]>
2010-11-01usbnet: fix usb_autopm_get_interface failure(v1)Ming Lei1-0/+11
Since usbnet already took usb runtime pm, we have to enable runtime pm for usb interface of usbnet, otherwise usb_autopm_get_interface may return failure and cause 'ifconfig usb0 up' failed if USB_SUSPEND(RUNTIME_PM) is enabled. Cc: David Brownell <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: "David S. Miller" <[email protected]> Cc: Ben Hutchings <[email protected]> Cc: Joe Perches <[email protected]> Cc: Oliver Neukum <[email protected]> Cc: Andy Shevchenko <[email protected]> Cc: [email protected] Signed-off-by: Ming Lei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01l2tp: kzalloc with swapped params in l2tp_dfs_seq_openDr. David Alan Gilbert1-1/+1
'sparse' spotted that the parameters to kzalloc in l2tp_dfs_seq_open were swapped. Tested on current git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git at 1792f17b7210280a3d7ff29da9614ba779cfcedb build, boots and I can see that directory, but there again I could see /sys/kernel/debug/l2tp with it swapped; I don't have any l2tp in use. Signed-off-by: Dr. David Alan Gilbert <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01trivial: fix typos concerning "function"Uwe Kleine-König1-2/+2
I'm a bit unsure about this patch. I'm unable to parse both statements. Cc: [email protected] Signed-off-by: Uwe Kleine-König <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01ASoC: Include cx20442 to SND_SOC_ALL_CODECSJarkko Nikula1-0/+1
Signed-off-by: Jarkko Nikula <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-11-01bnx2x: Update version numberYaniv Rosner1-2/+2
Update bnx2x version number. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Reset 8073 phy during common initYaniv Rosner1-0/+1
Resetting 8073 during common init is required on boards in which the 8073 reset pin is not asserted by default. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Do not enable CL37 BAM unless it is explicitly enabledYaniv Rosner2-7/+20
Enabling CL37 BAM on BCM8073 by default may lead to link issues since not all switches support it. So enable CL37 BAM only if explicitly selected. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Fix resetting BCM8726 PHY during common initYaniv Rosner1-1/+1
On BCM8726 based designs, the ports are swapped, hence the reset needs to be asserted through port0 and not port1. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Clear latch indication on link resetYaniv Rosner1-1/+10
When using latch indication for link change notification, need to clear it when port is unloaded, otherwise it might generate false indication on next load. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Fix port selection in case of E2Yaniv Rosner1-3/+12
On E2 flavor, dual-port mode, the port argument used for some functions is needed as the global port number rather than the port per path. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Fix waiting for reset complete on BCM848x3 PHYsYaniv Rosner1-3/+5
BCM848x3 requires additional of 50ms after reset done indication, instead of fixed time of 200ms Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01bnx2x: Restore appropriate delay during BMAC resetYaniv Rosner1-1/+1
Fix delay during BMAC reset from 10usec to 1ms. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-11-01ASoC: Fix SND_SOC_ALL_CODECS typo for jz4740Jarkko Nikula1-1/+1
Include jz4740.c to SND_SOC_ALL_CODECS when the dependencies are met. Signed-off-by: Jarkko Nikula <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-11-01ASoC: Remove volatility from WM8900 POWER1 registerMark Brown1-6/+0
Not all bits can be read back from POWER1 so avoid corruption when using a read/modify/write cycle by marking it non-volatile - the only thing we read back from it is the chip revision which has diagnostic value only. We can re-add later but that's a more invasive change than is suitable for a bugfix. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]> Cc: [email protected]
2010-11-01Linux 2.6.37-rc1Linus Torvalds1-2/+2
2010-11-01Merge branch 'for-linus' of git://www.jni.nu/crisLinus Torvalds2-8/+16
* 'for-linus' of git://www.jni.nu/cris: CRIS: Add paths for CRISv10 serial driver CRIS: Fix RS485 delay handling. Add missing "struct" to in sizeof.
2010-11-01Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds4-52/+73
* 'next-spi' of git://git.secretlab.ca/git/linux-2.6: spi/pl022: fix erroneous platform data in U300 spi: fixed odd static string conventions in core code spi/bfin_spi: only request GPIO on first load spi/bfin_spi: handle error/status changes after data interrupts spi: enable spi_board_info to be registered after spi_master
2010-11-01CRIS: Add paths for CRISv10 serial driverJesper Nilsson1-0/+1
Signed-off-by: Jesper Nilsson <[email protected]>
2010-11-01ALSA: lx6464es - make 1 bit signed bitfield unsignedTim Blechmann3-4/+4
converts a 1 bit signed bitfield to an unsigned. Reported-by: Dr. David Alan Gilbert <[email protected]> Signed-off-by: Tim Blechmann <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2010-11-01ALSA: cs46xx memory management fixes for cs46xx_dsp_spos_create()Jesper Juhl1-22/+11
When reading through sound/pci/cs46xx/dsp_spos.c I noticed a couple of things in cs46xx_dsp_spos_create(). It seems to me that we don't always free the various memory buffers we allocate and we also do some work (structure member assignment) early, that is completely pointless if some of the memory allocations fail and we end up just aborting the whole thing. I don't have hardware to test, so the patch below is compile tested only, but it makes the following changes: - Make sure we always free all allocated memory on failures. - Don't do pointless work assigning to structure members before we know all memory allocations, that may abort progress, have completed successfully. - Remove some trailing whitespace. Signed-off-by: Jesper Juhl <[email protected]> Tested-by: Ondrej Zary <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2010-11-01ALSA: usb - driver neglects kmalloc return value check and may deref NULLJesper Juhl1-1/+3
sound/usb/pcm.c::snd_usb_pcm_check_knot() fails to check the return value from kmalloc() and may end up dereferencing a null pointer. The patch below (compile tested only) should take care of that little problem. Signed-off-by: Jesper Juhl <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2010-11-01spi/pl022: fix erroneous platform data in U300Linus Walleij1-1/+1
This fixes an erroneous use of LSB first in the U300 machine, the PL022 used in U300 is a standard ARM core that doesn't support this bit so it should never have been set. Cc: Kevin Wells <[email protected]>OA Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2010-10-31Input: ir-keytable - fix uninitialized variable warningDmitry Torokhov1-0/+2
We were forgetting to set up proper return value in success path causing ir_getkeycode() to fail intermittently: drivers/media/IR/ir-keytable.c: In function 'ir_getkeycode': drivers/media/IR/ir-keytable.c:363: warning: 'retval' may be used uninitialized in this function Reported-by: Stefan Richter <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>