Skip to content
  1. Nov 20, 2015
    • Linus Torvalds's avatar
      Merge tag 'renesas-sh-drivers-for-v4.4' of... · 8bdddfae
      Linus Torvalds authored
      Merge tag 'renesas-sh-drivers-for-v4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas
      
      Pull SH driver fixlet from Simon Horman:
       "I am sending this change after v4.4-rc1 has been released as it
        depends on SoC changes which are present in that rc:
      
         = Remove now unnecessary reference to CONFIG_ARCH_SHMOBILE_MULTI"
      
      * tag 'renesas-sh-drivers-for-v4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        drivers: sh: Get rid of CONFIG_ARCH_SHMOBILE_MULTI
      8bdddfae
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · b4ba1f0f
      Linus Torvalds authored
      Pull arm64 fixes from Catalin Marinas:
      
       - Fix size alignment in __iommu_{alloc,free}_attrs
      
       - Kernel memory mapping fix with CONFIG_DEBUG_RODATA for page sizes
         other than 4KB and a fix of the mark_rodata_ro permissions
      
       - dma_get_ops() simplification and behaviour alignment between DT and
         ACPI
      
       - function_graph trace fix for cpu_suspend() (CPUs returning from deep
         sleep via a different path and confusing the tracer)
      
       - Use of non-global mappings for UEFI run-time services to avoid a
         (potentially theoretical) TLB conflict
      
       - Crypto priority reduction of core AES cipher (the accelerated
         asynchronous implementation is preferred when available)
      
       - Reverting an old commit that removed BogoMIPS from /proc/cpuinfo on
         arm64.  Apparently, we had it for a relatively short time and libvirt
         started checking for its presence
      
       - Compiler warnings fixed (ptrace.h inclusion from compat.h,
         smp_load_acquire with const argument)
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: restore bogomips information in /proc/cpuinfo
        arm64: barriers: fix smp_load_acquire to work with const arguments
        arm64: Fix R/O permissions in mark_rodata_ro
        arm64: crypto: reduce priority of core AES cipher
        arm64: use non-global mappings for UEFI runtime regions
        arm64: kernel: pause/unpause function graph tracer in cpu_suspend()
        arm64: do not include ptrace.h from compat.h
        arm64: simplify dma_get_ops
        arm64: mm: use correct mapping granularity under DEBUG_RODATA
        arm64/dma-mapping: Fix sizes in __iommu_{alloc,free}_attrs
      b4ba1f0f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching · a3d66b5a
      Linus Torvalds authored
      Pull livepatching fix from Jiri Kosina:
       "A fix for module handling in case kASLR has been enabled, from Zhou
        Chengming"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
        livepatch: x86: fix relocation computation with kASLR
      a3d66b5a
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 319645ca
      Linus Torvalds authored
      Pull HID fixes from Jiri Kosina:
       "Two functional fixes for wacom HID driver from Ping Cheng and Jiri
        Kosina"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
        HID: wacom: fixup quirks setup for WACOM_DEVICETYPE_PAD
        HID: wacom: Add outbounding area for DTU1141
      319645ca
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.4-rc1' of git://git.linaro.org/people/ulf.hansson/mmc · 1282ac40
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "Here are some mmc fixes intended for v4.4 rc2.  It's based on a commit
        prior rc1 as I wanted to get them a bit more tested in next before
        sending you the pull request.
      
        MMC core:
         - Improve reliability when selecting HS200 mode
         - Improve reliability when selecting HS400 mode
         - mmc: remove bondage between REQ_META and reliable write
      
        MMC host:
         - pxamci: Fix read-only gpio detection polarity
         - mtk-sd: Preinitialize delay_phase to fix the case when delay is zero
         - android-goldfish: Fix build dependency by adding HAS_DMA
         - dw_mmc: Remove Seungwon Jeon from MAINTAINERS"
      
      * tag 'mmc-v4.4-rc1' of git://git.linaro.org/people/ulf.hansson/mmc:
        mmc: remove bondage between REQ_META and reliable write
        mmc: MMC_GOLDFISH should depend on HAS_DMA
        mmc: mediatek: Preinitialize delay_phase in get_best_delay()
        MAINTAINERS: mmc: Remove Seungwon Jeon from dw_mmc
        mmc: mmc: Improve reliability of mmc_select_hs400()
        mmc: mmc: Move mmc_switch_status()
        mmc: mmc: Fix HS setting in mmc_select_hs400()
        mmc: mmc: Improve reliability of mmc_select_hs200()
        mmc: pxamci: fix read-only gpio detection polarity
      1282ac40
    • Yang Shi's avatar
      arm64: restore bogomips information in /proc/cpuinfo · 92e788b7
      Yang Shi authored
      As previously reported, some userspace applications depend on bogomips
      showed by /proc/cpuinfo. Although there is much less legacy impact on
      aarch64 than arm, it does break libvirt.
      
      This patch reverts commit 326b16db ("arm64: delay: don't bother
      reporting bogomips in /proc/cpuinfo"), but with some tweak due to
      context change and without the pr_info().
      
      Fixes: 326b16db
      
       ("arm64: delay: don't bother reporting bogomips in /proc/cpuinfo")
      Signed-off-by: default avatarYang Shi <yang.shi@linaro.org>
      Acked-by: default avatarWill Deacon <will.deacon@arm.com>
      Cc: <stable@vger.kernel.org> # 3.12+
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      92e788b7
  2. Nov 19, 2015
    • Will Deacon's avatar
      arm64: barriers: fix smp_load_acquire to work with const arguments · c139aa60
      Will Deacon authored
      
      
      A newly introduced function in include/net/sock.h passes a const
      argument to smp_load_acquire:
      
        static inline int sk_state_load(const struct sock *sk)
        {
      	return smp_load_acquire(&sk->sk_state);
        }
      
      This cause an allmodconfig build failure, since our underlying
      load-acquire implementation does not handle const types correctly:
      
        include/net/sock.h: In function 'sk_state_load':
        ./arch/arm64/include/asm/barrier.h:71:3: error: read-only variable '___p1' used as 'asm' output
           asm volatile ("ldarb %w0, %1"    \
      
      This patch fixes the problem by reusing the trick in READ_ONCE that
      loads via a non-const member of an anonymous union. This has the
      advantage of allowing us to use smp_load_acquire on packed structures
      (e.g. arch_spinlock_t) as well as primitive types.
      
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: David Daney <david.daney@cavium.com>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Reported-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reported-by: default avatarDavid Daney <david.daney@cavium.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      c139aa60
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 34258a32
      Linus Torvalds authored
      Pull s390 fixes from Martin Schwidefsky:
       "Assorted bug fixes, the mlock2 system call gets added, and one
        improvement.  The boot from dasd devices is now possible from a wider
        range of devices"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390: remove SALIPL loader
        s390: wire up mlock2 system call
        s390: remove g5 elf platform support
        s390: avoid cache aliasing under z/VM and KVM
        s390/sclp: _sclp_wait_int(): retain full PSW mask
        s390/zcrypt: Fix initialisation when zcrypt is built-in
        s390/zcrypt: Fix kernel crash on systems without AP bus support
        s390: add support for ipl devices in subchannel sets > 0
        s390/ipl: fix out of bounds access in scpdata_write
        s390/pci_dma: improve debugging of errors during dma map
        s390/pci_dma: handle dma table failures
        s390/pci_dma: unify label of invalid translation table entries
        s390/syscalls: remove system call number calculation
        s390/cio: simplify css_generate_pgid
        s390/diag: add a s390 prefix to the diagnose trace point
        s390/head: fix error message on unsupported hardware
      34258a32
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.4-rc2' of... · 0d77a123
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.4-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fixes from Guenter Roeck:
       "Fix build issues in scpi and ina2xx drivers, update scpi driver to
        support recent firmware, and fix an uninitialized variable warning in
        applesmc driver"
      
      * tag 'hwmon-for-linus-v4.4-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (scpi) skip unsupported sensors properly
        hwmon: (scpi) add thermal-of dependency
        hwmon : (applesmc) Fix uninitialized variables warnings
        hwmon: (ina2xx) Fix build issue by selecting REGMAP_I2C
      0d77a123
  3. Nov 18, 2015
  4. Nov 17, 2015
    • Arnd Bergmann's avatar
      arm64: do not include ptrace.h from compat.h · adc235af
      Arnd Bergmann authored
      
      
      including ptrace.h brings a definition of BITS_PER_PAGE into device
      drivers and cause a build warning in allmodconfig builds:
      
      drivers/block/drbd/drbd_bitmap.c:482:0: warning: "BITS_PER_PAGE" redefined
       #define BITS_PER_PAGE  (1UL << (PAGE_SHIFT + 3))
      
      This uses a slightly different way to express current_pt_regs()
      that avoids the use of the header and gets away with the already
      included asm/ptrace.h.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      adc235af
    • Arnd Bergmann's avatar
      arm64: simplify dma_get_ops · 1dccb598
      Arnd Bergmann authored
      
      
      Including linux/acpi.h from asm/dma-mapping.h causes tons of compile-time
      warnings, e.g.
      
       drivers/isdn/mISDN/dsp_ecdis.h:43:0: warning: "FALSE" redefined
       drivers/isdn/mISDN/dsp_ecdis.h:44:0: warning: "TRUE" redefined
       drivers/net/fddi/skfp/h/targetos.h:62:0: warning: "TRUE" redefined
       drivers/net/fddi/skfp/h/targetos.h:63:0: warning: "FALSE" redefined
      
      However, it looks like the dependency should not even there as
      I do not see why __generic_dma_ops() cares about whether we have
      an ACPI based system or not.
      
      The current behavior is to fall back to the global dma_ops when
      a device has not set its own dma_ops, but only for DT based systems.
      This seems dangerous, as a random device might have different
      requirements regarding IOMMU or coherency, so we should really
      never have that fallback and just forbid DMA when we have not
      initialized DMA for a device.
      
      This removes the global dma_ops variable and the special-casing
      for ACPI, and just returns the dma ops that got set for the
      device, or the dummy_dma_ops if none were present.
      
      The original code has apparently been copied from arm32 where we
      rely on it for ISA devices things like the floppy controller, but
      we should have no such devices on ARM64.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      [catalin.marinas@arm.com: removed acpi_disabled check in arch_setup_dma_ops()]
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      1dccb598
    • Ard Biesheuvel's avatar
      arm64: mm: use correct mapping granularity under DEBUG_RODATA · 4fee9f36
      Ard Biesheuvel authored
      When booting a 64k pages kernel that is built with CONFIG_DEBUG_RODATA
      and resides at an offset that is not a multiple of 512 MB, the rounding
      that occurs in __map_memblock() and fixup_executable() results in
      incorrect regions being mapped.
      
      The following snippet from /sys/kernel/debug/kernel_page_tables shows
      how, when the kernel is loaded 2 MB above the base of DRAM at 0x40000000,
      the first 2 MB of memory (which may be inaccessible from non-secure EL1
      or just reserved by the firmware) is inadvertently mapped into the end of
      the module region.
      
        ---[ Modules start ]---
        0xfffffdffffe00000-0xfffffe0000000000     2M RW NX ... UXN MEM/NORMAL
        ---[ Modules end ]---
        ---[ Kernel Mapping ]---
        0xfffffe0000000000-0xfffffe0000090000   576K RW NX ... UXN MEM/NORMAL
        0xfffffe0000090000-0xfffffe0000200000  1472K ro x  ... UXN MEM/NORMAL
        0xfffffe0000200000-0xfffffe0000800000     6M ro x  ... UXN MEM/NORMAL
        0xfffffe0000800000-0xfffffe0000810000    64K ro x  ... UXN MEM/NORMAL
        0xfffffe0000810000-0xfffffe0000a00000  1984K RW NX ... UXN MEM/NORMAL
        0xfffffe0000a00000-0xfffffe00ffe00000  4084M RW NX ... UXN MEM/NORMAL
      
      The same issue is likely to occur on 16k pages kernels whose load
      address is not a multiple of 32 MB (i.e., SECTION_SIZE). So round to
      SWAPPER_BLOCK_SIZE instead of SECTION_SIZE.
      
      Fixes: da141706
      
       ("arm64: add better page protections to arm64")
      Signed-off-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
      Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
      Acked-by: default avatarLaura Abbott <labbott@redhat.com>
      Cc: <stable@vger.kernel.org> # 4.0+
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      4fee9f36
    • Geert Uytterhoeven's avatar
    • Geert Uytterhoeven's avatar
      FS-Cache: Add missing initialization of ret in cachefiles_write_page() · cf897526
      Geert Uytterhoeven authored
      fs/cachefiles/rdwr.c: In function ‘cachefiles_write_page’:
      fs/cachefiles/rdwr.c:882: warning: ‘ret’ may be used uninitialized in
      this function
      
      If the jump to label "error" is taken, "ret" will indeed be
      uninitialized, and random stack data may be printed by the debug code.
      
      Fixes: 102f4d90
      
       ("FS-Cache: Handle a write to the page immediately beyond the EOF marker")
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      cf897526
    • Jiri Kosina's avatar
      HID: wacom: fixup quirks setup for WACOM_DEVICETYPE_PAD · a3088abc
      Jiri Kosina authored
      
      
      Given that INTUOSHT < BAMBOO_PT
      
      	features->type >= INTUOSHT || features->type <= BAMBOO_PT
      
      condition is always true, and therefore device_type is under certain
      circumstances wrongly set with WACOM_DEVICETYPE_PAD bit set.
      
      Fix the condition so that it actually represents the range as intended.
      
      Reported-by: default avatarDavid Binderman <dcb314@hotmail.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      a3088abc
    • Ondrej Zary's avatar
      ipg: Remove ipg driver · f1a454a3
      Ondrej Zary authored
      
      
      Now that IP1000A chips are supported by dl2k driver, the buggy ipg
      driver can be removed.
      
      Signed-off-by: default avatarOndrej Zary <linux@rainbow-software.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f1a454a3