Skip to content
Permalink
Joseph-Hwang/B…
Switch branches/tags

Commits on Jan 21, 2022

  1. Bluetooth: btintel: surface Intel telemetry events through mgmt

    When receiving a HCI vendor event, the kernel checks if it is an
    Intel telemetry event. If yes, the event is sent to bluez user
    space through the mgmt socket.
    
    Signed-off-by: Joseph Hwang <josephsih@chromium.org>
    Reviewed-by: Archie Pusaka <apusaka@chromium.org>
    josephsih authored and intel-lab-lkp committed Jan 21, 2022
  2. Bluetooth: aosp: surface AOSP quality report through mgmt

    When receiving a HCI vendor event, the kernel checks if it is an
    AOSP bluetooth quality report. If yes, the event is sent to bluez
    user space through the mgmt socket.
    
    Signed-off-by: Joseph Hwang <josephsih@chromium.org>
    Reviewed-by: Archie Pusaka <apusaka@chromium.org>
    josephsih authored and intel-lab-lkp committed Jan 21, 2022

Commits on Jan 20, 2022

  1. Bluetooth: mgmt: Add MGMT Adv Monitor Device Found/Lost events

    This patch introduces two new MGMT events for notifying the bluetoothd
    whenever the controller starts/stops monitoring a device.
    
    Test performed:
    - Verified by logs that the MSFT Monitor Device is received from the
      controller and the bluetoothd is notified whenever the controller
      starts/stops monitoring a device.
    
    Signed-off-by: Manish Mandlik <mmandlik@google.com>
    Reviewed-by: Miao-chen Chou <mcchou@google.com>
    Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
    liveusr authored and Vudentz committed Jan 20, 2022
  2. Bluetooth: msft: Handle MSFT Monitor Device Event

    Whenever the controller starts/stops monitoring a bt device, it sends
    MSFT Monitor Device event. Add handler to read this vendor event.
    
    Test performed:
    - Verified by logs that the MSFT Monitor Device event is received from
      the controller whenever it starts/stops monitoring a device.
    
    Signed-off-by: Manish Mandlik <mmandlik@google.com>
    Reviewed-by: Miao-chen Chou <mcchou@google.com>
    Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
    liveusr authored and Vudentz committed Jan 20, 2022

Commits on Jan 14, 2022

  1. Bluetooth: fix null ptr deref on hci_sync_conn_complete_evt

    This event is just specified for SCO and eSCO link types.
    On the reception of a HCI_Synchronous_Connection_Complete for a BDADDR
    of an existing LE connection, LE link type and a status that triggers the
    second case of the packet processing a NULL pointer dereference happens,
    as conn->link is NULL.
    
    Signed-off-by: Soenke Huster <soenke.huster@eknoes.de>
    Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
    eknoes authored and Vudentz committed Jan 14, 2022

Commits on Jan 11, 2022

  1. Bluetooth: hci_sync: unlock on error in hci_inquiry_result_with_rssi_…

    …evt()
    
    Add unlocks to two error paths in hci_inquiry_result_with_rssi_evt().
    
    Fixes: fee6450 ("Bluetooth: hci_event: Use skb_pull_data when processing inquiry results")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
    error27 authored and Vudentz committed Jan 11, 2022

Commits on Jan 10, 2022

  1. Bluetooth: btmtksdio: clean up inconsistent error message in btmtksdi…

    …o_mtk_reg_read
    
    Have "..reg (%d)" to be consistent with the other similar error messages.
    
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    moore-bros authored and holtmann committed Jan 10, 2022
  2. Bluetooth: btmtksdio: move struct reg_read_cmd to common file

    move struct reg_read_cmd to btmtk.h to allow other mtk drivers refer to.
    
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    moore-bros authored and holtmann committed Jan 10, 2022
  3. Bluetooth: mt7921s: Enable SCO over I2S

    The driver has to issue the specific command to enable Bluetooth SCO over
    the I2S/PCM interface on mt7921s, that is supported since the firmware
    with version 20211222191101 was added, and the patch would not cause any
    harm even when the old firmware is applied.
    
    The SCO profile with the patch was tested by setting up a VOIP application,
    connected to HFP device, checked telephony function can work normally.
    
    Co-developed-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Mark Chen <mark-yw.chen@mediatek.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Mark Chen authored and holtmann committed Jan 10, 2022
  4. Bluetooth: mt7921s: Support wake on bluetooth

    Enable wake on bluetooth on mt7921s that can be supported since the
    firmware with version 20211129211059 was added, and the patch would
    not cause any harm even when the old firmware is applied.
    
    The patch was tested by setting up an HID or HOGP profile to connect a
    Bluetooth keyboard and mouse, then putting the system to suspend, then
    trying to wake up the system by moving the Bluetooth keyboard or mouse,
    and then checking if the system can wake up and be brought back to
    the normal state.
    
    Co-developed-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Mark Chen <mark-yw.chen@mediatek.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Mark Chen authored and holtmann committed Jan 10, 2022
  5. Bluetooth: btmtksdio: rename btsdio_mtk_reg_read

    Using "btmtksdio" as the prefix instead of "btsdio"
    
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    moore-bros authored and holtmann committed Jan 10, 2022
  6. Bluetooth: hci_sync: Fix compilation warning

    This fixes the following warning:
    
    net/bluetooth/hci_sync.c:5143:5: warning: no previous prototype for
    ‘hci_le_ext_create_conn_sync’ [-Wmissing-prototypes]
    
    Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Vudentz authored and holtmann committed Jan 10, 2022
  7. Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

    Merge in fixes directly in prep for the 5.17 merge window.
    No conflicts.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Jan 10, 2022
  8. tcp: tcp_send_challenge_ack delete useless param skb

    After this parameter is passed in, there is no usage, and deleting it will
     not bring any impact.
    
    Reviewed-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: Benjamin Yim <yan2228598786@gmail.com>
    Link: https://lore.kernel.org/r/20220109130824.2776-1-yan2228598786@gmail.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Benjamin-Yim authored and Jakub Kicinski committed Jan 10, 2022
  9. net/qla3xxx: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So, if dma_set_mask_and_coherent() succeeds, 'pci_using_dac' is known to be
    1.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/3011689e8c77d49d7e44509d5a8241320ec408c5.1641754134.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  10. rocker: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/9ba2d13099d216f3df83e50ad33a05504c90fe7c.1641744274.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  11. hinic: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/23541c28df8d0dcd3663b5dbe0f76af71e70e9cc.1641743855.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  12. lan743x: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/ef548716606f257939df9738a801f15b6edf2568.1641743405.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  13. net: enetc: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/dbecd4eb49a9586ee343b5473dda4b84c42112e9.1641742884.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  14. cxgb4vf: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So, if dma_set_mask_and_coherent() succeeds, 'pci_using_dac' is known to be
    1.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/b14986ea39cea2ca9a6cd0476a3fc167c853ee67.1641736772.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  15. cxgb4: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So, if dma_set_mask_and_coherent() succeeds, 'highdma' is known to be true.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/56db10d53be0897ff1be5f37d64b91cb7e1d932c.1641736387.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  16. cxgb3: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So, if dma_set_mask_and_coherent() succeeds, 'pci_using_dac' is known to be
    1.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/a0e2539aefb0034091aca02c98440ea9459f1258.1641736234.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  17. bnx2x: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    Moreover, dma_set_mask_and_coherent() returns 0 or -EIO, so the return
    code of the function can be used directly.
    
    Finally, inline bnx2x_set_coherency_mask() because it is now only a wrapper
    for a single dma_set_mask_and_coherent() call.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/29608a525876afddceabf8f11b2ba606da8748fc.1641730747.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  18. et131x: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    Moreover, dma_set_mask_and_coherent() returns 0 or -EIO, so the return
    code of the function can be used directly. There is no need to 'rc = -EIO'
    explicitly.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/b9aa46e7e5a5aa61f56aac5ea439930f41ad9946.1641726804.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  19. be2net: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So if dma_set_mask_and_coherent() succeeds, 'netdev->features' will have
    NETIF_F_HIGHDMA in all cases. Move the assignment of this feature in
    be_netdev_init() instead be_probe() which is a much logical place.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/637696d7141faa68c29fc34b70f9aa67d5e605f0.1641718999.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  20. vmxnet3: Remove useless DMA-32 fallback configuration

    As stated in [1], dma_set_mask() with a 64-bit mask never fails if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So if dma_set_mask_and_coherent() succeeds, 'dma64' is know to be 'true'.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/43e5dcf1a5e9e9c5d2d86f87810d6e93e3d22e32.1641718188.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  21. bna: Simplify DMA setting

    As stated in [1], dma_set_mask() with a 64-bit mask will never fail if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So, if dma_set_mask_and_coherent() succeeds, 'using_dac' is known to be
    'true'. This variable can be removed.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/1d5a7b3f4fa735f1233c3eb3fa07e71df95fad75.1641658516.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  22. net: alteon: Simplify DMA setting

    As stated in [1], dma_set_mask() with a 64-bit mask will never fail if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    If dma_set_mask_and_coherent() succeeds, 'ap->pci_using_dac' is known to be
    1. So 'pci_using_dac' can be removed from the 'struct ace_private'.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/1a414c05c27b21c661aef61dffe1adcd1578b1f5.1641651917.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  23. myri10ge: Simplify DMA setting

    As stated in [1], dma_set_mask() with a 64-bit mask will never fail if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    If dma_set_mask_and_coherent() succeeds, 'dac_enabled' is known to be 1.
    
    Simplify code and remove some dead code accordingly.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/e92b0c3a3c1574a97a4e6fd0c30225f10fa59d18.1641651693.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  24. qlcnic: Simplify DMA setting

    As stated in [1], dma_set_mask() with a 64-bit mask will never fail if
    dev->dma_mask is non-NULL.
    So, if it fails, the 32 bits case will also fail for the same reason.
    
    So qlcnic_set_dma_mask(), (in qlcnic_main.c) can be simplified a lot and
    inlined directly in its only caller.
    
    If dma_set_mask_and_coherent() succeeds, 'pci_using_dac' is known to be 1.
    So it can be removed from all the calling chain.
    
    qlcnic_setup_netdev() can finally be simplified as-well.
    
    [1]: https://lkml.org/lkml/2021/6/7/398
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Link: https://lore.kernel.org/r/4996ab0337d62ec6a54b2edf234cd5ced4b4d7ad.1641649611.git.christophe.jaillet@wanadoo.fr
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    tititiou36 authored and Jakub Kicinski committed Jan 10, 2022
  25. net: allwinner: Fix print format

    Kees reports quoted commit introduced the following warning on arm64:
    
    drivers/net/ethernet/allwinner/sun4i-emac.c:922:60: error: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'resource_size_t' {aka 'long long unsigned int'} [-Werror=format=]
      922 |         netdev_info(ndev, "get io resource from device: 0x%x, size = %u\n",
          |                                                           ~^
          |                                                            |                                      |                                                            unsigned int
          |                                                           %llx
      923 |                     regs->start, resource_size(regs));
          |                     ~~~~~~~~~~~
          |                         |
          |                         resource_size_t {aka long long unsigned int}
    
    .. and another one like that for resource_size().
    
    Switch to %pa and a cast.
    
    Reported-by: Kees Cook <keescook@chromium.org>
    Fixes: 47869e8 ("sun4i-emac.c: add dma support")
    Link: https://lore.kernel.org/r/20220108034438.2227343-1-kuba@kernel.org
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Jan 10, 2022
  26. page_pool: remove spinlock in page_pool_refill_alloc_cache()

    As page_pool_refill_alloc_cache() is only called by
    __page_pool_get_cached(), which assumes non-concurrent access
    as suggested by the comment in __page_pool_get_cached(), and
    ptr_ring allows concurrent access between consumer and producer,
    so remove the spinlock in page_pool_refill_alloc_cache().
    
    Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
    Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>
    Link: https://lore.kernel.org/r/20220107090042.13605-1-linyunsheng@huawei.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Yunsheng Lin authored and Jakub Kicinski committed Jan 10, 2022
  27. amt: fix wrong return type of amt_send_membership_update()

    amt_send_membership_update() would return -1 but it's return type is bool.
    So, it should be used TRUE instead of -1.
    
    Fixes: cbc21dc ("amt: add data plane of amt interface")
    Reported-by: kernel test robot <lkp@intel.com>
    Signed-off-by: Taehee Yoo <ap420073@gmail.com>
    Link: https://lore.kernel.org/r/20220109163702.6331-1-ap420073@gmail.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    TaeheeYoo authored and Jakub Kicinski committed Jan 10, 2022
  28. net: mcs7830: handle usb read errors properly

    Syzbot reported uninit value in mcs7830_bind(). The problem was in
    missing validation check for bytes read via usbnet_read_cmd().
    
    usbnet_read_cmd() internally calls usb_control_msg(), that returns
    number of bytes read. Code should validate that requested number of bytes
    was actually read.
    
    So, this patch adds missing size validation check inside
    mcs7830_get_reg() to prevent uninit value bugs
    
    Reported-and-tested-by: syzbot+003c0a286b9af5412510@syzkaller.appspotmail.com
    Fixes: 2a36d70 ("USB: driver for mcs7830 (aka DeLOCK) USB ethernet adapter")
    Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
    Reviewed-by: Arnd Bergmann <arnd@arndb.de>
    Link: https://lore.kernel.org/r/20220106225716.7425-1-paskripkin@gmail.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    pskrgag authored and Jakub Kicinski committed Jan 10, 2022
  29. Merge branch 'net-skb-introduce-kfree_skb_with_reason'

    Menglong Dong says:
    
    ====================
    net: skb: introduce kfree_skb_with_reason()
    
    In this series patch, the interface kfree_skb_with_reason() is
    introduced(), which is used to collect skb drop reason, and pass
    it to 'kfree_skb' tracepoint. Therefor, 'drop_monitor' or eBPF is
    able to monitor abnormal skb with detail reason.
    
    In fact, this series patches are out of the intelligence of David
    and Steve, I'm just a truck man :/
    
    Previous discussion is here:
    
    https://lore.kernel.org/netdev/20211118105752.1d46e990@gandalf.local.home/
    https://lore.kernel.org/netdev/67b36bd8-2477-88ac-83a0-35a1eeaf40c9@gmail.com/
    
    In the first patch, kfree_skb_with_reason() is introduced and
    the 'reason' field is added to 'kfree_skb' tracepoint. In the
    second patch, 'kfree_skb()' in replaced with 'kfree_skb_with_reason()'
    in tcp_v4_rcv(). In the third patch, 'kfree_skb_with_reason()' is
    used in __udp4_lib_rcv().
    
    Changes since v3:
    - fix some code style problems in skb.h
    
    Changes since v2:
    - rename kfree_skb_with_reason() to kfree_skb_reason()
    - make kfree_skb() static inline, as Jakub suggested
    
    Changes since v1:
    - rename some drop reason, as David suggested
    - add the third patch
    ====================
    
    Link: https://lore.kernel.org/r/20220109063628.526990-1-imagedong@tencent.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Jan 10, 2022
Older