05 Sep, 2015

25 commits

  • This file is never built.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • This file is never built.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • With lockdep support implemented on CRISv32, we get the following splat.
    switch_mm() can be called both from the scheduler() (with interrupts
    disabled) and from flush_old_exec (via activate_mm()), with interrupts
    enabled. Fix it by disabling interrupts in activate_mm(), similar to
    powerpc and hexagon.

    t======================================================
    [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ]
    3.19.0-08802-g20bc9f1-dirty #323 Not tainted
    ------------------------------------------------------
    init/1 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
    (mmu_context_lock){+.+...}, at: [] switch_mm+0x22/0xc6

    and this task is already holding:
    (&rq->lock){-.-.-.}, at: [] __schedule+0x5e/0x648
    which would create a new lock dependency:
    (&rq->lock){-.-.-.} -> (mmu_context_lock){+.+...}

    but this new dependency connects a HARDIRQ-irq-safe lock:
    (&rq->lock){-.-.-.}
    ... which became HARDIRQ-irq-safe at:
    [] scheduler_tick+0x28/0x5e
    [] timer_interrupt+0x4e/0x6a
    [] handle_irq_event_percpu+0x54/0x13c
    [] generic_handle_irq+0x2a/0x36

    to a HARDIRQ-irq-unsafe lock:
    (mmu_context_lock){+.+...}
    ... which became HARDIRQ-irq-unsafe at:
    ... [] __lock_acquire+0x8f8/0x1d9c
    [] switch_mm+0x22/0xc6
    [] flush_old_exec+0x500/0x5d4
    [] load_elf_phdrs+0x7a/0x84
    [] load_elf_binary+0x21c/0x13b4
    [] do_execve+0x22/0x2c
    [] ____call_usermodehelper+0x0/0x154
    [] ret_from_kernel_thread+0xe/0x14

    other info that might help us debug this:

    Possible interrupt unsafe locking scenario:

    CPU0 CPU1
    ---- ----
    lock(mmu_context_lock);
    local_irq_disable();
    lock(&rq->lock);
    lock(mmu_context_lock);

    lock(&rq->lock);

    *** DEADLOCK ***

    1 lock held by init/1:
    #0: (&rq->lock){-.-.-.}, at: [] __schedule+0x5e/0x648

    Call Trace:
    [] printk+0x0/0x4e
    [] print_shortest_lock_dependencies+0x0/0x15c
    [] print_stack_trace+0x0/0x88
    [] __lock_is_held+0x3e/0x5e
    [] lock_acquire+0x8a/0xcc
    [] _raw_spin_lock+0x44/0x7a
    [] switch_mm+0x22/0xc6
    [] __schedule+0x0/0x648
    [] schedule+0x36/0x7c
    [] trace_hardirqs_on+0x0/0x1e
    [] do_work_pending+0x30/0xd4
    [] _work_pending+0xe/0x12

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Now that we have stack tracing and irq flags tracing support,
    we can also enable lockdep support

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Add stacktrace support, which is required for lockdep and tracing. The
    stack tracing simply looks at all kernel text symbols found on the
    stack, similar to the trap stack dumping code, which can also be
    converted to use this.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Use a call to local_irq_enable() instead of incline asm so that the
    irqsoff latency tracer knows that interrupts are enabled here.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Add support irqflags tracing, which is required for things like lockdep
    and ftrace.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS' types.h is functionally identical to the asm-generic version.

    Effective diff:

    +#ifndef _ASM_GENERIC_TYPES_H
    +#define _ASM_GENERIC_TYPES_H
    +
    #include
    +
    +#endif

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS' shmbuf.h is equivalent to the asm-generic verison.

    Effective diff:

    -#ifndef _CRIS_SHMBUF_H
    -#define _CRIS_SHMBUF_H
    +#ifndef __ASM_GENERIC_SHMBUF_H
    +#define __ASM_GENERIC_SHMBUF_H
    +
    +#include

    struct ipc64_perm shm_perm;
    size_t shm_segsz;
    __kernel_time_t shm_atime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused1;
    +#endif
    __kernel_time_t shm_dtime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused2;
    +#endif
    __kernel_time_t shm_ctime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused3;
    +#endif
    __kernel_pid_t shm_cpid;
    __kernel_pid_t shm_lpid;
    - unsigned long shm_nattch;
    - unsigned long __unused4;
    - unsigned long __unused5;
    + __kernel_ulong_t shm_nattch;
    + __kernel_ulong_t __unused4;
    + __kernel_ulong_t __unused5;
    };

    struct shminfo64 {
    - unsigned long shmmax;
    - unsigned long shmmin;
    - unsigned long shmmni;
    - unsigned long shmseg;
    - unsigned long shmall;
    - unsigned long __unused1;
    - unsigned long __unused2;
    - unsigned long __unused3;
    - unsigned long __unused4;
    + __kernel_ulong_t shmmax;
    + __kernel_ulong_t shmmin;
    + __kernel_ulong_t shmmni;
    + __kernel_ulong_t shmseg;
    + __kernel_ulong_t shmall;
    + __kernel_ulong_t __unused1;
    + __kernel_ulong_t __unused2;
    + __kernel_ulong_t __unused3;
    + __kernel_ulong_t __unused4;
    };

    #endif

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS' msgbuf.h is equivalent to the asm-generic version.

    Effective diff:

    -#ifndef _CRIS_MSGBUF_H
    -#define _CRIS_MSGBUF_H
    -
    -
    +#ifndef __ASM_GENERIC_MSGBUF_H
    +#define __ASM_GENERIC_MSGBUF_H

    +#include

    struct msqid64_ds {
    struct ipc64_perm msg_perm;
    __kernel_time_t msg_stime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused1;
    +#endif
    __kernel_time_t msg_rtime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused2;
    +#endif
    __kernel_time_t msg_ctime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused3;
    - unsigned long msg_cbytes;
    - unsigned long msg_qnum;
    - unsigned long msg_qbytes;
    +#endif
    + __kernel_ulong_t msg_cbytes;
    + __kernel_ulong_t msg_qnum;
    + __kernel_ulong_t msg_qbytes;
    __kernel_pid_t msg_lspid;
    __kernel_pid_t msg_lrpid;
    - unsigned long __unused4;
    - unsigned long __unused5;
    + __kernel_ulong_t __unused4;
    + __kernel_ulong_t __unused5;
    };

    #endif

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS' socket.h is equivalent to the asm-generic version.

    Effective diff:

    -#ifndef _ASM_SOCKET_H
    -#define _ASM_SOCKET_H
    -
    -
    +#ifndef __ASM_GENERIC_SOCKET_H
    +#define __ASM_GENERIC_SOCKET_H

    #include

    #define SO_LINGER 13
    #define SO_BSDCOMPAT 14
    #define SO_REUSEPORT 15
    +#ifndef SO_PASSCRED
    #define SO_PASSCRED 16
    #define SO_PEERCRED 17
    #define SO_RCVLOWAT 18
    #define SO_SNDLOWAT 19
    #define SO_RCVTIMEO 20
    #define SO_SNDTIMEO 21
    +#endif

    #define SO_SECURITY_AUTHENTICATION 22

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS's sembuf.h is equivalent to the asm-generic version.
    Effective diff:

    -#ifndef _CRIS_SEMBUF_H
    -#define _CRIS_SEMBUF_H
    +#ifndef __ASM_GENERIC_SEMBUF_H
    +#define __ASM_GENERIC_SEMBUF_H

    +#include

    struct semid64_ds {
    struct ipc64_perm sem_perm;
    __kernel_time_t sem_otime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused1;
    +#endif
    __kernel_time_t sem_ctime;
    +#if __BITS_PER_LONG != 64
    unsigned long __unused2;
    +#endif
    unsigned long sem_nsems;
    unsigned long __unused3;
    unsigned long __unused4;

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS' sockios.h is equivalent to the asm-generic version.

    Effective diff:

    -#ifndef __ARCH_CRIS_SOCKIOS__
    -#define __ARCH_CRIS_SOCKIOS__
    +#ifndef __ASM_GENERIC_SOCKIOS_H
    +#define __ASM_GENERIC_SOCKIOS_H

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS's auxvec.h is empty just like the asm-generic version.

    Effective diff:

    -#ifndef __ASMCRIS_AUXVEC_H
    -#define __ASMCRIS_AUXVEC_H
    +#ifndef __ASM_GENERIC_AUXVEC_H
    +#define __ASM_GENERIC_AUXVEC_H
    +

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Use Kbuild magic to include the generic headers.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • CRIS userspace (uClibc for one) expects asm/elf.h to be exported but
    this header appears to have gone missing at some point. Move it to
    uapi/ and export it.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • We're going to export asm/elf.h; remove its dependencies on the
    non-exported asm/user.h and the unused asm/system.h include.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • The exported ptrace.h header on CRIS references an "arch" directory
    which does not exist. Fix this by having the variants in the same
    directory and including them conditionally, similar to other
    architectures.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Signed-off-by: Jesper Nilsson

    Jesper Nilsson
     
  • Fix a number of small issues visible when GPIO is enabled:

    - Correct missing default for !ETRAXFS in Kconfig
    - Remove information on number of bits for some Kconfigs
    related to the GPIO, they are different in ETRAX FS and ARTPEC-3
    - Fix compile warning in ARTPEC-3 GPIO driver

    Signed-off-by: Jesper Nilsson

    Jesper Nilsson
     
  • Squash the followng warnings

    arch/cris/arch-v32/mach-fs/pinmux.c: In function 'crisv32_pinmux_alloc_fixed':
    arch/cris/arch-v32/mach-fs/pinmux.c:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    arch/cris/arch-v32/mach-fs/pinmux.c: In function 'crisv32_pinmux_dealloc_fixed':
    arch/cris/arch-v32/mach-fs/pinmux.c:238:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    arch/cris/arch-v32/mach-fs/pinmux.c: In function '__crisv32_pinmux_alloc':
    arch/cris/arch-v32/mach-fs/pinmux.c:49:1: warning: control reaches end of non-void function [-Wreturn-type]

    Signed-off-by: Jesper Nilsson

    Jesper Nilsson
     
  • The related warnings:

    CALL scripts/checksyscalls.sh
    :1229:2: warning: #warning syscall sched_setattr not implemented [-Wcpp]
    :1232:2: warning: #warning syscall sched_getattr not implemented [-Wcpp]
    :1235:2: warning: #warning syscall renameat2 not implemented [-Wcpp]
    :1238:2: warning: #warning syscall seccomp not implemented [-Wcpp]
    :1241:2: warning: #warning syscall getrandom not implemented [-Wcpp]
    :1244:2: warning: #warning syscall memfd_create not implemented [-Wcpp]
    :1247:2: warning: #warning syscall bpf not implemented [-Wcpp]
    :1250:2: warning: #warning syscall execveat not implemented [-Wcpp]

    Signed-off-by: Chen Gang
    Signed-off-by: Jesper Nilsson

    Chen Gang
     
  • Support for verbose BUG reporting already exists, but the HAVE flag that
    allows the option to be enabled is missing.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Add an unreachable() in the BUG() implementations, to get rid of
    several warnings similar to the one below:

    kernel/sched/core.c: In function 'pick_next_task':
    kernel/sched/core.c:2690:1: warning: control reaches end of non-void function [-Wreturn-type]

    Signed-off-by: Rabin Vincent
    Signed-off-by: Jesper Nilsson

    Rabin Vincent
     
  • Turn a kmalloc/memset into an equivalent kzalloc.
    Doing so also move the zero'ing of the memory outside of a mutex.

    Signed-off-by: Christophe Jaillet
    Signed-off-by: Jesper Nilsson

    Christophe Jaillet
     

10 Aug, 2015

1 commit

  • Migrate cris driver to the new 'set-state' interface provided by
    clockevents core, the earlier 'set-mode' interface is marked obsolete
    now.

    This also enables us to implement callbacks for new states of clockevent
    devices, for example: ONESHOT_STOPPED.

    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Cc: Rabin Vincent
    Cc: Guenter Roeck
    Cc: linux-cris-kernel@axis.com
    Signed-off-by: Viresh Kumar
    Signed-off-by: Daniel Lezcano

    Viresh Kumar
     

18 Jul, 2015

1 commit

  • Commit 2ae416b142b6 ("mm: new mm hook framework") introduced an empty
    header file (mm-arch-hooks.h) for every architecture, even those which
    doesn't need to define mm hooks.

    As suggested by Geert Uytterhoeven, this could be cleaned through the use
    of a generic header file included via each per architecture
    asm/include/Kbuild file.

    The PowerPC architecture is not impacted here since this architecture has
    to defined the arch_remap MM hook.

    Signed-off-by: Laurent Dufour
    Suggested-by: Geert Uytterhoeven
    Acked-by: Geert Uytterhoeven
    Acked-by: Vineet Gupta
    Cc: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Laurent Dufour
     

09 Jul, 2015

1 commit


03 Jul, 2015

1 commit

  • …/linux/kernel/git/paulg/linux

    Pull module_init replacement part one from Paul Gortmaker:
    "Replace module_init with equivalent device_initcall in non modules.

    This series of commits converts non-modular code that is using the
    module_init() call to hook itself into the system to instead use
    device_initcall().

    The conversion is a runtime no-op, since module_init actually becomes
    __initcall in the non-modular case, and that in turn gets mapped onto
    device_initcall. A couple files show a larger negative diffstat,
    representing ones that had a module_exit function that we remove here
    vs previously relying on the linker to dispose of it.

    We make this conversion now, so that we can relocate module_init from
    init.h into module.h in the future.

    The files changed here are just limited to those that would otherwise
    have to add module.h to obviously non-modular code, in order to avoid
    a compile fail, as testing has shown"

    * tag 'module_init-device_initcall-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
    MIPS: don't use module_init in non-modular cobalt/mtd.c file
    drivers/leds: don't use module_init in non-modular leds-cobalt-raq.c
    cris: don't use module_init for non-modular core eeprom.c code
    tty/metag_da: Avoid module_init/module_exit in non-modular code
    drivers/clk: don't use module_init in clk-nomadik.c which is non-modular
    xtensa: don't use module_init for non-modular core network.c code
    sh: don't use module_init in non-modular psw.c code
    mn10300: don't use module_init in non-modular flash.c code
    parisc64: don't use module_init for non-modular core perf code
    parisc: don't use module_init for non-modular core pdc_cons code
    cris: don't use module_init for non-modular core intmem.c code
    ia64: don't use module_init in non-modular sim/simscsi.c code
    ia64: don't use module_init for non-modular core kernel/mca.c code
    arm: don't use module_init in non-modular mach-vexpress/spc.c code
    powerpc: don't use module_init in non-modular 83xx suspend code
    powerpc: use device_initcall for registering rtc devices
    x86: don't use module_init in non-modular devicetree.c code
    x86: don't use module_init in non-modular intel_mid_vrtc.c

    Linus Torvalds
     

26 Jun, 2015

1 commit


25 Jun, 2015

1 commit

  • CRIU is recreating the process memory layout by remapping the checkpointee
    memory area on top of the current process (criu). This includes remapping
    the vDSO to the place it has at checkpoint time.

    However some architectures like powerpc are keeping a reference to the
    vDSO base address to build the signal return stack frame by calling the
    vDSO sigreturn service. So once the vDSO has been moved, this reference
    is no more valid and the signal frame built later are not usable.

    This patch serie is introducing a new mm hook framework, and a new
    arch_remap hook which is called when mremap is done and the mm lock still
    hold. The next patch is adding the vDSO remap and unmap tracking to the
    powerpc architecture.

    This patch (of 3):

    This patch introduces a new set of header file to manage mm hooks:
    - per architecture empty header file (arch/x/include/asm/mm-arch-hooks.h)
    - a generic header (include/linux/mm-arch-hooks.h)

    The architecture which need to overwrite a hook as to redefine it in its
    header file, while architecture which doesn't need have nothing to do.

    The default hooks are defined in the generic header and are used in the
    case the architecture is not defining it.

    In a next step, mm hooks defined in include/asm-generic/mm_hooks.h should
    be moved here.

    Signed-off-by: Laurent Dufour
    Suggested-by: Andrew Morton
    Cc: "Kirill A. Shutemov"
    Cc: Hugh Dickins
    Cc: Rik van Riel
    Cc: Mel Gorman
    Cc: Pavel Emelyanov
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Michael Ellerman
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Laurent Dufour
     

17 Jun, 2015

2 commits

  • The eeprom.c code is compiled based on the Kconfig setting
    ETRAX_I2C_EEPROM, which is bool. So the code is either built in
    or absent. It will never be modular, so using module_init as an
    alias for __initcall is rather misleading.

    Fix this up now, so that we can relocate module_init from
    init.h into module.h in the future. If we don't do this, we'd
    have to add module.h to obviously non-modular code, and that
    would be a worse thing.

    Direct use of __initcall is discouraged, vs prioritized ones.
    Use of device_initcall is consistent with what __initcall
    maps onto, and hence does not change the init order, making the
    impact of this change zero. Should someone with real hardware
    for boot testing want to change it later to arch_initcall or
    something different, they can do that at a later date.

    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Cc: linux-cris-kernel@axis.com
    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     
  • The intmem.c code is always built in. It will never be modular,
    so using module_init as an alias for __initcall is rather
    misleading.

    Fix this up now, so that we can relocate module_init from
    init.h into module.h in the future. If we don't do this, we'd
    have to add module.h to obviously non-modular code, and that
    would be a worse thing.

    Direct use of __initcall is discouraged, vs prioritized ones.
    Use of device_initcall is consistent with what __initcall
    maps onto, and hence does not change the init order, making the
    impact of this change zero. Should someone with real hardware
    for boot testing want to change it later to arch_initcall or
    something different, they can do that at a later date.

    Reported-by: kbuild test robot
    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Acked-by: Jesper Nilsson
    Cc: linux-cris-kernel@axis.com
    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

19 May, 2015

2 commits

  • Signed-off-by: Christoph Hellwig
    Reported-by: Geert Uytterhoeven
    Signed-off-by: Jens Axboe

    Christoph Hellwig
     
  • Introduce faulthandler_disabled() and use it to check for irq context and
    disabled pagefaults (via pagefault_disable()) in the pagefault handlers.

    Please note that we keep the in_atomic() checks in place - to detect
    whether in irq context (in which case preemption is always properly
    disabled).

    In contrast, preempt_disable() should never be used to disable pagefaults.
    With !CONFIG_PREEMPT_COUNT, preempt_disable() doesn't modify the preempt
    counter, and therefore the result of in_atomic() differs.
    We validate that condition by using might_fault() checks when calling
    might_sleep().

    Therefore, add a comment to faulthandler_disabled(), describing why this
    is needed.

    faulthandler_disabled() and pagefault_disable() are defined in
    linux/uaccess.h, so let's properly add that include to all relevant files.

    This patch is based on a patch from Thomas Gleixner.

    Reviewed-and-tested-by: Thomas Gleixner
    Signed-off-by: David Hildenbrand
    Signed-off-by: Peter Zijlstra (Intel)
    Cc: David.Laight@ACULAB.COM
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: airlied@linux.ie
    Cc: akpm@linux-foundation.org
    Cc: benh@kernel.crashing.org
    Cc: bigeasy@linutronix.de
    Cc: borntraeger@de.ibm.com
    Cc: daniel.vetter@intel.com
    Cc: heiko.carstens@de.ibm.com
    Cc: herbert@gondor.apana.org.au
    Cc: hocko@suse.cz
    Cc: hughd@google.com
    Cc: mst@redhat.com
    Cc: paulus@samba.org
    Cc: ralf@linux-mips.org
    Cc: schwidefsky@de.ibm.com
    Cc: yang.shi@windriver.com
    Link: http://lkml.kernel.org/r/1431359540-32227-7-git-send-email-dahi@linux.vnet.ibm.com
    Signed-off-by: Ingo Molnar

    David Hildenbrand
     

06 May, 2015

1 commit


27 Apr, 2015

1 commit

  • Pull arch/cris updates from Jesper Nilsson:
    "Some much needed love for the CRIS-port.

    There's a bunch of changes this time, giving the CRISv32 port a bit of
    modern makeover with device-tree, irq domain and gpiolib support, and
    more switchover to generic frameworks.

    Some small fixes and removal of the theoretical SMP support brings up
    the rear"

    * tag 'cris-for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris:
    cris: fix integer overflow in ELF_ET_DYN_BASE
    CRISv32: use GENERIC_SCHED_CLOCK
    CRISv32: use MMIO clocksource
    CRISv32: use generic clockevents
    CRIS: use generic headers via Kbuild
    CRIS: use generic cmpxchg.h
    CRIS: use generic atomic.h
    CRIS: use generic atomic bitops
    CRISv10: remove redundant macros from system.h
    CRIS: remove SMP code
    CRISv32: don't enable irqs in INIT_THREAD
    CRISv32: handle multiple signals
    CRISv32: prevent bogus restarts on sigreturn
    CRISv32: don't attempt syscall restart on irq exit
    Add binding documentation for CRIS
    CRIS: add Axis 88 board device tree
    CRISv32: add device tree support
    CRISv32: add irq domains support
    CRIS: enable GPIOLIB

    Linus Torvalds
     

16 Apr, 2015

3 commits

  • Merge second patchbomb from Andrew Morton:

    - the rest of MM

    - various misc bits

    - add ability to run /sbin/reboot at reboot time

    - printk/vsprintf changes

    - fiddle with seq_printf() return value

    * akpm: (114 commits)
    parisc: remove use of seq_printf return value
    lru_cache: remove use of seq_printf return value
    tracing: remove use of seq_printf return value
    cgroup: remove use of seq_printf return value
    proc: remove use of seq_printf return value
    s390: remove use of seq_printf return value
    cris fasttimer: remove use of seq_printf return value
    cris: remove use of seq_printf return value
    openrisc: remove use of seq_printf return value
    ARM: plat-pxa: remove use of seq_printf return value
    nios2: cpuinfo: remove use of seq_printf return value
    microblaze: mb: remove use of seq_printf return value
    ipc: remove use of seq_printf return value
    rtc: remove use of seq_printf return value
    power: wakeup: remove use of seq_printf return value
    x86: mtrr: if: remove use of seq_printf return value
    linux/bitmap.h: improve BITMAP_{LAST,FIRST}_WORD_MASK
    MAINTAINERS: CREDITS: remove Stefano Brivio from B43
    .mailmap: add Ricardo Ribalda
    CREDITS: add Ricardo Ribalda Delgado
    ...

    Linus Torvalds
     
  • The seq_printf return value, because it's frequently misused,
    will eventually be converted to void.

    See: commit 1f33c41c03da ("seq_file: Rename seq_overflow() to
    seq_has_overflowed() and make public")

    Miscellanea:

    o Coalesce formats, realign arguments

    Signed-off-by: Joe Perches
    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • The seq_printf return value, because it's frequently misused,
    will eventually be converted to void.

    See: commit 1f33c41c03da ("seq_file: Rename seq_overflow() to
    seq_has_overflowed() and make public")

    Signed-off-by: Joe Perches
    Acked-by: Jesper Nilsson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches