1. 17 5月, 2014 1 次提交
  2. 16 5月, 2014 2 次提交
    • C
      Revert "arm64: Introduce execute-only page access permissions" · 5a0fdfad
      Catalin Marinas 提交于
      This reverts commit bc07c2c6.
      
      While the aim is increased security for --x memory maps, it does not
      protect against kernel level reads. Until SECCOMP is implemented for
      arm64, revert this patch to avoid giving a false idea of execute-only
      mappings.
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      5a0fdfad
    • C
      Merge tag 'for-3.16' of git://git.linaro.org/people/ard.biesheuvel/linux-arm into upstream · cf5c95db
      Catalin Marinas 提交于
      FPSIMD register bank context switching and crypto algorithms
      optimisations for arm64 from Ard Biesheuvel.
      
      * tag 'for-3.16' of git://git.linaro.org/people/ard.biesheuvel/linux-arm:
        arm64/crypto: AES-ECB/CBC/CTR/XTS using ARMv8 NEON and Crypto Extensions
        arm64: pull in <asm/simd.h> from asm-generic
        arm64/crypto: AES in CCM mode using ARMv8 Crypto Extensions
        arm64/crypto: AES using ARMv8 Crypto Extensions
        arm64/crypto: GHASH secure hash using ARMv8 Crypto Extensions
        arm64/crypto: SHA-224/SHA-256 using ARMv8 Crypto Extensions
        arm64/crypto: SHA-1 using ARMv8 Crypto Extensions
        arm64: add support for kernel mode NEON in interrupt context
        arm64: defer reloading a task's FPSIMD state to userland resume
        arm64: add abstractions for FPSIMD state manipulation
        asm-generic: allow generic unaligned access if the arch supports it
      
      Conflicts:
      	arch/arm64/include/asm/thread_info.h
      cf5c95db
  3. 15 5月, 2014 7 次提交
  4. 12 5月, 2014 5 次提交
  5. 10 5月, 2014 8 次提交
  6. 09 5月, 2014 9 次提交
  7. 08 5月, 2014 4 次提交
    • A
      arm64: add support for kernel mode NEON in interrupt context · 190f1ca8
      Ard Biesheuvel 提交于
      This patch modifies kernel_neon_begin() and kernel_neon_end(), so
      they may be called from any context. To address the case where only
      a couple of registers are needed, kernel_neon_begin_partial(u32) is
      introduced which takes as a parameter the number of bottom 'n' NEON
      q-registers required. To mark the end of such a partial section, the
      regular kernel_neon_end() should be used.
      Signed-off-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      190f1ca8
    • A
      arm64: defer reloading a task's FPSIMD state to userland resume · 005f78cd
      Ard Biesheuvel 提交于
      If a task gets scheduled out and back in again and nothing has touched
      its FPSIMD state in the mean time, there is really no reason to reload
      it from memory. Similarly, repeated calls to kernel_neon_begin() and
      kernel_neon_end() will preserve and restore the FPSIMD state every time.
      
      This patch defers the FPSIMD state restore to the last possible moment,
      i.e., right before the task returns to userland. If a task does not return to
      userland at all (for any reason), the existing FPSIMD state is preserved
      and may be reused by the owning task if it gets scheduled in again on the
      same CPU.
      
      This patch adds two more functions to abstract away from straight FPSIMD
      register file saves and restores:
      - fpsimd_restore_current_state -> ensure current's FPSIMD state is loaded
      - fpsimd_flush_task_state -> invalidate live copies of a task's FPSIMD state
      Signed-off-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      005f78cd
    • A
      arm64: add abstractions for FPSIMD state manipulation · c51f9269
      Ard Biesheuvel 提交于
      There are two tacit assumptions in the FPSIMD handling code that will no longer
      hold after the next patch that optimizes away some FPSIMD state restores:
      . the FPSIMD registers of this CPU contain the userland FPSIMD state of
        task 'current';
      . when switching to a task, its FPSIMD state will always be restored from
        memory.
      
      This patch adds the following functions to abstract away from straight FPSIMD
      register file saves and restores:
      - fpsimd_preserve_current_state -> ensure current's FPSIMD state is saved
      - fpsimd_update_current_state -> replace current's FPSIMD state
      
      Where necessary, the signal handling and fork code are updated to use the above
      wrappers instead of poking into the FPSIMD registers directly.
      Signed-off-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      c51f9269
    • A
      asm-generic: allow generic unaligned access if the arch supports it · 0567f5fa
      Ard Biesheuvel 提交于
      Switch the default unaligned access method to 'hardware implemented'
      if HAVE_EFFICIENT_UNALIGNED_ACCESS is set.
      Signed-off-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      0567f5fa
  8. 05 5月, 2014 4 次提交
    • L
      Linux 3.15-rc4 · 89ca3b88
      Linus Torvalds 提交于
      89ca3b88
    • L
      Merge tag 'locks-v3.15-3' of git://git.samba.org/jlayton/linux · 164c0997
      Linus Torvalds 提交于
      Pull file locking change from Jeff Layton:
       "Only an email address change to the MAINTAINERS file"
      
      * tag 'locks-v3.15-3' of git://git.samba.org/jlayton/linux:
        MAINTAINERS: email address change for Jeff Layton
      164c0997
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 8a9f5ecd
      Linus Torvalds 提交于
      Pull arm64 fixes from Catalin Marinas:
       "These are mostly arm64 fixes with an additional arm(64) platform fix
        for the initialisation of vexpress clocks (the latter only affecting
        arm64; the arch/arm64 code is SoC agnostic and does not rely on early
        SoC-specific calls)
      
         - vexpress platform clocks initialisation moved earlier following the
           arm64 move of of_clk_init() call in a previous commit
         - Default DMA ops changed to non-coherent to preserve compatibility
           with 32-bit ARM DT files.  The "dma-coherent" property can be used
           to explicitly mark a device coherent.  The Applied Micro DT file
           has been updated to avoid DMA cache maintenance for the X-Gene SATA
           controller (the only arm64 related driver with such assumption in
           -rc mainline)
         - Fixmap correction for earlyprintk
         - kern_addr_valid() fix for huge pages"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        vexpress: Initialise the sysregs before setting up the clocks
        arm64: Mark the Applied Micro X-Gene SATA controller as DMA coherent
        arm64: Use bus notifiers to set per-device coherent DMA ops
        arm64: Make default dma_ops to be noncoherent
        arm64: fixmap: fix missing sub-page offset for earlyprintk
        arm64: Fix for the arm64 kern_addr_valid() function
      8a9f5ecd
    • L
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · e3fb7d4c
      Linus Torvalds 提交于
      Pull SCSI fixes from James Bottomley:
       "This is two patches both fixing bugs in drivers (virtio-scsi and
        mpt2sas) causing an oops in certain circumstances"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        [SCSI] virtio-scsi: Skip setting affinity on uninitialized vq
        [SCSI] mpt2sas: Don't disable device twice at suspend.
      e3fb7d4c