17 Mar, 2018

1 commit


16 Mar, 2018

2 commits


15 Mar, 2018

1 commit

  • Socket option SO_ZEROCOPY determines whether the kernel ignores or
    processes flag MSG_ZEROCOPY on subsequent send calls. This to avoid
    changing behavior for legacy processes.

    Limiting the state change to closed sockets is annoying with passive
    sockets and not necessary for correctness. Once created, zerocopy skbs
    are processed based on their private state, not this socket flag.

    Remove the constraint.

    Signed-off-by: Willem de Bruijn
    Signed-off-by: David S. Miller

    Willem de Bruijn
     

10 Mar, 2018

1 commit

  • fallback tunnels (like tunl0, gre0, gretap0, erspan0, sit0,
    ip6tnl0, ip6gre0) are automatically created when the corresponding
    module is loaded.

    These tunnels are also automatically created when a new network
    namespace is created, at a great cost.

    In many cases, netns are used for isolation purposes, and these
    extra network devices are a waste of resources. We are using
    thousands of netns per host, and hit the netns creation/delete
    bottleneck a lot. (Many thanks to Kirill for recent work on this)

    Add a new sysctl so that we can opt-out from this automatic creation.

    Note that these tunnels are still created for the initial namespace,
    to be the least intrusive for typical setups.

    Tested:
    lpk43:~# cat add_del_unshare.sh
    for i in `seq 1 40`
    do
    (for j in `seq 1 100` ; do unshare -n /bin/true >/dev/null ; done) &
    done
    wait

    lpk43:~# echo 0 >/proc/sys/net/core/fb_tunnels_only_for_init_net
    lpk43:~# time ./add_del_unshare.sh

    real 0m37.521s
    user 0m0.886s
    sys 7m7.084s
    lpk43:~# echo 1 >/proc/sys/net/core/fb_tunnels_only_for_init_net
    lpk43:~# time ./add_del_unshare.sh

    real 0m4.761s
    user 0m0.851s
    sys 1m8.343s
    lpk43:~#

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     

08 Mar, 2018

1 commit

  • There are two compatibility strings for mv88e6xxx, but it isn't clear
    from the documentation why only those two exist when the mv88e6xxx driver
    supports more than the 6085 and 6190. Briefly describe how the compatible
    property is used, and provide guidance on which to use.

    The model list comes from looking at port_base_addr values (0x0 vs 0x10)
    in drivers/net/dsa/mv88e6xxx/chip.c.

    Signed-off-by: Brandon Streiff
    Reviewed-by: Andrew Lunn
    Signed-off-by: David S. Miller

    Brandon Streiff
     

06 Mar, 2018

4 commits

  • All of the conflicts were cases of overlapping changes.

    In net/core/devlink.c, we have to make care that the
    resouce size_params have become a struct member rather
    than a pointer to such an object.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Pull ia64 cleanups from Tony Luck:

    - More atomic cleanup from willy

    - Fix a python script to work with version 3

    - Some other small cleanups

    * tag 'please-pull-ia64_misc' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
    ia64/err-inject: fix spelling mistake: "capapbilities" -> "capabilities"
    ia64/err-inject: Use get_user_pages_fast()
    ia64: doc: tweak whitespace for 'console=' parameter
    ia64: Convert remaining atomic operations
    ia64: convert unwcheck.py to python3

    Linus Torvalds
     
  • CC: Tony Luck
    CC: Fenghua Yu
    CC: linux-ia64@vger.kernel.org
    CC: linux-kernel@vger.kernel.org
    Signed-off-by: Sergei Trofimovich
    Signed-off-by: Tony Luck

    Sergei Trofimovich
     
  • Pull networking fixes from David Miller:

    1) Use an appropriate TSQ pacing shift in mac80211, from Toke
    Høiland-Jørgensen.

    2) Just like ipv4's ip_route_me_harder(), we have to use skb_to_full_sk
    in ip6_route_me_harder, from Eric Dumazet.

    3) Fix several shutdown races and similar other problems in l2tp, from
    James Chapman.

    4) Handle missing XDP flush properly in tuntap, for real this time.
    From Jason Wang.

    5) Out-of-bounds access in powerpc ebpf tailcalls, from Daniel
    Borkmann.

    6) Fix phy_resume() locking, from Andrew Lunn.

    7) IFLA_MTU values are ignored on newlink for some tunnel types, fix
    from Xin Long.

    8) Revert F-RTO middle box workarounds, they only handle one dimension
    of the problem. From Yuchung Cheng.

    9) Fix socket refcounting in RDS, from Ka-Cheong Poon.

    10) Don't allow ppp unit registration to an unregistered channel, from
    Guillaume Nault.

    11) Various hv_netvsc fixes from Stephen Hemminger.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (98 commits)
    hv_netvsc: propagate rx filters to VF
    hv_netvsc: filter multicast/broadcast
    hv_netvsc: defer queue selection to VF
    hv_netvsc: use napi_schedule_irqoff
    hv_netvsc: fix race in napi poll when rescheduling
    hv_netvsc: cancel subchannel setup before halting device
    hv_netvsc: fix error unwind handling if vmbus_open fails
    hv_netvsc: only wake transmit queue if link is up
    hv_netvsc: avoid retry on send during shutdown
    virtio-net: re enable XDP_REDIRECT for mergeable buffer
    ppp: prevent unregistered channels from connecting to PPP units
    tc-testing: skbmod: fix match value of ethertype
    mlxsw: spectrum_switchdev: Check success of FDB add operation
    net: make skb_gso_*_seglen functions private
    net: xfrm: use skb_gso_validate_network_len() to check gso sizes
    net: sched: tbf: handle GSO_BY_FRAGS case in enqueue
    net: rename skb_gso_validate_mtu -> skb_gso_validate_network_len
    rds: Incorrect reference counting in TCP socket creation
    net: ethtool: don't ignore return from driver get_fecparam method
    vrf: check forwarding on the original netdevice when generating ICMP dest unreachable
    ...

    Linus Torvalds
     

05 Mar, 2018

3 commits

  • Pull x86 fixes from Thomas Gleixner:
    "A small set of fixes for x86:

    - Add missing instruction suffixes to assembly code so it can be
    compiled by newer GAS versions without warnings.

    - Switch refcount WARN exceptions to UD2 as we did in general

    - Make the reboot on Intel Edison platforms work

    - A small documentation update so text and sample command match"

    * 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    Documentation, x86, resctrl: Make text and sample command match
    x86/platform/intel-mid: Handle Intel Edison reboot correctly
    x86/asm: Add instruction suffixes to bitops
    x86/entry/64: Add instruction suffix
    x86/refcounts: Switch to UD2 for exceptions

    Linus Torvalds
     
  • Pull irq fixlet from Thomas Gleixner:
    "Just a documentation update for the missing device tree property of
    the R-Car M3N interrupt controller"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    dt-bindings/irqchip/renesas-irqc: Document R-Car M3-N support

    Linus Torvalds
     
  • Some operators prefer IPv6 path selection to use a standard 5-tuple
    hash rather than just an L3 hash with the flow the label. To that end
    add support to IPv6 for multipath hash policy similar to bf4e0a3db97eb
    ("net: ipv4: add support for ECMP hash policy choice"). The default
    is still L3 which covers source and destination addresses along with
    flow label and IPv6 protocol.

    Signed-off-by: David Ahern
    Reviewed-by: Ido Schimmel
    Tested-by: Ido Schimmel
    Reviewed-by: Nikolay Aleksandrov
    Signed-off-by: David S. Miller

    David Ahern
     

04 Mar, 2018

2 commits

  • Pull i2c fixes from Wolfram Sang:
    "A driver fix and a documentation fix (which makes dependency handling
    for the next cycle easier)"

    * 'i2c/for-current-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: octeon: Prevent error message on bus error
    dt-bindings: at24: sort manufacturers alphabetically

    Linus Torvalds
     
  • Pull media fixes from Mauro Carvalho Chehab:

    - some build fixes with randconfigs

    - an m88ds3103 fix to prevent an OOPS if the chip doesn't provide the
    right version during probe (with can happen if the hardware hangs)

    - a potential out of array bounds reference in tvp5150

    - some fixes and improvements in the DVB memory mapped API (added for
    kernel 4.16)

    * tag 'media/v4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    media: vb2: Makefile: place vb2-trace together with vb2-core
    media: Don't let tvp5150_get_vbi() go out of vbi_ram_default array
    media: dvb: update buffer mmaped flags and frame counter
    media: dvb: add continuity error indicators for memory mapped buffers
    media: dmxdev: Fix the logic that enables DMA mmap support
    media: dmxdev: fix error code for invalid ioctls
    media: m88ds3103: don't call a non-initalized function
    media: au0828: add VIDEO_V4L2 dependency
    media: dvb: fix DVB_MMAP dependency
    media: dvb: fix DVB_MMAP symbol name
    media: videobuf2: fix build issues with vb2-trace
    media: videobuf2: Add VIDEOBUF2_V4L2 Kconfig option for VB2 V4L2 part

    Linus Torvalds
     

03 Mar, 2018

2 commits

  • Pull KVM fixes from Radim Krčmář:
    "x86:

    - fix NULL dereference when using userspace lapic

    - optimize spectre v1 mitigations by allowing guests to use LFENCE

    - make microcode revision configurable to prevent guests from
    unnecessarily blacklisting spectre v2 mitigation feature"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: x86: fix vcpu initialization with userspace lapic
    KVM: X86: Allow userspace to define the microcode version
    KVM: X86: Introduce kvm_get_msr_feature()
    KVM: SVM: Add MSR-based feature support for serializing LFENCE
    KVM: x86: Add a framework for supporting MSR-based features

    Linus Torvalds
     
  • Pull PCI fixes from Bjorn Helgaas:

    - Update pci.ids location (documentation only) (Randy Dunlap)

    - Fix a crash when BIOS didn't assign a BAR and we try to enlarge it
    (Christian König)

    * tag 'pci-v4.16-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
    PCI: Allow release of resources that were never assigned
    PCI: Update location of pci.ids file

    Linus Torvalds
     

02 Mar, 2018

1 commit

  • Provide a new KVM capability that allows bits within MSRs to be recognized
    as features. Two new ioctls are added to the /dev/kvm ioctl routine to
    retrieve the list of these MSRs and then retrieve their values. A kvm_x86_ops
    callback is used to determine support for the listed MSR-based features.

    Signed-off-by: Tom Lendacky
    Signed-off-by: Paolo Bonzini
    [Tweaked documentation. - Radim]
    Signed-off-by: Radim Krčmář

    Tom Lendacky
     

01 Mar, 2018

4 commits


28 Feb, 2018

2 commits


27 Feb, 2018

2 commits

  • Renesas R-Car V3H (R8A77980) SoC has the R-Car gen3 compatible EtherAVB
    device, so document the SoC specific bindings.

    Signed-off-by: Sergei Shtylyov
    Reviewed-by: Geert Uytterhoeven
    Reviewed-by: Simon Horman
    Reviewed-by: Rob Herring
    Signed-off-by: David S. Miller

    Sergei Shtylyov
     
  • Pull KVM fixes from Paolo Bonzini:
    "s390:
    - optimization for the exitless interrupt support that was merged in 4.16-rc1
    - improve the branch prediction blocking for nested KVM
    - replace some jump tables with switch statements to improve expoline performance
    - fixes for multiple epoch facility

    ARM:
    - fix the interaction of userspace irqchip VMs with in-kernel irqchip VMs
    - make sure we can build 32-bit KVM/ARM with gcc-8.

    x86:
    - fixes for AMD SEV
    - fixes for Intel nested VMX, emulated UMIP and a dump_stack() on VM startup
    - fixes for async page fault migration
    - small optimization to PV TLB flush (new in 4.16-rc1)
    - syzkaller fixes

    Generic:
    - compiler warning fixes
    - syzkaller fixes
    - more improvements to the kvm_stat tool

    Two more small Spectre fixes are going to reach you via Ingo"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (40 commits)
    KVM: SVM: Fix SEV LAUNCH_SECRET command
    KVM: SVM: install RSM intercept
    KVM: SVM: no need to call access_ok() in LAUNCH_MEASURE command
    include: psp-sev: Capitalize invalid length enum
    crypto: ccp: Fix sparse, use plain integer as NULL pointer
    KVM: X86: Avoid traversing all the cpus for pv tlb flush when steal time is disabled
    x86/kvm: Make parse_no_xxx __init for kvm
    KVM: x86: fix backward migration with async_PF
    kvm: fix warning for non-x86 builds
    kvm: fix warning for CONFIG_HAVE_KVM_EVENTFD builds
    tools/kvm_stat: print 'Total' line for multiple events only
    tools/kvm_stat: group child events indented after parent
    tools/kvm_stat: separate drilldown and fields filtering
    tools/kvm_stat: eliminate extra guest/pid selection dialog
    tools/kvm_stat: mark private methods as such
    tools/kvm_stat: fix debugfs handling
    tools/kvm_stat: print error on invalid regex
    tools/kvm_stat: fix crash when filtering out all non-child trace events
    tools/kvm_stat: avoid 'is' for equality checks
    tools/kvm_stat: use a more pythonic way to iterate over dictionaries
    ...

    Linus Torvalds
     

26 Feb, 2018

1 commit

  • Pull x86 fixes from Thomas Gleixner:
    "A small set of fixes:

    - UAPI data type correction for hyperv

    - correct the cpu cores field in /proc/cpuinfo on CPU hotplug

    - return proper error code in the resctrl file system failure path to
    avoid silent subsequent failures

    - correct a subtle accounting issue in the new vector allocation code
    which went unnoticed for a while and caused suspend/resume
    failures"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/topology: Update the 'cpu cores' field in /proc/cpuinfo correctly across CPU hotplug operations
    x86/topology: Fix function name in documentation
    x86/intel_rdt: Fix incorrect returned value when creating rdgroup sub-directory in resctrl file system
    x86/apic/vector: Handle vector release on CPU unplug correctly
    genirq/matrix: Handle CPU offlining proper
    x86/headers/UAPI: Use __u64 instead of u64 in

    Linus Torvalds
     

24 Feb, 2018

4 commits

  • David S. Miller
     
  • Guests on new hypersiors might set KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT
    bit when enabling async_PF, but this bit is reserved on old hypervisors,
    which results in a failure upon migration.

    To avoid breaking different cases, we are checking for CPUID feature bit
    before enabling the feature and nothing else.

    Fixes: 52a5c155cf79 ("KVM: async_pf: Let guest support delivery of async_pf from guest mode")
    Cc:
    Reviewed-by: Wanpeng Li
    Reviewed-by: David Hildenbrand
    Signed-off-by: Radim Krčmář
    Signed-off-by: Paolo Bonzini

    Radim Krčmář
     
  • Pull i2c fixes from Wolfram Sang:
    "Two bugfixes, one v4.16 regression fix, and two documentation fixes"

    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: designware: Consider SCL GPIO optional
    i2c: busses: i2c-sirf: Fix spelling: "formular" -> "formula".
    i2c: bcm2835: Set up the rising/falling edge delays
    i2c: i801: Add missing documentation entries for Braswell and Kaby Lake
    i2c: designware: must wait for enable

    Linus Torvalds
     
  • Pull drm fixes from Dave Airlie:
    "A bunch of fixes for rc3:

    Exynos:
    - fixes for using monotonic timestamps
    - register definitions
    - removal of unused file

    ipu-v3L
    - minor changes
    - make some register arrays const+static
    - fix some leaks

    meson:
    - fix for vsync

    atomic:
    - fix for memory leak

    EDID parser:
    - add quirks for some more non-desktop devices
    - 6-bit panel fix.

    drm_mm:
    - fix a bug in the core drm mm hole handling

    cirrus:
    - fix lut loading regression

    Lastly there is a deadlock fix around runtime suspend for secondary
    GPUs.

    There was a deadlock between one thread trying to wait for a workqueue
    job to finish in the runtime suspend path, and the workqueue job it
    was waiting for in turn waiting for a runtime_get_sync to return.

    The fixes avoids it by not doing the runtime sync in the workqueue as
    then we always wait for all those tasks to complete before we runtime
    suspend"

    * tag 'drm-fixes-for-v4.16-rc3' of git://people.freedesktop.org/~airlied/linux: (25 commits)
    drm/tve200: fix kernel-doc documentation comment include
    drm/edid: quirk Sony PlayStation VR headset as non-desktop
    drm/edid: quirk Windows Mixed Reality headsets as non-desktop
    drm/edid: quirk Oculus Rift headsets as non-desktop
    drm/meson: fix vsync buffer update
    drm: Handle unexpected holes in color-eviction
    drm: exynos: Use proper macro definition for HDMI_I2S_PIN_SEL_1
    drm/exynos: remove exynos_drm_rotator.h
    drm/exynos: g2d: Delete an error message for a failed memory allocation in two functions
    drm/exynos: fix comparison to bitshift when dealing with a mask
    drm/exynos: g2d: use monotonic timestamps
    drm/edid: Add 6 bpc quirk for CPT panel in Asus UX303LA
    gpu: ipu-csi: add 10/12-bit grayscale support to mbus_code_to_bus_cfg
    gpu: ipu-cpmem: add 16-bit grayscale support to ipu_cpmem_set_image
    gpu: ipu-v3: prg: fix device node leak in ipu_prg_lookup_by_phandle
    gpu: ipu-v3: pre: fix device node leak in ipu_pre_lookup_by_phandle
    drm/amdgpu: Fix deadlock on runtime suspend
    drm/radeon: Fix deadlock on runtime suspend
    drm/nouveau: Fix deadlock on runtime suspend
    drm: Allow determining if current task is output poll worker
    ...

    Linus Torvalds
     

23 Feb, 2018

3 commits


22 Feb, 2018

1 commit

  • Fixes for 4.16. I contains fixes for deadlock on runtime suspend on few
    drivers, a memory leak on non-blocking commits, a crash on color-eviction.
    The is also meson and edid fixes, plus a fix for a doc warning.

    * tag 'drm-misc-fixes-2018-02-21' of git://anongit.freedesktop.org/drm/drm-misc:
    drm/tve200: fix kernel-doc documentation comment include
    drm/meson: fix vsync buffer update
    drm: Handle unexpected holes in color-eviction
    drm/edid: Add 6 bpc quirk for CPT panel in Asus UX303LA
    drm/amdgpu: Fix deadlock on runtime suspend
    drm/radeon: Fix deadlock on runtime suspend
    drm/nouveau: Fix deadlock on runtime suspend
    drm: Allow determining if current task is output poll worker
    workqueue: Allow retrieval of current task's work struct
    drm/atomic: Fix memleak on ERESTARTSYS during non-blocking commits

    Dave Airlie
     

21 Feb, 2018

3 commits


20 Feb, 2018

2 commits

  • David S. Miller
     
  • Pull networking fixes from David Miller:

    1) Prevent index integer overflow in ptr_ring, from Jason Wang.

    2) Program mvpp2 multicast filter properly, from Mikulas Patocka.

    3) The bridge brport attribute file is write only and doesn't have a
    ->show() method, don't blindly invoke it. From Xin Long.

    4) Inverted mask used in genphy_setup_forced(), from Ingo van Lil.

    5) Fix multiple definition issue with if_ether.h UAPI header, from
    Hauke Mehrtens.

    6) Fix GFP_KERNEL usage in atomic in RDS protocol code, from Sowmini
    Varadhan.

    7) Revert XDP redirect support from thunderx driver, it is not
    implemented properly. From Jesper Dangaard Brouer.

    8) Fix missing RTNL protection across some tipc operations, from Ying
    Xue.

    9) Return the correct IV bytes in the TLS getsockopt code, from Boris
    Pismenny.

    10) Take tclassid into consideration properly when doing FIB rule
    matching. From Stefano Brivio.

    11) cxgb4 device needs more PCI VPD quirks, from Casey Leedom.

    12) TUN driver doesn't align frags properly, and we can end up doing
    unaligned atomics on misaligned metadata. From Eric Dumazet.

    13) Fix various crashes found using DEBUG_PREEMPT in rmnet driver, from
    Subash Abhinov Kasiviswanathan.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (56 commits)
    tg3: APE heartbeat changes
    mlxsw: spectrum_router: Do not unconditionally clear route offload indication
    net: qualcomm: rmnet: Fix possible null dereference in command processing
    net: qualcomm: rmnet: Fix warning seen with 64 bit stats
    net: qualcomm: rmnet: Fix crash on real dev unregistration
    sctp: remove the left unnecessary check for chunk in sctp_renege_events
    rxrpc: Work around usercopy check
    tun: fix tun_napi_alloc_frags() frag allocator
    udplite: fix partial checksum initialization
    skbuff: Fix comment mis-spelling.
    dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock
    PCI/cxgb4: Extend T3 PCI quirk to T4+ devices
    cxgb4: fix trailing zero in CIM LA dump
    cxgb4: free up resources of pf 0-3
    fib_semantics: Don't match route with mismatching tclassid
    NFC: llcp: Limit size of SDP URI
    tls: getsockopt return record sequence number
    tls: reset the crypto info if copy_from_user fails
    tls: retrun the correct IV in getsockopt
    docs: segmentation-offloads.txt: add SCTP info
    ...

    Linus Torvalds