22 Mar, 2017

4 commits

  • This patch adds the configuration of RX queues' routing.

    Signed-off-by: Joao Pinto
    Signed-off-by: David S. Miller

    Joao Pinto
     
  • This patch adds the configuration of RX and TX queues' priority.

    Signed-off-by: Joao Pinto
    Signed-off-by: David S. Miller

    Joao Pinto
     
  • This patch adds support for ECMP hash policy choice via a new sysctl
    called fib_multipath_hash_policy and also adds support for L4 hashes.
    The current values for fib_multipath_hash_policy are:
    0 - layer 3 (default)
    1 - layer 4
    If there's an skb hash already set and it matches the chosen policy then it
    will be used instead of being calculated (currently only for L4).
    In L3 mode we always calculate the hash due to the ICMP error special
    case, the flow dissector's field consistentification should handle the
    address order thus we can remove the address reversals.
    If the skb is provided we always use it for the hash calculation,
    otherwise we fallback to fl4, that is if skb is NULL fl4 has to be set.

    Signed-off-by: Nikolay Aleksandrov
    Signed-off-by: David S. Miller

    Nikolay Aleksandrov
     
  • Pablo Neira Ayuso says:

    ====================
    Netfilter/IPVS updates for net-next

    The following patchset contains Netfilter/IPVS updates for your
    net-next tree. A couple of new features for nf_tables, and unsorted
    cleanups and incremental updates for the Netfilter tree. More
    specifically, they are:

    1) Allow to check for TCP option presence via nft_exthdr, patch
    from Phil Sutter.

    2) Add symmetric hash support to nft_hash, from Laura Garcia Liebana.

    3) Use pr_cont() in ebt_log, from Joe Perches.

    4) Remove some dead code in arp_tables reported via static analysis
    tool, from Colin Ian King.

    5) Consolidate nf_tables expression validation, from Liping Zhang.

    6) Consolidate set lookup via nft_set_lookup().

    7) Remove unnecessary rcu read lock side in bridge netfilter, from
    Florian Westphal.

    8) Remove unused variable in nf_reject_ipv4, from Tahee Yoo.

    9) Pass nft_ctx struct to object initialization indirections, from
    Florian Westphal.

    10) Add code to integrate conntrack helper into nf_tables, also from
    Florian.

    11) Allow to check if interface index or name exists via
    NFTA_FIB_F_PRESENT, from Phil Sutter.

    12) Simplify resolve_normal_ct(), from Florian.

    13) Use per-limit spinlock in nft_limit and xt_limit, from Liping Zhang.

    14) Use rwlock in nft_set_rbtree set, also from Liping Zhang.

    15) One patch to remove a useless printk at netns init path in ipvs,
    and several patches to document IPVS knobs.

    16) Use refcount_t for reference counter in the Netfilter/IPVS code,
    from Elena Reshetova.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     

17 Mar, 2017

1 commit

  • The tcp_tw_recycle was already broken for connections
    behind NAT, since the per-destination timestamp is not
    monotonically increasing for multiple machines behind
    a single destination address.

    After the randomization of TCP timestamp offsets
    in commit 8a5bd45f6616 (tcp: randomize tcp timestamp offsets
    for each connection), the tcp_tw_recycle is broken for all
    types of connections for the same reason: the timestamps
    received from a single machine is not monotonically increasing,
    anymore.

    Remove tcp_tw_recycle, since it is not functional. Also, remove
    the PAWSPassive SNMP counter since it is only used for
    tcp_tw_recycle, and simplify tcp_v4_route_req and tcp_v6_route_req
    since the strict argument is only set when tcp_tw_recycle is
    enabled.

    Signed-off-by: Soheil Hassas Yeganeh
    Signed-off-by: Eric Dumazet
    Signed-off-by: Neal Cardwell
    Signed-off-by: Yuchung Cheng
    Cc: Lutz Vieweg
    Cc: Florian Westphal
    Signed-off-by: David S. Miller

    Soheil Hassas Yeganeh
     

16 Mar, 2017

5 commits


15 Mar, 2017

2 commits

  • Pull networking fixes from David Miller:

    1) Ensure that mtu is at least IPV6_MIN_MTU in ipv6 VTI tunnel driver,
    from Steffen Klassert.

    2) Fix crashes when user tries to get_next_key on an LPM bpf map, from
    Alexei Starovoitov.

    3) Fix detection of VLAN fitlering feature for bnx2x VF devices, from
    Michal Schmidt.

    4) We can get a divide by zero when TCP socket are morphed into
    listening state, fix from Eric Dumazet.

    5) Fix socket refcounting bugs in skb_complete_wifi_ack() and
    skb_complete_tx_timestamp(). From Eric Dumazet.

    6) Use after free in dccp_feat_activate_values(), also from Eric
    Dumazet.

    7) Like bonding team needs to use ETH_MAX_MTU as netdev->max_mtu, from
    Jarod Wilson.

    8) Fix use after free in vrf_xmit(), from David Ahern.

    9) Don't do UDP Fragmentation Offload on IPComp ipsec packets, from
    Alexey Kodanev.

    10) Properly check napi_complete_done() return value in order to decide
    whether to re-enable IRQs or not in amd-xgbe driver, from Thomas
    Lendacky.

    11) Fix double free of hwmon device in marvell phy driver, from Andrew
    Lunn.

    12) Don't crash on malformed netlink attributes in act_connmark, from
    Etienne Noss.

    13) Don't remove routes with a higher metric in ipv6 ECMP route replace,
    from Sabrina Dubroca.

    14) Don't write into a cloned SKB in ipv6 fragmentation handling, from
    Florian Westphal.

    15) Fix routing redirect races in dccp and tcp, basically the ICMP
    handler can't modify the socket's cached route in it's locked by the
    user at this moment. From Jon Maxwell.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (108 commits)
    qed: Enable iSCSI Out-of-Order
    qed: Correct out-of-bound access in OOO history
    qed: Fix interrupt flags on Rx LL2
    qed: Free previous connections when releasing iSCSI
    qed: Fix mapping leak on LL2 rx flow
    qed: Prevent creation of too-big u32-chains
    qed: Align CIDs according to DORQ requirement
    mlxsw: reg: Fix SPVMLR max record count
    mlxsw: reg: Fix SPVM max record count
    net: Resend IGMP memberships upon peer notification.
    dccp: fix memory leak during tear-down of unsuccessful connection request
    tun: fix premature POLLOUT notification on tun devices
    dccp/tcp: fix routing redirect race
    ucc/hdlc: fix two little issue
    vxlan: fix ovs support
    net: use net->count to check whether a netns is alive or not
    bridge: drop netfilter fake rtable unconditionally
    ipv6: avoid write to a possibly cloned skb
    net: wimax/i2400m: fix NULL-deref at probe
    isdn/gigaset: fix NULL-deref at probe
    ...

    Linus Torvalds
     
  • Pull cgroup fixes from Tejun Heo:
    "Three cgroup fixes. Nothing critical:

    - the pids controller could trigger suspicious RCU warning
    spuriously. Fixed.

    - in the debug controller, %p -> %pK to protect kernel pointer
    from getting exposed.

    - documentation formatting fix"

    * 'for-4.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
    cgroups: censor kernel pointer in debug files
    cgroup/pids: remove spurious suspicious RCU usage warning
    cgroup: Fix indenting in PID controller documentation

    Linus Torvalds
     

14 Mar, 2017

4 commits

  • The device tree documentation must be updated to reflect the new compatible
    strings "brcm,genet-v5" and "brcm,genet-mdio-v5" used by the GENETv5 driver.

    Signed-off-by: Doug Berger
    Reviewed-by: Florian Fainelli
    Signed-off-by: David S. Miller

    Doug Berger
     
  • A third interrupt cell can be provided to optionally specify
    the interrupt used for handling Wake on LAN events.

    Typically the wake up handling uses a separate interrupt
    controller, so the interrupts-extended property is used to
    accommodate this.

    Signed-off-by: Doug Berger
    Reviewed-by: Florian Fainelli
    Signed-off-by: David S. Miller

    Doug Berger
     
  • Allow TTL propagation from IP packets to MPLS packets to be
    configured. Add a new optional LWT attribute, MPLS_IPTUNNEL_TTL, which
    allows the TTL to be set in the resulting MPLS packet, with the value
    of 0 having the semantics of enabling propagation of the TTL from the
    IP header (i.e. non-zero values disable propagation).

    Also allow the configuration to be overridden globally by reusing the
    same sysctl to control whether the TTL is propagated from IP packets
    into the MPLS header. If the per-LWT attribute is set then it
    overrides the global configuration. If the TTL isn't propagated then a
    default TTL value is used which can be configured via a new sysctl,
    "net.mpls.default_ttl". This is kept separate from the configuration
    of whether IP TTL propagation is enabled as it can be used in the
    future when non-IP payloads are supported (i.e. where there is no
    payload TTL that can be propagated).

    Signed-off-by: Robert Shearman
    Acked-by: David Ahern
    Tested-by: David Ahern
    Signed-off-by: David S. Miller

    Robert Shearman
     
  • Provide the ability to control on a per-route basis whether the TTL
    value from an MPLS packet is propagated to an IPv4/IPv6 packet when
    the last label is popped as per the theoretical model in RFC 3443
    through a new route attribute, RTA_TTL_PROPAGATE which can be 0 to
    mean disable propagation and 1 to mean enable propagation.

    In order to provide the ability to change the behaviour for packets
    arriving with IPv4/IPv6 Explicit Null labels and to provide an easy
    way for a user to change the behaviour for all existing routes without
    having to reprogram them, a global knob is provided. This is done
    through the addition of a new per-namespace sysctl,
    "net.mpls.ip_ttl_propagate", which defaults to enabled. If the
    per-route attribute is set (either enabled or disabled) then it
    overrides the global configuration.

    Signed-off-by: Robert Shearman
    Acked-by: David Ahern
    Tested-by: David Ahern
    Signed-off-by: David S. Miller

    Robert Shearman
     

13 Mar, 2017

5 commits


12 Mar, 2017

1 commit

  • Pull KVM fixes from Radim Krčmář:
    "ARM updates from Marc Zyngier:
    - vgic updates:
    - Honour disabling the ITS
    - Don't deadlock when deactivating own interrupts via MMIO
    - Correctly expose the lact of IRQ/FIQ bypass on GICv3

    - I/O virtualization:
    - Make KVM_CAP_NR_MEMSLOTS big enough for large guests with many
    PCIe devices

    - General bug fixes:
    - Gracefully handle exception generated with syndroms that the host
    doesn't understand
    - Properly invalidate TLBs on VHE systems

    x86:
    - improvements in emulation of VMCLEAR, VMX MSR bitmaps, and VCPU
    reset

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: nVMX: do not warn when MSR bitmap address is not backed
    KVM: arm64: Increase number of user memslots to 512
    KVM: arm/arm64: Remove KVM_PRIVATE_MEM_SLOTS definition that are unused
    KVM: arm/arm64: Enable KVM_CAP_NR_MEMSLOTS on arm/arm64
    KVM: Add documentation for KVM_CAP_NR_MEMSLOTS
    KVM: arm/arm64: VGIC: Fix command handling while ITS being disabled
    arm64: KVM: Survive unknown traps from guests
    arm: KVM: Survive unknown traps from guests
    KVM: arm/arm64: Let vcpu thread modify its own active state
    KVM: nVMX: reset nested_run_pending if the vCPU is going to be reset
    kvm: nVMX: VMCLEAR should not cause the vCPU to shut down
    KVM: arm/arm64: vgic-v3: Don't pretend to support IRQ/FIQ bypass
    arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs

    Linus Torvalds
     

11 Mar, 2017

2 commits

  • Pull USB fixes from Greg KH:
    "Here is a number of different USB fixes for 4.11-rc2.

    Seems like there were a lot of unresolved issues that people have been
    finding for this subsystem, and a bunch of good security auditing
    happening as well from Johan Hovold. There's the usual batch of gadget
    driver fixes and xhci issues resolved as well.

    All of these have been in linux-next with no reported issues"

    * tag 'usb-4.11-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (35 commits)
    usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers
    usb: host: xhci-dbg: HCIVERSION should be a binary number
    usb: xhci: remove dummy extra_priv_size for size of xhci_hcd struct
    usb: xhci-mtk: check hcc_params after adding primary hcd
    USB: serial: digi_acceleport: fix OOB-event processing
    MAINTAINERS: usb251xb: remove reference inexistent file
    doc: dt-bindings: usb251xb: mark reg as required
    usb: usb251xb: dt: add unit suffix to oc-delay and power-on-time
    usb: usb251xb: remove max_{power,current}_{sp,bp} properties
    usb-storage: Add ignore-residue quirk for Initio INIC-3619
    USB: iowarrior: fix NULL-deref in write
    USB: iowarrior: fix NULL-deref at probe
    usb: phy: isp1301: Add OF device ID table
    usb: ohci-at91: Do not drop unhandled USB suspend control requests
    USB: serial: safe_serial: fix information leak in completion handler
    USB: serial: io_ti: fix information leak in completion handler
    USB: serial: omninet: drop open callback
    USB: serial: omninet: fix reference leaks at open
    USB: serial: io_ti: fix NULL-deref in interrupt callback
    usb: dwc3: gadget: make to increment req->remaining in all cases
    ...

    Linus Torvalds
     
  • Merge fixes from Andrew Morton:
    "26 fixes"

    * emailed patches from Andrew Morton : (26 commits)
    userfaultfd: remove wrong comment from userfaultfd_ctx_get()
    fat: fix using uninitialized fields of fat_inode/fsinfo_inode
    sh: cayman: IDE support fix
    kasan: fix races in quarantine_remove_cache()
    kasan: resched in quarantine_remove_cache()
    mm: do not call mem_cgroup_free() from within mem_cgroup_alloc()
    thp: fix another corner case of munlock() vs. THPs
    rmap: fix NULL-pointer dereference on THP munlocking
    mm/memblock.c: fix memblock_next_valid_pfn()
    userfaultfd: selftest: vm: allow to build in vm/ directory
    userfaultfd: non-cooperative: userfaultfd_remove revalidate vma in MADV_DONTNEED
    userfaultfd: non-cooperative: fix fork fctx->new memleak
    mm/cgroup: avoid panic when init with low memory
    drivers/md/bcache/util.h: remove duplicate inclusion of blkdev.h
    mm/vmstats: add thp_split_pud event for clarity
    include/linux/fs.h: fix unsigned enum warning with gcc-4.2
    userfaultfd: non-cooperative: release all ctx in dup_userfaultfd_complete
    userfaultfd: non-cooperative: robustness check
    userfaultfd: non-cooperative: rollback userfaultfd_exit
    x86, mm: unify exit paths in gup_pte_range()
    ...

    Linus Torvalds
     

10 Mar, 2017

5 commits

  • Patch series "userfaultfd non-cooperative further update for 4.11 merge
    window".

    Unfortunately I noticed one relevant bug in userfaultfd_exit while doing
    more testing. I've been doing testing before and this was also tested
    by kbuild bot and exercised by the selftest, but this bug never
    reproduced before.

    I dropped userfaultfd_exit as result. I dropped it because of
    implementation difficulty in receiving signals in __mmput and because I
    think -ENOSPC as result from the background UFFDIO_COPY should be enough
    already.

    Before I decided to remove userfaultfd_exit, I noticed userfaultfd_exit
    wasn't exercised by the selftest and when I tried to exercise it, after
    moving it to a more correct place in __mmput where it would make more
    sense and where the vma list is stable, it resulted in the
    event_wait_completion in D state. So then I added the second patch to
    be sure even if we call userfaultfd_event_wait_completion too late
    during task exit(), we won't risk to generate tasks in D state. The
    same check exists in handle_userfault() for the same reason, except it
    makes a difference there, while here is just a robustness check and it's
    run under WARN_ON_ONCE.

    While looking at the userfaultfd_event_wait_completion() function I
    looked back at its callers too while at it and I think it's not ok to
    stop executing dup_fctx on the fcs list because we relay on
    userfaultfd_event_wait_completion to execute
    userfaultfd_ctx_put(fctx->orig) which is paired against
    userfaultfd_ctx_get(fctx->orig) in dup_userfault just before
    list_add(fcs). This change only takes care of fctx->orig but this area
    also needs further review looking for similar problems in fctx->new.

    The only patch that is urgent is the first because it's an use after
    free during a SMP race condition that affects all processes if
    CONFIG_USERFAULTFD=y. Very hard to reproduce though and probably
    impossible without SLUB poisoning enabled.

    This patch (of 3):

    I once reproduced this oops with the userfaultfd selftest, it's not
    easily reproducible and it requires SLUB poisoning to reproduce.

    general protection fault: 0000 [#1] SMP
    Modules linked in:
    CPU: 2 PID: 18421 Comm: userfaultfd Tainted: G ------------ T 3.10.0+ #15
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.10.1-0-g8891697-prebuilt.qemu-project.org 04/01/2014
    task: ffff8801f83b9440 ti: ffff8801f833c000 task.ti: ffff8801f833c000
    RIP: 0010:[] [] userfaultfd_exit+0x29/0xa0
    RSP: 0018:ffff8801f833fe80 EFLAGS: 00010202
    RAX: ffff8801f833ffd8 RBX: 6b6b6b6b6b6b6b6b RCX: ffff8801f83b9440
    RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff8800baf18600
    RBP: ffff8801f833fee8 R08: 0000000000000000 R09: 0000000000000001
    R10: 0000000000000000 R11: ffffffff8127ceb3 R12: 0000000000000000
    R13: ffff8800baf186b0 R14: ffff8801f83b99f8 R15: 00007faed746c700
    FS: 0000000000000000(0000) GS:ffff88023fc80000(0000) knlGS:0000000000000000
    CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    CR2: 00007faf0966f028 CR3: 0000000001bc6000 CR4: 00000000000006e0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Call Trace:
    do_exit+0x297/0xd10
    SyS_exit+0x17/0x20
    tracesys+0xdd/0xe2
    Code: 00 00 66 66 66 66 90 55 48 89 e5 41 54 53 48 83 ec 58 48 8b 1f 48 85 db 75 11 eb 73 66 0f 1f 44 00 00 48 8b 5b 10 48 85 db 74 64 8b a3 b8 00 00 00 4d 85 e4 74 eb 41 f6 84 24 2c 01 00 00 80
    RIP [] userfaultfd_exit+0x29/0xa0
    RSP
    ---[ end trace 9fecd6dcb442846a ]---

    In the debugger I located the "mm" pointer in the stack and walking
    mm->mmap->vm_next through the end shows the vma->vm_next list is fully
    consistent and it is null terminated list as expected. So this has to
    be an SMP race condition where userfaultfd_exit was running while the
    vma list was being modified by another CPU.

    When userfaultfd_exit() run one of the ->vm_next pointers pointed to
    SLAB_POISON (RBX is the vma pointer and is 0x6b6b..).

    The reason is that it's not running in __mmput but while there are still
    other threads running and it's not holding the mmap_sem (it can't as it
    has to wait the even to be received by the manager). So this is an use
    after free that was happening for all processes.

    One more implementation problem aside from the race condition:
    userfaultfd_exit has really to check a flag in mm->flags before walking
    the vma or it's going to slowdown the exit() path for regular tasks.

    One more implementation problem: at that point signals can't be
    delivered so it would also create a task in D state if the manager
    doesn't read the event.

    The major design issue: it overall looks superfluous as the manager can
    check for -ENOSPC in the background transfer:

    if (mmget_not_zero(ctx->mm)) {
    [..]
    } else {
    return -ENOSPC;
    }

    It's safer to roll it back and re-introduce it later if at all.

    [rppt@linux.vnet.ibm.com: documentation fixup after removal of UFFD_EVENT_EXIT]
    Link: http://lkml.kernel.org/r/1488345437-4364-1-git-send-email-rppt@linux.vnet.ibm.com
    Link: http://lkml.kernel.org/r/20170224181957.19736-2-aarcange@redhat.com
    Signed-off-by: Andrea Arcangeli
    Signed-off-by: Mike Rapoport
    Acked-by: Mike Rapoport
    Cc: "Dr. David Alan Gilbert"
    Cc: Mike Kravetz
    Cc: Pavel Emelyanov
    Cc: Hillf Danton
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrea Arcangeli
     
  • Fix typos and add the following to the scripts/spelling.txt:

    overide||override

    While we are here, fix the doubled "address" in the touched line
    Documentation/devicetree/bindings/regulator/ti-abb-regulator.txt.

    Also, fix the comment block style in the touched hunks in
    drivers/media/dvb-frontends/drx39xyj/drx_driver.h.

    Link: http://lkml.kernel.org/r/1481573103-11329-21-git-send-email-yamada.masahiro@socionext.com
    Signed-off-by: Masahiro Yamada
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masahiro Yamada
     
  • Fix typos and add the following to the scripts/spelling.txt:

    disble||disable
    disbled||disabled

    I kept the TSL2563_INT_DISBLED in /drivers/iio/light/tsl2563.c
    untouched. The macro is not referenced at all, but this commit is
    touching only comment blocks just in case.

    Link: http://lkml.kernel.org/r/1481573103-11329-20-git-send-email-yamada.masahiro@socionext.com
    Signed-off-by: Masahiro Yamada
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masahiro Yamada
     
  • Pull power management fixes from Rafael Wysocki:
    "These fix several issues in the intel_pstate driver and one issue in
    the schedutil cpufreq governor, clean up that governor a bit and hook
    up existing code for disabling cpufreq to a new kernel command line
    option.

    Specifics:

    - Three fixes for intel_pstate problems related to the passive mode
    (in which it acts as a regular cpufreq scaling driver), two for the
    handling of global P-state limits and one for the handling of the
    cpu_frequency tracepoint in that mode (Rafael Wysocki).

    - Three fixes for the handling of P-state limits in intel_pstate in
    the active mode (Rafael Wysocki).

    - Introduction of a new cpufreq.off=1 kernel command line argument
    that will disable cpufreq entirely if passed to the kernel and is
    simply hooked up to the existing code used by Xen (Len Brown).

    - Fix for the schedutil cpufreq governor to prevent it from using
    stale raw frequency values in configurations with mutiple CPUs
    sharing one policy object and a cleanup for it reducing its
    overhead slightly (Viresh Kumar)"

    * tag 'pm-4.11-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    cpufreq: intel_pstate: Do not reinit performance limits in ->setpolicy
    cpufreq: intel_pstate: Fix intel_pstate_verify_policy()
    cpufreq: intel_pstate: Fix global settings in active mode
    cpufreq: Add the "cpufreq.off=1" cmdline option
    cpufreq: schedutil: Pass sg_policy to get_next_freq()
    cpufreq: schedutil: move cached_raw_freq to struct sugov_policy
    cpufreq: intel_pstate: Avoid triggering cpu_frequency tracepoint unnecessarily
    cpufreq: intel_pstate: Fix intel_cpufreq_verify_policy()
    cpufreq: intel_pstate: Do not use performance_limits in passive mode

    Linus Torvalds
     
  • The Marvell PPv2 Device Tree binding was so far only used to describe
    the PPv2.1 network controller, used in the Marvell Armada 375.

    A new version of this IP block, PPv2.2 is used in the Marvell Armada
    7K/8K processor. This commit extends the existing binding so that it can
    also be used to describe PPv2.2 hardware.

    Signed-off-by: Thomas Petazzoni
    Signed-off-by: David S. Miller

    Thomas Petazzoni
     

09 Mar, 2017

5 commits


08 Mar, 2017

3 commits

  • Pull perf fixes from Ingo Molnar:
    "This includes a fix for a crash if certain special addresses are
    kprobed, plus does a rename of two Kconfig variables that were a minor
    misnomer"

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf/core: Rename CONFIG_[UK]PROBE_EVENT to CONFIG_[UK]PROBE_EVENTS
    kprobes/x86: Fix kernel panic when certain exception-handling addresses are probed

    Linus Torvalds
     
  • This patch adds documentation for a new "phy-handle" property,
    "fixed-link" and "mdio" sub-node. These allows the enumeration
    of PHYs which are supported by the phy library under drivers/net/phy.

    The EMAC ethernet controller in IBM and AMCC 4xx chips is
    currently stuck with a few privately defined phy
    implementations. It has no support for PHYs which
    are supported by the generic phylib.

    Acked-by: Rob Herring
    Reviewed-by: Florian Fainelli
    Signed-off-by: Christian Lamparter
    Signed-off-by: David S. Miller

    Christian Lamparter
     
  • Pull tracing fixes from Steven Rostedt:
    "There was some breakage with the changes for jump labels in the 4.11
    merge window:

    - powerpc broke as jump labels uses the two LSB bits as flags in
    initialization.

    A check was added to make sure that all jump label entries were 4
    bytes aligned, but powerpc didn't work that way for modules. Adding
    an alignment in the module linker script appeared to be the best
    solution.

    - Jump labels also added an anonymous union to access those LSB bits
    as a normal long. But because this structure had static
    initialization, it broke older compilers that could not statically
    initialize anonymous unions without brackets.

    - The command line parameter for setting function graph filter broke
    the "EMPTY_HASH" descriptor by modifying it instead of creating a
    new hash to hold the entries.

    - The command line parameter ftrace_graph_max_depth was added to
    allow its setting at boot time. It uses existing code and only the
    command line hook was added.

    This is not really a fix, but as it uses existing code without
    affecting anything else, I added it to this release. It was ready
    before the merge window closed, but I wanted to let it sit in
    linux-next for a couple of days first"

    * tag 'trace-v4.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    ftrace/graph: Add ftrace_graph_max_depth kernel parameter
    tracing: Add #undef to fix compile error
    jump_label: Add comment about initialization order for anonymous unions
    jump_label: Fix anonymous union initialization
    module: set __jump_table alignment to 8
    ftrace/graph: Do not modify the EMPTY_HASH for the function_graph filter
    tracing: Fix code comment for ftrace_ops_get_func()

    Linus Torvalds
     

07 Mar, 2017

2 commits

  • On Qualcomm Datacenter Technologies QDF2400 SoCs, the ITS hardware
    implementation uses 16Bytes for Interrupt Translation Entry (ITE),
    but reports an incorrect value of 8Bytes in GITS_TYPER.ITTE_size.

    It might cause kernel memory corruption depending on the number
    of MSI(x) that are configured and the amount of memory that has
    been allocated for ITEs in its_create_device().

    This patch fixes the potential memory corruption by setting the
    correct ITE size to 16Bytes.

    Cc: stable@vger.kernel.org
    Signed-off-by: Shanker Donthineni
    Signed-off-by: Marc Zyngier

    Shanker Donthineni
     
  • Follow the common documentation style in the file and indent the
    interface file description by a tab instead of just a space.

    Signed-off-by: Tobias Klauser
    Signed-off-by: Tejun Heo

    Tobias Klauser
     

06 Mar, 2017

1 commit

  • Add the "cpufreq.off=1" cmdline option.

    At boot-time, this allows a user to request CONFIG_CPU_FREQ=n
    behavior from a kernel built with CONFIG_CPU_FREQ=y.

    This is analogous to the existing "cpuidle.off=1" option
    and CONFIG_CPU_IDLE=y

    This capability is valuable when we need to debug end-user
    issues in the BIOS or in Linux. It is also convenient
    for enabling comparisons, which may otherwise require a new kernel,
    or help from BIOS SETUP, which may be buggy or unavailable.

    Signed-off-by: Len Brown
    Signed-off-by: Rafael J. Wysocki

    Len Brown