30 Aug, 2014

2 commits

  • Fix building errors occuring due to a missing export of
    flush_icache_range() in

    kisskb.ellerman.id.au/kisskb/buildresult/11677809/

    ERROR: "flush_icache_range" [drivers/misc/lkdtm.ko] undefined!

    Signed-off-by: Pranith Kumar
    Reported-by: Geert Uytterhoeven
    Acked-by: Vineet Gupta [arc]
    Acked-by: Richard Kuo [hexagon]
    Cc: Chris Metcalf
    Cc: Chris Zankel
    Acked-by: Max Filippov [xtensa]
    Cc: Noam Camus
    Cc: Masami Hiramatsu
    Acked-by: Zhigang Lu [tile]
    Cc: Kirill Tkhai
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pranith Kumar
     
  • New system call depends on crypto. As it did not have a separate config
    option, CONFIG_KEXEC was modified to select CRYPTO and CRYPTO_SHA256.

    But now previous patch introduced a new config option for new syscall.
    So CONFIG_KEXEC does not require crypto. Remove that dependency.

    Signed-off-by: Vivek Goyal
    Cc: Eric Biederman
    Cc: H. Peter Anvin
    Cc: Shaun Ruffell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vivek Goyal
     

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

3 commits

  • Load purgatory code in RAM and relocate it based on the location.
    Relocation code has been inspired by module relocation code and purgatory
    relocation code in kexec-tools.

    Also compute the checksums of loaded kexec segments and store them in
    purgatory.

    Arch independent code provides this functionality so that arch dependent
    bootloaders can make use of it.

    Helper functions are provided to get/set symbol values in purgatory which
    are used by bootloaders later to set things like stack and entry point of
    second kernel etc.

    Signed-off-by: Vivek Goyal
    Cc: Borislav Petkov
    Cc: Michael Kerrisk
    Cc: Yinghai Lu
    Cc: Eric Biederman
    Cc: H. Peter Anvin
    Cc: Matthew Garrett
    Cc: Greg Kroah-Hartman
    Cc: Dave Young
    Cc: WANG Chao
    Cc: Baoquan He
    Cc: Andy Lutomirski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vivek Goyal
     
  • The core mm code will provide a default gate area based on
    FIXADDR_USER_START and FIXADDR_USER_END if
    !defined(__HAVE_ARCH_GATE_AREA) && defined(AT_SYSINFO_EHDR).

    This default is only useful for ia64. arm64, ppc, s390, sh, tile, 64-bit
    UML, and x86_32 have their own code just to disable it. arm, 32-bit UML,
    and x86_64 have gate areas, but they have their own implementations.

    This gets rid of the default and moves the code into ia64.

    This should save some code on architectures without a gate area: it's now
    possible to inline the gate_area functions in the default case.

    Signed-off-by: Andy Lutomirski
    Acked-by: Nathan Lynch
    Acked-by: H. Peter Anvin
    Acked-by: Benjamin Herrenschmidt [in principle]
    Acked-by: Richard Weinberger [for um]
    Acked-by: Will Deacon [for arm64]
    Cc: Catalin Marinas
    Cc: Will Deacon
    Cc: Tony Luck
    Cc: Fenghua Yu
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Cc: Chris Metcalf
    Cc: Jeff Dike
    Cc: Richard Weinberger
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Nathan Lynch
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Lutomirski
     
  • Signed-off-by: Alexey Dobriyan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

07 Aug, 2014

3 commits

  • Merge incoming from Andrew Morton:
    - Various misc things.
    - arch/sh updates.
    - Part of ocfs2. Review is slow.
    - Slab updates.
    - Most of -mm.
    - printk updates.
    - lib/ updates.
    - checkpatch updates.

    * emailed patches from Andrew Morton : (226 commits)
    checkpatch: update $declaration_macros, add uninitialized_var
    checkpatch: warn on missing spaces in broken up quoted
    checkpatch: fix false positives for --strict "space after cast" test
    checkpatch: fix false positive MISSING_BREAK warnings with --file
    checkpatch: add test for native c90 types in unusual order
    checkpatch: add signed generic types
    checkpatch: add short int to c variable types
    checkpatch: add for_each tests to indentation and brace tests
    checkpatch: fix brace style misuses of else and while
    checkpatch: add --fix option for a couple OPEN_BRACE misuses
    checkpatch: use the correct indentation for which()
    checkpatch: add fix_insert_line and fix_delete_line helpers
    checkpatch: add ability to insert and delete lines to patch/file
    checkpatch: add an index variable for fixed lines
    checkpatch: warn on break after goto or return with same tab indentation
    checkpatch: emit a warning on file add/move/delete
    checkpatch: add test for commit id formatting style in commit log
    checkpatch: emit fewer kmalloc_array/kcalloc conversion warnings
    checkpatch: improve "no space after cast" test
    checkpatch: allow multiple const * types
    ...

    Linus Torvalds
     
  • Pull SCSI updates from James Bottomley:
    "This patch set consists of the usual driver updates (ufs, storvsc,
    pm8001 hpsa). It also has removal of the user space target driver
    code (everyone is using LIO now), a partial PCI MSI-X update, more
    multi-queue updates, conversion to 64 bit LUNs (so we could
    theoretically cope with any LUN returned by a device) and placeholder
    support for the ZBC device type (Shingle drives), plus an assortment
    of minor updates and bug fixes"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (143 commits)
    scsi: do not issue SCSI RSOC command to Promise Vtrak E610f
    vmw_pvscsi: Use pci_enable_msix_exact() instead of pci_enable_msix()
    pm8001: Fix invalid return when request_irq() failed
    lpfc: Remove superfluous call to pci_disable_msix()
    isci: Use pci_enable_msix_exact() instead of pci_enable_msix()
    bfa: Use pci_enable_msix_exact() instead of pci_enable_msix()
    bfa: Cleanup bfad_setup_intr() function
    bfa: Do not call pci_enable_msix() after it failed once
    fnic: Use pci_enable_msix_exact() instead of pci_enable_msix()
    scsi: use short driver name for per-driver cmd slab caches
    scsi_debug: support scsi-mq, queues and locks
    Drivers: add blist flags
    scsi: ufs: fix endianness sparse warnings
    scsi: ufs: make undeclared functions static
    bnx2i: Update driver version to 2.7.10.1
    pm8001: fix a memory leak in nvmd_resp
    pm8001: fix update_flash
    pm8001: fix a memory leak in flash_update
    pm8001: Cleaning up uninitialized variables
    pm8001: Fix to remove null pointer checks that could never happen
    ...

    Linus Torvalds
     
  • Currently map_vm_area() takes (struct page *** pages) as third argument,
    and after mapping, it moves (*pages) to point to (*pages +
    nr_mappped_pages).

    It looks like this kind of increment is useless to its caller these
    days. The callers don't care about the increments and actually they're
    trying to avoid this by passing another copy to map_vm_area().

    The caller can always guarantee all the pages can be mapped into vm_area
    as specified in first argument and the caller only cares about whether
    map_vm_area() fails or not.

    This patch cleans up the pointer movement in map_vm_area() and updates
    its callers accordingly.

    Signed-off-by: WANG Chao
    Cc: Zhang Yanfei
    Acked-by: Greg Kroah-Hartman
    Cc: Minchan Kim
    Cc: Nitin Gupta
    Cc: Rusty Russell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    WANG Chao
     

06 Aug, 2014

2 commits

  • Use the more generic functions get_signal() signal_setup_done()
    for signal delivery.

    Signed-off-by: Richard Weinberger
    Acked-by: Chris Metcalf

    Richard Weinberger
     
  • Pull timer and time updates from Thomas Gleixner:
    "A rather large update of timers, timekeeping & co

    - Core timekeeping code is year-2038 safe now for 32bit machines.
    Now we just need to fix all in kernel users and the gazillion of
    user space interfaces which rely on timespec/timeval :)

    - Better cache layout for the timekeeping internal data structures.

    - Proper nanosecond based interfaces for in kernel users.

    - Tree wide cleanup of code which wants nanoseconds but does hoops
    and loops to convert back and forth from timespecs. Some of it
    definitely belongs into the ugly code museum.

    - Consolidation of the timekeeping interface zoo.

    - A fast NMI safe accessor to clock monotonic for tracing. This is a
    long standing request to support correlated user/kernel space
    traces. With proper NTP frequency correction it's also suitable
    for correlation of traces accross separate machines.

    - Checkpoint/restart support for timerfd.

    - A few NOHZ[_FULL] improvements in the [hr]timer code.

    - Code move from kernel to kernel/time of all time* related code.

    - New clocksource/event drivers from the ARM universe. I'm really
    impressed that despite an architected timer in the newer chips SoC
    manufacturers insist on inventing new and differently broken SoC
    specific timers.

    [ Ed. "Impressed"? I don't think that word means what you think it means ]

    - Another round of code move from arch to drivers. Looks like most
    of the legacy mess in ARM regarding timers is sorted out except for
    a few obnoxious strongholds.

    - The usual updates and fixlets all over the place"

    * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (114 commits)
    timekeeping: Fixup typo in update_vsyscall_old definition
    clocksource: document some basic timekeeping concepts
    timekeeping: Use cached ntp_tick_length when accumulating error
    timekeeping: Rework frequency adjustments to work better w/ nohz
    timekeeping: Minor fixup for timespec64->timespec assignment
    ftrace: Provide trace clocks monotonic
    timekeeping: Provide fast and NMI safe access to CLOCK_MONOTONIC
    seqcount: Add raw_write_seqcount_latch()
    seqcount: Provide raw_read_seqcount()
    timekeeping: Use tk_read_base as argument for timekeeping_get_ns()
    timekeeping: Create struct tk_read_base and use it in struct timekeeper
    timekeeping: Restructure the timekeeper some more
    clocksource: Get rid of cycle_last
    clocksource: Move cycle_last validation to core code
    clocksource: Make delta calculation a function
    wireless: ath9k: Get rid of timespec conversions
    drm: vmwgfx: Use nsec based interfaces
    drm: i915: Use nsec based interfaces
    timekeeping: Provide ktime_get_raw()
    hangcheck-timer: Use ktime_get_ns()
    ...

    Linus Torvalds
     

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
     

24 Jul, 2014

3 commits


19 Jul, 2014

1 commit


18 Jul, 2014

1 commit

  • Because of the removal of the scsi_tgt kernel module, the kbuild variables
    CONFIG_SCSI_TGT, CONFIG_SCSI_SRP_TGT_ATTRS and CONFIG_SCSI_FC_TGT_ATTRS
    are obsolete. This patch removes these variables. This patch is the result
    of the following command:

    find -name '*defconfig' | while read f; do grep -vwE 'CONFIG_SCSI_TGT|CONFIG_SCSI_SRP_TGT_ATTRS|CONFIG_SCSI_FC_TGT_ATTRS|CONFIG_SRP' $f >/tmp/t && mv /tmp/t $f; done

    Signed-off-by: Bart Van Assche
    Signed-off-by: Christoph Hellwig
    Reviewed-by: Paolo Bonzini
    Reviewed-by: Hannes Reinecke

    Bart Van Assche
     

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
     

12 Jun, 2014

1 commit

  • Pull arch/tile changes from Chris Metcalf:
    "These mostly just address smaller issues reported to me"

    * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
    arch: tile: kernel: unaligned.c: Cleaning up uninitialized variables
    drivers/tty/hvc/hvc_tile.c: use PTR_ERR_OR_ZERO
    replace strict_strto* call with kstrto*
    tile: Update comments for generic idle conversion
    tile: cleanup the comment in init_pgprot
    tile: use BOOTMEM_DEFAULT instead of magic number 0 for reserve_bootmem flags

    Linus Torvalds
     

08 Jun, 2014

1 commit


07 Jun, 2014

1 commit


05 Jun, 2014

4 commits

  • Merge misc updates from Andrew Morton:

    - a few fixes for 3.16. Cc'ed to stable so they'll get there somehow.

    - various misc fixes and cleanups

    - most of the ocfs2 queue. Review is slow...

    - most of MM. The MM queue is pretty huge this time, but not much in
    the way of feature work.

    - some tweaks under kernel/

    - printk maintenance work

    - updates to lib/

    - checkpatch updates

    - tweaks to init/

    * emailed patches from Andrew Morton : (276 commits)
    fs/autofs4/dev-ioctl.c: add __init to autofs_dev_ioctl_init
    fs/ncpfs/getopt.c: replace simple_strtoul by kstrtoul
    init/main.c: remove an ifdef
    kthreads: kill CLONE_KERNEL, change kernel_thread(kernel_init) to avoid CLONE_SIGHAND
    init/main.c: add initcall_blacklist kernel parameter
    init/main.c: don't use pr_debug()
    fs/binfmt_flat.c: make old_reloc() static
    fs/binfmt_elf.c: fix bool assignements
    fs/efs: convert printk(KERN_DEBUG to pr_debug
    fs/efs: add pr_fmt / use __func__
    fs/efs: convert printk to pr_foo()
    scripts/checkpatch.pl: device_initcall is not the only __initcall substitute
    checkpatch: check stable email address
    checkpatch: warn on unnecessary void function return statements
    checkpatch: prefer kstrto to sscanf(buf, "%", &bar);
    checkpatch: add warning for kmalloc/kzalloc with multiply
    checkpatch: warn on #defines ending in semicolon
    checkpatch: make --strict a default for files in drivers/net and net/
    checkpatch: always warn on missing blank line after variable declaration block
    checkpatch: fix wildcard DT compatible string checking
    ...

    Linus Torvalds
     
  • cold is a bool, make it one. Make the likely case the "if" part of the
    block instead of the else as according to the optimisation manual this is
    preferred.

    Signed-off-by: Mel Gorman
    Acked-by: Rik van Riel
    Cc: Johannes Weiner
    Cc: Vlastimil Babka
    Cc: Jan Kara
    Cc: Michal Hocko
    Cc: Hugh Dickins
    Cc: Dave Hansen
    Cc: Theodore Ts'o
    Cc: "Paul E. McKenney"
    Cc: Oleg Nesterov
    Cc: Peter Zijlstra
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mel Gorman
     
  • Currently hugepage migration is available for all archs which support
    pmd-level hugepage, but testing is done only for x86_64 and there're
    bugs for other archs. So to avoid breaking such archs, this patch
    limits the availability strictly to x86_64 until developers of other
    archs get interested in enabling this feature.

    Simply disabling hugepage migration on non-x86_64 archs is not enough to
    fix the reported problem where sys_move_pages() hits the BUG_ON() in
    follow_page(FOLL_GET), so let's fix this by checking if hugepage
    migration is supported in vma_migratable().

    Signed-off-by: Naoya Horiguchi
    Reported-by: Michael Ellerman
    Tested-by: Michael Ellerman
    Acked-by: Hugh Dickins
    Cc: Benjamin Herrenschmidt
    Cc: Tony Luck
    Cc: Russell King
    Cc: Martin Schwidefsky
    Cc: James Hogan
    Cc: Ralf Baechle
    Cc: David Miller
    Cc: [3.12+]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Naoya Horiguchi
     
  • Pull core irq updates from Thomas Gleixner:
    "The irq department delivers:

    - Another tree wide update to get rid of the horrible create_irq
    interface along with its even more horrible variants. That also
    gets rid of the last leftovers of the initial sparse irq hackery.
    arch/driver specific changes have been either acked or ignored.

    - A fix for the spurious interrupt detection logic with threaded
    interrupts.

    - A new ARM SoC interrupt controller

    - The usual pile of fixes and improvements all over the place"

    * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)
    Documentation: brcmstb-l2: Add Broadcom STB Level-2 interrupt controller binding
    irqchip: brcmstb-l2: Add Broadcom Set Top Box Level-2 interrupt controller
    genirq: Improve documentation to match current implementation
    ARM: iop13xx: fix msi support with sparse IRQ
    genirq: Provide !SMP stub for irq_set_affinity_notifier()
    irqchip: armada-370-xp: Move the devicetree binding documentation
    irqchip: gic: Use mask field in GICC_IAR
    genirq: Remove dynamic_irq mess
    ia64: Use irq_init_desc
    genirq: Replace dynamic_irq_init/cleanup
    genirq: Remove irq_reserve_irq[s]
    genirq: Replace reserve_irqs in core code
    s390: Avoid call to irq_reserve_irqs()
    s390: Remove pointless arch_show_interrupts()
    s390: pci: Check return value of alloc_irq_desc() proper
    sh: intc: Remove pointless irq_reserve_irqs() invocation
    x86, irq: Remove pointless irq_reserve_irqs() call
    genirq: Make create/destroy_irq() ia64 private
    tile: Use SPARSE_IRQ
    tile: pci: Use irq_alloc/free_hwirq()
    ...

    Linus Torvalds
     

04 Jun, 2014

1 commit

  • …/git/tip/tip into next

    Pull scheduler updates from Ingo Molnar:
    "The main scheduling related changes in this cycle were:

    - various sched/numa updates, for better performance

    - tree wide cleanup of open coded nice levels

    - nohz fix related to rq->nr_running use

    - cpuidle changes and continued consolidation to improve the
    kernel/sched/idle.c high level idle scheduling logic. As part of
    this effort I pulled cpuidle driver changes from Rafael as well.

    - standardized idle polling amongst architectures

    - continued work on preparing better power/energy aware scheduling

    - sched/rt updates

    - misc fixlets and cleanups"

    * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (49 commits)
    sched/numa: Decay ->wakee_flips instead of zeroing
    sched/numa: Update migrate_improves/degrades_locality()
    sched/numa: Allow task switch if load imbalance improves
    sched/rt: Fix 'struct sched_dl_entity' and dl_task_time() comments, to match the current upstream code
    sched: Consolidate open coded implementations of nice level frobbing into nice_to_rlimit() and rlimit_to_nice()
    sched: Initialize rq->age_stamp on processor start
    sched, nohz: Change rq->nr_running to always use wrappers
    sched: Fix the rq->next_balance logic in rebalance_domains() and idle_balance()
    sched: Use clamp() and clamp_val() to make sys_nice() more readable
    sched: Do not zero sg->cpumask and sg->sgp->power in build_sched_groups()
    sched/numa: Fix initialization of sched_domain_topology for NUMA
    sched: Call select_idle_sibling() when not affine_sd
    sched: Simplify return logic in sched_read_attr()
    sched: Simplify return logic in sched_copy_attr()
    sched: Fix exec_start/task_hot on migrated tasks
    arm64: Remove TIF_POLLING_NRFLAG
    metag: Remove TIF_POLLING_NRFLAG
    sched/idle: Make cpuidle_idle_call() void
    sched/idle: Reflow cpuidle_idle_call()
    sched/idle: Delay clearing the polling bit
    ...

    Linus Torvalds
     

29 May, 2014

1 commit


24 May, 2014

1 commit


16 May, 2014

3 commits

  • Get rid of the private allocator and switch over to sparse IRQs.

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Grant Likely
    Cc: Tony Luck
    Cc: Peter Zijlstra
    Acked-by: Chris Metcalf
    Link: http://lkml.kernel.org/r/20140507154338.423715783@linutronix.de
    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • No functional change. Just convert to the new interface.

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Grant Likely
    Cc: Tony Luck
    Cc: Peter Zijlstra
    Acked-by: Chris Metcalf
    Link: http://lkml.kernel.org/r/20140507154338.132662495@linutronix.de
    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • We want to convert the drivers over to the new interface and finally
    tile to sparse irqs. Implement irq_alloc/free_hwirq() for step by step
    migration.

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Grant Likely
    Cc: Tony Luck
    Cc: Peter Zijlstra
    Acked-by: Chris Metcalf
    Link: http://lkml.kernel.org/r/20140507154336.947853241@linutronix.de
    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     

13 May, 2014

1 commit

  • In tile vmlinux, the rodata area start after the _sdata.
    The rodata area is included between [_sdata, __end_rodata),
    and is handled at an earlier point.
    The page walk starts at __end_rodata, not _sdata.

    Signed-off-by: Wang Sheng-Hui
    Signed-off-by: Chris Metcalf

    Wang Sheng-Hui
     

08 May, 2014

1 commit

  • Standardize the idle polling indicator to TIF_POLLING_NRFLAG such that
    both TIF_NEED_RESCHED and TIF_POLLING_NRFLAG are in the same word.
    This will allow us, using fetch_or(), to both set NEED_RESCHED and
    check for POLLING_NRFLAG in a single operation and avoid pointless
    wakeups.

    Changing from the non-atomic thread_info::status flags to the atomic
    thread_info::flags shouldn't be a big issue since most polling state
    changes were followed/preceded by a full memory barrier anyway.

    Signed-off-by: Peter Zijlstra
    Acked-by: Chris Metcalf
    Cc: Andy Lutomirski
    Cc: Chris Metcalf
    Cc: Linus Torvalds
    Link: http://lkml.kernel.org/n/tip-35zzwlvwr7cp8xj196y10yyx@git.kernel.org
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     

07 May, 2014

1 commit

  • We replace the old way to configure the scheduler topology with a new method
    which enables a platform to declare additionnal level (if needed).

    We still have a default topology table definition that can be used by platform
    that don't want more level than the SMT, MC, CPU and NUMA ones. This table can
    be overwritten by an arch which either wants to add new level where a load
    balance make sense like BOOK or powergating level or wants to change the flags
    configuration of some levels.

    For each level, we need a function pointer that returns cpumask for each cpu,
    a function pointer that returns the flags for the level and a name. Only flags
    that describe topology, can be set by an architecture. The current topology
    flags are:

    SD_SHARE_CPUPOWER
    SD_SHARE_PKG_RESOURCES
    SD_NUMA
    SD_ASYM_PACKING

    Then, each level must be a subset on the next one. The build sequence of the
    sched_domain will take care of removing useless levels like those with 1 CPU
    and those with the same CPU span and no more relevant information for
    load balancing than its children.

    Signed-off-by: Vincent Guittot
    Tested-by: Dietmar Eggemann
    Reviewed-by: Preeti U Murthy
    Reviewed-by: Dietmar Eggemann
    Signed-off-by: Peter Zijlstra
    Cc: Andrew Morton
    Cc: Benjamin Herrenschmidt
    Cc: Bjorn Helgaas
    Cc: Chris Metcalf
    Cc: Christoph Lameter
    Cc: David S. Miller
    Cc: Fenghua Yu
    Cc: Greg Kroah-Hartman
    Cc: Hanjun Guo
    Cc: Heiko Carstens
    Cc: Jason Low
    Cc: Linus Torvalds
    Cc: Martin Schwidefsky
    Cc: Tony Luck
    Cc: linux390@de.ibm.com
    Cc: linux-ia64@vger.kernel.org
    Cc: linux-s390@vger.kernel.org
    Link: http://lkml.kernel.org/r/1397209481-28542-2-git-send-email-vincent.guittot@linaro.org
    Signed-off-by: Ingo Molnar

    Vincent Guittot
     

03 May, 2014

1 commit


18 Apr, 2014

1 commit

  • Implement the new smp_mb__* ops as per the old ones.

    Signed-off-by: Peter Zijlstra
    Acked-by: Paul E. McKenney
    Acked-by: Chris Metcalf
    Link: http://lkml.kernel.org/n/tip-euuabnf5a3u23fy4fq8m3jcg@git.kernel.org
    Cc: Akinobu Mita
    Cc: Chen Gang
    Cc: Geert Uytterhoeven
    Cc: Linus Torvalds
    Cc: Mathieu Desnoyers
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     

08 Apr, 2014

1 commit

  • If the renamed symbol is defined lib/iomap.c implements ioport_map and
    ioport_unmap and currently (nearly) all platforms define the port
    accessor functions outb/inb and friend unconditionally. So
    HAS_IOPORT_MAP is the better name for this.

    Consequently NO_IOPORT is renamed to NO_IOPORT_MAP.

    The motivation for this change is to reintroduce a symbol HAS_IOPORT
    that signals if outb/int et al are available. I will address that at
    least one merge window later though to keep surprises to a minimum and
    catch new introductions of (HAS|NO)_IOPORT.

    The changes in this commit were done using:

    $ git grep -l -E '(NO|HAS)_IOPORT' | xargs perl -p -i -e 's/\b((?:CONFIG_)?(?:NO|HAS)_IOPORT)\b/$1_MAP/'

    Signed-off-by: Uwe Kleine-König
    Acked-by: Arnd Bergmann
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Uwe Kleine-König
     

06 Apr, 2014

1 commit

  • Pull arch/tile updates from Chris Metcalf:
    "These fix a few stray build issues seen in linux-next, and also add
    the minimal required support for perf to tilegx"

    * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
    arch/tile: remove unused variable 'devcap'
    tile: Fix vDSO compilation issue with allyesconfig
    perf tools: Allow building for tile
    tile/perf: Support perf_events on tilegx and tilepro
    tile: Enable NMIs on return from handle_nmi() without errors
    tile: Add support for handling PMC hardware
    tile: don't use __get_cpu_var() with structure-typed arguments
    tile: avoid overflow in ns2cycles

    Linus Torvalds
     

05 Apr, 2014

2 commits

  • Commit 503275bf37 removed the use of the variable but not
    the variable itself.

    Signed-off-by: Chris Metcalf

    Chris Metcalf
     
  • make allyesconfig give the following build error on tile:
    tilegx-linux-gcc: error: arch/tile/kernel/vdso/vgettimeofday32.o: No such file or directory
    tilegx-linux-objcopy: 'arch/tile/kernel/vdso/vdso32.so.dbg': No such file or directory

    In case with CONFIG_MODVERSIONS, cmd_cc_o_c generate .tmp_.o from
    .c only. Fix it by execute rule_cc_o_c instead.

    Reported-by: Fengguang Wu
    Signed-off-by: Kerry Sheh
    Signed-off-by: Chris Metcalf

    Kerry Sheh