Skip to content
Permalink
master

Commits on Apr 1, 2018

  1. Linux 4.16

    torvalds committed Apr 1, 2018

Commits on Mar 31, 2018

  1. Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull perf fixes from Ingo Molnar:
     "Two fixlets"
    
    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      perf/hwbp: Simplify the perf-hwbp code, fix documentation
      perf/x86/intel: Fix linear IP of PEBS real_ip on Haswell and later CPUs
    torvalds committed Mar 31, 2018
  2. Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/tip/tip
    
    Pull x86 fixes from Ingo Molnar:
     "Two UV platform fixes, and a kbuild fix"
    
    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/platform/UV: Fix critical UV MMR address error
      x86/platform/uv/BAU: Add APIC idt entry
      x86/purgatory: Avoid creating stray .<pid>.d files, remove -MD from KBUILD_CFLAGS
    torvalds committed Mar 31, 2018
  3. Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linu…

    …x/kernel/git/tip/tip
    
    Pull x86 PTI fixes from Ingo Molnar:
     "Two fixes: a relatively simple objtool fix that makes Clang built
      kernels work with ORC debug info, plus an alternatives macro fix"
    
    * 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/alternatives: Fixup alternative_call_2
      objtool: Add Clang support
    torvalds committed Mar 31, 2018
  4. Merge tag 'kbuild-fixes-v4.16-3' of git://git.kernel.org/pub/scm/linu…

    …x/kernel/git/masahiroy/linux-kbuild
    
    Pull Kbuild fixes from Masahiro Yamada:
    
     - fix missed rebuild of TRIM_UNUSED_KSYMS
    
     - fix rpm-pkg for GNU tar >= 1.29
    
     - include scripts/dtc/include-prefixes/* to kernel header deb-pkg
    
     - add -no-integrated-as option ealier to fix building with Clang
    
     - fix netfilter Makefile for parallel building
    
    * tag 'kbuild-fixes-v4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
      netfilter: nf_nat_snmp_basic: add correct dependency to Makefile
      kbuild: rpm-pkg: Support GNU tar >= 1.29
      builddeb: Fix header package regarding dtc source links
      kbuild: set no-integrated-as before incl. arch Makefile
      kbuild: make scripts/adjust_autoksyms.sh robust against timestamp races
    torvalds committed Mar 31, 2018
  5. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

    Pull networking fixes from David Miller:
    
     1) Fix RCU locking in xfrm_local_error(), from Taehee Yoo.
    
     2) Fix return value assignments and thus error checking in
        iwl_mvm_start_ap_ibss(), from Johannes Berg.
    
     3) Don't count header length twice in vti4, from Stefano Brivio.
    
     4) Fix deadlock in rt6_age_examine_exception, from Eric Dumazet.
    
     5) Fix out-of-bounds access in nf_sk_lookup_slow{v4,v6}() from Subash
        Abhinov.
    
     6) Check nladdr size in netlink_connect(), from Alexander Potapenko.
    
     7) VF representor SQ numbers are 32 not 16 bits, in mlx5 driver, from
        Or Gerlitz.
    
     8) Out of bounds read in skb_network_protocol(), from Eric Dumazet.
    
     9) r8169 driver sets driver data pointer after register_netdev() which
        is too late. Fix from Heiner Kallweit.
    
    10) Fix memory leak in mlx4 driver, from Moshe Shemesh.
    
    11) The multi-VLAN decap fix added a regression when dealing with device
        that lack a MAC header, such as tun. Fix from Toshiaki Makita.
    
    12) Fix integer overflow in dynamic interrupt coalescing code. From Tal
        Gilboa.
    
    13) Use after free in vrf code, from David Ahern.
    
    14) IPV6 route leak between VRFs fix, also from David Ahern.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (81 commits)
      net: mvneta: fix enable of all initialized RXQs
      net/ipv6: Fix route leaking between VRFs
      vrf: Fix use after free and double free in vrf_finish_output
      ipv6: sr: fix seg6 encap performances with TSO enabled
      net/dim: Fix int overflow
      vlan: Fix vlan insertion for packets without ethernet header
      net: Fix untag for vlan packets without ethernet header
      atm: iphase: fix spelling mistake: "Receiverd" -> "Received"
      vhost: validate log when IOTLB is enabled
      qede: Do not drop rx-checksum invalidated packets.
      hv_netvsc: enable multicast if necessary
      ip_tunnel: Resolve ipsec merge conflict properly.
      lan78xx: Crash in lan78xx_writ_reg (Workqueue: events lan78xx_deferred_multicast_write)
      qede: Fix barrier usage after tx doorbell write.
      vhost: correctly remove wait queue during poll failure
      net/mlx4_core: Fix memory leak while delete slave's resources
      net/mlx4_en: Fix mixed PFC and Global pause user control requests
      net/smc: use announced length in sock_recvmsg()
      llc: properly handle dev_queue_xmit() return value
      strparser: Fix sign of err codes
      ...
    torvalds committed Mar 31, 2018

Commits on Mar 30, 2018

  1. net: mvneta: fix enable of all initialized RXQs

    In mvneta_port_up() we enable relevant RX and TX port queues by write
    queues bit map to an appropriate register.
    
    q_map must be ZERO in the beginning of this process.
    
    Signed-off-by: Yelena Krivosheev <yelena@marvell.com>
    Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
    Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    yelenaKr authored and davem330 committed Mar 30, 2018
  2. net/ipv6: Fix route leaking between VRFs

    Donald reported that IPv6 route leaking between VRFs is not working.
    The root cause is the strict argument in the call to rt6_lookup when
    validating the nexthop spec.
    
    ip6_route_check_nh validates the gateway and device (if given) of a
    route spec. It in turn could call rt6_lookup (e.g., lookup in a given
    table did not succeed so it falls back to a full lookup) and if so
    sets the strict argument to 1. That means if the egress device is given,
    the route lookup needs to return a result with the same device. This
    strict requirement does not work with VRFs (IPv4 or IPv6) because the
    oif in the flow struct is overridden with the index of the VRF device
    to trigger a match on the l3mdev rule and force the lookup to its table.
    
    The right long term solution is to add an l3mdev index to the flow
    struct such that the oif is not overridden. That solution will not
    backport well, so this patch aims for a simpler solution to relax the
    strict argument if the route spec device is an l3mdev slave. As done
    in other places, use the FLOWI_FLAG_SKIP_NH_OIF to know that the
    RT6_LOOKUP_F_IFACE flag needs to be removed.
    
    Fixes: ca25449 ("net: Add VRF support to IPv6 stack")
    Reported-by: Donald Sharp <sharpd@cumulusnetworks.com>
    Signed-off-by: David Ahern <dsahern@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    dsahern authored and davem330 committed Mar 30, 2018
  3. vrf: Fix use after free and double free in vrf_finish_output

    Miguel reported an skb use after free / double free in vrf_finish_output
    when neigh_output returns an error. The vrf driver should return after
    the call to neigh_output as it takes over the skb on error path as well.
    
    Patch is a simplified version of Miguel's patch which was written for 4.9,
    and updated to top of tree.
    
    Fixes: 8f58336 ("net: Add ethernet header for pass through VRF device")
    Signed-off-by: Miguel Fadon Perlines <mfadon@teldat.com>
    Signed-off-by: David Ahern <dsahern@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    dsahern authored and davem330 committed Mar 30, 2018
  4. ipv6: sr: fix seg6 encap performances with TSO enabled

    Enabling TSO can lead to abysmal performances when using seg6 in
    encap mode, such as with the ixgbe driver. This patch adds a call to
    iptunnel_handle_offloads() to remove the encapsulation bit if needed.
    
    Before:
    root@comp4-seg6bpf:~# iperf3 -c fc00::55
    Connecting to host fc00::55, port 5201
    [  4] local fc45::4 port 36592 connected to fc00::55 port 5201
    [ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
    [  4]   0.00-1.00   sec   196 KBytes  1.60 Mbits/sec   47   6.66 KBytes
    [  4]   1.00-2.00   sec   304 KBytes  2.49 Mbits/sec  100   5.33 KBytes
    [  4]   2.00-3.00   sec   284 KBytes  2.32 Mbits/sec   92   5.33 KBytes
    
    After:
    root@comp4-seg6bpf:~# iperf3 -c fc00::55
    Connecting to host fc00::55, port 5201
    [  4] local fc45::4 port 43062 connected to fc00::55 port 5201
    [ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
    [  4]   0.00-1.00   sec  1.03 GBytes  8.89 Gbits/sec    0    743 KBytes
    [  4]   1.00-2.00   sec  1.03 GBytes  8.87 Gbits/sec    0    743 KBytes
    [  4]   2.00-3.00   sec  1.03 GBytes  8.87 Gbits/sec    0    743 KBytes
    
    Reported-by: Tom Herbert <tom@quantonium.net>
    Fixes: 6c8702c ("ipv6: sr: add support for SRH encapsulation and injection with lwtunnels")
    Signed-off-by: David Lebrun <dlebrun@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    David Lebrun authored and davem330 committed Mar 30, 2018
  5. Merge tag 'ceph-for-4.16-rc8' of git://github.com/ceph/ceph-client

    Pull ceph fix from Ilya Dryomov:
     "A fix for a dio-enabled loop on ceph deadlock from Zheng, marked for
      stable"
    
    * tag 'ceph-for-4.16-rc8' of git://github.com/ceph/ceph-client:
      ceph: only dirty ITER_IOVEC pages for direct read
    torvalds committed Mar 30, 2018
  6. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull KVM fixes from Radim Krčmář:
     "PPC:
       - Fix a bug causing occasional machine check exceptions on POWER8
         hosts (introduced in 4.16-rc1)
    
      x86:
       - Fix a guest crashing regression with nested VMX and restricted
         guest (introduced in 4.16-rc1)
    
       - Fix dependency check for pv tlb flush (the wrong dependency that
         effectively disabled the feature was added in 4.16-rc4, the
         original feature in 4.16-rc1, so it got decent testing)"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      KVM: x86: Fix pv tlb flush dependencies
      KVM: nVMX: sync vmcs02 segment regs prior to vmx_set_cr0
      KVM: PPC: Book3S HV: Fix duplication of host SLB entries
    torvalds committed Mar 30, 2018
  7. Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/wsa/linux
    
    Pull i2c fix from Wolfram Sang:
     "A simple but worthwhile I2C driver fix for 4.16"
    
    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      i2c: i2c-stm32f7: fix no check on returned setup
    torvalds committed Mar 30, 2018
  8. Merge tag 'sound-4.16' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/tiwai/sound
    
    Pull sound fixes from Takashi Iwai:
     "Very small fixes (all one-liners) at this time.
    
      One fix is for a PCM core stuff to correct the mmap behavior on
      non-x86. It doesn't show on most machines but mostly only for exotic
      non-interleaved formats"
    
    * tag 'sound-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
      ALSA: pcm: potential uninitialized return values
      ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent()
      ALSA: usb-audio: Add native DSD support for TEAC UD-301
    torvalds committed Mar 30, 2018
  9. net/dim: Fix int overflow

    When calculating difference between samples, the values
    are multiplied by 100. Large values may cause int overflow
    when multiplied (usually on first iteration).
    Fixed by forcing 100 to be of type unsigned long.
    
    Fixes: 4c4dbb4 ("net/mlx5e: Move dynamic interrupt coalescing code to include/linux")
    Signed-off-by: Tal Gilboa <talgi@mellanox.com>
    Reviewed-by: Andy Gospodarek <gospo@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    talgimellanox authored and davem330 committed Mar 30, 2018
  10. Merge branch 'vlan-fix'

    Toshiaki Makita says:
    
    ====================
    Fix vlan tag handling for vlan packets without ethernet headers
    
    Eric Dumazet reported syzbot found a new bug which leads to underflow of
    size argument of memmove(), causing crash[1]. This can be triggered by tun
    devices.
    
    The underflow happened because skb_vlan_untag() did not expect vlan packets
    without ethernet headers, and tun can produce such packets.
    I also checked vlan_insert_inner_tag() and found a similar bug.
    
    This series fixes these problems.
    
    [1] https://marc.info/?l=linux-netdev&m=152221753920510&w=2
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Mar 30, 2018
  11. vlan: Fix vlan insertion for packets without ethernet header

    In some situation vlan packets do not have ethernet headers. One example
    is packets from tun devices. Users can specify vlan protocol in tun_pi
    field instead of IP protocol. When we have a vlan device with reorder_hdr
    disabled on top of the tun device, such packets from tun devices are
    untagged in skb_vlan_untag() and vlan headers will be inserted back in
    vlan_insert_inner_tag().
    
    vlan_insert_inner_tag() however did not expect packets without ethernet
    headers, so in such a case size argument for memmove() underflowed.
    
    We don't need to copy headers for packets which do not have preceding
    headers of vlan headers, so skip memmove() in that case.
    Also don't write vlan protocol in skb->data when it does not have enough
    room for it.
    
    Fixes: cbe7128 ("vlan: Fix out of order vlan headers with reorder header off")
    Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Toshiaki Makita authored and davem330 committed Mar 30, 2018
  12. net: Fix untag for vlan packets without ethernet header

    In some situation vlan packets do not have ethernet headers. One example
    is packets from tun devices. Users can specify vlan protocol in tun_pi
    field instead of IP protocol, and skb_vlan_untag() attempts to untag such
    packets.
    
    skb_vlan_untag() (more precisely, skb_reorder_vlan_header() called by it)
    however did not expect packets without ethernet headers, so in such a case
    size argument for memmove() underflowed and triggered crash.
    
    ====
    BUG: unable to handle kernel paging request at ffff8801cccb8000
    IP: __memmove+0x24/0x1a0 arch/x86/lib/memmove_64.S:43
    PGD 9cee067 P4D 9cee067 PUD 1d9401063 PMD 1cccb7063 PTE 2810100028101
    Oops: 000b [#1] SMP KASAN
    Dumping ftrace buffer:
       (ftrace buffer empty)
    Modules linked in:
    CPU: 1 PID: 17663 Comm: syz-executor2 Not tainted 4.16.0-rc7+ torvalds#368
    Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
    RIP: 0010:__memmove+0x24/0x1a0 arch/x86/lib/memmove_64.S:43
    RSP: 0018:ffff8801cc046e28 EFLAGS: 00010287
    RAX: ffff8801ccc244c4 RBX: fffffffffffffffe RCX: fffffffffff6c4c2
    RDX: fffffffffffffffe RSI: ffff8801cccb7ffc RDI: ffff8801cccb8000
    RBP: ffff8801cc046e48 R08: ffff8801ccc244be R09: ffffed0039984899
    R10: 0000000000000001 R11: ffffed0039984898 R12: ffff8801ccc244c4
    R13: ffff8801ccc244c0 R14: ffff8801d96b7c06 R15: ffff8801d96b7b40
    FS:  00007febd562d700(0000) GS:ffff8801db300000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: ffff8801cccb8000 CR3: 00000001ccb2f006 CR4: 00000000001606e0
    DR0: 0000000020000000 DR1: 0000000020000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
    Call Trace:
     memmove include/linux/string.h:360 [inline]
     skb_reorder_vlan_header net/core/skbuff.c:5031 [inline]
     skb_vlan_untag+0x470/0xc40 net/core/skbuff.c:5061
     __netif_receive_skb_core+0x119c/0x3460 net/core/dev.c:4460
     __netif_receive_skb+0x2c/0x1b0 net/core/dev.c:4627
     netif_receive_skb_internal+0x10b/0x670 net/core/dev.c:4701
     netif_receive_skb+0xae/0x390 net/core/dev.c:4725
     tun_rx_batched.isra.50+0x5ee/0x870 drivers/net/tun.c:1555
     tun_get_user+0x299e/0x3c20 drivers/net/tun.c:1962
     tun_chr_write_iter+0xb9/0x160 drivers/net/tun.c:1990
     call_write_iter include/linux/fs.h:1782 [inline]
     new_sync_write fs/read_write.c:469 [inline]
     __vfs_write+0x684/0x970 fs/read_write.c:482
     vfs_write+0x189/0x510 fs/read_write.c:544
     SYSC_write fs/read_write.c:589 [inline]
     SyS_write+0xef/0x220 fs/read_write.c:581
     do_syscall_64+0x281/0x940 arch/x86/entry/common.c:287
     entry_SYSCALL_64_after_hwframe+0x42/0xb7
    RIP: 0033:0x454879
    RSP: 002b:00007febd562cc68 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
    RAX: ffffffffffffffda RBX: 00007febd562d6d4 RCX: 0000000000454879
    RDX: 0000000000000157 RSI: 0000000020000180 RDI: 0000000000000014
    RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
    R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
    R13: 00000000000006b0 R14: 00000000006fc120 R15: 0000000000000000
    Code: 90 90 90 90 90 90 90 48 89 f8 48 83 fa 20 0f 82 03 01 00 00 48 39 fe 7d 0f 49 89 f0 49 01 d0 49 39 f8 0f 8f 9f 00 00 00 48 89 d1 <f3> a4 c3 48 81 fa a8 02 00 00 72 05 40 38 fe 74 3b 48 83 ea 20
    RIP: __memmove+0x24/0x1a0 arch/x86/lib/memmove_64.S:43 RSP: ffff8801cc046e28
    CR2: ffff8801cccb8000
    ====
    
    We don't need to copy headers for packets which do not have preceding
    headers of vlan headers, so skip memmove() in that case.
    
    Fixes: 4bbb3e0 ("net: Fix vlan untag for bridge and vlan_dev with reorder_hdr off")
    Reported-by: Eric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Toshiaki Makita authored and davem330 committed Mar 30, 2018
  13. atm: iphase: fix spelling mistake: "Receiverd" -> "Received"

    Trivial fix to spelling mistake in message text
    
    Signed-off-by: Colin Ian King <colin.king@canonical.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    ColinIanKing authored and davem330 committed Mar 30, 2018
  14. ceph: only dirty ITER_IOVEC pages for direct read

    If a page is already locked, attempting to dirty it leads to a deadlock
    in lock_page().  This is what currently happens to ITER_BVEC pages when
    a dio-enabled loop device is backed by ceph:
    
      $ losetup --direct-io /dev/loop0 /mnt/cephfs/img
      $ xfs_io -c 'pread 0 4k' /dev/loop0
    
    Follow other file systems and only dirty ITER_IOVEC pages.
    
    Cc: stable@kernel.org
    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    ukernel authored and idryomov committed Mar 30, 2018
  15. Merge tag 'for-4.16/dm-fixes-4' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/device-mapper/linux-dm
    
    Pull device mapper fixes from Mike Snitzer:
    
     - Fix a DM multipath regression introduced in a v4.16-rc6 commit:
       restore support for loading, and attaching, scsi_dh modules during
       multipath table load. Otherwise some users may find themselves unable
       to boot, as was reported today:
    
         https://marc.info/?l=linux-scsi&m=152231276114962&w=2
    
     - Fix a DM core ioctl permission check regression introduced in a
       v4.16-rc5 commit.
    
    * tag 'for-4.16/dm-fixes-4' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
      dm: fix dropped return code from dm_get_bdev_for_ioctl
      dm mpath: fix support for loading scsi_dh modules during table load
    torvalds committed Mar 30, 2018
  16. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/rdma/rdma
    
    Pull rdma fixes from Jason Gunthorpe:
     "It has been fairly silent lately on our -rc front. Big queue of
      patches on the mailing list going to for-next though.
    
      Bug fixes:
       - qedr driver bugfixes causing application hangs, wrong uapi errnos,
         and a race condition
       - three syzkaller found bugfixes in the ucma uapi
    
      Regression fixes for things introduced in 4.16:
       - Crash on error introduced in mlx5 UMR flow
       - Crash on module unload/etc introduced by bad interaction of
         restrack and mlx5 patches this cycle
       - Typo in a two line syzkaller bugfix causing a bad regression
       - Coverity report of nonsense code in hns driver"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
      RDMA/ucma: Introduce safer rdma_addr_size() variants
      RDMA/hns: ensure for-loop actually iterates and free's buffers
      RDMA/ucma: Check that device exists prior to accessing it
      RDMA/ucma: Check that device is connected prior to access it
      RDMA/rdma_cm: Fix use after free race with process_one_req
      RDMA/qedr: Fix QP state initialization race
      RDMA/qedr: Fix rc initialization on CNQ allocation failure
      RDMA/qedr: fix QP's ack timeout configuration
      RDMA/ucma: Correct option size check using optlen
      RDMA/restrack: Move restrack_clean to be symmetrical to restrack_init
      IB/mlx5: Don't clean uninitialized UMR resources
    torvalds committed Mar 30, 2018
  17. Merge tag 'mtd/fixes-for-4.16' of git://git.infradead.org/linux-mtd

    Pull MTD fixes from Boris Brezillon:
     "Two fixes, one in the atmel NAND driver and another one in the
      CFI/JEDEC code.
    
      Summary:
    
       - Fix a bug in Atmel ECC engine driver
    
       - Fix a bug in the CFI/JEDEC driver"
    
    * tag 'mtd/fixes-for-4.16' of git://git.infradead.org/linux-mtd:
      mtd: jedec_probe: Fix crash in jedec_read_mfr()
      mtd: nand: atmel: Fix get_sectorsize() function
    torvalds committed Mar 30, 2018
  18. dm: fix dropped return code from dm_get_bdev_for_ioctl

    dm_get_bdev_for_ioctl()'s return of 0 or 1 must be the result from
    prepare_ioctl (1 means the ioctl was issued to a partition, 0 means it
    wasn't).  Unfortunately commit 519049a ("dm: use blkdev_get rather
    than bdgrab when issuing pass-through ioctl") reused the variable 'r'
    to store the return from blkdev_get() that follows prepare_ioctl()
    -- whereby dropping prepare_ioctl()'s result on the floor.
    
    This can lead to an ioctl or persistent reservation being issued to a
    partition going unnoticed, which implies the extra permission check for
    CAP_SYS_RAWIO is skipped.
    
    Fix this by using a different variable to store blkdev_get()'s return.
    
    Fixes: 519049a ("dm: use blkdev_get rather than bdgrab when issuing pass-through ioctl")
    Reported-by: Alasdair G Kergon <agk@redhat.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    snitm committed Mar 30, 2018
  19. Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf

    Daniel Borkman says:
    
    ====================
    pull-request: bpf 2018-03-29
    
    The following pull-request contains BPF updates for your *net* tree.
    
    The main changes are:
    
    1) Fix nfp to properly check max insn count while emitting
       instructions in the JIT which was wrongly comparing bytes
       against number of instructions before, from Jakub.
    
    2) Fix for bpftool to avoid usage of hex numbers in JSON
       output since JSON doesn't accept hex numbers with 0x
       prefix, also from Jakub.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Mar 30, 2018

Commits on Mar 29, 2018

  1. dm mpath: fix support for loading scsi_dh modules during table load

    The ability to have multipath dynamically attach a scsi_dh, that the user
    specified in the multipath table, was broken by commit e8f74a0 ("dm
    mpath: eliminate need to use scsi_device_from_queue").
    
    Restore the ability to load, and attach, a particular scsi_dh module if
    one is specified (as noticed by checking m->hw_handler_name).
    
    Fixes: e8f74a0 ("dm mpath: eliminate need to use scsi_device_from_queue")
    Reported-by: Paul Mackerras <paulus@ozlabs.org>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    snitm committed Mar 29, 2018
  2. vhost: validate log when IOTLB is enabled

    Vq log_base is the userspace address of bitmap which has nothing to do
    with IOTLB. So it needs to be validated unconditionally otherwise we
    may try use 0 as log_base which may lead to pin pages that will lead
    unexpected result (e.g trigger BUG_ON() in set_bit_to_user()).
    
    Fixes: 6b1e6cc ("vhost: new device IOTLB API")
    Reported-by: syzbot+6304bf97ef436580fede@syzkaller.appspotmail.com
    Signed-off-by: Jason Wang <jasowang@redhat.com>
    Acked-by: Michael S. Tsirkin <mst@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    jasowang authored and davem330 committed Mar 29, 2018
  3. qede: Do not drop rx-checksum invalidated packets.

    Today, driver drops received packets which are indicated as
    invalid checksum by the device. Instead of dropping such packets,
    pass them to the stack with CHECKSUM_NONE indication in skb.
    
    Signed-off-by: Ariel Elior <ariel.elior@cavium.com>
    Signed-off-by: Manish Chopra <manish.chopra@cavium.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Manish Chopra authored and davem330 committed Mar 29, 2018
  4. mtd: jedec_probe: Fix crash in jedec_read_mfr()

    It turns out that the loop where we read manufacturer
    jedec_read_mfd() can under some circumstances get a
    CFI_MFR_CONTINUATION repeatedly, making the loop go
    over all banks and eventually hit the end of the
    map and crash because of an access violation:
    
    Unable to handle kernel paging request at virtual address c4980000
    pgd = (ptrval)
    [c4980000] *pgd=03808811, *pte=00000000, *ppte=00000000
    Internal error: Oops: 7 [#1] PREEMPT ARM
    CPU: 0 PID: 1 Comm: swapper Not tainted 4.16.0-rc1+ torvalds#150
    Hardware name: Gemini (Device Tree)
    PC is at jedec_probe_chip+0x6ec/0xcd0
    LR is at 0x4
    pc : [<c03a2bf4>]    lr : [<00000004>]    psr: 60000013
    sp : c382dd18  ip : 0000ffff  fp : 00000000
    r10: c0626388  r9 : 00020000  r8 : c0626340
    r7 : 00000000  r6 : 00000001  r5 : c3a71afc  r4 : c382dd70
    r3 : 00000001  r2 : c4900000  r1 : 00000002  r0 : 00080000
    Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
    Control: 0000397f  Table: 00004000  DAC: 00000053
    Process swapper (pid: 1, stack limit = 0x(ptrval))
    
    Fix this by breaking the loop with a return 0 if
    the offset exceeds the map size.
    
    Fixes: 5c9c11e ("[MTD] [NOR] Add support for flash chips with ID in bank other than 0")
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
    linusw authored and Boris Brezillon committed Mar 29, 2018
  5. mtd: nand: atmel: Fix get_sectorsize() function

    get_sectorsize() was not using the appropriate macro to extract the
    ECC sector size from the config cache, which led to buggy ECC when
    using 1024 byte sectors.
    
    Fixes: f88fc12 ("mtd: nand: Cleanup/rework the atmel_nand driver")
    Cc: <stable@vger.kernel.org>
    Reported-by: Olivier Schonken <olivier.schonken@gmail.com>
    Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
    Reviewed-by: Richard Weinberger <richard@nod.at>
    Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
    Tested-by: Olivier Schonken <olivier.schonken@gmail.com>
    Boris Brezillon
    Boris Brezillon committed Mar 29, 2018
  6. hv_netvsc: enable multicast if necessary

    My recent change to netvsc drive in how receive flags are handled
    broke multicast.  The Hyper-v/Azure virtual interface there is not a
    multicast filter list, filtering is only all or none. The driver must
    enable all multicast if any multicast address is present.
    
    Fixes: 009f766 ("hv_netvsc: filter multicast/broadcast")
    Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    shemminger authored and davem330 committed Mar 29, 2018
  7. ip_tunnel: Resolve ipsec merge conflict properly.

    We want to use dev_set_mtu() regardless of how we calculate
    the mtu value.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Mar 29, 2018
  8. lan78xx: Crash in lan78xx_writ_reg (Workqueue: events lan78xx_deferre…

    …d_multicast_write)
    
    Description:
    Crash was reported with syzkaller pointing to lan78xx_write_reg routine.
    
    Root-cause:
    Proper cleanup of workqueues and init/setup routines was not happening
    in failure conditions.
    
    Fix:
    Handled the error conditions by cleaning up the queues and init/setup
    routines.
    
    Fixes: 55d7de9 ("Microchip's LAN7800 family USB 2/3 to 10/100/1000 Ethernet device driver")
    Reported-by: Andrey Konovalov <andreyknvl@google.com>
    Signed-off-by: Raghuram Chary J <raghuramchary.jallipalli@microchip.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Raghuram Chary J authored and davem330 committed Mar 29, 2018
  9. Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/klassert/ipsec
    
    Steffen Klassert says:
    
    ====================
    pull request (net): ipsec 2018-03-29
    
    1) Fix a rcu_read_lock/rcu_read_unlock imbalance
       in the error path of xfrm_local_error().
       From Taehee Yoo.
    
    2) Some VTI MTU fixes. From Stefano Brivio.
    
    3) Fix a too early overwritten skb control buffer
       on xfrm transport mode.
    
    Please note that this pull request has a merge conflict
    in net/ipv4/ip_tunnel.c.
    
    The conflict is between
    
    commit f6cc9c0 ("ip_tunnel: Emit events for post-register MTU changes")
    
    from the net tree and
    
    commit 24fc797 ("ip_tunnel: Clamp MTU to bounds on new link")
    
    from the ipsec tree.
    
    It can be solved as it is currently done in linux-next.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Mar 29, 2018
  10. Merge tag 'drm-fixes-for-v4.16-rc8' of git://people.freedesktop.org/~…

    …airlied/linux
    
    Pull drm fixes from Dave Airlie:
     "Nothing serious, two amdkfd and two tegra fixes"
    
    * tag 'drm-fixes-for-v4.16-rc8' of git://people.freedesktop.org/~airlied/linux:
      drm/tegra: dc: Using NULL instead of plain integer
      drm/amdkfd: Deallocate SDMA queues correctly
      drm/amdkfd: Fix scratch memory with HWS enabled
      drm/tegra: dc: Use correct format array for Tegra124
    torvalds committed Mar 29, 2018
Older
You can’t perform that action at this time.