1. 18 Oct, 2014 3 commits
  2. 15 Oct, 2014 10 commits
    • Himangi Saraogi's avatar
      Drivers: ide: Remove typedef atiixp_ide_timing · 7546e52b
      Himangi Saraogi authored
      The Linux kernel coding style guidelines suggest not using typedefs
      for structure types. This patch gets rid of the typedef for
      atiixp_ide_timing.
      
      The following Coccinelle semantic patch detects the case:
      
      @tn1@
      type td;
      @@
      
      typedef struct { ... } td;
      
      @script:python tf@
      td << tn1.td;
      tdres;
      @@
      
      coccinelle.tdres = td;
      
      @@
      type tn1.td;
      identifier tf.tdres;
      @@
      
      -typedef
       struct
      +  tdres
         { ... }
      -td
       ;
      
      @@
      type tn1.td;
      identifier tf.tdres;
      @@
      
      -td
      + struct tdres
      Signed-off-by: default avatarHimangi Saraogi <himangi774@gmail.com>
      Acked-by: default avatarJulia Lawall <julia.lawall@lip6.fr>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7546e52b
    • Linus Torvalds's avatar
      Merge branch 'for-3.18-consistent-ops' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · 0429fbc0
      Linus Torvalds authored
      Pull percpu consistent-ops changes from Tejun Heo:
       "Way back, before the current percpu allocator was implemented, static
        and dynamic percpu memory areas were allocated and handled separately
        and had their own accessors.  The distinction has been gone for many
        years now; however, the now duplicate two sets of accessors remained
        with the pointer based ones - this_cpu_*() - evolving various other
        operations over time.  During the process, we also accumulated other
        inconsistent operations.
      
        This pull request contains Christoph's patches to clean up the
        duplicate accessor situation.  __get_cpu_var() uses are replaced with
        with this_cpu_ptr() and __this_cpu_ptr() with raw_cpu_ptr().
      
        Unfortunately, the former sometimes is tricky thanks to C being a bit
        messy with the distinction between lvalues and pointers, which led to
        a rather ugly solution for cpumask_var_t involving the introduction of
        this_cpu_cpumask_var_ptr().
      
        This converts most of the uses but not all.  Christoph will follow up
        with the remaining conversions in this merge window and hopefully
        remove the obsolete accessors"
      
      * 'for-3.18-consistent-ops' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (38 commits)
        irqchip: Properly fetch the per cpu offset
        percpu: Resolve ambiguities in __get_cpu_var/cpumask_var_t -fix
        ia64: sn_nodepda cannot be assigned to after this_cpu conversion. Use __this_cpu_write.
        percpu: Resolve ambiguities in __get_cpu_var/cpumask_var_t
        Revert "powerpc: Replace __get_cpu_var uses"
        percpu: Remove __this_cpu_ptr
        clocksource: Replace __this_cpu_ptr with raw_cpu_ptr
        sparc: Replace __get_cpu_var uses
        avr32: Replace __get_cpu_var with __this_cpu_write
        blackfin: Replace __get_cpu_var uses
        tile: Use this_cpu_ptr() for hardware counters
        tile: Replace __get_cpu_var uses
        powerpc: Replace __get_cpu_var uses
        alpha: Replace __get_cpu_var
        ia64: Replace __get_cpu_var uses
        s390: cio driver &__get_cpu_var replacements
        s390: Replace __get_cpu_var uses
        mips: Replace __get_cpu_var uses
        MIPS: Replace __get_cpu_var uses in FPU emulator.
        arm: Replace __this_cpu_ptr with raw_cpu_ptr
        ...
      0429fbc0
    • Linus Torvalds's avatar
      Merge tag 'llvmlinux-for-v3.18' of git://git.linuxfoundation.org/llvmlinux/kernel · 6929c358
      Linus Torvalds authored
      Pull LLVM updates from Behan Webster:
       "These patches remove the use of VLAIS using a new SHASH_DESC_ON_STACK
        macro.
      
        Some of the previously accepted VLAIS removal patches haven't used
        this macro.  I will push new patches to consistently use this macro in
        all those older cases for 3.19"
      
      [ More LLVM patches coming in through subsystem trees, and LLVM itself
        needs some fixes that are already in many distributions but not in
        released versions of LLVM.  Some day this will all "just work"  - Linus ]
      
      * tag 'llvmlinux-for-v3.18' of git://git.linuxfoundation.org/llvmlinux/kernel:
        crypto: LLVMLinux: Remove VLAIS usage from crypto/testmgr.c
        security, crypto: LLVMLinux: Remove VLAIS from ima_crypto.c
        crypto: LLVMLinux: Remove VLAIS usage from libcrc32c.c
        crypto: LLVMLinux: Remove VLAIS usage from crypto/hmac.c
        crypto, dm: LLVMLinux: Remove VLAIS usage from dm-crypt
        crypto: LLVMLinux: Remove VLAIS from crypto/.../qat_algs.c
        crypto: LLVMLinux: Remove VLAIS from crypto/omap_sham.c
        crypto: LLVMLinux: Remove VLAIS from crypto/n2_core.c
        crypto: LLVMLinux: Remove VLAIS from crypto/mv_cesa.c
        crypto: LLVMLinux: Remove VLAIS from crypto/ccp/ccp-crypto-sha.c
        btrfs: LLVMLinux: Remove VLAIS
        crypto: LLVMLinux: Add macro to remove use of VLAIS in crypto code
      6929c358
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 23971bdf
      Linus Torvalds authored
      Pull IOMMU updates from Joerg Roedel:
       "This pull-request includes:
      
         - change in the IOMMU-API to convert the former iommu_domain_capable
           function to just iommu_capable
      
         - various fixes in handling RMRR ranges for the VT-d driver (one fix
           requires a device driver core change which was acked by Greg KH)
      
         - the AMD IOMMU driver now assigns and deassigns complete alias
           groups to fix issues with devices using the wrong PCI request-id
      
         - MMU-401 support for the ARM SMMU driver
      
         - multi-master IOMMU group support for the ARM SMMU driver
      
         - various other small fixes all over the place"
      
      * tag 'iommu-updates-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (41 commits)
        iommu/vt-d: Work around broken RMRR firmware entries
        iommu/vt-d: Store bus information in RMRR PCI device path
        iommu/vt-d: Only remove domain when device is removed
        driver core: Add BUS_NOTIFY_REMOVED_DEVICE event
        iommu/amd: Fix devid mapping for ivrs_ioapic override
        iommu/irq_remapping: Fix the regression of hpet irq remapping
        iommu: Fix bus notifier breakage
        iommu/amd: Split init_iommu_group() from iommu_init_device()
        iommu: Rework iommu_group_get_for_pci_dev()
        iommu: Make of_device_id array const
        amd_iommu: do not dereference a NULL pointer address.
        iommu/omap: Remove omap_iommu unused owner field
        iommu: Remove iommu_domain_has_cap() API function
        IB/usnic: Convert to use new iommu_capable() API function
        vfio: Convert to use new iommu_capable() API function
        kvm: iommu: Convert to use new iommu_capable() API function
        iommu/tegra: Convert to iommu_capable() API function
        iommu/msm: Convert to iommu_capable() API function
        iommu/vt-d: Convert to iommu_capable() API function
        iommu/fsl: Convert to iommu_capable() API function
        ...
      23971bdf
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus-3.18' of git://git.linaro.org/people/mike.turquette/linux · c0fa2373
      Linus Torvalds authored
      Pull clock tree updates from Mike Turquette:
       "The clk tree changes for 3.18 are dominated by clock drivers.  Mostly
        fixes and enhancements to existing drivers as well as new drivers.
        This tag contains a bit more arch code than I usually take due to some
        OMAP2+ changes.  Additionally it contains the restart notifier
        handlers which are merged as a dependency into several trees.
      
        The PXA changes are the only messy part.  Due to having a stable tree
        I had to revert one patch and follow up with one more fix near the tip
        of this tag.  Some dead code is introduced but it will soon become
        live code after 3.18-rc1 is released as the rest of the PXA family is
        converted over to the common clock framework.
      
        Another trend in this tag is that multiple vendors have started to
        push the complexity of changing their CPU frequency into the clock
        driver, whereas this used to be done in CPUfreq drivers.
      
        Changes to the clk core include a generic gpio-clock type and a
        clk_set_phase() function added to the top-level clk.h api.  Due to
        some confusion on the fbdev mailing list the kernel boot parameters
        documentation was updated to further explain the clk_ignore_unused
        parameter, which is often required by users of the simplefb driver.
      
        Finally some fixes to the locking around the clock debugfs stuff was
        done to prevent deadlocks when interacting with other subsystems."
      
      * tag 'clk-for-linus-3.18' of git://git.linaro.org/people/mike.turquette/linux: (99 commits)
        clk: pxa clocks build system fix
        Revert "arm: pxa: Transition pxa27x to clk framework"
        clk: samsung: register restart handlers for s3c2412 and s3c2443
        clk: rockchip: add restart handler
        clk: rockchip: rk3288: i2s_frac adds flag to set parent's rate
        doc/kernel-parameters.txt: clarify clk_ignore_unused
        arm: pxa: Transition pxa27x to clk framework
        dts: add devicetree bindings for pxa27x clocks
        clk: add pxa27x clock drivers
        arm: pxa: add clock pll selection bits
        clk: dts: document pxa clock binding
        clk: add pxa clocks infrastructure
        clk: gpio-gate: Ensure gpiod_ APIs are prototyped
        clk: ti: dra7-atl-clock: Mark the device as pm_runtime_irq_safe
        clk: ti: LLVMLinux: Move __init outside of type definition
        clk: ti: consider the fact that of_clk_get() might return an error
        clk: ti: dra7-atl-clock: fix a memory leak
        clk: ti: change clock init to use generic of_clk_init
        clk: hix5hd2: add I2C clocks
        clk: hix5hd2: add watchdog0 clocks
        ...
      c0fa2373
    • Linus Torvalds's avatar
      Merge tag 'mfd-for-linus-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · fcc3a5d2
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "Changes to existing drivers:
        - DT clean-ups in da9055-core, max14577, rn5t618, arizona, hi6421, stmpe, twl4030
        - Export symbols for use in modules in max14577
        - Plenty of static code analysis/Coccinelle fixes throughout the SS
        - Regmap clean-ups in arizona, wm5102, wm5110, da9052, tps65217, rk808
        - Remove unused/duplicate code in da9052, 88pm860x, ti_ssp, lpc_sch, arizona
        - Bug fixes in ti_am335x_tscadc, da9052, ti_am335x_tscadc, rtsx_pcr
        - IRQ fixups in arizona, stmpe, max14577
        - Regulator related changes in axp20x
        - Pass DMA coherency information from parent => child in MFD core
        - Rename DT document files for consistency
        - Add ACPI support to the MFD core
        - Add Andreas Werner to MAINTAINERS for MEN F21BMC
      
       New drivers/supported devices:
        - New driver for MEN 14F021P00 Board Management Controller
        - New driver for Ricoh RN5T618 PMIC
        - New driver for Rockchip RK808
        - New driver for HiSilicon Hi6421 PMIC
        - New driver for Qualcomm SPMI PMICs
        - Add support for Intel Braswell in lpc_ich
        - Add support for Intel 9 Series PCH in lpc_ich
        - Add support for Intel Quark ILB in lpc_sch"
      
      [ Delayed to after the poweer/reset pull due to Kconfig problems with
        recursive Kconfig select/depends-on chains.   - Linus ]
      
      * tag 'mfd-for-linus-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (79 commits)
        mfd: cros_ec: wait for completion of commands that return IN_PROGRESS
        i2c: i2c-cros-ec-tunnel: Set retries to 3
        mfd: cros_ec: move locking into cros_ec_cmd_xfer
        mfd: cros_ec: stop calling ->cmd_xfer() directly
        mfd: cros_ec: Delay for 50ms when we see EC_CMD_REBOOT_EC
        MAINTAINERS: Adds Andreas Werner to maintainers list for MEN F21BMC
        mfd: arizona: Correct mask to allow setting micbias external cap
        mfd: Add ACPI support
        Revert "mfd: wm5102: Manually apply register patch"
        mfd: ti_am335x_tscadc: Update logic in CTRL register for 5-wire TS
        mfd: dt-bindings: atmel-gpbr: Rename doc file to conform to naming convention
        mfd: dt-bindings: qcom-pm8xxx: Rename doc file to conform to naming convention
        mfd: Inherit coherent_dma_mask from parent device
        mfd: Document DT bindings for Qualcomm SPMI PMICs
        mfd: Add support for Qualcomm SPMI PMICs
        mfd: dt-bindings: pm8xxx: Add new compatible string
        mfd: axp209x: Drop the parent supplies field
        mfd: twl4030-power: Use 'ti,system-power-controller' as alternative way to support system power off
        mfd: dt-bindings: twl4030-power: Use the standard property to mark power control
        mfd: syscon: Add Atmel GPBR DT bindings documention
        ...
      fcc3a5d2
    • Linus Torvalds's avatar
      Merge tag 'for-v3.18' of git://git.infradead.org/battery-2.6 · 50fa8617
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       - Initial support for the following chips
         * max77836 (charger)
         * max14577 (charger)
         * bq27742 (battery gauge)
         * ltc2952 (poweroff)
         * stih416 (restart)
         * syscon-reboot (restart)
         * gpio-restart (restart)
       - cleanup of power supply core
       - misc fixes in power supply and reset drivers
      
      * tag 'for-v3.18' of git://git.infradead.org/battery-2.6: (48 commits)
        power: ab8500_fg: Fix build warning
        Documentation: charger: max14577: Update the date of introducing ABI
        power: reset: corrections for simple syscon reboot driver
        Documentation: power: reset: Add documentation for generic SYSCON reboot driver
        power: reset: Add generic SYSCON register mapped reset
        bq27x00_battery: Fix flag reading for bq27742
        power: reset: use restart_notifier mechanism for msm-poweroff
        power: Add simple gpio-restart driver
        power: reset: st: Provide DT bindings for ST's Power Reset driver
        power: reset: Add restart functionality for STiH41x platforms
        power: charger-manager: Fix NULL pointer exception with missing cm-fuel-gauge
        power: max14577: Fix circular config SYSFS dependency
        power: gpio-charger: do not use gpio value directly
        power: max8925: Use of_get_child_by_name
        power: max8925: Fix NULL ptr dereference on memory allocation failure
        bq27x00_battery: Add support to bq27742
        Documentation: charger: max14577: Document exported sysfs entry
        devicetree: mfd: max14577: Add device tree bindings document
        power: max17040: Add ID for MAX77836 Fuel Gauge block
        charger: max14577: Configure battery-dependent settings from DTS and sysfs
        ...
      
      Conflicts:
      	drivers/power/reset/Kconfig
      	drivers/power/reset/Makefile
      50fa8617
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · 6b049081
      Linus Torvalds authored
      Pull Ceph updates from Sage Weil:
       "There is the long-awaited discard support for RBD (Guangliang Zhao,
        Josh Durgin), a pile of RBD bug fixes that didn't belong in late -rc's
        (Ilya Dryomov, Li RongQing), a pile of fs/ceph bug fixes and
        performance and debugging improvements (Yan, Zheng, John Spray), and a
        smattering of cleanups (Chao Yu, Fabian Frederick, Joe Perches)"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (40 commits)
        ceph: fix divide-by-zero in __validate_layout()
        rbd: rbd workqueues need a resque worker
        libceph: ceph-msgr workqueue needs a resque worker
        ceph: fix bool assignments
        libceph: separate multiple ops with commas in debugfs output
        libceph: sync osd op definitions in rados.h
        libceph: remove redundant declaration
        ceph: additional debugfs output
        ceph: export ceph_session_state_name function
        ceph: include the initial ACL in create/mkdir/mknod MDS requests
        ceph: use pagelist to present MDS request data
        libceph: reference counting pagelist
        ceph: fix llistxattr on symlink
        ceph: send client metadata to MDS
        ceph: remove redundant code for max file size verification
        ceph: remove redundant io_iter_advance()
        ceph: move ceph_find_inode() outside the s_mutex
        ceph: request xattrs if xattr_version is zero
        rbd: set the remaining discard properties to enable support
        rbd: use helpers to handle discard for layered images correctly
        ...
      6b049081
    • Linus Torvalds's avatar
      Merge branch 'CVE-2014-7970' of git://git.kernel.org/pub/scm/linux/kernel/git/luto/linux · ce9d7f7b
      Linus Torvalds authored
      Pull pivot_root() fix from Andy Lutomirski.
      
      Prevent a leak of unreachable mounts.
      
      * 'CVE-2014-7970' of git://git.kernel.org/pub/scm/linux/kernel/git/luto/linux:
        mnt: Prevent pivot_root from creating a loop in the mount tree
      ce9d7f7b
    • David S. Miller's avatar
      sparc64: Fix FPU register corruption with AES crypto offload. · f4da3628
      David S. Miller authored
      The AES loops in arch/sparc/crypto/aes_glue.c use a scheme where the
      key material is preloaded into the FPU registers, and then we loop
      over and over doing the crypt operation, reusing those pre-cooked key
      registers.
      
      There are intervening blkcipher*() calls between the crypt operation
      calls.  And those might perform memcpy() and thus also try to use the
      FPU.
      
      The sparc64 kernel FPU usage mechanism is designed to allow such
      recursive uses, but with a catch.
      
      There has to be a trap between the two FPU using threads of control.
      
      The mechanism works by, when the FPU is already in use by the kernel,
      allocating a slot for FPU saving at trap time.  Then if, within the
      trap handler, we try to use the FPU registers, the pre-trap FPU
      register state is saved into the slot.  Then at trap return time we
      notice this and restore the pre-trap FPU state.
      
      Over the long term there are various more involved ways we can make
      this work, but for a quick fix let's take advantage of the fact that
      the situation where this happens is very limited.
      
      All sparc64 chips that support the crypto instructiosn also are using
      the Niagara4 memcpy routine, and that routine only uses the FPU for
      large copies where we can't get the source aligned properly to a
      multiple of 8 bytes.
      
      We look to see if the FPU is already in use in this context, and if so
      we use the non-large copy path which only uses integer registers.
      
      Furthermore, we also limit this special logic to when we are doing
      kernel copy, rather than a user copy.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f4da3628
  3. 14 Oct, 2014 27 commits