1. 05 Apr, 2012 1 commit
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping · 58bca4a8
      Linus Torvalds authored
      Pull DMA mapping branch from Marek Szyprowski:
       "Short summary for the whole series:
      
        A few limitations have been identified in the current dma-mapping
        design and its implementations for various architectures.  There exist
        more than one function for allocating and freeing the buffers:
        currently these 3 are used dma_{alloc, free}_coherent,
        dma_{alloc,free}_writecombine, dma_{alloc,free}_noncoherent.
      
        For most of the systems these calls are almost equivalent and can be
        interchanged.  For others, especially the truly non-coherent ones
        (like ARM), the difference can be easily noticed in overall driver
        performance.  Sadly not all architectures provide implementations for
        all of them, so the drivers might need to be adapted and cannot be
        easily shared between different architectures.  The provided patches
        unify all these functions and hide the differences under the already
        existing dma attributes concept.  The thread with more references is
        available here:
      
          http://www.spinics.net/lists/linux-sh/msg09777.html
      
        These patches are also a prerequisite for unifying DMA-mapping
        implementation on ARM architecture with the common one provided by
        dma_map_ops structure and extending it with IOMMU support.  More
        information is available in the following thread:
      
          http://thread.gmane.org/gmane.linux.kernel.cross-arch/12819
      
        More works on dma-mapping framework are planned, especially in the
        area of buffer sharing and managing the shared mappings (together with
        the recently introduced dma_buf interface: commit d15bd7ee
        "dma-buf: Introduce dma buffer sharing mechanism").
      
        The patches in the current set introduce a new alloc/free methods
        (with support for memory attributes) in dma_map_ops structure, which
        will later replace dma_alloc_coherent and dma_alloc_writecombine
        functions."
      
      People finally started piping up with support for merging this, so I'm
      merging it as the last of the pending stuff from the merge window.
      Looks like pohmelfs is going to wait for 3.5 and more external support
      for merging.
      
      * 'for-linus' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:
        common: DMA-mapping: add NON-CONSISTENT attribute
        common: DMA-mapping: add WRITE_COMBINE attribute
        common: dma-mapping: introduce mmap method
        common: dma-mapping: remove old alloc_coherent and free_coherent methods
        Hexagon: adapt for dma_map_ops changes
        Unicore32: adapt for dma_map_ops changes
        Microblaze: adapt for dma_map_ops changes
        SH: adapt for dma_map_ops changes
        Alpha: adapt for dma_map_ops changes
        SPARC: adapt for dma_map_ops changes
        PowerPC: adapt for dma_map_ops changes
        MIPS: adapt for dma_map_ops changes
        X86 & IA64: adapt for dma_map_ops changes
        common: dma-mapping: introduce generic alloc() and free() methods
      58bca4a8
  2. 04 Apr, 2012 16 commits
    • Linus Torvalds's avatar
      Merge tag 'pm-for-3.4-part-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 64ebe987
      Linus Torvalds authored
      Pull more power management updates from Rafael Wysocki:
       - Patch series that hopefully fixes races between the freezer and
         request_firmware() and request_firmware_nowait() for good, with two
         cleanups from Stephen Boyd on top.
       - Runtime PM fix from Alan Stern preventing tasks from getting stuck
         indefinitely in the runtime PM wait queue.
       - Device PM QoS update from MyungJoo Ham introducing a new variant of
         pm_qos_update_request() allowing the callers to specify a timeout.
      
      * tag 'pm-for-3.4-part-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM / QoS: add pm_qos_update_request_timeout() API
        firmware_class: Move request_firmware_nowait() to workqueues
        firmware_class: Reorganize fw_create_instance()
        PM / Sleep: Mitigate race between the freezer and request_firmware()
        PM / Sleep: Move disabling of usermode helpers to the freezer
        PM / Hibernate: Disable usermode helpers right before freezing tasks
        firmware_class: Do not warn that system is not ready from async loads
        firmware_class: Split _request_firmware() into three functions, v2
        firmware_class: Rework usermodehelper check
        PM / Runtime: don't forget to wake up waitqueue on failure
      64ebe987
    • Linus Torvalds's avatar
      Merge branch 'selinux' ("struct common_audit_data" sanitizer) · a5149bf3
      Linus Torvalds authored
      Merge common_audit_data cleanup patches from Eric Paris.
      
      This is really too late, but it's a long-overdue cleanup of the costly
      wrapper functions for the security layer.
      
      The "struct common_audit_data" is used all over in critical paths,
      allocated and initialized on the stack.  And used to be much too large,
      causing not only unnecessarily big stack frames but the clearing of the
      (mostly useless) data was also very visible in profiles.
      
      As a particular example, in one microbenchmark for just doing "stat()"
      over files a lot, selinux_inode_permission() used 7% of the CPU time.
      That's despite the fact that it doesn't actually *do* anything: it is
      just a helper wrapper function in the selinux security layer.
      
      This patch-series shrinks "struct common_audit_data" sufficiently that
      code generation for these kinds of wrapper functions is improved
      noticeably, and we spend much less time just initializing data that we
      will never use.
      
      The functions still get called all the time, and it still shows up at
      3.5+% in my microbenchmark, but it's quite a bit lower down the list,
      and much less noticeable.
      
      * Emailed patches from Eric Paris <eparis@redhat.com>:
        lsm_audit: don't specify the audit pre/post callbacks in 'struct common_audit_data'
        SELinux: do not allocate stack space for AVC data unless needed
        SELinux: remove avd from slow_avc_audit()
        SELinux: remove avd from selinux_audit_data
        LSM: shrink the common_audit_data data union
        LSM: shrink sizeof LSM specific portion of common_audit_data
      a5149bf3
    • Linus Torvalds's avatar
      Merge tag 'regmap-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 3ff8f932
      Linus Torvalds authored
      Pull a single regmap fix from Mark Brown:
       "A simple bug that's been lurking for a while but not terribly visible
        since a high proportion of chips have no register 0 so the normal
        failure is that we end up doing a bit of extra I/O."
      
      * tag 'regmap-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: rbtree: Fix register default look-up in sync
      3ff8f932
    • Linus Torvalds's avatar
      Merge tag 'regulator-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 4a1e8ebc
      Linus Torvalds authored
      Pull regulator fixes from Mark Brown:
       "A bunch of smallish fixes that came up during the merge window as
        things got more testing - even more fixes from Axel, a fix for error
        handling in more complex systems using -EPROBE_DEFER and a couple of
        small fixes for the new dummy regulators."
      
      * tag 'regulator-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: Remove non-existent parameter from fixed-helper.c kernel doc
        regulator: Fix setting new voltage in s5m8767_set_voltage
        regulator: fix sysfs name collision between dummy and fixed dummy regulator
        regulator: Fix deadlock on removal of regulators with supplies
        regulator: Fix comments in include/linux/regulator/machine.h
        regulator: Only update [LDOx|DCx]_HIB_MODE bits in wm8350_[ldo|dcdc]_set_suspend_disable
        regulator: Fix setting low power mode for wm831x aldo
        regulator: Return microamps in wm8350_isink_get_current
        regulator: wm8350: Fix the logic to choose best current limit setting
        regulator: wm831x-isink: Fix the logic to choose best current limit setting
        regulator: wm831x-dcdc: Fix the logic to choose best current limit setting
        regulator: anatop: patching to device-tree property "reg".
        regulator: Do proper shift to set correct bit for DC[2|5]_HIB_MODE setting
        regulator: Fix restoring pmic.dcdcx_hib_mode settings in wm8350_dcdc_set_suspend_enable
        regulator: Fix unbalanced lock/unlock in mc13892_regulator_probe error path
        regulator: Fix set and get current limit for wm831x_buckv
        regulator: tps6586x: Fix list minimal voltage setting for LDO0
      4a1e8ebc
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 66cfb327
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar.
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/p4: Add format attributes
        tracing, sched, vfs: Fix 'old_pid' usage in trace_sched_process_exec()
      66cfb327
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 67422598
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar.
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, kvm: Call restore_sched_clock_state() only after %gs is initialized
        x86: Use -mno-avx when available
        x86: Remove the ancient and deprecated disable_hlt() and enable_hlt() facility
        x86: Preserve lazy irq disable semantics in fixup_irqs()
      67422598
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 20d9d9a0
      Linus Torvalds authored
      Pull hwmon patches from Guenter Roeck:
       - Fix crash in ad7314 driver
       - Add support for AMD Trinity CPUs to k10temp driver
       - Fix __initdata/__initconst mixup in w83627ehf driver
       - Fix runtime warnings in acpi_power_meter and max6639 drivers
       - Fix build warnings in adm1031, f75375s, sht15, and gpio-fan drivers
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (ad7314) Adds missing spi_dev initialization
        hwmon: (k10temp) Add support for AMD Trinity CPUs
        hwmon: (w83627ehf) mark const init data with __initconst instead of __initdata
        hwmon: (acpi_power_meter) fix lockdep spew due to non-static lock class
        hwmon: (adm1031) Fix compiler warning
        hwmon: (f75375s) Fix warning message seen in some configurations
        hwmon: (max6639) Convert to dev_pm_ops
        hwmon: (sht15) Fix Kconfig dependencies
        hwmon: (gpio-fan) Fix Kconfig dependencies
      20d9d9a0
    • Linus Torvalds's avatar
      Merge tag 'mce-fix-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 7114a72f
      Linus Torvalds authored
      Pull MCE fixlet from Borislav Petkov:
       "One fix which makes MCE decoding much more "liberal" wrt families."
      
      * tag 'mce-fix-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        MCE, AMD: Drop too granulary family model checks
      7114a72f
    • Linus Torvalds's avatar
      Merge tag 'md-3.4-fixes' of git://neil.brown.name/md · 36bbffc0
      Linus Torvalds authored
      Pull assorted md fixes from Neil Brown:
       - some RAID levels didn't clear up properly if md_integrity_register
        failed
       - a 'check' of RAID5/RAID6 doesn't actually read any data since a
         recent patch - so fix that (and mark for -stable)
       - a couple of other minor bugs.
      
      * tag 'md-3.4-fixes' of git://neil.brown.name/md:
        md/raid1,raid10: don't compare excess byte during consistency check.
        md/raid5: Fix a bug about judging if the operation is syncing or replacing
        md/raid1:Remove unnecessary rcu_dereference(conf->mirrors[i].rdev).
        md: Avoid OOPS when reshaping raid1 to raid0
        md/raid5: fix handling of bad blocks during recovery.
        md/raid1: If md_integrity_register() failed,run() must free the mem
        md/raid0: If md_integrity_register() fails, raid0_run() must free the mem.
        md/linear: If md_integrity_register() fails, linear_run() must free the mem.
      36bbffc0
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm · 20a2a811
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
       "Nothing too big here, just small fixes."
      
      * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
        ARM: fix more fallout from 9f97da78 (Disintegrate asm/system.h for ARM)
        ARM: fix bios32.c build warning
        ARM: 7337/1: ptrace: fix ptrace_read_user for !CONFIG_MMU platforms
        ARM: fix missing bug.h include in arch/arm/kernel/insn.c
        ARM: sa11x0: fix build errors from DMA engine API updates
      20a2a811
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · a92bc5a6
      Linus Torvalds authored
      Pull Sparc fixes from David Miller:
       "One build regression and one serial probe regression fix on sparc."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        serial/sunzilog: fix keyboard on SUN SPARCstation
        sparc: pgtable_64: change include order
      a92bc5a6
    • Paul Gortmaker's avatar
      avr32: fix nop compile fails from system.h split up · 167d8215
      Paul Gortmaker authored
      To fix:
      
        In file included from kernel/exit.c:61:
        arch/avr32/include/asm/mmu_context.h: In function 'enable_mmu':
        arch/avr32/include/asm/mmu_context.h:135: error: implicit declaration of function 'nop'
      
      It needs an include of the new file created in commit ae473946
      ("Disintegrate asm/system.h for AVR32"), but since that file only
      contains "nop", and since other arch already have precedent of putting
      nop in asm/barrier.h we should just delete the new file and put nop in
      barrier.h
      Suggested-and-acked-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      167d8215
    • Linus Torvalds's avatar
      Revert "nouveau/bios: Fix tracking of BIOS image data" · f3718a81
      Linus Torvalds authored
      This reverts commit d06221c0.
      
      It turns out to trigger the "BUG_ON(!PageCompound(page))" in kfree(),
      apparently because the code ends up trying to free somethng that was
      never kmalloced in the first place.
      
      BenH points out that the patch was untested and wasn't meant to go into
      the upstream kernel that quickly in the first place.
      
      Backtrace:
        bios_shadow
        bios_shadow_prom
        nv_mask
        init_io
        bios_shadow
        nouveau_bios_init
        NVReadVgaCrtc
        NVSetOwner
        nouveau_card_init
        nouveau_load
      Reported-by: default avatarMeelis Roos <mroos@linux.ee>
      Requested-by: default avatarDave Airlie <airlied@gmail.com>
      Acked-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f3718a81
    • Borislav Petkov's avatar
      MCE, AMD: Drop too granulary family model checks · ec3e82d6
      Borislav Petkov authored
      MCA details seldom change inbetween the models of a family so don't
      be too conservative and enable decoding on everything starting from
      K8 onwards. Minor adjustments can come in later but most importantly,
      we have some decoding infrastructure in place for upcoming models by
      default.
      Signed-off-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
      ec3e82d6
    • Sam Ravnborg's avatar
      serial/sunzilog: fix keyboard on SUN SPARCstation · ca6f327d
      Sam Ravnborg authored
      The keyboard on my SUN SPARCstation 5 no longer worked.
      
          The culprint was: d4e33fac
          ("serial: Kill off NO_IRQ")
      
      Fix up logic for no irq / irq so the keyboard works again.
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Cc: Alan Cox <alan@linux.intel.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ca6f327d
    • Graeme Smecher's avatar
      hwmon: (ad7314) Adds missing spi_dev initialization · e16de913
      Graeme Smecher authored
      This driver was recently moved from IIO (where it worked) to hwmon (where
      it doesn't.) This breakage occured because the hwmon version neglected to
      correctly initialize a reference to spi_dev in its drvdata. The result is a
      segfault every time the temperature is queried.
      Signed-off-by: default avatarGraeme Smecher <gsmecher@threespeedlogic.com>
      Cc: stable@vger.kernel.org # 3.2+
      Signed-off-by: default avatarGuenter Roeck <guenter.roeck@ericsson.com>
      e16de913
  3. 03 Apr, 2012 23 commits