29 Aug, 2013

1 commit

  • The RDMA stack allows for applications to create IB_QPT_RAW_PACKET
    QPs, which receive plain Ethernet packets, specifically packets that
    don't carry any QPN to be matched by the receiving side. Applications
    using these QPs must be provided with a method to program some
    steering rule with the HW so packets arriving at the local port can be
    routed to them.

    This patch adds ib_create_flow(), which allow providing a flow
    specification for a QP. When there's a match between the
    specification and a received packet, the packet is forwarded to that
    QP, in a the same way one uses ib_attach_multicast() for IB UD
    multicast handling.

    Flow specifications are provided as instances of struct ib_flow_spec_yyy,
    which describe L2, L3 and L4 headers. Currently specs for Ethernet, IPv4,
    TCP and UDP are defined. Flow specs are made of values and masks.

    The input to ib_create_flow() is a struct ib_flow_attr, which contains
    a few mandatory control elements and optional flow specs.

    struct ib_flow_attr {
    enum ib_flow_attr_type type;
    u16 size;
    u16 priority;
    u32 flags;
    u8 num_of_specs;
    u8 port;
    /* Following are the optional layers according to user request
    * struct ib_flow_spec_yyy
    * struct ib_flow_spec_zzz
    */
    };

    As these specs are eventually coming from user space, they are defined and
    used in a way which allows adding new spec types without kernel/user ABI
    change, just with a little API enhancement which defines the newly added spec.

    The flow spec structures are defined with TLV (Type-Length-Value)
    entries, which allows calling ib_create_flow() with a list of variable
    length of optional specs.

    For the actual processing of ib_flow_attr the driver uses the number
    of specs and the size mandatory fields along with the TLV nature of
    the specs.

    Steering rules processing order is according to the domain over which
    the rule is set and the rule priority. All rules set by user space
    applicatations fall into the IB_FLOW_DOMAIN_USER domain, other domains
    could be used by future IPoIB RFS and Ethetool flow-steering interface
    implementation. Lower numerical value for the priority field means
    higher priority.

    The returned value from ib_create_flow() is a struct ib_flow, which
    contains a database pointer (handle) provided by the HW driver to be
    used when calling ib_destroy_flow().

    Applications that offload TCP/IP traffic can also be written over IB
    UD QPs. The ib_create_flow() / ib_destroy_flow() API is designed to
    support UD QPs too. A HW driver can set IB_DEVICE_MANAGED_FLOW_STEERING
    to denote support for flow steering.

    The ib_flow_attr enum type supports usage of flow steering for promiscuous
    and sniffer purposes:

    IB_FLOW_ATTR_NORMAL - "regular" rule, steering according to rule specification

    IB_FLOW_ATTR_ALL_DEFAULT - default unicast and multicast rule, receive
    all Ethernet traffic which isn't steered to any QP

    IB_FLOW_ATTR_MC_DEFAULT - same as IB_FLOW_ATTR_ALL_DEFAULT but only for multicast

    IB_FLOW_ATTR_SNIFFER - sniffer rule, receive all port traffic

    ALL_DEFAULT and MC_DEFAULT rules options are valid only for Ethernet link type.

    Signed-off-by: Hadar Hen Zion
    Signed-off-by: Or Gerlitz
    Signed-off-by: Roland Dreier

    Hadar Hen Zion
     

05 Aug, 2013

5 commits

  • Linus Torvalds
     
  • Pull dmaengine fixes from Vinod Koul:
    "Two fixes for slave dmaengine. The first fixes cyclic dma transfers
    for pl330 and the second one makes us return the correct error code on
    probe"

    * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
    dma: pl330: Fix cyclic transfers
    pch_dma: fix error return code in pch_dma_probe()

    Linus Torvalds
     
  • Pull drm fix from Dave Airlie:
    "Just a quick fix that a few people have reported, be nice to have in
    asap"

    The drm tree seems to be very confused about 64-bit divides. Here it
    uses a slow 64-by-64 bit divide to divide by a small constant. Oh well.
    Doesn't look performance-critical, just stupid.

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    drm/radeon: fix 64 bit divide in SI spm code

    Linus Torvalds
     
  • Commit 46a1c2c7ae53 ("vfs: export lseek_execute() to modules") broke the
    tmpfs SEEK_DATA/SEEK_HOLE implementation, because vfs_setpos() converts
    the carefully prepared -ENXIO to -EINVAL. Other filesystems avoid it in
    error cases: do the same in tmpfs.

    Signed-off-by: Hugh Dickins
    Cc: Jie Liu
    Cc: Al Viro
    Signed-off-by: Linus Torvalds

    Hugh Dickins
     
  • Pull sound fixes from Takashi Iwai:
    "All small regression or small fixes, nothing surprising at this stage.

    - regression fix for intel Mac Mini quirk
    - compress ioctl error fix
    - ASoC fixes for control change notifications, some UI fixes,
    driver-specific fixes (resource leak, build errors, etc)"

    * tag 'sound-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda - Fix missing fixup for Mac Mini with STAC9221
    ASoC: wm0010: Fix resource leak
    ASoC: au1x: Fix build
    ASoC: bf5xx-ac97: Fix compile error with SND_BF5XX_HAVE_COLD_RESET
    ASoC: bfin-ac97: Fix prototype error following AC'97 refactoring
    ALSA: compress: fix the return value for SNDRV_COMPRESS_VERSION
    ASoC: dapm: Fix return value of snd_soc_dapm_put_{volsw,enum_virt}()

    Linus Torvalds
     

04 Aug, 2013

14 commits

  • Forgot to use the appropriate math64 function.

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Pull networking fixes from David Miller:

    1) Don't ignore user initiated wireless regulatory settings on cards
    with custom regulatory domains, from Arik Nemtsov.

    2) Fix length check of bluetooth information responses, from Jaganath
    Kanakkassery.

    3) Fix misuse of PTR_ERR in btusb, from Adam Lee.

    4) Handle rfkill properly while iwlwifi devices are offline, from
    Emmanuel Grumbach.

    5) Fix r815x devices DMA'ing to stack buffers, from Hayes Wang.

    6) Kernel info leak in ATM packet scheduler, from Dan Carpenter.

    7) 8139cp doesn't check for DMA mapping errors, from Neil Horman.

    8) Fix bridge multicast code to not snoop when no querier exists,
    otherwise mutlicast traffic is lost. From Linus Lüssing.

    9) Avoid soft lockups in fib6_run_gc(), from Michal Kubecek.

    10) Fix races in automatic address asignment on ipv6, which can result
    in incorrect lifetime assignments. From Jiri Benc.

    11) Cure build bustage when CONFIG_NET_LL_RX_POLL is not set and rename
    it CONFIG_NET_RX_BUSY_POLL to eliminate the last reference to the
    original naming of this feature. From Cong Wang.

    12) Fix crash in TIPC when server socket creation fails, from Ying Xue.

    13) macvlan_changelink() silently succeeds when it shouldn't, from
    Michael S Tsirkin.

    14) HTB packet scheduler can crash due to sign extension, fix from
    Stephen Hemminger.

    15) With the cable unplugged, r8169 prints out a message every 10
    seconds, make it netif_dbg() instead of netif_warn(). From Peter
    Wu.

    16) Fix memory leak in rtm_to_ifaddr(), from Daniel Borkmann.

    17) sis900 gets spurious TX queue timeouts due to mismanagement of link
    carrier state, from Denis Kirjanov.

    18) Validate somaxconn sysctl to make sure it fits inside of a u16.
    From Roman Gushchin.

    19) Fix MAC address filtering on qlcnic, from Shahed Shaikh.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (68 commits)
    qlcnic: Fix for flash update failure on 83xx adapter
    qlcnic: Fix link speed and duplex display for 83xx adapter
    qlcnic: Fix link speed display for 82xx adapter
    qlcnic: Fix external loopback test.
    qlcnic: Removed adapter series name from warning messages.
    qlcnic: Free up memory in error path.
    qlcnic: Fix ingress MAC learning
    qlcnic: Fix MAC address filter issue on 82xx adapter
    net: ethernet: davinci_emac: drop IRQF_DISABLED
    netlabel: use domain based selectors when address based selectors are not available
    net: check net.core.somaxconn sysctl values
    sis900: Fix the tx queue timeout issue
    net: rtm_to_ifaddr: free ifa if ifa_cacheinfo processing fails
    r8169: remove "PHY reset until link up" log spam
    net: ethernet: cpsw: drop IRQF_DISABLED
    htb: fix sign extension bug
    macvlan: handle set_promiscuity failures
    macvlan: better mode validation
    tipc: fix oops when creating server socket fails
    net: rename CONFIG_NET_LL_RX_POLL to CONFIG_NET_RX_BUSY_POLL
    ...

    Linus Torvalds
     
  • Flash update routine was improperly checking register read API return value.
    Modify register read API and perform proper error check.

    Signed-off-by: Himanshu Madhani
    Signed-off-by: David S. Miller

    Himanshu Madhani
     
  • o Set link speed and duplex to unknown when link is not up.

    Signed-off-by: Rajesh Borundia
    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Rajesh Borundia
     
  • o Do not obtain link speed from register when adapter
    link is down.

    Signed-off-by: Rajesh Borundia
    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Rajesh Borundia
     
  • Driver was not handling external loopback diagnostic
    test request.

    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Shahed Shaikh
     
  • Signed-off-by: Pratik Pujar
    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Pratik Pujar
     
  • Signed-off-by: Himanshu Madhani
    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Himanshu Madhani
     
  • o Delete MAC address from the adapter's filter table
    if the source MAC address of ingress packet matches.

    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Shahed Shaikh
     
  • Driver was passing the address of a pointer instead of
    the pointer itself.

    Signed-off-by: Shahed Shaikh
    Signed-off-by: David S. Miller

    Shahed Shaikh
     
  • IRQF_DISABLED is a no-op by now and should be removed.

    Signed-off-by: Mugunthan V N
    Signed-off-by: David S. Miller

    Mugunthan V N
     
  • Pull nfsd bugfixes from Bruce Fields:
    "Most of this is due to a screwup on my part -- some gss-proxy crashes
    got fixed before the merge window but somehow never made it out of a
    temporary git repo on my laptop...."

    * 'for-3.11' of git://linux-nfs.org/~bfields/linux:
    svcrpc: set cr_gss_mech from gss-proxy as well as legacy upcall
    svcrpc: fix kfree oops in gss-proxy code
    svcrpc: fix gss-proxy xdr decoding oops
    svcrpc: fix gss_rpc_upcall create error
    NFSD/sunrpc: avoid deadlock on TCP connection due to memory pressure.

    Linus Torvalds
     
  • Pull hwmon fix from Guenter Roeck:
    "Fix chip initialization/configuration in MAX6697 driver"

    * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
    hwmon: (max6697) fix MAX6581 ideality

    Linus Torvalds
     
  • Pull arm fixes fixes from Russell King:
    "This fixes a couple of problems with commit 48be69a026b2 ("ARM: move
    signal handlers into a vdso-like page"), one of which was originally
    discovered via my testing originally, but the fix for it was never
    actually committed.

    The other shows up on noMMU builds, and such platforms are extremely
    rare and as such are not part of my nightly testing"

    * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
    ARM: fix nommu builds with 48be69a02 (ARM: move signal handlers into a vdso-like page)
    ARM: fix a cockup in 48be69a02 (ARM: move signal handlers into a vdso-like page)

    Linus Torvalds
     

03 Aug, 2013

20 commits

  • Without this patch, the values for ideality (register 0x4b) and ideality
    selection mask (register 0x4c) are inverted.

    Signed-off-by: Vivien Didelot
    Cc: stable@vger.kernel.org # 3.9+
    Signed-off-by: Guenter Roeck

    Vivien Didelot
     
  • Russell King
     
  • Olof reports that noMMU builds error out with:

    arch/arm/kernel/signal.c: In function 'setup_return':
    arch/arm/kernel/signal.c:413:25: error: 'mm_context_t' has no member named 'sigpage'

    This shows one of the evilnesses of IS_ENABLED(). Get rid of it here
    and replace it with #ifdef's - and as no noMMU platform can make use
    of sigpage, depend on CONIFG_MMU not CONFIG_ARM_MPU.

    Reported-by: Olof Johansson
    Signed-off-by: Russell King

    Russell King
     
  • Unfortunately, I never committed the fix to a nasty oops which can
    occur as a result of that commit:

    ------------[ cut here ]------------
    kernel BUG at /home/olof/work/batch/include/linux/mm.h:414!
    Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
    Modules linked in:
    CPU: 0 PID: 490 Comm: killall5 Not tainted 3.11.0-rc3-00288-gabe0308 #53
    task: e90acac0 ti: e9be8000 task.ti: e9be8000
    PC is at special_mapping_fault+0xa4/0xc4
    LR is at __do_fault+0x68/0x48c

    This doesn't show up unless you do quite a bit of testing; a simple
    boot test does not do this, so all my nightly tests were passing fine.

    The reason for this is that install_special_mapping() expects the
    page array to stick around, and as this was only inserting one page
    which was stored on the kernel stack, that's why this was blowing up.

    Reported-by: Olof Johansson
    Tested-by: Olof Johansson
    Signed-off-by: Russell King

    Russell King
     
  • NetLabel has the ability to selectively assign network security labels
    to outbound traffic based on either the LSM's "domain" (different for
    each LSM), the network destination, or a combination of both. Depending
    on the type of traffic, local or forwarded, and the type of traffic
    selector, domain or address based, different hooks are used to label the
    traffic; the goal being minimal overhead.

    Unfortunately, there is a bug such that a system using NetLabel domain
    based traffic selectors does not correctly label outbound local traffic
    that is not assigned to a socket. The issue is that in these cases
    the associated NetLabel hook only looks at the address based selectors
    and not the domain based selectors. This patch corrects this by
    checking both the domain and address based selectors so that the correct
    labeling is applied, regardless of the configuration type.

    In order to acomplish this fix, this patch also simplifies some of the
    NetLabel domainhash structures to use a more common outbound traffic
    mapping type: struct netlbl_dommap_def. This simplifies some of the code
    in this patch and paves the way for further simplifications in the
    future.

    Signed-off-by: Paul Moore
    Signed-off-by: David S. Miller

    Paul Moore
     
  • It's possible to assign an invalid value to the net.core.somaxconn
    sysctl variable, because there is no checks at all.

    The sk_max_ack_backlog field of the sock structure is defined as
    unsigned short. Therefore, the backlog argument in inet_listen()
    shouldn't exceed USHRT_MAX. The backlog argument in the listen() syscall
    is truncated to the somaxconn value. So, the somaxconn value shouldn't
    exceed 65535 (USHRT_MAX).
    Also, negative values of somaxconn are meaningless.

    before:
    $ sysctl -w net.core.somaxconn=256
    net.core.somaxconn = 256
    $ sysctl -w net.core.somaxconn=65536
    net.core.somaxconn = 65536
    $ sysctl -w net.core.somaxconn=-100
    net.core.somaxconn = -100

    after:
    $ sysctl -w net.core.somaxconn=256
    net.core.somaxconn = 256
    $ sysctl -w net.core.somaxconn=65536
    error: "Invalid argument" setting key "net.core.somaxconn"
    $ sysctl -w net.core.somaxconn=-100
    error: "Invalid argument" setting key "net.core.somaxconn"

    Based on a prior patch from Changli Gao.

    Signed-off-by: Roman Gushchin
    Reported-by: Changli Gao
    Suggested-by: Eric Dumazet
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Roman Gushchin
     
  • [ 198.720048] ------------[ cut here ]------------
    [ 198.720108] WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:255 dev_watchdog+0x229/0x240()
    [ 198.720118] NETDEV WATCHDOG: eth0 (sis900): transmit queue 0 timed out
    [ 198.720125] Modules linked in: bridge stp llc dmfe sundance 3c59x sis900 mii
    [ 198.720159] CPU: 0 PID: 0 Comm: swapper Not tainted 3.11.0-rc3+ #12
    [ 198.720167] Hardware name: System Manufacturer System Name/TUSI-M, BIOS ASUS TUSI-M ACPI BIOS
    Revision 1013 Beta 001 12/14/2001
    [ 198.720175] 000000ff c13fa6b9 c169ddcc c12208d6 c169ddf8 c1031e4d c1664a84 c169de24
    [ 198.720197] 00000000 c165f5ea 000000ff c13fa6b9 00000001 000000ff c1664a84 c169de10
    [ 198.720217] c1031f13 00000009 c169de08 c1664a84 c169de24 c169de50 c13fa6b9 c165f5ea
    [ 198.720240] Call Trace:
    [ 198.720257] [] ? dev_watchdog+0x229/0x240
    [ 198.720274] [] dump_stack+0x16/0x20
    [ 198.720306] [] warn_slowpath_common+0x7d/0xa0
    [ 198.720318] [] ? dev_watchdog+0x229/0x240
    [ 198.720330] [] warn_slowpath_fmt+0x33/0x40
    [ 198.720342] [] dev_watchdog+0x229/0x240
    [ 198.720357] [] call_timer_fn+0x78/0x150
    [ 198.720369] [] ? internal_add_timer+0x40/0x40
    [ 198.720381] [] ? dev_init_scheduler+0xa0/0xa0
    [ 198.720392] [] run_timer_softirq+0x10f/0x200
    [ 198.720412] [] ? __do_softirq+0x6f/0x210
    [ 198.720424] [] ? dev_init_scheduler+0xa0/0xa0
    [ 198.720435] [] __do_softirq+0xb8/0x210
    [ 198.720467] [] ? _raw_spin_unlock+0x22/0x30
    [ 198.720484] [] ? handle_irq+0x25/0xd0
    [ 198.720496] [] irq_exit+0x9c/0xb0
    [ 198.720508] [] do_IRQ+0x47/0x94
    [ 198.720534] [] ? hrtimer_start+0x28/0x30
    [ 198.720564] [] common_interrupt+0x31/0x38
    [ 198.720589] [] ? default_idle+0x22/0xa0
    [ 198.720600] [] arch_cpu_idle+0x17/0x30
    [ 198.720631] [] cpu_startup_entry+0xcd/0x180
    [ 198.720643] [] rest_init+0xaa/0xb0
    [ 198.720654] [] ? reciprocal_value+0x50/0x50
    [ 198.720668] [] ? repair_env_string+0x60/0x60
    [ 198.720679] [] start_kernel+0x29a/0x350
    [ 198.720690] [] ? repair_env_string+0x60/0x60
    [ 198.720721] [] i386_start_kernel+0x39/0xa0
    [ 198.720729] ---[ end trace 81e0a6266f5c73a8 ]---
    [ 198.720740] eth0: Transmit timeout, status 00000204 00000000

    timer routine checks the link status and if it's up calls
    netif_carrier_on() allowing upper layer to start the tx queue
    even if the auto-negotiation process is not finished.

    Also remove ugly auto-negotiation check from the sis900_start_xmit()

    CC: Duan Fugang
    CC: Ben Hutchings

    Signed-off-by: Denis Kirjanov
    Signed-off-by: David S. Miller

    Denis Kirjanov
     
  • Pull infiniband/rdma fixes from Roland Dreier:
    - Fixes for the newly merged mlx5 hardware driver
    - Stack info leak fixes from Dan Carpenter
    - Fixes for pkey table handling with SR-IOV
    - A few other small things

    * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
    IPoIB: Fix pkey change flow for virtualization environments
    IPoIB: Make sure child devices use valid/proper pkeys
    IB/core: Create QP1 using the pkey index which contains the default pkey
    mlx5_core: Variable may be used uninitialized
    mlx5_core: Implement new initialization sequence
    mlx5_core: Fix use after free in mlx5_cmd_comp_handler()
    IB/mlx5: Fix stack info leak in mlx5_ib_alloc_ucontext()
    IB/mlx5: Fix error return code in init_one()
    IB/mlx4: Use default pkey when creating tunnel QPs
    RDMA/cma: Only call cma_save_ib_info() for CM REQs
    RDMA/cma: Fix accessing invalid private data for UD
    RDMA/cma: Fix gcc warning
    Revert "RDMA/nes: Fix compilation error when nes_debug is enabled"
    IB/qib: Add err_decode() call for ring dump
    RDMA/cxgb3: Fix stack info leak in iwch_create_cq()
    RDMA/nes: Fix info leaks in nes_create_qp() and nes_create_cq()
    RDMA/ocrdma: Fix several stack info leaks
    RDMA/cxgb4: Fix stack info leak in c4iw_create_qp()
    RDMA/ocrdma: Remove unused include

    Linus Torvalds
     
  • Pull GPIO fixes from Linus Walleij:
    "Yet another GPIO pull request, fixing the fix from the last one. It
    turns out that fixing the boot path for device tree boots on OMAP
    breaks out antique systems (such as OMAP1) and we need to find a
    better way. So we're reverting that "fix" for the moment and thinking
    about something better.

    Also fixing a build issue on the MSM driver"

    * tag 'gpio-for-v3.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
    gpio_msm: Fix build error due to missing err.h
    Revert "gpio/omap: don't create an IRQ mapping for every GPIO on DT"
    Revert "gpio/omap: auto request GPIO as input if used as IRQ via DT"
    Revert "gpio/omap: fix build error when OF_GPIO is not defined."

    Linus Torvalds
     
  • Commit 5c766d642 ("ipv4: introduce address lifetime") leaves the ifa
    resource that was allocated via inet_alloc_ifa() unfreed when returning
    the function with -EINVAL. Thus, free it first via inet_free_ifa().

    Signed-off-by: Daniel Borkmann
    Reviewed-by: Jiri Pirko
    Signed-off-by: David S. Miller

    Daniel Borkmann
     
  • This message was added in commit a7154cb8 (June 2004, [PATCH] r8169:
    link handling and phy reset rework) and is printed every ten seconds
    when no cable is connected and runtime power management is disabled.
    (Before that commit, "Reset RTL8169s PHY" would be printed instead.)

    Signed-off-by: Peter Wu
    Acked-by: Francois Romieu
    Signed-off-by: David S. Miller

    Lekensteyn
     
  • IRQF_DISABLED is a no-op by now and should be
    removed.

    Signed-off-by: Felipe Balbi
    Acked-by: Mugunthan V N
    Signed-off-by: David S. Miller

    Felipe Balbi
     
  • When userspace passes a large priority value
    the assignment of the unsigned value hopt->prio
    to signed int cl->prio causes cl->prio to become negative and the
    comparison is with TC_HTB_NUMPRIO is always false.

    The result is that HTB crashes by referencing outside
    the array when processing packets. With this patch the large value
    wraps around like other values outside the normal range.

    See: https://bugzilla.kernel.org/show_bug.cgi?id=60669

    Signed-off-by: Stephen Hemminger
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    stephen hemminger
     
  • Pull powerpc fixes from Ben Herrenschmidt:
    "Here is not quite a handful of powerpc fixes for rc3.

    The windfarm fix is a regression fix (though not a new one), the PMU
    interrupt rename is not a fix per-se but has been submitted a long
    time ago and I kept forgetting to put it in (it puts us back in sync
    with x86), the other perf bit is just about putting an API/ABI bit
    definition in the right place for userspace to consume, and finally,
    we have a fix for the VPHN (Virtual Partition Home Node) feature
    (notification that the hypervisor is moving nodes around) which could
    cause lockups so we may as well fix it now"

    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc/windfarm: Fix noisy slots-fan on Xserve (rm31)
    powerpc: VPHN topology change updates all siblings
    powerpc/perf: Export PERF_EVENT_CONFIG_EBB_SHIFT to userspace
    powerpc: Rename PMU interrupts from CNT to PMI

    Linus Torvalds
     
  • Pull ARM fixes from Russell King:
    "I've thought long and hard about what to say for this pull request,
    and I really can't work out anything sane to say to summarise much of
    these commits. The problem is, for most of these are, yet again, lots
    of small bits scattered around the place without any real overall
    theme to them"

    Most notable is probably the kuser page helper improvements.

    * 'fixes' of git://git.linaro.org/people/rmk/linux-arm: (22 commits)
    ARM: Add .text annotations where required after __CPUINIT removal
    ARM: 7803/1: Fix deadlock scenario with smp_send_stop()
    ARM: make vectors page inaccessible from userspace
    ARM: move signal handlers into a vdso-like page
    ARM: allow kuser helpers to be removed from the vector page
    ARM: update FIQ support for relocation of vectors
    ARM: use linker magic for vectors and vector stubs
    ARM: move vector stubs
    ARM: poison memory between kuser helpers
    ARM: poison the vectors page
    ARM: 7801/1: v6: prevent gcc 4.5 from reordering extended CP15 reads above is_smp() test
    ARM: 7800/1: ARMv7-M: Fix name of NVIC handler function
    ARM: Fix sorting of machine- initializers
    ARM: 7791/1: a.out: remove partial a.out support
    ARM: 7790/1: Fix deferred mm switch on VIVT processors
    ARM: 7789/1: Do not run dummy_flush_tlb_a15_erratum() on non-Cortex-A15
    ARM: 7787/1: virt: ensure visibility of __boot_cpu_mode
    ARM: 7788/1: elf: fix lpae hwcap feature reporting in proc/cpuinfo
    ARM: 7786/1: hyp: fix macro parameterisation
    ARM: 7785/1: mm: restrict early_alloc to section-aligned memory
    ...

    Linus Torvalds
     
  • Pull parisc updates from Helge Deller:
    "The majority of lines changed are due the addition of a defconfig for
    the C8000 machine. Even the fix in parisc/kernel/cache.c file is
    actually ony a 10-line fix, but the change became bigger (and much
    nicer) to avoid errors of the checkpatch script.

    Here is the short-changelog:

    This round of parisc updates includes mostly fixes for the C8000
    workstation. We have a new defconfig file for this machine, as well
    as fixes for it's serial port, the AGP driver and the cache routines
    to cope with the vmas of the FireGL card in a C8000. The sys32.h
    header file was not used and as such it's now gone"

    * 'parisc-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
    parisc: Fix interrupt routing for C8000 serial ports
    parisc: Remove arch/parisc/kernel/sys32.h header
    parisc: add defconfig for c8000 machine
    parisc: agp/parisc-agp: allow binding of user memory to the AGP GART
    parisc: Fix cache routines to ignore vma's with an invalid pfn

    Linus Torvalds
     
  • Pull HID fixes from Jiri Kosina:
    - fix hid-sony PS3 sixaxxis breakage from Benjamin Tissories
    - fix hidraw race condition from Yonghua Zheng
    - fix/bandaid for rare device enumeration problems of Logitech Unifying
    receivers from Nestor Lopez Casado

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
    HID: hidraw: fix improper mutex release
    HID: sony: fix HID mapping for PS3 sixaxis controller
    HID: hid-logitech-dj: querying_devices was never set
    HID: Revert "Revert "HID: Fix logitech-dj: missing Unifying device issue""

    Linus Torvalds
     
  • Pull MCE fix from Tony Luck:
    "Fix a regression in mce-severity.c"

    * tag 'please-pull-fix-mce-regression' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
    x86/mce: Fix mce regression from recent cleanup

    Linus Torvalds
     
  • Pull PCI fixes from Bjorn Helgaas:
    "Yinghai fixed a couple regressions: one resource assignment problem
    introduced in v3.10 that showed up with SR-IOV on powerpc, and another
    SR-IOV hot-remove issue related to refcounting changes we merged for
    v3.11.

    Yinghai is still working on another SR-IOV-related fix or two, which
    will be simpler if pciehp is non-modular, so I included the Kconfig
    changes now to get them in earlier.

    Finally, a minor fix for the ARM Marvell EBU host bridge driver that
    was merged for v3.11

    Hotplug:
    PCI: pciehp: Fix null pointer deref when hot-removing SR-IOV device
    PCI: hotplug: Convert to be builtin only, not modular
    PCI: pciehp: Convert pciehp to be builtin only, not modular

    Resource allocation:
    PCI: Retry allocation of only the resource type that failed

    ARM:
    PCI: mvebu: Disable prefetchable memory support in PCI-to-PCI bridge"

    * tag 'pci-v3.11-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
    PCI: mvebu: Disable prefetchable memory support in PCI-to-PCI bridge
    PCI: Retry allocation of only the resource type that failed
    PCI: pciehp: Convert pciehp to be builtin only, not modular
    PCI: hotplug: Convert to be builtin only, not modular
    PCI: pciehp: Fix null pointer deref when hot-removing SR-IOV device

    Linus Torvalds
     
  • Pull ACPI and power management fixes from Rafael Wysocki:

    - Revert two cpuidle commits added during the 3.8 development cycle
    that turn out to have introduced a significant performance regression
    as requested by Jeremy Eder.

    - The recent patches that made the freezer less heavy-weight introduced
    a regression causing user-space-driven hibernation using the ioctl()
    interface to block indefinitely when the hibernate process executes
    try_to_freeze(). Fix from Colin Cross addresses this by adding a
    process flag to mark the hibernate/suspend process to inform the
    freezer that that process should be ignored.

    - One of the recent cpufreq reverts uncovered a problem in the core
    causing the cpufreq driver module refcount to become negative after a
    system suspend-resume cycle. Fix from Rafael J Wysocki.

    - The evaluation of the ACPI battery _BIX method has never worked
    correctly, because the commit that added support for it forgot to
    take the "Revision" field in the return package into account. As a
    result, the reading of battery info doesn't work at all on some
    systems, which is addressed by a fix from Lan Tianyu.

    * tag 'pm+acpi-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    freezer: set PF_SUSPEND_TASK flag on tasks that call freeze_processes
    ACPI / battery: Fix parsing _BIX return value
    cpufreq: Fix cpufreq driver module refcount balance after suspend/resume
    Revert "cpuidle: Quickly notice prediction failure for repeat mode"
    Revert "cpuidle: Quickly notice prediction failure in general case"

    Linus Torvalds