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 Hexagon updates from Richard Kuo:
    "Mostly cleanups for compilation with allmodconfig and some other
    miscellaneous fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
    Hexagon: update CR year for elf.h
    Hexagon: remove SP macro
    Hexagon: set ELF_EXEC_PAGESIZE to PAGE_SIZE
    Hexagon: set the e_flags in user regset view for core dumps
    Hexagon: fix atomic_set
    Hexagon: add screen_info for VGA_CONSOLE
    hexagon: correct type on pgd copy
    smp, hexagon: kill SMP single function call interrupt
    arch: hexagon: include: asm: add generic macro 'mmiowb' in "io.h"
    arch: hexagon: kernel: hexagon_ksyms.c: export related symbols which various modules need
    arch: hexagon: kernel: reset.c: use function pointer instead of function for pm_power_off and export it
    arch: hexagon: include: asm: add "vga.h" in Kbuild
    arch: hexagon: include: asm: Kbuild: add generic "serial.h" in Kbuild
    arch: hexagon: include: uapi: asm: setup.h add swith macro __KERNEL__
    arch: hexagon: include: asm: add prefix "hvm[ci]_" for all enum members in "hexagon_vm.h"
    arch: hexagon: Kconfig: add HAVE_DMA_ATTR in Kconfig and remove "linux/dma-mapping.h" from "asm/dma-mapping.h"
    arch: hexagon: kernel: add export symbol function __delay()
    hexagon: include: asm: kgdb: extend DBG_MAX_REG_NUM for "cs0/1"
    hexagon: kernel: kgdb: include related header for pass compiling.
    hexagon: kernel: remove useless variables 'dn', 'r' and 'err' in time_init_deferred() in "time.c"

    Linus Torvalds
     

05 Apr, 2014

20 commits

  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • The SP/r29 macro wasn't used anywhere else and was causing conflicts
    with another module, so just remove it.

    Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Normal writes in our our architecture don't invalidate lock
    reservations.

    Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • swapper_pg_dir is an array of pgd_t, not pgd_t*. This has no actual
    effect since sizeof(pgd_t) == sizeof(pgd_t*), but unconfuses tools that
    check types.

    Signed-off-by: Ilia Mirkin
    Signed-off-by: Richard Kuo

    Ilia Mirkin
     
  • Commit 9a46ad6d6df3b54 "smp: make smp_call_function_many() use logic
    similar to smp_call_function_single()" has unified the way to handle
    single and multiple cross-CPU function calls. Now only one intterupt
    is needed for architecture specific code to support generic SMP function
    call interfaces, so kill the redundant single function call interrupt.

    Cc: Andrew Morton
    Cc: Shaohua Li
    Cc: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Steven Rostedt
    Cc: Jiri Kosina
    Cc: Richard Kuo
    Cc: linux-hexagon@vger.kernel.org
    Signed-off-by: Jiang Liu
    Signed-off-by: Richard Kuo

    Jiang Liu
     
  • Need dumy mmiowb(), or can not pass compiling, the related error with
    allmodconfig:

    CC [M] drivers/mmc/host/sdhci.o
    drivers/mmc/host/sdhci.c: In function 'sdhci_request':
    drivers/mmc/host/sdhci.c:1409:2: error: implicit declaration of function 'mmiowb' [-Werror=implicit-function-declaration]

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Need export all related functions and symbols for various modules with
    allmodconfig. The related errors:

    MODPOST 2879 modules
    ERROR: "__vmyield" [sound/sound_firmware.ko] undefined!
    ERROR: "__phys_offset" [sound/drivers/snd-dummy.ko] undefined!
    ERROR: "ioremap_nocache" [drivers/char/ipmi/ipmi_si.ko] undefined!
    ERROR: "__iounmap" [drivers/char/ipmi/ipmi_si.ko] undefined!
    ...

    For including files, need "linux/*" first, then "asm/*". All related
    included files and symbols need be sorted by alphabetical order.

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • …power_off and export it

    'pm_power_off' is a function pointer, not a function, so need change
    its type, and also need export it, or can not pass compiling with
    allmodconfig. The related error:

    MODPOST 2879 modules
    ERROR: "pm_power_off" [drivers/char/ipmi/ipmi_poweroff.ko] undefined!

    Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
    Signed-off-by: Richard Kuo <rkuo@codeaurora.org>

    Chen Gang
     
  • Need include generic "vga.h", or can not pass compiling with
    allmodconfig, the related error:

    CC [M] drivers/gpu/drm/drm_irq.o
    In file included from include/linux/vgaarb.h:34:0,
    from drivers/gpu/drm/drm_irq.c:42:
    include/video/vga.h:22:21: fatal error: asm/vga.h: No such file or directory

    Also move "preempt.h" upper to match sort order.

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Add "serial.h" in Kbuild, or can not pass compiling with allmodconfig,
    the related error:

    CC [M] drivers/staging/speakup/speakup_acntpc.o
    In file included from drivers/staging/speakup/speakup_acntpc.c:33:0:
    drivers/staging/speakup/serialio.h:7:24: fatal error: asm/serial.h: No such file or directory

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Define dummy '__init' instead of include "linux/init.h" if !__KERNEL__,
    or can not pass checking. The related error (with allmodconfig under
    hexagon):

    CHECK include/asm (34 files)
    usr/include/asm/setup.h:22: included file 'linux/init.h' is not exported

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Append "hvmc_" or "hvmi_" to all related enum members (which are too
    common to make conflict with another sub-systems). The related error
    with allmodconfig:

    CC [M] drivers/md/raid1.o
    drivers/md/raid1.c:1440:13: error: 'status' redeclared as different kind of symbol
    arch/hexagon/include/asm/hexagon_vm.h:76:2: note: previous definition of 'status' was here

    Also use 'affinity' instead of 'locdis' for __vmintop_affinity().

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • …ng.h" from "asm/dma-mapping.h"

    When HAS_DMA, and also need use generic implementation, HAVE_DMA_ATTR
    must be enabled, or can not pass compiling with allmodconfig, the
    related error:

    CC [M] drivers/ata/libata-core.o
    drivers/ata/libata-core.c: In function 'ata_sg_clean':
    drivers/ata/libata-core.c:4598:3: error: implicit declaration of function 'dma_unmap_sg' [-Werror=implicit-function-declaration]
    drivers/ata/libata-core.c: In function 'ata_sg_setup':
    drivers/ata/libata-core.c:4708:2: error: implicit declaration of function 'dma_map_sg' [-Werror=implicit-function-declaration]

    "linux/dma-mapping.h" will include "asm/dma-mapping.h", so need remove
    "linux/dma-mapping.h" from "asm/dma-mapping.h",

    Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
    Signed-off-by: Richard Kuo <rkuo@codeaurora.org>

    Chen Gang
     
  • Need add __delay() implementation, or can not pass allmodconfig in
    next-20131118 tree.

    The related error:

    CC kernel/locking/spinlock_debug.o
    kernel/locking/spinlock_debug.c: In function '__spin_lock_debug':
    kernel/locking/spinlock_debug.c:114:3: error: implicit declaration of function '__delay' [-Werror=implicit-function-declaration]

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Need extend maximized number for "cs0/1", the related warning (with
    allmodconfig for v4):

    arch/hexagon/kernel/kgdb.c:79: warning: excess elements in array initializer
    arch/hexagon/kernel/kgdb.c:79: warning: (near initialization for 'dbg_reg_def')
    arch/hexagon/kernel/kgdb.c:80: warning: excess elements in array initializer
    arch/hexagon/kernel/kgdb.c:80: warning: (near initialization for 'dbg_reg_def')

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Need include related headers for pass compiling, the related error
    (with allmodconfig for v4):

    CC arch/hexagon/kernel/kgdb.o
    arch/hexagon/kernel/kgdb.c:30: error: invalid use of undefined type 'struct pt_regs'
    arch/hexagon/kernel/kgdb.c:31: error: invalid use of undefined type 'struct pt_regs'
    ...
    arch/hexagon/kernel/kgdb.c:220: error: implicit declaration of function 'local_irq_save'
    arch/hexagon/kernel/kgdb.c:222: error: implicit declaration of function 'local_irq_restore'
    ...

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Remove them, since they are useless. The related warnings (with
    allmodconfig for v4):

    CC arch/hexagon/kernel/time.o
    arch/hexagon/kernel/time.c: In function 'time_init_deferred':
    arch/hexagon/kernel/time.c:196: warning: unused variable 'err'
    arch/hexagon/kernel/time.c:195: warning: unused variable 'r'
    arch/hexagon/kernel/time.c:194: warning: unused variable 'dn'

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     

10 Feb, 2014

2 commits

  • This patch allows each architecture to add its specific assembly optimized
    arch_mcs_spin_lock_contended and arch_mcs_spinlock_uncontended for
    MCS lock and unlock functions.

    Signed-off-by: Tim Chen
    Cc: Scott J Norton
    Cc: Raghavendra K T
    Cc: AswinChandramouleeswaran
    Cc: George Spelvin
    Cc: Rik vanRiel
    Cc: Andrea Arcangeli
    Cc: MichelLespinasse
    Cc: Peter Hurley
    Cc: Andi Kleen
    Cc: Alex Shi
    Cc: Dave Hansen
    Cc: Tim Chen
    Cc: Arnd Bergmann
    Cc: "Figo.zhang"
    Cc: "Paul E.McKenney"
    Cc: "H. Peter Anvin"
    Cc: Davidlohr Bueso
    Cc: Waiman Long
    Cc: Ingo Molnar
    Cc: Will Deacon
    Cc: Andrew Morton
    Cc: Linus Torvalds
    Cc: Matthew R Wilcox
    Signed-off-by: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1390347382.3138.67.camel@schen9-DESK
    Signed-off-by: Ingo Molnar

    Tim Chen
     
  • We perform a clean up of the Kbuid files in each architecture.
    We order the files in each Kbuild in alphabetical order
    by running the below script.

    for i in arch/*/include/asm/Kbuild
    do
    cat $i | gawk '/^generic-y/ {
    i = 3;
    do {
    for (; i ${i}.sorted;
    mv ${i}.sorted $i;
    done

    Signed-off-by: Tim Chen
    Cc: Arnd Bergmann
    Cc: Matthew R Wilcox
    Cc: AswinChandramouleeswaran
    Cc: Dave Hansen
    Cc: "Paul E.McKenney"
    Cc: Scott J Norton
    Cc: Will Deacon
    Cc: "Figo.zhang"
    Cc: Linus Torvalds
    Cc: Rik van Riel
    Cc: Waiman Long
    Cc: Peter Hurley
    Cc: Andrea Arcangeli
    Cc: Tim Chen
    Cc: Alex Shi
    Cc: Raghavendra K T
    Cc: Andi Kleen
    Cc: George Spelvin
    Cc: MichelLespinasse
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Davidlohr Bueso
    Cc: Andrew Morton
    Signed-off-by: Peter Zijlstra
    [ Fixed build bug. ]
    Signed-off-by: Ingo Molnar

    Tim Chen
     

26 Jan, 2014

1 commit

  • Pull networking updates from David Miller:

    1) BPF debugger and asm tool by Daniel Borkmann.

    2) Speed up create/bind in AF_PACKET, also from Daniel Borkmann.

    3) Correct reciprocal_divide and update users, from Hannes Frederic
    Sowa and Daniel Borkmann.

    4) Currently we only have a "set" operation for the hw timestamp socket
    ioctl, add a "get" operation to match. From Ben Hutchings.

    5) Add better trace events for debugging driver datapath problems, also
    from Ben Hutchings.

    6) Implement auto corking in TCP, from Eric Dumazet. Basically, if we
    have a small send and a previous packet is already in the qdisc or
    device queue, defer until TX completion or we get more data.

    7) Allow userspace to manage ipv6 temporary addresses, from Jiri Pirko.

    8) Add a qdisc bypass option for AF_PACKET sockets, from Daniel
    Borkmann.

    9) Share IP header compression code between Bluetooth and IEEE802154
    layers, from Jukka Rissanen.

    10) Fix ipv6 router reachability probing, from Jiri Benc.

    11) Allow packets to be captured on macvtap devices, from Vlad Yasevich.

    12) Support tunneling in GRO layer, from Jerry Chu.

    13) Allow bonding to be configured fully using netlink, from Scott
    Feldman.

    14) Allow AF_PACKET users to obtain the VLAN TPID, just like they can
    already get the TCI. From Atzm Watanabe.

    15) New "Heavy Hitter" qdisc, from Terry Lam.

    16) Significantly improve the IPSEC support in pktgen, from Fan Du.

    17) Allow ipv4 tunnels to cache routes, just like sockets. From Tom
    Herbert.

    18) Add Proportional Integral Enhanced packet scheduler, from Vijay
    Subramanian.

    19) Allow openvswitch to mmap'd netlink, from Thomas Graf.

    20) Key TCP metrics blobs also by source address, not just destination
    address. From Christoph Paasch.

    21) Support 10G in generic phylib. From Andy Fleming.

    22) Try to short-circuit GRO flow compares using device provided RX
    hash, if provided. From Tom Herbert.

    The wireless and netfilter folks have been busy little bees too.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (2064 commits)
    net/cxgb4: Fix referencing freed adapter
    ipv6: reallocate addrconf router for ipv6 address when lo device up
    fib_frontend: fix possible NULL pointer dereference
    rtnetlink: remove IFLA_BOND_SLAVE definition
    rtnetlink: remove check for fill_slave_info in rtnl_have_link_slave_info
    qlcnic: update version to 5.3.55
    qlcnic: Enhance logic to calculate msix vectors.
    qlcnic: Refactor interrupt coalescing code for all adapters.
    qlcnic: Update poll controller code path
    qlcnic: Interrupt code cleanup
    qlcnic: Enhance Tx timeout debugging.
    qlcnic: Use bool for rx_mac_learn.
    bonding: fix u64 division
    rtnetlink: add missing IFLA_BOND_AD_INFO_UNSPEC
    sfc: Use the correct maximum TX DMA ring size for SFC9100
    Add Shradha Shah as the sfc driver maintainer.
    net/vxlan: Share RX skb de-marking and checksum checks with ovs
    tulip: cleanup by using ARRAY_SIZE()
    ip_tunnel: clear IPCB in ip_tunnel_xmit() in case dst_link_failure() is called
    net/cxgb4: Don't retrieve stats during recovery
    ...

    Linus Torvalds
     

24 Jan, 2014

1 commit


14 Jan, 2014

2 commits


12 Jan, 2014

2 commits

  • We're going to be adding a few new barrier primitives, and in order to
    avoid endless duplication make more agressive use of
    asm-generic/barrier.h.

    Change the asm-generic/barrier.h such that it allows partial barrier
    definitions and fills out the rest with defaults.

    There are a few architectures (m32r, m68k) that could probably
    do away with their barrier.h file entirely but are kept for now due to
    their unconventional nop() implementation.

    Suggested-by: Geert Uytterhoeven
    Reviewed-by: "Paul E. McKenney"
    Reviewed-by: Mathieu Desnoyers
    Signed-off-by: Peter Zijlstra
    Cc: Michael Ellerman
    Cc: Michael Neuling
    Cc: Russell King
    Cc: Heiko Carstens
    Cc: Linus Torvalds
    Cc: Martin Schwidefsky
    Cc: Victor Kaplansky
    Cc: Tony Luck
    Cc: Oleg Nesterov
    Cc: Benjamin Herrenschmidt
    Cc: Frederic Weisbecker
    Link: http://lkml.kernel.org/r/20131213150640.846368594@infradead.org
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     
  • Move the barriers functions that depend on the atomic implementation
    into the atomic implementation.

    Reviewed-by: Paul E. McKenney
    Signed-off-by: Peter Zijlstra
    Acked-by: Vineet Gupta [for arch/arc bits]
    Cc: Peter Zijlstra
    Cc: Linus Torvalds
    Cc: Andrew Morton
    Cc: Thomas Gleixner
    Cc: Paul E. McKenney
    Link: http://lkml.kernel.org/r/20131213150640.786183683@infradead.org
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     

18 Dec, 2013

1 commit


20 Nov, 2013

1 commit

  • Pull irq cleanups from Ingo Molnar:
    "This is a multi-arch cleanup series from Thomas Gleixner, which we
    kept to near the end of the merge window, to not interfere with
    architecture updates.

    This series (motivated by the -rt kernel) unifies more aspects of IRQ
    handling and generalizes PREEMPT_ACTIVE"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    preempt: Make PREEMPT_ACTIVE generic
    sparc: Use preempt_schedule_irq
    ia64: Use preempt_schedule_irq
    m32r: Use preempt_schedule_irq
    hardirq: Make hardirq bits generic
    m68k: Simplify low level interrupt handling code
    genirq: Prevent spurious detection for unconditionally polled interrupts

    Linus Torvalds
     

15 Nov, 2013

2 commits


14 Nov, 2013

1 commit


12 Nov, 2013

1 commit

  • Pull devicetree updates from Rob Herring:
    "DeviceTree updates for 3.13. This is a bit larger pull request than
    usual for this cycle with lots of clean-up.

    - Cross arch clean-up and consolidation of early DT scanning code.
    - Clean-up and removal of arch prom.h headers. Makes arch specific
    prom.h optional on all but Sparc.
    - Addition of interrupts-extended property for devices connected to
    multiple interrupt controllers.
    - Refactoring of DT interrupt parsing code in preparation for
    deferred probe of interrupts.
    - ARM cpu and cpu topology bindings documentation.
    - Various DT vendor binding documentation updates"

    * tag 'devicetree-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (82 commits)
    powerpc: add missing explicit OF includes for ppc
    dt/irq: add empty of_irq_count for !OF_IRQ
    dt: disable self-tests for !OF_IRQ
    of: irq: Fix interrupt-map entry matching
    MIPS: Netlogic: replace early_init_devtree() call
    of: Add Panasonic Corporation vendor prefix
    of: Add Chunghwa Picture Tubes Ltd. vendor prefix
    of: Add AU Optronics Corporation vendor prefix
    of/irq: Fix potential buffer overflow
    of/irq: Fix bug in interrupt parsing refactor.
    of: set dma_mask to point to coherent_dma_mask
    of: add vendor prefix for PHYTEC Messtechnik GmbH
    DT: sort vendor-prefixes.txt
    of: Add vendor prefix for Cadence
    of: Add empty for_each_available_child_of_node() macro definition
    arm/versatile: Fix versatile irq specifications.
    of/irq: create interrupts-extended property
    microblaze/pci: Drop PowerPC-ism from irq parsing
    of/irq: Create of_irq_parse_and_map_pci() to consolidate arch code.
    of/irq: Use irq_of_parse_and_map()
    ...

    Linus Torvalds
     

10 Oct, 2013

1 commit

  • Hexagon does not have a prom.h header, so it is probably broken with
    CONFIG_OF enabled. In any case, remove unnecessary prom.h include in
    preparation to make prom.h optional.

    Signed-off-by: Rob Herring
    Acked-by: Richard Kuo
    Acked-by: Grant Likely
    Cc: linux-hexagon@vger.kernel.org

    Rob Herring
     

25 Sep, 2013

1 commit

  • In order to prepare to per-arch implementations of preempt_count move
    the required bits into an asm-generic header and use this for all
    archs.

    Signed-off-by: Peter Zijlstra
    Link: http://lkml.kernel.org/n/tip-h5j0c1r3e3fk015m30h8f1zx@git.kernel.org
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     

13 Sep, 2013

2 commits

  • After the last architecture switched to generic hard irqs the config
    options HAVE_GENERIC_HARDIRQS & GENERIC_HARDIRQS and the related code
    for !CONFIG_GENERIC_HARDIRQS can be removed.

    Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     
  • Unlike global OOM handling, memory cgroup code will invoke the OOM killer
    in any OOM situation because it has no way of telling faults occuring in
    kernel context - which could be handled more gracefully - from
    user-triggered faults.

    Pass a flag that identifies faults originating in user space from the
    architecture-specific fault handlers to generic code so that memcg OOM
    handling can be improved.

    Signed-off-by: Johannes Weiner
    Reviewed-by: Michal Hocko
    Cc: David Rientjes
    Cc: KAMEZAWA Hiroyuki
    Cc: azurIt
    Cc: KOSAKI Motohiro
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Johannes Weiner