18 Dec, 2014

1 commit


17 Dec, 2014

1 commit

  • When running in non-cache coherent configuration the memory that was
    allocated with dma_alloc_coherent() has a custom mapping and so there is no
    1-to-1 relationship between the kernel virtual address and the PFN. This
    means that virt_to_pfn() will not work correctly for those addresses and the
    default mmap implementation in the form of dma_common_mmap() will map some
    random, but not the requested, memory area.

    Fix this by providing a custom mmap implementation that looks up the PFN
    from the page table rather than using virt_to_pfn.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Michal Simek

    Lars-Peter Clausen
     

14 Dec, 2014

1 commit

  • Following the suggestions from Andrew Morton and Stephen Rothwell,
    Dont expand the ARCH list in kernel/gcov/Kconfig. Instead,
    define a ARCH_HAS_GCOV_PROFILE_ALL bool which architectures
    can enable.

    set ARCH_HAS_GCOV_PROFILE_ALL on Architectures where it was
    previously allowed + ARM64 which I tested.

    Signed-off-by: Riku Voipio
    Cc: Peter Oberparleiter
    Cc: Stephen Rothwell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Riku Voipio
     

12 Dec, 2014

1 commit

  • Pull networking updates from David Miller:

    1) New offloading infrastructure and example 'rocker' driver for
    offloading of switching and routing to hardware.

    This work was done by a large group of dedicated individuals, not
    limited to: Scott Feldman, Jiri Pirko, Thomas Graf, John Fastabend,
    Jamal Hadi Salim, Andy Gospodarek, Florian Fainelli, Roopa Prabhu

    2) Start making the networking operate on IOV iterators instead of
    modifying iov objects in-situ during transfers. Thanks to Al Viro
    and Herbert Xu.

    3) A set of new netlink interfaces for the TIPC stack, from Richard
    Alpe.

    4) Remove unnecessary looping during ipv6 routing lookups, from Martin
    KaFai Lau.

    5) Add PAUSE frame generation support to gianfar driver, from Matei
    Pavaluca.

    6) Allow for larger reordering levels in TCP, which are easily
    achievable in the real world right now, from Eric Dumazet.

    7) Add a variable of napi_schedule that doesn't need to disable cpu
    interrupts, from Eric Dumazet.

    8) Use a doubly linked list to optimize neigh_parms_release(), from
    Nicolas Dichtel.

    9) Various enhancements to the kernel BPF verifier, and allow eBPF
    programs to actually be attached to sockets. From Alexei
    Starovoitov.

    10) Support TSO/LSO in sunvnet driver, from David L Stevens.

    11) Allow controlling ECN usage via routing metrics, from Florian
    Westphal.

    12) Remote checksum offload, from Tom Herbert.

    13) Add split-header receive, BQL, and xmit_more support to amd-xgbe
    driver, from Thomas Lendacky.

    14) Add MPLS support to openvswitch, from Simon Horman.

    15) Support wildcard tunnel endpoints in ipv6 tunnels, from Steffen
    Klassert.

    16) Do gro flushes on a per-device basis using a timer, from Eric
    Dumazet. This tries to resolve the conflicting goals between the
    desired handling of bulk vs. RPC-like traffic.

    17) Allow userspace to ask for the CPU upon what a packet was
    received/steered, via SO_INCOMING_CPU. From Eric Dumazet.

    18) Limit GSO packets to half the current congestion window, from Eric
    Dumazet.

    19) Add a generic helper so that all drivers set their RSS keys in a
    consistent way, from Eric Dumazet.

    20) Add xmit_more support to enic driver, from Govindarajulu
    Varadarajan.

    21) Add VLAN packet scheduler action, from Jiri Pirko.

    22) Support configurable RSS hash functions via ethtool, from Eyal
    Perry.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1820 commits)
    Fix race condition between vxlan_sock_add and vxlan_sock_release
    net/macb: fix compilation warning for print_hex_dump() called with skb->mac_header
    net/mlx4: Add support for A0 steering
    net/mlx4: Refactor QUERY_PORT
    net/mlx4_core: Add explicit error message when rule doesn't meet configuration
    net/mlx4: Add A0 hybrid steering
    net/mlx4: Add mlx4_bitmap zone allocator
    net/mlx4: Add a check if there are too many reserved QPs
    net/mlx4: Change QP allocation scheme
    net/mlx4_core: Use tasklet for user-space CQ completion events
    net/mlx4_core: Mask out host side virtualization features for guests
    net/mlx4_en: Set csum level for encapsulated packets
    be2net: Export tunnel offloads only when a VxLAN tunnel is created
    gianfar: Fix dma check map error when DMA_API_DEBUG is enabled
    cxgb4/csiostor: Don't use MASTER_MUST for fw_hello call
    net: fec: only enable mdio interrupt before phy device link up
    net: fec: clear all interrupt events to support i.MX6SX
    net: fec: reset fep link status in suspend function
    net: sock: fix access via invalid file descriptor
    net: introduce helper macro for_each_cmsghdr
    ...

    Linus Torvalds
     

11 Dec, 2014

1 commit

  • As there are now no remaining users of arch_fast_hash(), lets kill
    it entirely.

    This basically reverts commit 71ae8aac3e19 ("lib: introduce arch
    optimized hash library") and follow-up work, that is f.e., commit
    237217546d44 ("lib: hash: follow-up fixups for arch hash"),
    commit e3fec2f74f7f ("lib: Add missing arch generic-y entries for
    asm-generic/hash.h") and last but not least commit 6a02652df511
    ("perf tools: Fix include for non x86 architectures").

    Cc: Francesco Fusco
    Cc: Thomas Graf
    Cc: Arnaldo Carvalho de Melo
    Signed-off-by: Daniel Borkmann
    Signed-off-by: David S. Miller

    Daniel Borkmann
     

10 Dec, 2014

2 commits

  • Pull asm-generic asm/io.h rewrite from Arnd Bergmann:
    "While there normally is no reason to have a pull request for
    asm-generic but have all changes get merged through whichever tree
    needs them, I do have a series for 3.19.

    There are two sets of patches that change significant portions of
    asm/io.h, and this branch contains both in order to resolve the
    conflicts:

    - Will Deacon has done a set of patches to ensure that all
    architectures define {read,write}{b,w,l,q}_relaxed() functions or
    get them by including asm-generic/io.h.

    These functions are commonly used on ARM specific drivers to avoid
    expensive L2 cache synchronization implied by the normal
    {read,write}{b,w,l,q}, but we need to define them on all
    architectures in order to share the drivers across architectures
    and to enable CONFIG_COMPILE_TEST configurations for them

    - Thierry Reding has done an unrelated set of patches that extends
    the asm-generic/io.h file to the degree necessary to make it useful
    on ARM64 and potentially other architectures"

    * tag 'asm-generic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic: (29 commits)
    ARM64: use GENERIC_PCI_IOMAP
    sparc: io: remove duplicate relaxed accessors on sparc32
    ARM: sa11x0: Use void __iomem * in MMIO accessors
    arm64: Use include/asm-generic/io.h
    ARM: Use include/asm-generic/io.h
    asm-generic/io.h: Implement generic {read,write}s*()
    asm-generic/io.h: Reconcile I/O accessor overrides
    /dev/mem: Use more consistent data types
    Change xlate_dev_{kmem,mem}_ptr() prototypes
    ARM: ixp4xx: Properly override I/O accessors
    ARM: ixp4xx: Fix build with IXP4XX_INDIRECT_PCI
    ARM: ebsa110: Properly override I/O accessors
    ARC: Remove redundant PCI_IOBASE declaration
    documentation: memory-barriers: clarify relaxed io accessor semantics
    x86: io: implement dummy relaxed accessor macros for writes
    tile: io: implement dummy relaxed accessor macros for writes
    sparc: io: implement dummy relaxed accessor macros for writes
    powerpc: io: implement dummy relaxed accessor macros for writes
    parisc: io: implement dummy relaxed accessor macros for writes
    mn10300: io: implement dummy relaxed accessor macros for writes
    ...

    Linus Torvalds
     
  • Pull arm64 updates from Will Deacon:
    "Here's the usual mixed bag of arm64 updates, also including some
    related EFI changes (Acked by Matt) and the MMU gather range cleanup
    (Acked by you).

    Changes include:
    - support for alternative instruction patching from Andre
    - seccomp from Akashi
    - some AArch32 instruction emulation, required by the Android folks
    - optimisations for exception entry/exit code, cmpxchg, pcpu atomics
    - mmu_gather range calculations moved into core code
    - EFI updates from Ard, including long-awaited SMBIOS support
    - /proc/cpuinfo fixes to align with the format used by arch/arm/
    - a few non-critical fixes across the architecture"

    * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (70 commits)
    arm64: remove the unnecessary arm64_swiotlb_init()
    arm64: add module support for alternatives fixups
    arm64: perf: Prevent wraparound during overflow
    arm64/include/asm: Fixed a warning about 'struct pt_regs'
    arm64: Provide a namespace to NCAPS
    arm64: bpf: lift restriction on last instruction
    arm64: Implement support for read-mostly sections
    arm64: compat: align cacheflush syscall with arch/arm
    arm64: add seccomp support
    arm64: add SIGSYS siginfo for compat task
    arm64: add seccomp syscall for compat task
    asm-generic: add generic seccomp.h for secure computing mode 1
    arm64: ptrace: allow tracer to skip a system call
    arm64: ptrace: add NT_ARM_SYSTEM_CALL regset
    arm64: Move some head.text functions to executable section
    arm64: jump labels: NOP out NOP -> NOP replacement
    arm64: add support to dump the kernel page tables
    arm64: Add FIX_HOLE to permanent fixed addresses
    arm64: alternatives: fix pr_fmt string for consistency
    arm64: vmlinux.lds.S: don't discard .exit.* sections at link-time
    ...

    Linus Torvalds
     

17 Nov, 2014

1 commit

  • On architectures with hardware broadcasting of TLB invalidation messages
    , it makes sense to reduce the range of the mmu_gather structure when
    unmapping page ranges based on the dirty address information passed to
    tlb_remove_tlb_entry.

    arm64 already does this by directly manipulating the start/end fields
    of the gather structure, but this confuses the generic code which
    does not expect these fields to change and can end up calculating
    invalid, negative ranges when forcing a flush in zap_pte_range.

    This patch moves the minimal range calculation out of the arm64 code
    and into the generic implementation, simplifying zap_pte_range in the
    process (which no longer needs to care about start/end, since they will
    point to the appropriate ranges already). With the range being tracked
    by core code, the need_flush flag is dropped in favour of checking that
    the end of the range has actually been set.

    Cc: Benjamin Herrenschmidt
    Cc: Peter Zijlstra
    Cc: Russell King - ARM Linux
    Cc: Michal Simek
    Acked-by: Linus Torvalds
    Signed-off-by: Will Deacon

    Will Deacon
     

27 Oct, 2014

3 commits


21 Oct, 2014

1 commit


20 Oct, 2014

1 commit

  • Pull audit updates from Eric Paris:
    "So this change across a whole bunch of arches really solves one basic
    problem. We want to audit when seccomp is killing a process. seccomp
    hooks in before the audit syscall entry code. audit_syscall_entry
    took as an argument the arch of the given syscall. Since the arch is
    part of what makes a syscall number meaningful it's an important part
    of the record, but it isn't available when seccomp shoots the
    syscall...

    For most arch's we have a better way to get the arch (syscall_get_arch)
    So the solution was two fold: Implement syscall_get_arch() everywhere
    there is audit which didn't have it. Use syscall_get_arch() in the
    seccomp audit code. Having syscall_get_arch() everywhere meant it was
    a useless flag on the stack and we could get rid of it for the typical
    syscall entry.

    The other changes inside the audit system aren't grand, fixed some
    records that had invalid spaces. Better locking around the task comm
    field. Removing some dead functions and structs. Make some things
    static. Really minor stuff"

    * git://git.infradead.org/users/eparis/audit: (31 commits)
    audit: rename audit_log_remove_rule to disambiguate for trees
    audit: cull redundancy in audit_rule_change
    audit: WARN if audit_rule_change called illegally
    audit: put rule existence check in canonical order
    next: openrisc: Fix build
    audit: get comm using lock to avoid race in string printing
    audit: remove open_arg() function that is never used
    audit: correct AUDIT_GET_FEATURE return message type
    audit: set nlmsg_len for multicast messages.
    audit: use union for audit_field values since they are mutually exclusive
    audit: invalid op= values for rules
    audit: use atomic_t to simplify audit_serial()
    kernel/audit.c: use ARRAY_SIZE instead of sizeof/sizeof[0]
    audit: reduce scope of audit_log_fcaps
    audit: reduce scope of audit_net_id
    audit: arm64: Remove the audit arch argument to audit_syscall_entry
    arm64: audit: Add audit hook in syscall_trace_enter/exit()
    audit: x86: drop arch from __audit_syscall_entry() interface
    sparc: implement is_32bit_task
    sparc: properly conditionalize use of TIF_32BIT
    ...

    Linus Torvalds
     

09 Oct, 2014

1 commit

  • Pull timer fixes from Ingo Molnar:
    "Main changes:

    - Fix the deadlock reported by Dave Jones et al
    - Clean up and fix nohz_full interaction with arch abilities
    - nohz init code consolidation/cleanup"

    * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    nohz: nohz full depends on irq work self IPI support
    nohz: Consolidate nohz full init code
    arm64: Tell irq work about self IPI support
    arm: Tell irq work about self IPI support
    x86: Tell irq work about self IPI support
    irq_work: Force raised irq work to run on irq work interrupt
    irq_work: Introduce arch_irq_work_has_interrupt()
    nohz: Move nohz full init call to tick init

    Linus Torvalds
     

24 Sep, 2014

2 commits

  • We have a function where the arch can be queried, syscall_get_arch().
    So rather than have every single piece of arch specific code use and/or
    duplicate syscall_get_arch(), just have the audit code use the
    syscall_get_arch() code.

    Based-on-patch-by: Richard Briggs
    Signed-off-by: Eric Paris
    Cc: linux-alpha@vger.kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-ia64@vger.kernel.org
    Cc: microblaze-uclinux@itee.uq.edu.au
    Cc: linux-mips@linux-mips.org
    Cc: linux@lists.openrisc.net
    Cc: linux-parisc@vger.kernel.org
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: linux-s390@vger.kernel.org
    Cc: linux-sh@vger.kernel.org
    Cc: sparclinux@vger.kernel.org
    Cc: user-mode-linux-devel@lists.sourceforge.net
    Cc: linux-xtensa@linux-xtensa.org
    Cc: x86@kernel.org

    Eric Paris
     
  • For all arches which support audit implement syscall_get_arch()
    They are all pretty easy and straight forward, stolen from how the call
    to audit_syscall_entry() determines the arch.

    Based-on-patch-by: Richard Briggs
    Signed-off-by: Eric Paris
    Cc: linux-ia64@vger.kernel.org
    Cc: microblaze-uclinux@itee.uq.edu.au
    Cc: linux-mips@linux-mips.org
    Cc: linux@lists.openrisc.net
    Cc: linux-parisc@vger.kernel.org
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: sparclinux@vger.kernel.org

    Eric Paris
     

14 Sep, 2014

1 commit

  • The nohz full code needs irq work to trigger its own interrupt so that
    the subsystem can work even when the tick is stopped.

    Lets introduce arch_irq_work_has_interrupt() that archs can override to
    tell about their support for this ability.

    Signed-off-by: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Paul E. McKenney
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Signed-off-by: Frederic Weisbecker

    Peter Zijlstra
     

09 Sep, 2014

5 commits

  • Number of syscalls have to be updated too.

    Signed-off-by: Michal Simek

    Michal Simek
     
  • "Advance setup: menu is misleading that's why rename it.

    Signed-off-by: Michal Simek

    Michal Simek
     
  • mm/Kconfig is getting too big to be in root menu.
    Move it to submenu.

    Signed-off-by: Michal Simek

    Michal Simek
     
  • When DYNAMIC_DEBUG enabled, pr_debug() depends on KBUILD_MODNAME which
    also depends on the modules number in Makefile. The related information
    in "scripts/Makefile.lib" line 94:

    # $(modname_flags) #defines KBUILD_MODNAME as the name of the module it will
    # end up in (or would, if it gets compiled in)
    # Note: Files that end up in two or more modules are compiled without the
    # KBUILD_MODNAME definition. The reason is that any made-up name would
    # differ in different configs.

    For this case, 'radio-si470x-i2c.o' and 'radio-si470x-common.o' are in
    one line, so cause compiling issue. And 'uaccess.h' is a common shared
    header (not specially for drivers), so use pr_devel() instead of is OK.

    The related error with allmodconfig:

    CC [M] drivers/media/radio/si470x/radio-si470x-i2c.o
    CC [M] drivers/media/radio/si470x/radio-si470x-common.o
    In file included from include/linux/printk.h:257:0,
    from include/linux/kernel.h:13,
    from drivers/media/radio/si470x/radio-si470x.h:29,
    from drivers/media/radio/si470x/radio-si470x-common.c:115:
    ./arch/microblaze/include/asm/uaccess.h: In function 'access_ok':
    include/linux/dynamic_debug.h:66:14: error: 'KBUILD_MODNAME' undeclared (first use in this function)
    .modname = KBUILD_MODNAME, \
    ^
    include/linux/dynamic_debug.h:76:2: note: in expansion of macro 'DEFINE_DYNAMIC_DEBUG_METADATA'
    DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
    ^
    include/linux/printk.h:263:2: note: in expansion of macro 'dynamic_pr_debug'
    dynamic_pr_debug(fmt, ##__VA_ARGS__)
    ^
    ./arch/microblaze/include/asm/uaccess.h:101:3: note: in expansion of macro 'pr_debug'
    pr_debug("ACCESS fail: %s at 0x%08x (size 0x%x), seg 0x%08x\n",
    ^

    Signed-off-by: Chen Gang
    Signed-off-by: Michal Simek

    Chen Gang
     
  • "entry.h" needs 'asmlinkage', and "asm/linkage.h" does not provide it.
    So need include "linux/linkage.h" to use generic one instead of.

    The related error (with allmodconfig under microblaze):

    CC [M] drivers/net/ethernet/emulex/benet/be_main.o
    In file included from ./arch/microblaze/include/asm/processor.h:17:0,
    from include/linux/prefetch.h:14,
    from drivers/net/ethernet/emulex/benet/be_main.c:18:
    ./arch/microblaze/include/asm/entry.h:33:19: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'void'
    extern asmlinkage void do_notify_resume(struct pt_regs *regs, int in_syscall);
    ^

    Signed-off-by: Chen Gang
    Signed-off-by: Michal Simek

    Chen Gang
     

21 Aug, 2014

3 commits


10 Aug, 2014

1 commit

  • Pull arch signal handling cleanup from Richard Weinberger:
    "This patch series moves all remaining archs to the get_signal(),
    signal_setup_done() and sigsp() functions.

    Currently these archs use open coded variants of the said functions.
    Further, unused parameters get removed from get_signal_to_deliver(),
    tracehook_signal_handler() and signal_delivered().

    At the end of the day we save around 500 lines of code."

    * 'signal-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc: (43 commits)
    powerpc: Use sigsp()
    openrisc: Use sigsp()
    mn10300: Use sigsp()
    mips: Use sigsp()
    microblaze: Use sigsp()
    metag: Use sigsp()
    m68k: Use sigsp()
    m32r: Use sigsp()
    hexagon: Use sigsp()
    frv: Use sigsp()
    cris: Use sigsp()
    c6x: Use sigsp()
    blackfin: Use sigsp()
    avr32: Use sigsp()
    arm64: Use sigsp()
    arc: Use sigsp()
    sas_ss_flags: Remove nested ternary if
    Rip out get_signal_to_deliver()
    Clean up signal_delivered()
    tracehook_signal_handler: Remove sig, info, ka and regs
    ...

    Linus Torvalds
     

09 Aug, 2014

1 commit

  • There's no need to have an architecture version of scatterlist.h if the
    only thing the file does is include asm-generic/scatterlist.h. Switch to
    the asm-generic versions directly.

    Acked-by: Jesper Nilsson
    Acked-by: David Howells
    Signed-off-by: Laura Abbott
    Cc: Lennox Wu
    Cc: Chen Liqin ,
    Cc: Koichi Yasutake
    Cc: Michal Simek
    Cc: Hirokazu Takata
    Cc: Mikael Starvik
    Cc: Thomas Gleixner
    Cc: Benjamin Herrenschmidt
    Cc: Heiko Carstens
    Cc: Russell King
    Cc: Tony Luck
    Cc: Fenghua Yu
    Cc: Paul Mackerras
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: "James E.J. Bottomley"
    Cc: Martin Schwidefsky
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Laura Abbott
     

08 Aug, 2014

1 commit

  • Pull microblaze updates from Michal Simek:
    - add new syscall and fix comment
    - fix udelay implementation
    - fix libgcc for modules

    * tag 'microblaze-3.17-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
    microblaze: Change libgcc-style functions from lib-y to obj-y
    microblaze: Wire-up renameat2 syscall
    microblaze: Add syscall number comment
    microblaze: delay.h fix udelay and ndelay for 8 bit args

    Linus Torvalds
     

06 Aug, 2014

2 commits


05 Aug, 2014

1 commit

  • Pull locking updates from Ingo Molnar:
    "The main changes in this cycle are:

    - big rtmutex and futex cleanup and robustification from Thomas
    Gleixner
    - mutex optimizations and refinements from Jason Low
    - arch_mutex_cpu_relax() removal and related cleanups
    - smaller lockdep tweaks"

    * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
    arch, locking: Ciao arch_mutex_cpu_relax()
    locking/lockdep: Only ask for /proc/lock_stat output when available
    locking/mutexes: Optimize mutex trylock slowpath
    locking/mutexes: Try to acquire mutex only if it is unlocked
    locking/mutexes: Delete the MUTEX_SHOW_NO_WAITER macro
    locking/mutexes: Correct documentation on mutex optimistic spinning
    rtmutex: Make the rtmutex tester depend on BROKEN
    futex: Simplify futex_lock_pi_atomic() and make it more robust
    futex: Split out the first waiter attachment from lookup_pi_state()
    futex: Split out the waiter check from lookup_pi_state()
    futex: Use futex_top_waiter() in lookup_pi_state()
    futex: Make unlock_pi more robust
    rtmutex: Avoid pointless requeueing in the deadlock detection chain walk
    rtmutex: Cleanup deadlock detector debug logic
    rtmutex: Confine deadlock logic to futex
    rtmutex: Simplify remove_waiter()
    rtmutex: Document pi chain walk
    rtmutex: Clarify the boost/deboost part
    rtmutex: No need to keep task ref for lock owner check
    rtmutex: Simplify and document try_to_take_rtmutex()
    ...

    Linus Torvalds
     

19 Jul, 2014

2 commits


18 Jul, 2014

1 commit


17 Jul, 2014

1 commit

  • The arch_mutex_cpu_relax() function, introduced by 34b133f, is
    hacky and ugly. It was added a few years ago to address the fact
    that common cpu_relax() calls include yielding on s390, and thus
    impact the optimistic spinning functionality of mutexes. Nowadays
    we use this function well beyond mutexes: rwsem, qrwlock, mcs and
    lockref. Since the macro that defines the call is in the mutex header,
    any users must include mutex.h and the naming is misleading as well.

    This patch (i) renames the call to cpu_relax_lowlatency ("relax, but
    only if you can do it with very low latency") and (ii) defines it in
    each arch's asm/processor.h local header, just like for regular cpu_relax
    functions. On all archs, except s390, cpu_relax_lowlatency is simply cpu_relax,
    and thus we can take it out of mutex.h. While this can seem redundant,
    I believe it is a good choice as it allows us to move out arch specific
    logic from generic locking primitives and enables future(?) archs to
    transparently define it, similarly to System Z.

    Signed-off-by: Davidlohr Bueso
    Signed-off-by: Peter Zijlstra
    Cc: Andrew Morton
    Cc: Anton Blanchard
    Cc: Aurelien Jacquiot
    Cc: Benjamin Herrenschmidt
    Cc: Bharat Bhushan
    Cc: Catalin Marinas
    Cc: Chen Liqin
    Cc: Chris Metcalf
    Cc: Christian Borntraeger
    Cc: Chris Zankel
    Cc: David Howells
    Cc: David S. Miller
    Cc: Deepthi Dharwar
    Cc: Dominik Dingel
    Cc: Fenghua Yu
    Cc: Geert Uytterhoeven
    Cc: Guan Xuetao
    Cc: Haavard Skinnemoen
    Cc: Hans-Christian Egtvedt
    Cc: Heiko Carstens
    Cc: Helge Deller
    Cc: Hirokazu Takata
    Cc: Ivan Kokshaysky
    Cc: James E.J. Bottomley
    Cc: James Hogan
    Cc: Jason Wang
    Cc: Jesper Nilsson
    Cc: Joe Perches
    Cc: Jonas Bonn
    Cc: Joseph Myers
    Cc: Kees Cook
    Cc: Koichi Yasutake
    Cc: Lennox Wu
    Cc: Linus Torvalds
    Cc: Mark Salter
    Cc: Martin Schwidefsky
    Cc: Matt Turner
    Cc: Max Filippov
    Cc: Michael Neuling
    Cc: Michal Simek
    Cc: Mikael Starvik
    Cc: Nicolas Pitre
    Cc: Paolo Bonzini
    Cc: Paul Burton
    Cc: Paul E. McKenney
    Cc: Paul Gortmaker
    Cc: Paul Mackerras
    Cc: Qais Yousef
    Cc: Qiaowei Ren
    Cc: Rafael Wysocki
    Cc: Ralf Baechle
    Cc: Richard Henderson
    Cc: Richard Kuo
    Cc: Russell King
    Cc: Steven Miao
    Cc: Steven Rostedt
    Cc: Stratos Karafotis
    Cc: Tim Chen
    Cc: Tony Luck
    Cc: Vasily Kulikov
    Cc: Vineet Gupta
    Cc: Vineet Gupta
    Cc: Waiman Long
    Cc: Will Deacon
    Cc: Wolfram Sang
    Cc: adi-buildroot-devel@lists.sourceforge.net
    Cc: linux390@de.ibm.com
    Cc: linux-alpha@vger.kernel.org
    Cc: linux-am33-list@redhat.com
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-c6x-dev@linux-c6x.org
    Cc: linux-cris-kernel@axis.com
    Cc: linux-hexagon@vger.kernel.org
    Cc: linux-ia64@vger.kernel.org
    Cc: linux@lists.openrisc.net
    Cc: linux-m32r-ja@ml.linux-m32r.org
    Cc: linux-m32r@ml.linux-m32r.org
    Cc: linux-m68k@lists.linux-m68k.org
    Cc: linux-metag@vger.kernel.org
    Cc: linux-mips@linux-mips.org
    Cc: linux-parisc@vger.kernel.org
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: linux-s390@vger.kernel.org
    Cc: linux-sh@vger.kernel.org
    Cc: linux-xtensa@linux-xtensa.org
    Cc: sparclinux@vger.kernel.org
    Link: http://lkml.kernel.org/r/1404079773.2619.4.camel@buesod1.americas.hpqcorp.net
    Signed-off-by: Ingo Molnar

    Davidlohr Bueso
     

09 Jul, 2014

3 commits


06 Jun, 2014

1 commit

  • Pull Microblaze updates from Michal Simek:
    - cleanup PCI and DMA handling
    - use generic device.h
    - some cleanups

    * tag 'microblaze-3.16-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
    microblaze: Fix typo in head.S s/substract/subtract/
    microblaze: remove check for CONFIG_XILINX_CONSOLE
    microblaze: Use generic device.h
    microblaze: Do not setup empty unmap_sg function
    microblaze: Remove device_to_mask
    microblaze: Clean device dma_ops structure
    microblaze: Cleanup PCI_DRAM_OFFSET handling
    microblaze: Do not setup pci_dma_ops
    microblaze: Return default dma operations
    microblaze: Enable SERIAL_OF_PLATFORM

    Linus Torvalds
     

05 Jun, 2014

1 commit