1. 02 11月, 2017 33 次提交
  2. 01 11月, 2017 7 次提交
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 4f2ba5dc
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) Fix refcounting in xfrm_bundle_lookup() when using a dummy bundle,
          from Steffen Klassert.
      
       2) Fix crypto header handling in rx data frames in ath10k driver, from
          Vasanthakumar Thiagarajan.
      
       3) Fix use after free of qdisc when we defer tcp_chain_flush() to a
          workqueue. From Cong Wang.
      
       4) Fix double free in lapbether driver, from Pan Bian.
      
       5) Sanitize TUNSETSNDBUF values, from Craig Gallek.
      
       6) Fix refcounting when addrconf_permanent_addr() calls
          ipv6_del_addr(). From Eric Dumazet.
      
       7) Fix MTU probing bug in TCP that goes back to 2007, from Eric
          Dumazet.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        tcp: fix tcp_mtu_probe() vs highest_sack
        ipv6: addrconf: increment ifp refcount before ipv6_del_addr()
        tun/tap: sanitize TUNSETSNDBUF input
        mlxsw: i2c: Fix buffer increment counter for write transaction
        mlxsw: reg: Add high and low temperature thresholds
        MAINTAINERS: Remove Yotam from mlxfw
        MAINTAINERS: Update Yotam's E-mail
        net: hns: set correct return value
        net: lapbether: fix double free
        bpf: remove SK_REDIRECT from UAPI
        net: phy: marvell: Only configure RGMII delays when using RGMII
        xfrm: Fix GSO for IPsec with GRE tunnel.
        tc-testing: fix arg to ip command: -s -> -n
        net_sched: remove tcf_block_put_deferred()
        l2tp: hold tunnel in pppol2tp_connect()
        Revert "ath10k: fix napi_poll budget overflow"
        ath10k: rebuild crypto header in rx data frames
        wcn36xx: Remove unnecessary rcu_read_unlock in wcn36xx_bss_info_changed
        xfrm: Clear sk_dst_cache when applying per-socket policy.
        xfrm: Fix xfrm_dst_cache memleak
      4f2ba5dc
    • V
      x86/mm: fix use-after-free of vma during userfaultfd fault · cb0631fd
      Vlastimil Babka 提交于
      Syzkaller with KASAN has reported a use-after-free of vma->vm_flags in
      __do_page_fault() with the following reproducer:
      
        mmap(&(0x7f0000000000/0xfff000)=nil, 0xfff000, 0x3, 0x32, 0xffffffffffffffff, 0x0)
        mmap(&(0x7f0000011000/0x3000)=nil, 0x3000, 0x1, 0x32, 0xffffffffffffffff, 0x0)
        r0 = userfaultfd(0x0)
        ioctl$UFFDIO_API(r0, 0xc018aa3f, &(0x7f0000002000-0x18)={0xaa, 0x0, 0x0})
        ioctl$UFFDIO_REGISTER(r0, 0xc020aa00, &(0x7f0000019000)={{&(0x7f0000012000/0x2000)=nil, 0x2000}, 0x1, 0x0})
        r1 = gettid()
        syz_open_dev$evdev(&(0x7f0000013000-0x12)="2f6465762f696e7075742f6576656e742300", 0x0, 0x0)
        tkill(r1, 0x7)
      
      The vma should be pinned by mmap_sem, but handle_userfault() might (in a
      return to userspace scenario) release it and then acquire again, so when
      we return to __do_page_fault() (with other result than VM_FAULT_RETRY),
      the vma might be gone.
      
      Specifically, per Andrea the scenario is
       "A return to userland to repeat the page fault later with a
        VM_FAULT_NOPAGE retval (potentially after handling any pending signal
        during the return to userland). The return to userland is identified
        whenever FAULT_FLAG_USER|FAULT_FLAG_KILLABLE are both set in
        vmf->flags"
      
      However, since commit a3c4fb7c ("x86/mm: Fix fault error path using
      unsafe vma pointer") there is a vma_pkey() read of vma->vm_flags after
      that point, which can thus become use-after-free.  Fix this by moving
      the read before calling handle_mm_fault().
      Reported-by: Nsyzbot <bot+6a5269ce759a7bb12754ed9622076dc93f65a1f6@syzkaller.appspotmail.com>
      Reported-by: NDmitry Vyukov <dvyukov@google.com>
      Suggested-by: NKirill A. Shutemov <kirill@shutemov.name>
      Fixes: 3c4fb7c9c2e ("x86/mm: Fix fault error path using unsafe vma pointer")
      Reviewed-by: NAndrea Arcangeli <aarcange@redhat.com>
      Signed-off-by: NVlastimil Babka <vbabka@suse.cz>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      cb0631fd
    • L
      Merge tag 'smb3-file-name-too-long-fix' of git://git.samba.org/sfrench/cifs-2.6 · 89db69d6
      Linus Torvalds 提交于
      Pull cifs fix from Steve French:
       "smb3 file name too long fix"
      
      * tag 'smb3-file-name-too-long-fix' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: check MaxPathNameComponentLength != 0 before using it
      89db69d6
    • H
      ide:ide-cd: fix kernel panic resulting from missing scsi_req_init · 79d73346
      Hongxu Jia 提交于
      Since we split the scsi_request out of struct request, while the
      standard prep_rq_fn builds 10 byte cmds, it missed to invoke
      scsi_req_init() to initialize certain fields of a scsi_request
      structure (.__cmd[], .cmd, .cmd_len and .sense_len but no other
      members of struct scsi_request).
      
      An example panic on virtual machines (qemu/virtualbox) to boot
      from IDE cdrom:
      ...
      [    8.754381] Call Trace:
      [    8.755419]  blk_peek_request+0x182/0x2e0
      [    8.755863]  blk_fetch_request+0x1c/0x40
      [    8.756148]  ? ktime_get+0x40/0xa0
      [    8.756385]  do_ide_request+0x37d/0x660
      [    8.756704]  ? cfq_group_service_tree_add+0x98/0xc0
      [    8.757011]  ? cfq_service_tree_add+0x1e5/0x2c0
      [    8.757313]  ? ktime_get+0x40/0xa0
      [    8.757544]  __blk_run_queue+0x3d/0x60
      [    8.757837]  queue_unplugged+0x2f/0xc0
      [    8.758088]  blk_flush_plug_list+0x1f4/0x240
      [    8.758362]  blk_finish_plug+0x2c/0x40
      ...
      [    8.770906] RIP: ide_cdrom_prep_fn+0x63/0x180 RSP: ffff92aec018bae8
      [    8.772329] ---[ end trace 6408481e551a85c9 ]---
      ...
      
      Fixes: 82ed4db4 ("block: split scsi_request out of struct request")
      Signed-off-by: NHongxu Jia <hongxu.jia@windriver.com>
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      79d73346
    • D
      Merge branch 'for-upstream' of... · 59c1cecc
      David S. Miller 提交于
      Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
      
      Johan Hedberg says:
      
      ====================
      pull request: bluetooth-next 2017-11-01
      
      Here's one more bluetooth-next pull request for the 4.15 kernel.
      
       - New NFA344A device entry for btusb drvier
       - Fix race conditions in hci_ldisc
       - Fix for isochronous interface assignments in btusb driver
       - A few other smaller fixes & improvements
      
      Please let me know if there are any issues pulling. Thanks.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      59c1cecc
    • A
      bpf: fix verifier memory leaks · 1969db47
      Alexei Starovoitov 提交于
      fix verifier memory leaks
      
      Fixes: 638f5b90 ("bpf: reduce verifier memory consumption")
      Signed-off-by: NAlexei Starovoitov <ast@fb.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1969db47
    • D
      Merge branch 'cxgb4-add-hash-filter-support-to-tc-flower-offload' · 4bfbe53f
      David S. Miller 提交于
      Rahul Lakkireddy says:
      
      ====================
      cxgb4: add hash-filter support to tc-flower offload
      
      This series of patches add support to create hash-filters; a.k.a
      exact-match filters, to tc-flower offload.  T6 supports creating
      ~500K hash-filters in hw and can theoretically be expanded up to
      ~1 million.
      
      Patch 1 fetches and saves the configured hw filter tuple field shifts
      and filter mask.
      
      Patch 2 initializes the driver to use hash-filter configuration.
      
      Patch 3 adds support to create hash filters in hw.
      
      Patch 4 adds support to delete hash filters in hw.
      
      Patch 5 adds support to retrieve filter stats for hash filters.
      
      Patch 6 converts the flower table to use rhashtable instead of
      static hlist.
      
      Patch 7 finally adds support to create hash filters via tc-flower
      offload.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4bfbe53f