1. 17 Dec, 2020 8 commits
    • Jakub Kicinski's avatar
      Merge branch 'mptcp-a-bunch-of-assorted-fixes' · 86eb09b6
      Jakub Kicinski authored
      Paolo Abeni says:
      
      ====================
      mptcp: a bunch of assorted fixes
      
      This series pulls a few fixes for the MPTCP datapath.
      Most issues addressed here has been recently introduced
      with the recent reworks, with the notable exception of
      the first patch, which addresses an issue present since
      the early days
      ====================
      
      Link: https://lore.kernel.org/r/cover.1608114076.git.pabeni@redhat.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      86eb09b6
    • Paolo Abeni's avatar
      mptcp: fix pending data accounting · 13e16037
      Paolo Abeni authored
      When sendmsg() needs to wait for memory, the pending data
      is not updated. That causes a drift in forward memory allocation,
      leading to stall and/or warnings at socket close time.
      
      This change addresses the above issue moving the pending data
      counter update inside the sendmsg() main loop.
      
      Fixes: 6e628cd3 ("mptcp: use mptcp release_cb for delayed tasks")
      Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      13e16037
    • Paolo Abeni's avatar
      mptcp: push pending frames when subflow has free space · 219d0499
      Paolo Abeni authored
      When multiple subflows are active, we can receive a
      window update on subflow with no write space available.
      MPTCP will try to push frames on such subflow and will
      fail. Pending frames will be pushed only after receiving
      a window update on a subflow with some wspace available.
      
      Overall the above could lead to suboptimal aggregate
      bandwidth usage.
      
      Instead, we should try to push pending frames as soon as
      the subflow reaches both conditions mentioned above.
      
      We can finally enable self-tests with asymmetric links,
      as the above makes them finally pass.
      
      Fixes: 6f8a612a ("mptcp: keep track of advertised windows right edge")
      Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      219d0499
    • Paolo Abeni's avatar
      mptcp: properly annotate nested lock · 3f8b2667
      Paolo Abeni authored
      MPTCP closes the subflows while holding the msk-level lock.
      While acquiring the subflow socket lock we need to use the
      correct nested annotation, or we can hit a lockdep splat
      at runtime.
      Reported-and-tested-by: default avatarGeliang Tang <geliangtang@gmail.com>
      Fixes: e16163b6 ("mptcp: refactor shutdown and close")
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3f8b2667
    • Paolo Abeni's avatar
      mptcp: fix security context on server socket · 0c148460
      Paolo Abeni authored
      Currently MPTCP is not propagating the security context
      from the ingress request socket to newly created msk
      at clone time.
      
      Address the issue invoking the missing security helper.
      
      Fixes: cf7da0d6 ("mptcp: Create SUBFLOW socket for incoming connections")
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      0c148460
    • Parav Pandit's avatar
      net/mlx5: Fix compilation warning for 32-bit platform · 49e27134
      Parav Pandit authored
      MLX5_GENERAL_OBJECT_TYPES types bitfield is 64-bit field.
      
      Defining an enum for such bit fields on 32-bit platform results in below
      warning.
      
      ./include/vdso/bits.h:7:26: warning: left shift count >= width of type [-Wshift-count-overflow]
                               ^
      ./include/linux/mlx5/mlx5_ifc.h:10716:46: note: in expansion of macro ‘BIT’
       MLX5_HCA_CAP_GENERAL_OBJECT_TYPES_SAMPLER = BIT(0x20),
                                                   ^~~
      
      Use 32-bit friendly BIT_ULL macro.
      
      Fixes: 2a297089 ("net/mlx5: Add sample offload hardware bits and structures")
      Signed-off-by: default avatarParav Pandit <parav@nvidia.com>
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarLeon Romanovsky <leonro@nvidia.com>
      Link: https://lore.kernel.org/r/20201213120641.216032-1-leon@kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      49e27134
    • Geliang Tang's avatar
      mptcp: clear use_ack and use_map when dropping other suboptions · 3ae32c07
      Geliang Tang authored
      This patch cleared use_ack and use_map when dropping other suboptions to
      fix the following syzkaller BUG:
      
      [   15.223006] BUG: unable to handle page fault for address: 0000000000223b10
      [   15.223700] #PF: supervisor read access in kernel mode
      [   15.224209] #PF: error_code(0x0000) - not-present page
      [   15.224724] PGD b8d5067 P4D b8d5067 PUD c0a5067 PMD 0
      [   15.225237] Oops: 0000 [#1] SMP
      [   15.225556] CPU: 0 PID: 7747 Comm: syz-executor Not tainted 5.10.0-rc6+ #24
      [   15.226281] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014
      [   15.227292] RIP: 0010:skb_release_data+0x89/0x1e0
      [   15.227816] Code: 5b 5d 41 5c 41 5d 41 5e 41 5f e9 02 06 8a ff e8 fd 05 8a ff 45 31 ed 80 7d 02 00 4c 8d 65 30 74 55 e8 eb 05 8a ff 49 8b 1c 24 <4c> 8b 7b 08 41 f6 c7 01 0f 85 18 01 00 00 e8 d4 05 8a ff 8b 43 34
      [   15.229669] RSP: 0018:ffffc900019c7c08 EFLAGS: 00010293
      [   15.230188] RAX: ffff88800daad900 RBX: 0000000000223b08 RCX: 0000000000000006
      [   15.230895] RDX: 0000000000000000 RSI: ffffffff818e06c5 RDI: ffff88807f6dc700
      [   15.231593] RBP: ffff88807f71a4c0 R08: 0000000000000001 R09: 0000000000000001
      [   15.232299] R10: ffffc900019c7c18 R11: 0000000000000000 R12: ffff88807f71a4f0
      [   15.233007] R13: 0000000000000000 R14: ffff88807f6dc700 R15: 0000000000000002
      [   15.233714] FS:  00007f65d9b5f700(0000) GS:ffff88807c400000(0000) knlGS:0000000000000000
      [   15.234509] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   15.235081] CR2: 0000000000223b10 CR3: 000000000b883000 CR4: 00000000000006f0
      [   15.235788] Call Trace:
      [   15.236042]  skb_release_all+0x28/0x30
      [   15.236419]  __kfree_skb+0x11/0x20
      [   15.236768]  tcp_data_queue+0x270/0x1240
      [   15.237161]  ? tcp_urg+0x50/0x2a0
      [   15.237496]  tcp_rcv_established+0x39a/0x890
      [   15.237997]  ? mark_held_locks+0x49/0x70
      [   15.238467]  tcp_v4_do_rcv+0xb9/0x270
      [   15.238915]  __release_sock+0x8a/0x160
      [   15.239365]  release_sock+0x32/0xd0
      [   15.239793]  __inet_stream_connect+0x1d2/0x400
      [   15.240313]  ? do_wait_intr_irq+0x80/0x80
      [   15.240791]  inet_stream_connect+0x36/0x50
      [   15.241275]  mptcp_stream_connect+0x69/0x1b0
      [   15.241787]  __sys_connect+0x122/0x140
      [   15.242236]  ? syscall_enter_from_user_mode+0x17/0x50
      [   15.242836]  ? lockdep_hardirqs_on_prepare+0xd4/0x170
      [   15.243436]  __x64_sys_connect+0x1a/0x20
      [   15.243924]  do_syscall_64+0x33/0x40
      [   15.244313]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
      [   15.244821] RIP: 0033:0x7f65d946e469
      [   15.245183] Code: 00 f3 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d ff 49 2b 00 f7 d8 64 89 01 48
      [   15.247019] RSP: 002b:00007f65d9b5eda8 EFLAGS: 00000246 ORIG_RAX: 000000000000002a
      [   15.247770] RAX: ffffffffffffffda RBX: 000000000049bf00 RCX: 00007f65d946e469
      [   15.248471] RDX: 0000000000000010 RSI: 00000000200000c0 RDI: 0000000000000005
      [   15.249205] RBP: 000000000049bf00 R08: 0000000000000000 R09: 0000000000000000
      [   15.249908] R10: 0000000000000000 R11: 0000000000000246 R12: 000000000049bf0c
      [   15.250603] R13: 00007fffe8a25cef R14: 00007f65d9b3f000 R15: 0000000000000003
      [   15.251312] Modules linked in:
      [   15.251626] CR2: 0000000000223b10
      [   15.251965] BUG: kernel NULL pointer dereference, address: 0000000000000048
      [   15.252005] ---[ end trace f5c51fe19123c773 ]---
      [   15.252822] #PF: supervisor read access in kernel mode
      [   15.252823] #PF: error_code(0x0000) - not-present page
      [   15.252825] PGD c6c6067 P4D c6c6067 PUD c0d8067
      [   15.253294] RIP: 0010:skb_release_data+0x89/0x1e0
      [   15.253910] PMD 0
      [   15.253914] Oops: 0000 [#2] SMP
      [   15.253917] CPU: 1 PID: 7746 Comm: syz-executor Tainted: G      D           5.10.0-rc6+ #24
      [   15.253920] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014
      [   15.254435] Code: 5b 5d 41 5c 41 5d 41 5e 41 5f e9 02 06 8a ff e8 fd 05 8a ff 45 31 ed 80 7d 02 00 4c 8d 65 30 74 55 e8 eb 05 8a ff 49 8b 1c 24 <4c> 8b 7b 08 41 f6 c7 01 0f 85 18 01 00 00 e8 d4 05 8a ff 8b 43 34
      [   15.254899] RIP: 0010:skb_release_data+0x89/0x1e0
      [   15.254902] Code: 5b 5d 41 5c 41 5d 41 5e 41 5f e9 02 06 8a ff e8 fd 05 8a ff 45 31 ed 80 7d 02 00 4c 8d 65 30 74 55 e8 eb 05 8a ff 49 8b 1c 24 <4c> 8b 7b 08 41 f6 c7 01 0f 85 18 01 00 00 e8 d4 05 8a ff 8b 43 34
      [   15.254905] RSP: 0018:ffffc900019bfc08 EFLAGS: 00010293
      [   15.255376] RSP: 0018:ffffc900019c7c08 EFLAGS: 00010293
      [   15.255580]
      [   15.255583] RAX: ffff888004a7ac80 RBX: 0000000000000040 RCX: 0000000000000000
      [   15.255912]
      [   15.256724] RDX: 0000000000000000 RSI: ffffffff818e06c5 RDI: ffff88807f6ddd00
      [   15.257620] RAX: ffff88800daad900 RBX: 0000000000223b08 RCX: 0000000000000006
      [   15.259817] RBP: ffff88800e9006c0 R08: 0000000000000000 R09: 0000000000000000
      [   15.259818] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88800e9006f0
      [   15.259820] R13: 0000000000000000 R14: ffff88807f6ddd00 R15: 0000000000000002
      [   15.259822] FS:  00007fae4a60a700(0000) GS:ffff88807c500000(0000) knlGS:0000000000000000
      [   15.259826] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   15.260296] RDX: 0000000000000000 RSI: ffffffff818e06c5 RDI: ffff88807f6dc700
      [   15.262514] CR2: 0000000000000048 CR3: 000000000b89c000 CR4: 00000000000006e0
      [   15.262515] Call Trace:
      [   15.262519]  skb_release_all+0x28/0x30
      [   15.262523]  __kfree_skb+0x11/0x20
      [   15.263054] RBP: ffff88807f71a4c0 R08: 0000000000000001 R09: 0000000000000001
      [   15.263680]  tcp_data_queue+0x270/0x1240
      [   15.263843] R10: ffffc900019c7c18 R11: 0000000000000000 R12: ffff88807f71a4f0
      [   15.264693]  ? tcp_urg+0x50/0x2a0
      [   15.264856] R13: 0000000000000000 R14: ffff88807f6dc700 R15: 0000000000000002
      [   15.265720]  tcp_rcv_established+0x39a/0x890
      [   15.266438] FS:  00007f65d9b5f700(0000) GS:ffff88807c400000(0000) knlGS:0000000000000000
      [   15.267283]  ? __schedule+0x3fa/0x880
      [   15.267287]  tcp_v4_do_rcv+0xb9/0x270
      [   15.267290]  __release_sock+0x8a/0x160
      [   15.268049] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   15.268788]  release_sock+0x32/0xd0
      [   15.268791]  __inet_stream_connect+0x1d2/0x400
      [   15.268795]  ? do_wait_intr_irq+0x80/0x80
      [   15.269593] CR2: 0000000000223b10 CR3: 000000000b883000 CR4: 00000000000006f0
      [   15.270246]  inet_stream_connect+0x36/0x50
      [   15.270250]  mptcp_stream_connect+0x69/0x1b0
      [   15.270253]  __sys_connect+0x122/0x140
      [   15.271097] Kernel panic - not syncing: Fatal exception
      [   15.271820]  ? syscall_enter_from_user_mode+0x17/0x50
      [   15.283542]  ? lockdep_hardirqs_on_prepare+0xd4/0x170
      [   15.284275]  __x64_sys_connect+0x1a/0x20
      [   15.284853]  do_syscall_64+0x33/0x40
      [   15.285369]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
      [   15.286105] RIP: 0033:0x7fae49f19469
      [   15.286638] Code: 00 f3 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d ff 49 2b 00 f7 d8 64 89 01 48
      [   15.289295] RSP: 002b:00007fae4a609da8 EFLAGS: 00000246 ORIG_RAX: 000000000000002a
      [   15.290375] RAX: ffffffffffffffda RBX: 000000000049bf00 RCX: 00007fae49f19469
      [   15.291403] RDX: 0000000000000010 RSI: 00000000200000c0 RDI: 0000000000000005
      [   15.292437] RBP: 000000000049bf00 R08: 0000000000000000 R09: 0000000000000000
      [   15.293456] R10: 0000000000000000 R11: 0000000000000246 R12: 000000000049bf0c
      [   15.294473] R13: 00007fff0004b6bf R14: 00007fae4a5ea000 R15: 0000000000000003
      [   15.295492] Modules linked in:
      [   15.295944] CR2: 0000000000000048
      [   15.296567] Kernel Offset: disabled
      [   15.296941] ---[ end Kernel panic - not syncing: Fatal exception ]---
      Reported-by: default avatarChristoph Paasch <cpaasch@apple.com>
      Fixes: 84dfe367 (mptcp: send out dedicated ADD_ADDR packet)
      Signed-off-by: default avatarGeliang Tang <geliangtang@gmail.com>
      Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
      Link: https://lore.kernel.org/r/ccca4e8f01457a1b495c5d612ed16c5f7a585706.1608010058.git.geliangtang@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3ae32c07
    • Tobias Klauser's avatar
      devlink: use _BITUL() macro instead of BIT() in the UAPI header · 75f4d454
      Tobias Klauser authored
      The BIT() macro is not available for the UAPI headers. Moreover, it can
      be defined differently in user space headers. Thus, replace its usage
      with the _BITUL() macro which is already used in other macro definitions
      in <linux/devlink.h>.
      
      Fixes: dc64cc7c ("devlink: Add devlink reload limit option")
      Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
      Link: https://lore.kernel.org/r/20201215102531.16958-1-tklauser@distanz.chSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      75f4d454
  2. 16 Dec, 2020 23 commits
  3. 15 Dec, 2020 9 commits
    • Linus Torvalds's avatar
      Merge tag 'staging-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 3db1a3fa
      Linus Torvalds authored
      Pull staging / IIO driver updates from Greg KH:
       "Here is the big staging and IIO driver pull request for 5.11-rc1
      
        Lots of different things in here:
      
         - loads of driver updates
      
         - so many coding style cleanups
      
         - new IIO drivers
      
         - Android ION code is finally removed from the tree
      
         - wimax drivers are moved to staging on their way out of the kernel
      
        Nothing really exciting, just the constant grind of kernel development :)
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'staging-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (341 commits)
        staging: olpc_dcon: Do not call platform_device_unregister() in dcon_probe()
        staging: most: Fix spelling mistake "tranceiver" -> "transceiver"
        staging: qlge: remove duplicate word in comment
        staging: comedi: mf6x4: Fix AI end-of-conversion detection
        staging: greybus: Add TODO item about modernizing the pwm code
        pinctrl: ralink: add a pinctrl driver for the rt2880 family
        dt-bindings: pinctrl: rt2880: add binding document
        staging: rtl8723bs: remove ELEMENT_ID enum
        staging: rtl8723bs: remove unused macros
        staging: rtl8723bs: replace EID_EXTCapability
        staging: rtl8723bs: replace EID_BSSIntolerantChlReport
        staging: rtl8723bs: replace EID_BSSCoexistence
        staging: rtl8723bs: replace _MME_IE_
        staging: rtl8723bs: replace _WAPI_IE_
        staging: rtl8723bs: replace _EXT_SUPPORTEDRATES_IE_
        staging: rtl8723bs: replace _ERPINFO_IE_
        staging: rtl8723bs: replace _CHLGETXT_IE_
        staging: rtl8723bs: replace _COUNTRY_IE_
        staging: rtl8723bs: replace _IBSS_PARA_IE_
        staging: rtl8723bs: replace _TIM_IE_
        ...
      3db1a3fa
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 2911ed9f
      Linus Torvalds authored
      Pull char / misc driver updates from Greg KH:
       "Here is the big char/misc driver update for 5.11-rc1.
      
        Continuing the tradition of previous -rc1 pulls, there seems to be
        more and more tiny driver subsystems flowing through this tree.
      
        Lots of different things, all of which have been in linux-next for a
        while with no reported issues:
      
         - extcon driver updates
      
         - habannalab driver updates
      
         - mei driver updates
      
         - uio driver updates
      
         - binder fixes and features added
      
         - soundwire driver updates
      
         - mhi bus driver updates
      
         - phy driver updates
      
         - coresight driver updates
      
         - fpga driver updates
      
         - speakup driver updates
      
         - slimbus driver updates
      
         - various small char and misc driver updates"
      
      * tag 'char-misc-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (305 commits)
        extcon: max77693: Fix modalias string
        extcon: fsa9480: Support TI TSU6111 variant
        extcon: fsa9480: Rewrite bindings in YAML and extend
        dt-bindings: extcon: add binding for TUSB320
        extcon: Add driver for TI TUSB320
        slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew()
        siox: Make remove callback return void
        siox: Use bus_type functions for probe, remove and shutdown
        spmi: Add driver shutdown support
        spmi: fix some coding style issues at the spmi core
        spmi: get rid of a warning when built with W=1
        uio: uio_hv_generic: use devm_kzalloc() for private data alloc
        uio: uio_fsl_elbc_gpcm: use device-managed allocators
        uio: uio_aec: use devm_kzalloc() for uio_info object
        uio: uio_cif: use devm_kzalloc() for uio_info object
        uio: uio_netx: use devm_kzalloc() for or uio_info object
        uio: uio_mf624: use devm_kzalloc() for uio_info object
        uio: uio_sercos3: use device-managed functions for simple allocs
        uio: uio_dmem_genirq: finalize conversion of probe to devm_ handlers
        uio: uio_dmem_genirq: convert simple allocations to device-managed
        ...
      2911ed9f
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.11-rc1' of... · 7240153a
      Linus Torvalds authored
      Merge tag 'driver-core-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the big driver core updates for 5.11-rc1
      
        This time there was a lot of different work happening here for some
        reason:
      
         - redo of the fwnode link logic, speeding it up greatly
      
         - auxiliary bus added (this was a tag that will be pulled in from
           other trees/maintainers this merge window as well, as driver
           subsystems started to rely on it)
      
         - platform driver core cleanups on the way to fixing some long-time
           api updates in future releases
      
         - minor fixes and tweaks.
      
        All have been in linux-next with no (finally) reported issues. Testing
        there did helped in shaking issues out a lot :)"
      
      * tag 'driver-core-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (39 commits)
        driver core: platform: don't oops in platform_shutdown() on unbound devices
        ACPI: Use fwnode_init() to set up fwnode
        misc: pvpanic: Replace OF headers by mod_devicetable.h
        misc: pvpanic: Combine ACPI and platform drivers
        usb: host: sl811: Switch to use platform_get_mem_or_io()
        vfio: platform: Switch to use platform_get_mem_or_io()
        driver core: platform: Introduce platform_get_mem_or_io()
        dyndbg: fix use before null check
        soc: fix comment for freeing soc_dev_attr
        driver core: platform: use bus_type functions
        driver core: platform: change logic implementing platform_driver_probe
        driver core: platform: reorder functions
        driver core: make driver_probe_device() static
        driver core: Fix a couple of typos
        driver core: Reorder devices on successful probe
        driver core: Delete pointless parameter in fwnode_operations.add_links
        driver core: Refactor fw_devlink feature
        efi: Update implementation of add_links() to create fwnode links
        of: property: Update implementation of add_links() to create fwnode links
        driver core: Use device's fwnode to check if it is waiting for suppliers
        ...
      7240153a
    • Linus Torvalds's avatar
      Merge tag 'tty-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 157f8098
      Linus Torvalds authored
      Pull tty / serial updates from Greg KH:
       "Here is the "large" set of tty and serial patches for 5.11-rc1.
      
        Nothing major at all, some cleanups and some driver removals, always a
        nice sign:
      
         - build warning cleanups
      
         - vt locking and logic unwinding and cleanups
      
         - tiny serial driver fixes and updates
      
         - removal of the synclink serial driver as it's no longer needed
      
         - removal of dead termiox code
      
        All of this has been in linux-next for a while with no reported issues"
      
      * tag 'tty-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (89 commits)
        serial: 8250_pci: Drop bogus __refdata annotation
        tty: serial: meson: enable console as module
        serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access
        serial: imx: Move imx_uart_probe_dt() content into probe()
        serial: imx: Remove unneeded of_device_get_match_data() NULL check
        tty: Fix whitespace inconsistencies in vt_io_ioctl
        serial_core: Check for port state when tty is in error state
        dt-bindings: serial: Update DT binding docs to support SiFive FU740 SoC
        tty: use const parameters in port-flag accessors
        tty: use assign_bit() in port-flag accessors
        earlycon: drop semicolon from earlycon macro
        tty: Remove dead termiox code
        tty/serial/imx: Enable TXEN bit in imx_poll_init().
        tty : serial: jsm: Fixed file by adding spacing
        tty: serial: uartlite: Support probe deferral
        earlycon: simplify earlycon-table implementation
        tty: serial: bcm63xx: lower driver dependencies
        serial: mxs-auart: Remove unneeded platform_device_id
        serial: 8250-mtk: Fix reference leak in mtk8250_probe
        serial: imx: Remove unused .id_table support
        ...
      157f8098
    • Linus Torvalds's avatar
      Merge tag 'usb-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 0cee54c8
      Linus Torvalds authored
      Pull USB / Thunderbolt updates from Greg KH:
       "Here is the big USB and thunderbolt pull request for 5.11-rc1.
      
        Nothing major in here, just the grind of constant development to
        support new hardware and fix old issues:
      
         - thunderbolt updates for new USB4 hardware
      
         - cdns3 major driver updates
      
         - lots of typec updates and additions as more hardware is available
      
         - usb serial driver updates and fixes
      
         - other tiny USB driver updates
      
        All have been in linux-next with no reported issues"
      
      * tag 'usb-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (172 commits)
        usb: phy: convert comma to semicolon
        usb: ucsi: convert comma to semicolon
        usb: typec: tcpm: convert comma to semicolon
        usb: typec: tcpm: Update vbus_vsafe0v on init
        usb: typec: tcpci: Enable bleed discharge when auto discharge is enabled
        usb: typec: Add class for plug alt mode device
        USB: typec: tcpci: Add Bleed discharge to POWER_CONTROL definition
        USB: typec: tcpm: Add a 30ms room for tPSSourceOn in PR_SWAP
        USB: typec: tcpm: Fix PR_SWAP error handling
        USB: typec: tcpm: Hard Reset after not receiving a Request
        USB: gadget: f_fs: remove likely/unlikely
        usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus
        USB: gadget: f_midi: setup SuperSpeed Plus descriptors
        USB: gadget: f_acm: add support for SuperSpeed Plus
        USB: gadget: f_rndis: fix bitrate for SuperSpeed and above
        usb: typec: intel_pmc_mux: Configure cable generation value for USB4
        MAINTAINERS: Add myself as a reviewer for CADENCE USB3 DRD IP DRIVER
        usb: chipidea: ci_hdrc_imx: Use of_device_get_match_data()
        usb: chipidea: usbmisc_imx: Use of_device_get_match_data()
        usb: cdns3: fix NULL pointer dereference on no platform data
        ...
      0cee54c8
    • Linus Torvalds's avatar
      Merge tag 'sound-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · c367caf1
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "Lots of changes (slightly more code increase than usual) at this time,
        while most of code changes are ASoC driver-specific.
      
        Here are some highlights:
      
        Core:
      
         - The new auxiliary bus implementation for Intel DSP, which will be
           used by other drivers as well
      
         - Lots of ASoC core cleanups and refactoring
      
         - UBSAN and KCSAN fixes in rawmidi, sequencer and a few others
      
         - Compress-offload API enhancement for the pause during draining
      
        HD- and USB-audio:
      
         - Enhancements of the USB-audio implicit feedback support, including
           better full-duplex operations
      
         - Continued CA0132 improvements and fixes
      
         - A few new quirk entries, HDMI audio fixes
      
        ASoC:
      
         - Support for boot time selection of Intel DSP firmware, which should
           help distros/users testing new stuff more easily; the kconfig was
           moved to boot time option, too
      
         - Some basic DPCM support in audio graph card
      
         - Removal of old pre-DT Freescale drivers
      
         - Support for Allwinner H6 I2S, Analog Devices ADAU1372, Intel
           Alderlake-S, GMediatek MT8192, NXP i.MX HDMI and XCVR, Realtek
           RT715, Qualcomm SM8250 and simple GPIO based muxes"
      
      * tag 'sound-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (445 commits)
        ALSA: pcm: oss: Fix potential out-of-bounds shift
        ALSA: usb-audio: Fix potential out-of-bounds shift
        ALSA: hda/ca0132 - Add ZxR surround DAC setup.
        ALSA: hda/ca0132 - Add 8051 PLL write helper functions.
        ALSA: hda/hdmi: packet buffer index must be set before reading value
        ASoC: SOF: imx: update kernel-doc description
        ASoC: mediatek: mt8183: delete some unreachable code
        ASoC: mediatek: mt8183: add PM ops to machine drivers
        ASoC: topology: Fix wrong size check
        ASoC: topology: Add missing size check
        ASoC: SOF: Intel: hda: fix the condition passed to sof_dev_dbg_or_err
        ASoC: SOF: modify the SOF_DBG flags
        ASoC: SOF: Intel: hda: remove duplicated status dump
        ASoC: rt1015p: delay 300ms after SDB pulling high for calibration
        ASoC: rt1015p: move SDB control from trigger to DAPM
        ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control()
        ALSA: usb-audio: Fix control 'access overflow' errors from chmap
        ALSA: hda/hdmi: always print pin NIDs as hexadecimal
        ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button
        ALSA: hda/ca0132 - Remove now unnecessary DSP setup functions.
        ...
      c367caf1
    • Linus Torvalds's avatar
      Merge tag 'net-next-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · d635a69d
      Linus Torvalds authored
      Pull networking updates from Jakub Kicinski:
       "Core:
      
         - support "prefer busy polling" NAPI operation mode, where we defer
           softirq for some time expecting applications to periodically busy
           poll
      
         - AF_XDP: improve efficiency by more batching and hindering the
           adjacency cache prefetcher
      
         - af_packet: make packet_fanout.arr size configurable up to 64K
      
         - tcp: optimize TCP zero copy receive in presence of partial or
           unaligned reads making zero copy a performance win for much smaller
           messages
      
         - XDP: add bulk APIs for returning / freeing frames
      
         - sched: support fragmenting IP packets as they come out of conntrack
      
         - net: allow virtual netdevs to forward UDP L4 and fraglist GSO skbs
      
        BPF:
      
         - BPF switch from crude rlimit-based to memcg-based memory accounting
      
         - BPF type format information for kernel modules and related tracing
           enhancements
      
         - BPF implement task local storage for BPF LSM
      
         - allow the FENTRY/FEXIT/RAW_TP tracing programs to use
           bpf_sk_storage
      
        Protocols:
      
         - mptcp: improve multiple xmit streams support, memory accounting and
           many smaller improvements
      
         - TLS: support CHACHA20-POLY1305 cipher
      
         - seg6: add support for SRv6 End.DT4/DT6 behavior
      
         - sctp: Implement RFC 6951: UDP Encapsulation of SCTP
      
         - ppp_generic: add ability to bridge channels directly
      
         - bridge: Connectivity Fault Management (CFM) support as is defined
           in IEEE 802.1Q section 12.14.
      
        Drivers:
      
         - mlx5: make use of the new auxiliary bus to organize the driver
           internals
      
         - mlx5: more accurate port TX timestamping support
      
         - mlxsw:
            - improve the efficiency of offloaded next hop updates by using
              the new nexthop object API
            - support blackhole nexthops
            - support IEEE 802.1ad (Q-in-Q) bridging
      
         - rtw88: major bluetooth co-existance improvements
      
         - iwlwifi: support new 6 GHz frequency band
      
         - ath11k: Fast Initial Link Setup (FILS)
      
         - mt7915: dual band concurrent (DBDC) support
      
         - net: ipa: add basic support for IPA v4.5
      
        Refactor:
      
         - a few pieces of in_interrupt() cleanup work from Sebastian Andrzej
           Siewior
      
         - phy: add support for shared interrupts; get rid of multiple driver
           APIs and have the drivers write a full IRQ handler, slight growth
           of driver code should be compensated by the simpler API which also
           allows shared IRQs
      
         - add common code for handling netdev per-cpu counters
      
         - move TX packet re-allocation from Ethernet switch tag drivers to a
           central place
      
         - improve efficiency and rename nla_strlcpy
      
         - number of W=1 warning cleanups as we now catch those in a patchwork
           build bot
      
        Old code removal:
      
         - wan: delete the DLCI / SDLA drivers
      
         - wimax: move to staging
      
         - wifi: remove old WDS wifi bridging support"
      
      * tag 'net-next-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1922 commits)
        net: hns3: fix expression that is currently always true
        net: fix proc_fs init handling in af_packet and tls
        nfc: pn533: convert comma to semicolon
        af_vsock: Assign the vsock transport considering the vsock address flags
        af_vsock: Set VMADDR_FLAG_TO_HOST flag on the receive path
        vsock_addr: Check for supported flag values
        vm_sockets: Add VMADDR_FLAG_TO_HOST vsock flag
        vm_sockets: Add flags field in the vsock address data structure
        net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled
        tcp: Add logic to check for SYN w/ data in tcp_simple_retransmit
        net: mscc: ocelot: install MAC addresses in .ndo_set_rx_mode from process context
        nfc: s3fwrn5: Release the nfc firmware
        net: vxget: clean up sparse warnings
        mlxsw: spectrum_router: Use eXtended mezzanine to offload IPv4 router
        mlxsw: spectrum: Set KVH XLT cache mode for Spectrum2/3
        mlxsw: spectrum_router_xm: Introduce basic XM cache flushing
        mlxsw: reg: Add Router LPM Cache Enable Register
        mlxsw: reg: Add Router LPM Cache ML Delete Register
        mlxsw: spectrum_router_xm: Implement L-value tracking for M-index
        mlxsw: reg: Add XM Router M Table Register
        ...
      d635a69d
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · ac73e3dc
      Linus Torvalds authored
      Merge misc updates from Andrew Morton:
      
       - a few random little subsystems
      
       - almost all of the MM patches which are staged ahead of linux-next
         material. I'll trickle to post-linux-next work in as the dependents
         get merged up.
      
      Subsystems affected by this patch series: kthread, kbuild, ide, ntfs,
      ocfs2, arch, and mm (slab-generic, slab, slub, dax, debug, pagecache,
      gup, swap, shmem, memcg, pagemap, mremap, hmm, vmalloc, documentation,
      kasan, pagealloc, memory-failure, hugetlb, vmscan, z3fold, compaction,
      oom-kill, migration, cma, page-poison, userfaultfd, zswap, zsmalloc,
      uaccess, zram, and cleanups).
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (200 commits)
        mm: cleanup kstrto*() usage
        mm: fix fall-through warnings for Clang
        mm: slub: convert sysfs sprintf family to sysfs_emit/sysfs_emit_at
        mm: shmem: convert shmem_enabled_show to use sysfs_emit_at
        mm:backing-dev: use sysfs_emit in macro defining functions
        mm: huge_memory: convert remaining use of sprintf to sysfs_emit and neatening
        mm: use sysfs_emit for struct kobject * uses
        mm: fix kernel-doc markups
        zram: break the strict dependency from lzo
        zram: add stat to gather incompressible pages since zram set up
        zram: support page writeback
        mm/process_vm_access: remove redundant initialization of iov_r
        mm/zsmalloc.c: rework the list_add code in insert_zspage()
        mm/zswap: move to use crypto_acomp API for hardware acceleration
        mm/zswap: fix passing zero to 'PTR_ERR' warning
        mm/zswap: make struct kernel_param_ops definitions const
        userfaultfd/selftests: hint the test runner on required privilege
        userfaultfd/selftests: fix retval check for userfaultfd_open()
        userfaultfd/selftests: always dump something in modes
        userfaultfd: selftests: make __{s,u}64 format specifiers portable
        ...
      ac73e3dc
    • Alexey Dobriyan's avatar
      mm: cleanup kstrto*() usage · dfefd226
      Alexey Dobriyan authored
      Range checks can folded into proper conversion function.  kstrto*() exist
      for all arithmetic types.
      
      Link: https://lkml.kernel.org/r/20201122123759.GC92364@localhost.localdomainSigned-off-by: default avatarAlexey Dobriyan <adobriyan@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dfefd226