1. 12 Oct, 2009 1 commit
  2. 09 Oct, 2009 1 commit
  3. 02 Oct, 2009 1 commit
    • Arjan van de Ven's avatar
      x86: Add a Kconfig option to turn the copy_from_user warnings into errors · 63312b6a
      Arjan van de Ven authored
      For automated testing it is useful to have the option to turn
      the warnings on copy_from_user() etc checks into errors:
      
       In function ‘copy_from_user’,
           inlined from ‘fd_copyin’ at drivers/block/floppy.c:3080,
           inlined from ‘fd_ioctl’ at drivers/block/floppy.c:3503:
         linux/arch/x86/include/asm/uaccess_32.h:213:
        error: call to ‘copy_from_user_overflow’ declared with attribute error:
        copy_from_user buffer size is not provably correct
      Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      LKML-Reference: <20091002075050.4e9f7641@infradead.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      63312b6a
  4. 01 Oct, 2009 1 commit
    • Arjan van de Ven's avatar
      x86: Turn the copy_from_user check into an (optional) compile time warning · 4a312769
      Arjan van de Ven authored
      A previous patch added the buffer size check to copy_from_user().
      
      One of the things learned from analyzing the result of the previous
      patch is that in general, gcc is really good at proving that the
      code contains sufficient security checks to not need to do a
      runtime check. But that for those cases where gcc could not prove
      this, there was a relatively high percentage of real security
      issues.
      
      This patch turns the case of "gcc cannot prove" into a compile time
      warning, as long as a sufficiently new gcc is in use that supports
      this. The objective is that these warnings will trigger developers
      checking new cases out before a security hole enters a linux kernel
      release.
      Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: James Morris <jmorris@namei.org>
      Cc: Jan Beulich <jbeulich@novell.com>
      LKML-Reference: <20090930130523.348ae6c4@infradead.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      4a312769
  5. 28 Sep, 2009 1 commit
    • Arjan van de Ven's avatar
      x86: Use __builtin_memset and __builtin_memcpy for memset/memcpy · ff60fab7
      Arjan van de Ven authored
      GCC provides reasonable memset/memcpy functions itself, with __builtin_memset
      and __builtin_memcpy. For the "unknown" cases, it'll fall back to our
      current existing functions, but for fixed size versions it'll inline
      something smart. Quite often that will be the same as we have now,
      but sometimes it can do something smarter (for example, if the code
      then sets the first member of a struct, it can do a shorter memset).
      
      In addition, and this is more important, gcc knows which registers and
      such are not clobbered (while for our asm version it pretty much
      acts like a compiler barrier), so for various cases it can avoid reloading
      values.
      
      The effect on codesize is shown below on my typical laptop .config:
      
         text	   data	    bss	    dec	    hex	filename
      5605675	2041100	6525148	14171923	 d83f13	vmlinux.before
      5595849	2041668	6525148	14162665	 d81ae9	vmlinux.after
      
      Due to some not-so-good behavior in the gcc 3.x series, this change
      is only done for GCC 4.x and above.
      Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
      LKML-Reference: <20090928142122.6fc57e9c@infradead.org>
      Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
      ff60fab7
  6. 26 Sep, 2009 1 commit
    • Arjan van de Ven's avatar
      x86: Use __builtin_object_size() to validate the buffer size for copy_from_user() · 9f0cf4ad
      Arjan van de Ven authored
      gcc (4.x) supports the __builtin_object_size() builtin, which
      reports the size of an object that a pointer point to, when known
      at compile time. If the buffer size is not known at compile time, a
      constant -1 is returned.
      
      This patch uses this feature to add a sanity check to
      copy_from_user(); if the target buffer is known to be smaller than
      the copy size, the copy is aborted and a WARNing is emitted in
      memory debug mode.
      
      These extra checks compile away when the object size is not known,
      or if both the buffer size and the copy length are constants.
      Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
      LKML-Reference: <20090926143301.2c396b94@infradead.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      9f0cf4ad
  7. 25 Sep, 2009 1 commit
  8. 24 Sep, 2009 5 commits
    • Rusty Russell's avatar
      x86: Remove redundant non-NUMA topology functions · b0c6fbe4
      Rusty Russell authored
      arch/x86/include/asm/topology.h declares inline fns cpu_to_node and
      cpumask_of_node for !NUMA, even though they are then declared as
      macros by asm-generic/topology.h, which is #included just below.
      
      The macros (which are the same) end up being used; these functions
      are just confusing.
      Noticed-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
      Cc: "Greg Kroah-Hartman" <gregkh@suse.de>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Tejun Heo <tj@kernel.org>
      LKML-Reference: <200909241748.45629.rusty@rustcorp.com.au>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b0c6fbe4
    • Jason Wessel's avatar
      x86: early_printk: Protect against using the same device twice · 429a6e5e
      Jason Wessel authored
      If you use the kernel argument:
      
        earlyprintk=serial,ttyS0,115200
      
      This will cause a recursive hang printing the same line
      again and again:
      
       BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
       BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
       BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
      bootconsole [earlyser0] enabled
      Linux version 2.6.31-07863-gb64ada6b (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6b (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6b (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6b (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6b (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      
      Instead warn the end user that they specified the device
      a second time, and ignore that second console.
      Reported-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarJason Wessel <jason.wessel@windriver.com>
      Cc: Len Brown <lenb@kernel.org>
      Cc: Greg KH <gregkh@suse.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      LKML-Reference: <4ABAAB89.1080407@windriver.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      429a6e5e
    • Ingo Molnar's avatar
      Merge branch 'linus' into x86/urgent · d2ff6de5
      Ingo Molnar authored
      Merge reason: Queueing up dependent early-printk fix.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      d2ff6de5
    • Roland Dreier's avatar
      x86: Reduce verbosity of "PAT enabled" kernel message · e23a8b6a
      Roland Dreier authored
      On modern systems, the kernel prints the message
      
          x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
      
      once for every CPU.
      
      This gets kind of ridiculous on huge systems; for example, on a
      64-thread system I was lucky enough to get:
      
          dmesg| grep 'PAT enabled' | wc
               64     704    5174
      
      There is already a BUG() if non-boot CPUs have PAT capabilities
      that don't match the boot CPU, so just print the message on the
      boot CPU. (I kept the print after the wrmsrl() that enables PAT,
      so that the log output continues to mean that the system survived
      enabling PAT on the boot CPU)
      Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      LKML-Reference: <adavdj92sso.fsf@cisco.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      e23a8b6a
    • Roland Dreier's avatar
      x86: Reduce verbosity of "TSC is reliable" message · ea01c0d7
      Roland Dreier authored
      On modern systems, the kernel prints the message
      
          Skipping synchronization checks as TSC is reliable.
      
      once for every non-boot CPU.
      
      This gets kind of ridiculous on huge systems; for example, on a
      64-thread system I was lucky enough to get:
      
          $ dmesg | grep 'TSC is reliable' | wc
               63     567    4221
      
      There's no point to doing this for every CPU, since the code is
      just checking the boot CPU anyway, so change this to a
      printk_once() to make the message appears only once.
      Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
      LKML-Reference: <adazl8l2swc.fsf@cisco.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      ea01c0d7
  9. 23 Sep, 2009 28 commits
    • Linus Torvalds's avatar
      Merge branch 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6 · a724eada
      Linus Torvalds authored
      * 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6:
        Add MAINTAINERS entry for ARM/INTEL IXP4xx arch support.
        ixp4xx: arch_idle() documentation fixup
        ixp4xx: timer and clocks cleanups
      a724eada
    • Randy Dunlap's avatar
      serial core: fix new kernel-doc warnings · 1b9894f3
      Randy Dunlap authored
      Fix new kernel-doc warnings in serial_core.[hc] files.
      
        Warning(include/linux/serial_core.h:485): No description found for parameter 'uport'
        Warning(include/linux/serial_core.h:485): Excess function parameter 'port' description in 'uart_handle_dcd_change'
        Warning(include/linux/serial_core.h:511): No description found for parameter 'uport'
        Warning(include/linux/serial_core.h:511): Excess function parameter 'port' description in 'uart_handle_cts_change'
        Warning(drivers/serial/serial_core.c:2437): No description found for parameter 'uport'
        Warning(drivers/serial/serial_core.c:2437): Excess function parameter 'port' description in 'uart_add_one_port'
        Warning(drivers/serial/serial_core.c:2509): No description found for parameter 'uport'
        Warning(drivers/serial/serial_core.c:2509): Excess function parameter 'port' description in 'uart_remove_one_port'
      Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1b9894f3
    • David Howells's avatar
      MN10300: Handle removal of struct uart_info · 70430786
      David Howells authored
      Commit ebd2c8f6 removed struct uart_info and
      commit bdc04e31 further moved delta_msr_wait.
      Fix up the MN10300 on-chip serial port drivers to comply with this.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      70430786
    • Christoph Hellwig's avatar
      FRV: Use asm/generic-hardirq.h · a7077099
      Christoph Hellwig authored
      Use asm/generic-hardirq.h to build asm/hardirq.h and also remove the unused
      idle_timestamp field in irq_cpustat whilst we're at it.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a7077099
    • Linus Torvalds's avatar
      Merge branch 'x86/ptrace-syscall-exit' of... · d19110ba
      Linus Torvalds authored
      Merge branch 'x86/ptrace-syscall-exit' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-roland
      
      * 'x86/ptrace-syscall-exit' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-roland:
        x86: ptrace: sysret path should reach syscall_trace_leave
      d19110ba
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/battery-2.6 · 433c24ed
      Linus Torvalds authored
      * git://git.infradead.org/battery-2.6:
        power_supply: Add driver for the PMU on WM831x PMICs
        ds2760_battery: Fix integer overflow for time_to_empty_now
        wm97xx_battery: Convert to dev_pm_ops
        wm97xx_battery: Use irq to detect charger state
        wm97xx_battery: Use platform_data
        wm97xx-core: Pass platform_data to battery
        ds2760_battery: implement set_charged() feature
        power_supply: get_by_name and set_charged functionality
        power_supply: EXPORT_SYMBOL cleanups
        ds2760_battery: add current_accum module parameter
        ds2760_battery: handle full_active_uAh == 0 case correctly
        ds2760_battery: add rated_capacity module parameter
        ds2760_battery: export more features
        ds2760_battery: delay power supply registration
        wm8350_power: Implement charge type property
        power_supply: Add a charge_type property, and use it for olpc driver
        olpc_battery: Add an 'error' sysfs device that displays raw errors
        Revert "power: remove POWER_SUPPLY_PROP_CAPACITY_LEVEL"
      433c24ed
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · 85afd827
      Linus Torvalds authored
      * 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/radeon/r600: set correct pitch for 4 byte copy
        drm/radeon: consolidate family flags used in pciids.
      85afd827
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/mtd-2.6 · a7c367b9
      Linus Torvalds authored
      * git://git.infradead.org/mtd-2.6: (58 commits)
        mtd: jedec_probe: add PSD4256G6V id
        mtd: OneNand support for Nomadik 8815 SoC (on NHK8815 board)
        mtd: nand: driver for Nomadik 8815 SoC (on NHK8815 board)
        m25p80: Add Spansion S25FL129P serial flashes
        jffs2: Use SLAB_HWCACHE_ALIGN for jffs2_raw_{dirent,inode} slabs
        mtd: sh_flctl: register sh_flctl using platform_driver_probe()
        mtd: nand: txx9ndfmc: transfer 512 byte at a time if possible
        mtd: nand: fix tmio_nand ecc correction
        mtd: nand: add __nand_correct_data helper function
        mtd: cfi_cmdset_0002: add 0xFF intolerance for M29W128G
        mtd: inftl: fix fold chain block number
        mtd: jedec: fix compilation problem with I28F640C3B definition
        mtd: nand: fix ECC Correction bug for SMC ordering for NDFC driver
        mtd: ofpart: Check availability of reg property instead of name property
        driver/Makefile: Initialize "mtd" and "spi" before "net"
        mtd: omap: adding DMA mode support in nand prefetch/post-write
        mtd: omap: add support for nand prefetch-read and post-write
        mtd: add nand support for w90p910 (v2)
        mtd: maps: add mtd-ram support to physmap_of
        mtd: pxa3xx_nand: add single-bit error corrections reporting
        ...
      a7c367b9
    • Linus Torvalds's avatar
      15f964be
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/iommu-2.6 · b09a75fc
      Linus Torvalds authored
      * git://git.infradead.org/iommu-2.6: (23 commits)
        intel-iommu: Disable PMRs after we enable translation, not before
        intel-iommu: Kill DMAR_BROKEN_GFX_WA option.
        intel-iommu: Fix integer wrap on 32 bit kernels
        intel-iommu: Fix integer overflow in dma_pte_{clear_range,free_pagetable}()
        intel-iommu: Limit DOMAIN_MAX_PFN to fit in an 'unsigned long'
        intel-iommu: Fix kernel hang if interrupt remapping disabled in BIOS
        intel-iommu: Disallow interrupt remapping if not all ioapics covered
        intel-iommu: include linux/dmi.h to use dmi_ routines
        pci/dmar: correct off-by-one error in dmar_fault()
        intel-iommu: Cope with yet another BIOS screwup causing crashes
        intel-iommu: iommu init error path bug fixes
        intel-iommu: Mark functions with __init
        USB: Work around BIOS bugs by quiescing USB controllers earlier
        ia64: IOMMU passthrough mode shouldn't trigger swiotlb init
        intel-iommu: make domain_add_dev_info() call domain_context_mapping()
        intel-iommu: Unify hardware and software passthrough support
        intel-iommu: Cope with broken HP DC7900 BIOS
        iommu=pt is a valid early param
        intel-iommu: double kfree()
        intel-iommu: Kill pointless intel_unmap_single() function
        ...
      
      Fixed up trivial include lines conflict in drivers/pci/intel-iommu.c
      b09a75fc
    • Rusty Russell's avatar
      misc: remove redundant start_kernel prototypes · cf63ff5f
      Rusty Russell authored
      Impact: cleanup
      
      No need for redeclaration.
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cf63ff5f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 · fd8b327e
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: (41 commits)
        regulator: Add some brief design documentation
        regulator: fix voltage range in da9034 ldo12
        regulator/driver: be more specific in nanodoc for is_enabled
        regulator/lp3971: drop unnecessary initialization
        regulator: drop 'default n'
        regulator: fix typos
        regulator: fix calculation of voltage range in da9034_set_ldo12_voltage()
        regulator: update a filename in documentation
        drivers/regulator/Kconfig: fix typo (s/Usersapce/Userspace/) in REGULATOR_USERSPACE_CONSUMER description
        REGULATOR Handle positive returncode from enable
        regulator: tps650xx - build fixes for x86_64
        Fix some regulator documentation
        Regulator: Adding TPS65023 and TPS6507x in Kconfig and Makefile
        Regulator: Add TPS6507x regulator driver
        Regulator: Add TPS65023 regulator driver
        regulator: userspace: use sysfs_create_group
        regulator: Add GPIO enable control to fixed voltage regulator driver
        Regulator: Implement list_voltage for pcf50633 regulator driver.
        regulator: regulator_enable() permission checking
        regulator: Push locking for regulator_is_enabled() out
        ...
      fd8b327e
    • Linus Torvalds's avatar
      Merge branch 'fix/misc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · 0c9af280
      Linus Torvalds authored
      * 'fix/misc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
        ALSA: lx6464es - remove unused struct member
        ALSA: lx6464es - cleanup of rmh message bus function
        ALSA: pcm - Simplify snd_pcm_drain() implementation
      0c9af280
    • Linus Torvalds's avatar
      Merge branch 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · fe61c99a
      Linus Torvalds authored
      * 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
        ASoC: wm8753: fix mapping when MONOMIX is set to Stereo
        ASoC: some minor changes for AD1836 and AD1938 codec drivers
        ASoC: DaVinci: Fixes to McASP configuration
        ASoC: Blackfin I2S: fix resuming when device hasn't been used
        ASoC: Blackfin I2S: add lost platform_device parameter to resume function
        ASoC: fix typos in Blackfin headers
        ASoC: bf5xx-sport: the irq save/restore funcs take an unsigned long
        ASoC: Blackfin AC97: add a few missing multichannel define handling
      fe61c99a
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 · 9fd815b5
      Linus Torvalds authored
      * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (22 commits)
        [S390] Update default configuration.
        [S390] hibernate: Do real CPU swap at resume time
        [S390] dasd: tolerate devices that have no feature codes
        [S390] zcrypt: Do not add/remove devices in s/r callbacks
        [S390] hibernate: make sure pfn_is_nosave handles lowcore pages
        [S390] smp: introduce LC_ORDER and simplify lowcore handling
        [S390] ptrace: use common code for simple peek/poke operations
        [S390] fix disabled_wait inline assembly clobber list
        [S390] Change kernel_page_present coding style.
        [S390] hibernation: reset system after resume
        [S390] hibernation: fix guest page hinting related crash
        [S390] Get rid of init_module/delete_module compat functions.
        [S390] Convert sys_execve to function with parameters.
        [S390] Convert sys_clone to function with parameters.
        [S390] qdio: change state of all primed input buffers
        [S390] qdio: reduce per device debug messages
        [S390] cio: introduce consistent subchannel scanning
        [S390] cio: idset use actual number of ssids
        [S390] cio: dont kfree vmalloced memory
        [S390] cio: introduce css_settle
        ...
      9fd815b5
    • Linus Torvalds's avatar
      Merge branch 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip · 31bbb9b5
      Linus Torvalds authored
      * 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        itimers: Add tracepoints for itimer
        hrtimer: Add tracepoint for hrtimers
        timers: Add tracepoints for timer_list timers
        cputime: Optimize jiffies_to_cputime(1)
        itimers: Simplify arm_timer() code a bit
        itimers: Fix periodic tics precision
        itimers: Merge ITIMER_VIRT and ITIMER_PROF
      
      Trivial header file include conflicts in kernel/fork.c
      31bbb9b5
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 · ff830b8e
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
        ieee1394: sbp2: remove a workaround for Momobay FX-3A
        firewire: sbp2: remove a workaround for Momobay FX-3A
        firewire: sbp2: fix status reception
        firewire: core: fix topology map response handler
        firewire: core: fix race with parallel PCI device probe
        firewire: core: header file cleanup
        firewire: ohci: fix Self ID Count register mask (safeguard against buffer overflow)
        ieee1394: raw1394: Do not leak memory on failed trylock.
      ff830b8e
    • Linus Torvalds's avatar
      Merge branch 'sfi-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-sfi-2.6 · 746942d0
      Linus Torvalds authored
      * 'sfi-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-sfi-2.6:
        SFI: remove unneeded includes
        sfi: Remove unused code
        SFI: Hook PCI MMCONFIG
        x86: add arch-specific SFI support
        SFI: add capability to parse ACPI tables
        SFI: add platform-independent core support
        SFI: create linux/sfi.h
        SFI: Simple Firmware Interface - MAINTAINERS, Kconfig
      746942d0
    • Linus Torvalds's avatar
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 · c11f6c82
      Linus Torvalds authored
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (119 commits)
        ACPI: don't pass handle for fixed hardware notifications
        ACPI: remove null pointer checks in deferred execution path
        ACPI: simplify deferred execution path
        acerhdf: additional BIOS versions
        acerhdf: convert to dev_pm_ops
        acerhdf: fix fan control for AOA150 model
        thermal: add missing Kconfig dependency
        acpi: switch /proc/acpi/{debug_layer,debug_level} to seq_file
        hp-wmi: fix rfkill memory leak on unload
        ACPI: remove unnecessary #ifdef CONFIG_DMI
        ACPI: linux/acpi.h should not include linux/dmi.h
        hwmon driver for ACPI 4.0 power meters
        topstar-laptop: add new driver for hotkeys support on Topstar N01
        thinkpad_acpi: fix rfkill memory leak on unload
        thinkpad-acpi: report brightness events when required
        thinkpad-acpi: don't poll by default any of the reserved hotkeys
        thinkpad-acpi: Fix procfs hotkey reset command
        thinkpad-acpi: deprecate hotkey_bios_mask
        thinkpad-acpi: hotkey poll fixes
        thinkpad-acpi: be more strict when detecting a ThinkPad
        ...
      c11f6c82
    • Linus Torvalds's avatar
      Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 40aba218
      Linus Torvalds authored
      * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        i2c: Clearly mark ACPI drivers as such
        i2c: Add driver for SMBus Control Method Interface
        i2c-pnx: Correct use of request_region/request_mem_region
        MAINTAINERS: Add maintainer for AT24 and PCA9564/PCA9665
        i2c-piix4: Add AMD SB900 SMBus device ID
        i2c/chips: Remove deprecated pcf8574 driver
        i2c/chips: Remove deprecated pca9539 driver
        i2c/chips: Remove deprecated pcf8575 driver
        gpio/pcf857x: Copy i2c_device_id from old pcf8574 driver
        i2c/scx200_acb: Provide more information on bus errors
        i2c: Provide compatibility links for i2c adapters
        i2c: Convert i2c adapters to bus devices
        i2c: Convert i2c clients to a device type
        i2c/tsl2550: Use combined SMBus transactions
        i2c-taos-evm: Switch echo off to improve performance
        i2c: Drop unused i2c_driver.id field
      40aba218
    • Linus Torvalds's avatar
      Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 · b64ada6b
      Linus Torvalds authored
      * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (85 commits)
        ocfs2: Use buffer IO if we are appending a file.
        ocfs2: add spinlock protection when dealing with lockres->purge.
        dlmglue.c: add missed mlog lines
        ocfs2: __ocfs2_abort() should not enable panic for local mounts
        ocfs2: Add ioctl for reflink.
        ocfs2: Enable refcount tree support.
        ocfs2: Implement ocfs2_reflink.
        ocfs2: Add preserve to reflink.
        ocfs2: Create reflinked file in orphan dir.
        ocfs2: Use proper parameter for some inode operation.
        ocfs2: Make transaction extend more efficient.
        ocfs2: Don't merge in 1st refcount ops of reflink.
        ocfs2: Modify removing xattr process for refcount.
        ocfs2: Add reflink support for xattr.
        ocfs2: Create an xattr indexed block if needed.
        ocfs2: Call refcount tree remove process properly.
        ocfs2: Attach xattr clusters to refcount tree.
        ocfs2: Abstract ocfs2 xattr tree extend rec iteration process.
        ocfs2: Abstract the creation of xattr block.
        ocfs2: Remove inode from ocfs2_xattr_bucket_get_name_value.
        ...
      b64ada6b
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 · be90a49c
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (142 commits)
        USB: Fix sysfs paths in documentation
        USB: skeleton: fix coding style issues.
        USB: O_NONBLOCK in read path of skeleton
        USB: make usb-skeleton honor O_NONBLOCK in write path
        USB: skel_read really sucks royally
        USB: Add hub descriptor update hook for xHCI
        USB: xhci: Support USB hubs.
        USB: xhci: Set multi-TT field for LS/FS devices under hubs.
        USB: xhci: Set route string for all devices.
        USB: xhci: Fix command wait list handling.
        USB: xhci: Change how xHCI commands are handled.
        USB: xhci: Refactor input device context setup.
        USB: xhci: Endpoint representation refactoring.
        USB: gadget: ether needs to select CRC32
        USB: fix USBTMC get_capabilities success handling
        USB: fix missing error check in probing
        USB: usbfs: add USBDEVFS_URB_BULK_CONTINUATION flag
        USB: support for autosuspend in sierra while online
        USB: ehci-dbgp,ehci: Allow dbpg to work with suspend/resume
        USB: ehci-dbgp,documentation: Documentation updates for ehci-dbgp
        ...
      be90a49c
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus · 1f0918d0
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
        lguest: don't force VIRTIO_F_NOTIFY_ON_EMPTY
        lguest: cleanup for map_switcher()
        lguest: use PGDIR_SHIFT for PAE code to allow different PAGE_OFFSET
        lguest: use set_pte/set_pmd uniformly for real page table entries
        lguest: move panic notifier registration to its expected place.
        virtio_blk: add support for cache flush
        virtio: add virtio IDs file
        virtio: get rid of redundant VIRTIO_ID_9P definition
        virtio: make add_buf return capacity remaining
        virtio_pci: minor MSI-X cleanups
      1f0918d0
    • Hugh Dickins's avatar
      nommu: fix two build breakages · 4266c97a
      Hugh Dickins authored
      My 58fa879e "mm: FOLL flags for GUP flags"
      broke CONFIG_NOMMU build by forgetting to update nommu.c foll_flags type:
      
        mm/nommu.c:171: error: conflicting types for `__get_user_pages'
        mm/internal.h:254: error: previous declaration of `__get_user_pages' was here
        make[1]: *** [mm/nommu.o] Error 1
      
      My 03f6462a "mm: move highest_memmap_pfn"
      broke CONFIG_NOMMU build by forgetting to add a nommu.c highest_memmap_pfn:
      
        mm/built-in.o: In function `memmap_init_zone':
        (.meminit.text+0x326): undefined reference to `highest_memmap_pfn'
        mm/built-in.o: In function `memmap_init_zone':
        (.meminit.text+0x32d): undefined reference to `highest_memmap_pfn'
      
      Fix both breakages, and give myself 30 lashes (ouch!)
      Reported-by: default avatarMichal Simek <michal.simek@petalogix.com>
      Signed-off-by: default avatarHugh Dickins <hugh.dickins@tiscali.co.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4266c97a
    • Heiko Carstens's avatar
      fs: change sys_truncate length parameter type · 4fd8da8d
      Heiko Carstens authored
      For this system call user space passes a signed long length parameter,
      while the kernel side takes an unsigned long parameter and converts it
      later to signed long again.
      
      This has led to bugs in compat wrappers see e.g.  dd90bbd5 "powerpc: Add
      compat_sys_truncate".  The s390 compat wrapper for this functions is
      broken as well since it also performs zero extension instead of sign
      extension for the length parameter.
      
      In addition if hpa comes up with an automated way of generating
      compat wrappers it would generate a wrong one here.
      
      So change the length parameter from unsigned long to long.
      
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Christoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4fd8da8d
    • Ingo Molnar's avatar
      x86: mce: Use safer ways to access MCE registers · 11868a2d
      Ingo Molnar authored
      Use rdmsrl_safe() when accessing MCE registers. While in
      theory we always 'know' which ones are safe to access from
      the capability bits, there's a lot of hardware variations
      and reality might differ from theory, as it did in this case:
      
         http://bugzilla.kernel.org/show_bug.cgi?id=14204
      
      [    0.010016] mce: CPU supports 5 MCE banks
      [    0.011029] general protection fault: 0000 [#1]
      [    0.011998] last sysfs file:
      [    0.011998] Modules linked in:
      [    0.011998]
      [    0.011998] Pid: 0, comm: swapper Not tainted (2.6.31_router #1) HP Vectra
      [    0.011998] EIP: 0060:[<c100d9b9>] EFLAGS: 00010246 CPU: 0
      [    0.011998] EIP is at mce_rdmsrl+0x19/0x60
      [    0.011998] EAX: 00000000 EBX: 00000001 ECX: 00000407 EDX: 08000000
      [    0.011998] ESI: 00000000 EDI: 8c000000 EBP: 00000405 ESP: c17d5eac
      
      So WARN_ONCE() instead of crashing the box.
      
      ( also fix a number of stylistic inconsistencies in the code. )
      
      Note, we might still crash in wrmsrl() if we get that far, but
      we shouldnt if the registers are truly inaccessible.
      Reported-by: default avatarGNUtoo <GNUtoo@no-log.org>
      Cc: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
      Cc: Huang Ying <ying.huang@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      LKML-Reference: <bug-14204-5438@http.bugzilla.kernel.org/>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      11868a2d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score · a6e995ad
      Linus Torvalds authored
      * 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score:
        score: update email address in MAINTAINERS.
        score: Cleanup linker script using new macros.
        score: Make THREAD_SIZE available to assembly files.
        score: Make PAGE_SIZE available to assembly.
      a6e995ad
    • Linus Torvalds's avatar
      Merge branch 'x86/orig_ax' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-roland · 547ad5ac
      Linus Torvalds authored
      * 'x86/orig_ax' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-roland:
        x86: ptrace: set TS_COMPAT when 32-bit ptrace sets orig_eax>=0
        x86: ptrace: do not sign-extend orig_ax on write
        x86: syscall_get_nr returns int
        asm-generic: syscall_get_nr returns int
      547ad5ac