)]}'
{
  "log": [
    {
      "commit": "6eaff86d3e064a03250ed9817ad97d72c4d48f7c",
      "tree": "01b593c80b8f8bd7d4690ae53145db337df67e10",
      "parents": [
        "a997157e42e3119b13c644549a3d8381a1d825d6",
        "fc458ed11a3f651eaccf111fc34611b063c5ac8a"
      ],
      "author": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:34 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:34 2022 +0200"
      },
      "message": "Merge branch \u0027dsa-cross-chip-notifier-cleanups\u0027\n\nVladimir Oltean says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nDSA cross-chip notifier cleanups\n\nThis patch set makes the following improvements:\n\n- Cross-chip notifiers pass a switch index, port index, sometimes tree\n  index, all as integers. Sometimes we need to recover the struct\n  dsa_port based on those integers. That recovery involves traversing a\n  list. By passing directly a pointer to the struct dsa_port we can\n  avoid that, and the indices passed previously can still be obtained\n  from the passed struct dsa_port.\n\n- Resetting VLAN filtering on a switch has explicit code to make it run\n  on a single switch, so it has no place to stay in the cross-chip\n  notifier code. Move it out.\n\n- Changing the MTU on a user port affects only that single port, yet the\n  code passes through the cross-chip notifier layer where all switches\n  are notified. Avoid that.\n\n- Other related cosmetic changes in the MTU changing procedure.\n\nApart from the slight improvement in performance given by\n(a) doing less work in cross-chip notifiers\n(b) emitting less cross-chip notifiers\nwe also end up with about 100 less lines of code.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20220415154626.345767-1-vladimir.oltean@nxp.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "fc458ed11a3f651eaccf111fc34611b063c5ac8a",
      "tree": "01b593c80b8f8bd7d4690ae53145db337df67e10",
      "parents": [
        "4a4c0169aa42b06aed22f20f72bdb5ecd3a5be15"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Fri Apr 15 18:46:26 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:31 2022 +0200"
      },
      "message": "net: dsa: don\u0027t emit targeted cross-chip notifiers for MTU change\n\nA cross-chip notifier with \"targeted_match\u003dtrue\" is one that matches\nonly the local port of the switch that emitted it. In other words,\npassing through the cross-chip notifier layer serves no purpose.\n\nEliminate this concept by calling directly ds-\u003eops-\u003eport_change_mtu\ninstead of emitting a targeted cross-chip notifier. This leaves the\nDSA_NOTIFIER_MTU event being emitted only for MTU updates on the CPU\nport, which need to be reflected also across all DSA links.\n\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "4a4c0169aa42b06aed22f20f72bdb5ecd3a5be15",
      "tree": "890d6d8dd1db1e673f399567bdeb1f79ecf9fdeb",
      "parents": [
        "88abd89c9e1520c3a98ccbc4cc69779ffbad12de"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Fri Apr 15 18:46:25 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:31 2022 +0200"
      },
      "message": "net: dsa: drop dsa_slave_priv from dsa_slave_change_mtu\n\nWe can get a hold of the \"ds\" pointer directly from \"dp\", no need for\nthe dsa_slave_priv.\n\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "88abd89c9e1520c3a98ccbc4cc69779ffbad12de",
      "tree": "99707474fa08ab53b1979564d1795e04b6f52fbd",
      "parents": [
        "0a218c7b7fa3628bead8f78900131f4ef4f784b2"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Fri Apr 15 18:46:24 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:31 2022 +0200"
      },
      "message": "net: dsa: avoid one dsa_to_port() in dsa_slave_change_mtu\n\nWe could retrieve the cpu_dp pointer directly from the \"dp\" we already\nhave, no need to resort to dsa_to_port(ds, port).\n\nThis change also removes the need for an \"int port\", so that is also\ndeleted.\n\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "0a218c7b7fa3628bead8f78900131f4ef4f784b2",
      "tree": "19410f8b916d8ee9c30cbf7fb93f56e10049d5ea",
      "parents": [
        "5990a4774b53e53f42b07e28574bbda6ff144ac2"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Fri Apr 15 18:46:23 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:31 2022 +0200"
      },
      "message": "net: dsa: use dsa_tree_for_each_user_port in dsa_slave_change_mtu\n\nUse the more conventional iterator over user ports instead of explicitly\nignoring them, and use the more conventional name \"other_dp\" instead of\n\"dp_iter\", for readability.\n\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "5990a4774b53e53f42b07e28574bbda6ff144ac2",
      "tree": "6552b8930ad733c6d3ab3c1884fb58b4d9931436",
      "parents": [
        "a51a7f1fbf8e06aab41d5a8460925586bbbfdf2e"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Fri Apr 15 18:46:22 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:30 2022 +0200"
      },
      "message": "net: dsa: make cross-chip notifiers more efficient for host events\n\nTo determine whether a given port should react to the port targeted by\nthe notifier, dsa_port_host_vlan_match() and dsa_port_host_address_match()\nlook at the positioning of the switch port currently executing the\nnotifier relative to the switch port for which the notifier was emitted.\n\nTo maintain stylistic compatibility with the other match functions from\nswitch.c, the host address and host VLAN match functions take the\nnotifier information about targeted port, switch and tree indices as\nargument. However, these functions only use that information to retrieve\nthe struct dsa_port *targeted_dp, which is an invariant for the outer\nloop that calls them. So it makes more sense to calculate the targeted\ndp only once, and pass it to them as argument.\n\nBut furthermore, the targeted dp is actually known at the time the call\nto dsa_port_notify() is made. It is just that we decide to only save the\nindices of the port, switch and tree in the notifier structure, just to\nretrace our steps and find the dp again using dsa_switch_find() and\ndsa_to_port().\n\nBut both the above functions are relatively expensive, since they need\nto iterate through lists. It appears more straightforward to make all\nnotifiers just pass the targeted dp inside their info structure, and\nhave the code that needs the indices to look at info-\u003edp-\u003eindex instead\nof info-\u003eport, or info-\u003edp-\u003eds-\u003eindex instead of info-\u003esw_index, or\ninfo-\u003edp-\u003eds-\u003edst-\u003eindex instead of info-\u003etree_index.\n\nFor the sake of consistency, all cross-chip notifiers are converted to\npass the \"dp\" directly.\n\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "a51a7f1fbf8e06aab41d5a8460925586bbbfdf2e",
      "tree": "cbe63be72de16702586a4cab6c8da034dd8677b2",
      "parents": [
        "a997157e42e3119b13c644549a3d8381a1d825d6"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Fri Apr 15 18:46:21 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Tue Apr 19 11:31:30 2022 +0200"
      },
      "message": "net: dsa: move reset of VLAN filtering to dsa_port_switchdev_unsync_attrs\n\nIn dsa_port_switchdev_unsync_attrs() there is a comment that resetting\nthe VLAN filtering isn\u0027t done where it is expected. And since commit\n108dc8741c20 (\"net: dsa: Avoid cross-chip syncing of VLAN filtering\"),\nthere is no reason to handle this in switch.c either.\n\nTherefore, move the logic to port.c, and adapt it slightly to the data\nstructures and naming conventions from there.\n\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "a997157e42e3119b13c644549a3d8381a1d825d6",
      "tree": "cbf952d2fb3c3fb3582f3be03e58f45c8a3db30e",
      "parents": [
        "2a38de067bace34e7315ce6af027fd785c31fe0f"
      ],
      "author": {
        "name": "Luiz Angelo Daros de Luca",
        "email": "luizluca@gmail.com",
        "time": "Sat Apr 16 02:27:37 2022 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 13:29:02 2022 +0100"
      },
      "message": "docs: net: dsa: describe issues with checksum offload\n\nDSA tags before IP header (categories 1 and 2) or after the payload (3)\nmight introduce offload checksum issues.\n\nSigned-off-by: Luiz Angelo Daros de Luca \u003cluizluca@gmail.com\u003e\nReviewed-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nReviewed-by: Florian Fainelli \u003cf.fainelli@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a38de067bace34e7315ce6af027fd785c31fe0f",
      "tree": "0bd735c74d24f88a40dbd6409f78fc73d92682ab",
      "parents": [
        "843f77407eebee07c2a3300df0c4b33f64322e29",
        "e1fad9517f0fddfbe7da5605f50c362242cc7170"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "Merge branch \u0027mlxsw-line-card\u0027\n\nIdo Schimmel says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nmlxsw: Introduce line card support for modular switch\n\nJiri says:\n\nThis patchset introduces support for modular switch systems and also\nintroduces mlxsw support for NVIDIA Mellanox SN4800 modular switch.\nIt contains 8 slots to accommodate line cards - replaceable PHY modules\nwhich may contain gearboxes.\nCurrently supported line card:\n16X 100GbE (QSFP28)\nOther line cards that are going to be supported:\n8X 200GbE (QSFP56)\n4X 400GbE (QSFP-DD)\nThere may be other types of line cards added in the future.\n\nTo be consistent with the port split configuration (splitter cabels),\nthe line card entities are treated in the similar way. The nature of\na line card is not \"a pluggable device\", but \"a pluggable PHY module\".\n\nA concept of \"provisioning\" is introduced. The user may \"provision\"\ncertain slot with a line card type. Driver then creates all instances\n(devlink ports, netdevices, etc) related to this line card type. It does\nnot matter if the line card is plugged-in at the time. User is able to\nconfigure netdevices, devlink ports, setup port splitters, etc. From the\nperspective of the switch ASIC, all is present and can be configured.\n\nThe carrier of netdevices stays down if the line card is not plugged-in.\nOnce the line card is inserted and activated, the carrier of\nthe related netdevices is then reflecting the physical line state,\nsame as for an ordinary fixed port.\n\nOnce user does not want to use the line card related instances\nanymore, he can \"unprovision\" the slot. Driver then removes the\ninstances.\n\nPatches 1-4 are extending devlink driver API and UAPI in order to\nregister, show, dump, provision and activate the line card.\nPatches 5-17 are implementing the introduced API in mlxsw.\nThe last patch adds a selftest for mlxsw line cards.\n\nExample:\n$ devlink port # No ports are listed\n$ devlink lc\npci/0000:01:00.0:\n  lc 1 state unprovisioned\n    supported_types:\n       16x100G\n  lc 2 state unprovisioned\n    supported_types:\n       16x100G\n  lc 3 state unprovisioned\n    supported_types:\n       16x100G\n  lc 4 state unprovisioned\n    supported_types:\n       16x100G\n  lc 5 state unprovisioned\n    supported_types:\n       16x100G\n  lc 6 state unprovisioned\n    supported_types:\n       16x100G\n  lc 7 state unprovisioned\n    supported_types:\n       16x100G\n  lc 8 state unprovisioned\n    supported_types:\n       16x100G\n\nNote that driver exposes list supported line card types. Currently\nthere is only one: \"16x100G\".\n\nTo provision the slot #8:\n\n$ devlink lc set pci/0000:01:00.0 lc 8 type 16x100G\n$ devlink lc show pci/0000:01:00.0 lc 8\npci/0000:01:00.0:\n  lc 8 state active type 16x100G\n    supported_types:\n       16x100G\n$ devlink port\npci/0000:01:00.0/0: type notset flavour cpu port 0 splittable false\npci/0000:01:00.0/53: type eth netdev enp1s0nl8p1 flavour physical lc 8 port 1 splittable true lanes 4\npci/0000:01:00.0/54: type eth netdev enp1s0nl8p2 flavour physical lc 8 port 2 splittable true lanes 4\npci/0000:01:00.0/55: type eth netdev enp1s0nl8p3 flavour physical lc 8 port 3 splittable true lanes 4\npci/0000:01:00.0/56: type eth netdev enp1s0nl8p4 flavour physical lc 8 port 4 splittable true lanes 4\npci/0000:01:00.0/57: type eth netdev enp1s0nl8p5 flavour physical lc 8 port 5 splittable true lanes 4\npci/0000:01:00.0/58: type eth netdev enp1s0nl8p6 flavour physical lc 8 port 6 splittable true lanes 4\npci/0000:01:00.0/59: type eth netdev enp1s0nl8p7 flavour physical lc 8 port 7 splittable true lanes 4\npci/0000:01:00.0/60: type eth netdev enp1s0nl8p8 flavour physical lc 8 port 8 splittable true lanes 4\npci/0000:01:00.0/61: type eth netdev enp1s0nl8p9 flavour physical lc 8 port 9 splittable true lanes 4\npci/0000:01:00.0/62: type eth netdev enp1s0nl8p10 flavour physical lc 8 port 10 splittable true lanes 4\npci/0000:01:00.0/63: type eth netdev enp1s0nl8p11 flavour physical lc 8 port 11 splittable true lanes 4\npci/0000:01:00.0/64: type eth netdev enp1s0nl8p12 flavour physical lc 8 port 12 splittable true lanes 4\npci/0000:01:00.0/125: type eth netdev enp1s0nl8p13 flavour physical lc 8 port 13 splittable true lanes 4\npci/0000:01:00.0/126: type eth netdev enp1s0nl8p14 flavour physical lc 8 port 14 splittable true lanes 4\npci/0000:01:00.0/127: type eth netdev enp1s0nl8p15 flavour physical lc 8 port 15 splittable true lanes 4\npci/0000:01:00.0/128: type eth netdev enp1s0nl8p16 flavour physical lc 8 port 16 splittable true lanes 4\n\nTo uprovision the slot #8:\n\n$ devlink lc set pci/0000:01:00.0 lc 8 notype\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1fad9517f0fddfbe7da5605f50c362242cc7170",
      "tree": "0bd735c74d24f88a40dbd6409f78fc73d92682ab",
      "parents": [
        "6445eef0f600b726da19b4d5885ebb25ba47f590"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:41 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "selftests: mlxsw: Introduce devlink line card provision/unprovision/activation tests\n\nIntroduce basic line card manipulation which consists of provisioning,\nunprovisioning and activation of a line card.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6445eef0f600b726da19b4d5885ebb25ba47f590",
      "tree": "f39f1c7670f50f7bc116f94f7550c5dc3323a72c",
      "parents": [
        "45bf3b7267e0264ff25f85ea46ba4628d39b69b4"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:40 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: spectrum: Add port to linecard mapping\n\nFor each port get slot_index using PMLP register. For ports residing\non a linecard, identify it with the linecard by setting mapping\nusing devlink_port_linecard_set() helper. Use linecard slot index for\nPMTDB register queries.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45bf3b7267e0264ff25f85ea46ba4628d39b69b4",
      "tree": "43affad4c3fabaf0939780a0eb5fdab30802edc4",
      "parents": [
        "ee7a70fa671b274aa7e34c66a6e9ab55acadc59a"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:39 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: core: Extend driver ops by remove selected ports op\n\nIn case of line card implementation, the core has to have a way to\nremove relevant ports manually. Extend the Spectrum driver ops by an op\nthat implements port removal of selected ports upon request.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee7a70fa671b274aa7e34c66a6e9ab55acadc59a",
      "tree": "8b66578ae74c32302b3499117854d352f2f6aed3",
      "parents": [
        "b217127e5e4ee0ecfce7c5f84cfe082238123bda"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:38 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: core_linecards: Implement line card activation process\n\nAllow to process events generated upon line card getting \"ready\" and\n\"active\".\n\nWhen DSDSC event with \"ready\" bit set is delivered, that means the\nline card is powered up. Use MDDC register to push the line card to\nactive state. Once FW is done with that, the DSDSC event with \"active\"\nbit set is delivered.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b217127e5e4ee0ecfce7c5f84cfe082238123bda",
      "tree": "06e7bfa0bf2bbb5337ce662b3b3d1e279fa464e4",
      "parents": [
        "5bade5aa4afc914dac9086500e0bfabec0d3ffbe"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:37 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: core_linecards: Add line card objects and implement provisioning\n\nIntroduce objects for line cards and an infrastructure around that.\nUse devlink_linecard_create/destroy() to register the line card with\ndevlink core. Implement provisioning ops with a list of supported\nline cards.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5bade5aa4afc914dac9086500e0bfabec0d3ffbe",
      "tree": "1517e7c03cd1797811f16c9c80a34b3ffed60b86",
      "parents": [
        "5290a8ff2e11e11d4f41369ec66c3bf7fc2f4a09"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:36 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: reg: Add Management Binary Code Transfer Register\n\nThe MBCT register allows to transfer binary INI codes from the host to\nthe management FW by transferring it by chunks of maximum 1KB.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5290a8ff2e11e11d4f41369ec66c3bf7fc2f4a09",
      "tree": "506856ba764ebb395720f7ad0089ef145f01423d",
      "parents": [
        "505f524dc66093a5db5ef2fea8153d5b449d260d"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:35 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: reg: Add Management DownStream Device Control Register\n\nThe MDDC register allows to control downstream devices and line cards.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "505f524dc66093a5db5ef2fea8153d5b449d260d",
      "tree": "092ef1e468015b9f9ca1138f8f73599cc5dedf5f",
      "parents": [
        "b0ec003e9a906431073628e7ecc70a84f0e54074"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:34 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: reg: Add Management DownStream Device Query Register\n\nThe MDDQ register allows to query the DownStream device properties.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0ec003e9a906431073628e7ecc70a84f0e54074",
      "tree": "9bcece8e52ab8f8580c426c3344fd062b259224e",
      "parents": [
        "adc6462376b1a22d486ab5f6e624ba9528a380da"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:33 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:19 2022 +0100"
      },
      "message": "mlxsw: spectrum: Introduce port mapping change event processing\n\nRegister PMLPE trap and process the port mapping changes delivered\nby it by creating related ports. Note that this happens after\nprovisioning. The INI of the linecard is processed and merged by FW.\nPMLPE is generated for each port. Process this mapping change.\n\nLayout of PMLPE is the same as layout of PMLP.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adc6462376b1a22d486ab5f6e624ba9528a380da",
      "tree": "897dc2104df9d1a01287aab84dc093fc874c7241",
      "parents": [
        "ebf0c53417319ff568d9b6238a60ba27395385f3"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:32 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "mlxsw: Narrow the critical section of devl_lock during ports creation/removal\n\nNo need to hold the lock for alloc and freecpu. So narrow the critical\nsection. Follow-up patch is going to benefit from this by adding more\ncode to the functions which will be out of the critical as well.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebf0c53417319ff568d9b6238a60ba27395385f3",
      "tree": "dfc00a06f73c8fbce391069745fc7e665c35b8c3",
      "parents": [
        "d3ad2d88209ff8c4ec6fbcf21be7f85104767cdd"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:31 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "mlxsw: reg: Add Ports Mapping Event Configuration Register\n\nThe PMECR register is used to enable/disable event triggering\nin case of local port mapping change.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3ad2d88209ff8c4ec6fbcf21be7f85104767cdd",
      "tree": "92705bd9fd4bc3eded8611135a6ed95fa610f692",
      "parents": [
        "bac62191a3d4dddc4dbfddb4187d4952380c29c7"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:30 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "mlxsw: spectrum: Allocate port mapping array of structs instead of pointers\n\nInstead of array of pointers to port mapping structures, allocate the\narray of structures directly.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bac62191a3d4dddc4dbfddb4187d4952380c29c7",
      "tree": "518735c450e6b0ddbf915dc131f25f5575080948",
      "parents": [
        "b837585985386e05478cb17868d23a6fa87c4f8d"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:29 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "mlxsw: spectrum: Allow lane to start from non-zero index\n\nSo far, the lane index always started from zero. That is not true for\nmodular systems with gearbox-equipped linecards. Loose the check so the\nlanes can start from non-zero index.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b837585985386e05478cb17868d23a6fa87c4f8d",
      "tree": "c14d4eff80b0ebbda5da6cde9151081be478346b",
      "parents": [
        "fc9f50d5b366cd9f35bdee22fe3f8d77833cb1d8"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:28 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "devlink: add port to line card relationship set\n\nIn order to properly inform user about relationship between port and\nline card, introduce a driver API to set line card for a port. Use this\ninformation to extend port devlink netlink message by line card index\nand also include the line card index into phys_port_name and by that\ninto a netdevice name.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc9f50d5b366cd9f35bdee22fe3f8d77833cb1d8",
      "tree": "4df5da71305573153fddd8e61dba55e3ab0a955f",
      "parents": [
        "fcdc8ce23a309c26a67fc613a741d9b21a248311"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:27 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "devlink: implement line card active state\n\nAllow driver to mark a line card as active. Expose this state to the\nuserspace over devlink netlink interface with proper notifications.\n\u0027active\u0027 state means that line card was plugged in after\nbeing provisioned.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fcdc8ce23a309c26a67fc613a741d9b21a248311",
      "tree": "e7d3446b2fbf5b68d156e7cf5c9ffbf58348528f",
      "parents": [
        "c246f9b5fd617fe487f8b6f18851703f468501d6"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:26 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "devlink: implement line card provisioning\n\nIn order to be able to configure all needed stuff on a port/netdevice\nof a line card without the line card being present, introduce line card\nprovisioning. Basically by setting a type, provisioning process will\nstart and driver is supposed to create a placeholder for instances\n(ports/netdevices) for a line card type.\n\nAllow the user to query the supported line card types over line card\nget command. Then implement two netlink command SET to allow user to\nset/unset the card type.\n\nOn the driver API side, add provision/unprovision ops and supported\ntypes array to be advertised. Upon provision op call, the driver should\ntake care of creating the instances for the particular line card type.\nIntroduce provision_set/clear() functions to be called by the driver\nonce the provisioning/unprovisioning is done on its side. These helpers\nare not to be called directly due to the async nature of provisioning.\n\nExample:\n$ devlink port # No ports are listed\n$ devlink lc\npci/0000:01:00.0:\n  lc 1 state unprovisioned\n    supported_types:\n       16x100G\n  lc 2 state unprovisioned\n    supported_types:\n       16x100G\n  lc 3 state unprovisioned\n    supported_types:\n       16x100G\n  lc 4 state unprovisioned\n    supported_types:\n       16x100G\n  lc 5 state unprovisioned\n    supported_types:\n       16x100G\n  lc 6 state unprovisioned\n    supported_types:\n       16x100G\n  lc 7 state unprovisioned\n    supported_types:\n       16x100G\n  lc 8 state unprovisioned\n    supported_types:\n       16x100G\n\n$ devlink lc set pci/0000:01:00.0 lc 8 type 16x100G\n$ devlink lc show pci/0000:01:00.0 lc 8\npci/0000:01:00.0:\n  lc 8 state active type 16x100G\n    supported_types:\n       16x100G\n$ devlink port\npci/0000:01:00.0/0: type notset flavour cpu port 0 splittable false\npci/0000:01:00.0/53: type eth netdev enp1s0nl8p1 flavour physical lc 8 port 1 splittable true lanes 4\npci/0000:01:00.0/54: type eth netdev enp1s0nl8p2 flavour physical lc 8 port 2 splittable true lanes 4\npci/0000:01:00.0/55: type eth netdev enp1s0nl8p3 flavour physical lc 8 port 3 splittable true lanes 4\npci/0000:01:00.0/56: type eth netdev enp1s0nl8p4 flavour physical lc 8 port 4 splittable true lanes 4\npci/0000:01:00.0/57: type eth netdev enp1s0nl8p5 flavour physical lc 8 port 5 splittable true lanes 4\npci/0000:01:00.0/58: type eth netdev enp1s0nl8p6 flavour physical lc 8 port 6 splittable true lanes 4\npci/0000:01:00.0/59: type eth netdev enp1s0nl8p7 flavour physical lc 8 port 7 splittable true lanes 4\npci/0000:01:00.0/60: type eth netdev enp1s0nl8p8 flavour physical lc 8 port 8 splittable true lanes 4\npci/0000:01:00.0/61: type eth netdev enp1s0nl8p9 flavour physical lc 8 port 9 splittable true lanes 4\npci/0000:01:00.0/62: type eth netdev enp1s0nl8p10 flavour physical lc 8 port 10 splittable true lanes 4\npci/0000:01:00.0/63: type eth netdev enp1s0nl8p11 flavour physical lc 8 port 11 splittable true lanes 4\npci/0000:01:00.0/64: type eth netdev enp1s0nl8p12 flavour physical lc 8 port 12 splittable true lanes 4\npci/0000:01:00.0/125: type eth netdev enp1s0nl8p13 flavour physical lc 8 port 13 splittable true lanes 4\npci/0000:01:00.0/126: type eth netdev enp1s0nl8p14 flavour physical lc 8 port 14 splittable true lanes 4\npci/0000:01:00.0/127: type eth netdev enp1s0nl8p15 flavour physical lc 8 port 15 splittable true lanes 4\npci/0000:01:00.0/128: type eth netdev enp1s0nl8p16 flavour physical lc 8 port 16 splittable true lanes 4\n\n$ devlink lc set pci/0000:01:00.0 lc 8 notype\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c246f9b5fd617fe487f8b6f18851703f468501d6",
      "tree": "51c444fb385ea25a22977d26a38aef4cce288be9",
      "parents": [
        "843f77407eebee07c2a3300df0c4b33f64322e29"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@nvidia.com",
        "time": "Mon Apr 18 09:42:25 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 11:00:18 2022 +0100"
      },
      "message": "devlink: add support to create line card and expose to user\n\nExtend the devlink API so the driver is going to be able to create and\ndestroy linecard instances. There can be multiple line cards per devlink\ndevice. Expose this new type of object over devlink netlink API to the\nuserspace, with notifications.\n\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "843f77407eebee07c2a3300df0c4b33f64322e29",
      "tree": "90d7a5df0d50c275334fa252a132ab1d9e2a295f",
      "parents": [
        "53c33a16d0688fc20b38e00dbbc2cb2b695e7020"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 17 11:34:32 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 18 10:28:40 2022 +0100"
      },
      "message": "tcp: fix signed/unsigned comparison\n\nKernel test robot reported:\n\nsmatch warnings:\nnet/ipv4/tcp_input.c:5966 tcp_rcv_established() warn: unsigned \u0027reason\u0027 is never less than zero.\n\nI actually had one packetdrill failing because of this bug,\nand was about to send the fix :)\n\nv2: Andreas Schwab also pointed out that @reason needs to be negated\n    before we reach tcp_drop_reason()\n\nFixes: 4b506af9c5b8 (\"tcp: add two drop reasons for tcp_ack()\")\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nReported-by: kernel test robot \u003clkp@intel.com\u003e\nReported-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "53c33a16d0688fc20b38e00dbbc2cb2b695e7020",
      "tree": "9637e207d74bee507d368e055e264ffc67c18399",
      "parents": [
        "7925c2d93005ac943bc8517e16f6377132fd251f",
        "8fbf195798b56e1e87f62d01be636a6425c304c2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:32 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:32 2022 +0100"
      },
      "message": "Merge branch \u0027tcp-drop-reason-additions\u0027\n\nEric Dumazet says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\ntcp: drop reason additions\n\nCurrently, TCP is either missing drop reasons,\nor pretending that some useful packets are dropped.\n\nThis patch series makes \"perf record -a -e skb:kfree_skb\"\nmuch more usable.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8fbf195798b56e1e87f62d01be636a6425c304c2",
      "tree": "9637e207d74bee507d368e055e264ffc67c18399",
      "parents": [
        "659affdb5140599f25418807c3354b060d4b1b88"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:48 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:32 2022 +0100"
      },
      "message": "tcp: add drop reason support to tcp_ofo_queue()\n\npackets in OFO queue might be redundant, and dropped.\n\ntcp_drop() is no longer needed.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "659affdb5140599f25418807c3354b060d4b1b88",
      "tree": "438b923abcfa89b76ec6d2b10ebb73a11a67721d",
      "parents": [
        "c337578a6592d671c5e78accc55f00cc594fe2da"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:47 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: add drop reasons to tcp_rcv_synsent_state_process()\n\nRe-use existing reasons.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c337578a6592d671c5e78accc55f00cc594fe2da",
      "tree": "5b5477b8b3659e334f411c02d952d7eb2255c109",
      "parents": [
        "e7c89ae4078eab24af71ba26b91642e819a4bd7f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:46 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: make tcp_rcv_synsent_state_process() drop monitor friend\n\n1) A valid RST packet should be consumed, to not confuse drop monitor.\n\n2) Same remark for packet validating cross syn setup,\n   even if we might ignore part of it.\n\n3) When third packet of 3WHS is delayed, do not pretend\n   the SYNACK was dropped.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e7c89ae4078eab24af71ba26b91642e819a4bd7f",
      "tree": "a5a20ce801fbc682082e6f0c241c473d278893f1",
      "parents": [
        "4b506af9c5b8de0da34097d50d9448dfb33d70c3"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:45 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: add drop reason support to tcp_prune_ofo_queue()\n\nAdd one reason for packets dropped from OFO queue because\nof memory pressure.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4b506af9c5b8de0da34097d50d9448dfb33d70c3",
      "tree": "85bf443d86dfce9485a99b41cb1ea5b96173d228",
      "parents": [
        "669da7a71890b2b2a31a7e9571c0fdf1123e26ef"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:44 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: add two drop reasons for tcp_ack()\n\nAdd TCP_TOO_OLD_ACK and TCP_ACK_UNSENT_DATA drop\nreasons so that tcp_rcv_established() can report\nthem.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "669da7a71890b2b2a31a7e9571c0fdf1123e26ef",
      "tree": "5f35d20410472111b4277590ac519d897e498c24",
      "parents": [
        "37fd4e842391a1b947789969ae8454f1596735c8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:43 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: add drop reasons to tcp_rcv_state_process()\n\nAdd basic support for drop reasons in tcp_rcv_state_process()\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "37fd4e842391a1b947789969ae8454f1596735c8",
      "tree": "27075eb516278f2fdfcbc327c452f28dd418135d",
      "parents": [
        "da40b613f89c43c58986e6f30560ad6573a4d569"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:42 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: make tcp_rcv_state_process() drop monitor friendly\n\ntcp_rcv_state_process() incorrectly drops packets\ninstead of consuming it, making drop monitor very noisy,\nif not unusable.\n\nCalling tcp_time_wait() or tcp_done() is part\nof standard behavior, packets triggering these actions\nwere not dropped.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da40b613f89c43c58986e6f30560ad6573a4d569",
      "tree": "a699f265917164364a0f3ba7cb33c4fc1c67199b",
      "parents": [
        "b5ec1e6205a1cb719ab188472f00ae81b0800f2e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:41 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: add drop reason support to tcp_validate_incoming()\n\nCreates four new drop reasons for the following cases:\n\n1) packet being rejected by RFC 7323 PAWS check\n2) packet being rejected by SEQUENCE check\n3) Invalid RST packet\n4) Invalid SYN packet\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b5ec1e6205a1cb719ab188472f00ae81b0800f2e",
      "tree": "a483a9bb89b43f60b98ff98e8502d5d95e9979b2",
      "parents": [
        "d9d024f96609016628d750ebc8ee4a6f0d80e6e1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:40 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: get rid of rst_seq_match\n\nSmall cleanup in tcp_validate_incoming(), no need for rst_seq_match\nsetting and testing.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d9d024f96609016628d750ebc8ee4a6f0d80e6e1",
      "tree": "f05c8eb9accd468f1815cb9d3d926481f71641f7",
      "parents": [
        "7925c2d93005ac943bc8517e16f6377132fd251f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 15 17:10:39 2022 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:31:31 2022 +0100"
      },
      "message": "tcp: consume incoming skb leading to a reset\n\nWhenever tcp_validate_incoming() handles a valid RST packet,\nwe should not pretend the packet was dropped.\n\nCreate a special section at the end of tcp_validate_incoming()\nto handle this case.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7925c2d93005ac943bc8517e16f6377132fd251f",
      "tree": "0a3bedbfaebcd8ed8c3f9dbe162381b752041aee",
      "parents": [
        "f9a2fb73318eb4dbf8cd84866b8b0dd012d8b116",
        "8d1af50842bf2774f4edc57054206e909117469b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:29 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:29 2022 +0100"
      },
      "message": "Merge branch \u0027qca8k_preiv-shrink\u0027\n\nAnsuel Smith says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nnet: Reduce qca8k_priv space usage\n\nThese 6 patch is a first attempt at reducting qca8k_priv space.\nThe code changed a lot during times and we have many old logic\nthat can be replaced with new implementation\n\nThe first patch drop the tracking of MTU. We mimic what was done\nfor mtk and we change MTU only when CPU port is changed.\n\nThe second patch finally drop a piece of story of this driver.\nThe ar8xxx_port_status struct was used by the first implementation\nof this driver to put all sort of status data for the port...\nWith the evolution of DSA all that stuff got dropped till only\nthe enabled state was the only part of the that struct.\nSince it\u0027s overkill to keep an array of int, we convert the variable\nto a simple u8 where we store the status of each port. This is needed\nto don\u0027t reanable ports on system resume.\n\nThe third patch is a preparation for patch 4. As Vladimir explained\nin another patch, we waste a tons of space by keeping a duplicate of\nthe switch dsa ops in qca8k_priv. The only reason for this is to\ndynamically set the correct mdiobus configuration (a legacy dsa one,\nor a custom dedicated one)\nTo solve this problem, we just drop the phy_read/phy_write and we\ndeclare a custom mdiobus in any case.\nThis way we can use a static dsa switch ops struct and we can drop it\nfrom qca8k_priv\n\nPatch 4 drop the duplicated dsa_switch_ops.\n\nPatch 5 is a fixup for mdio read error.\n\nPatch 6 is an effort to standardize how bus name are done.\n\nThis series is just a start of more cleanup.\n\nThe idea is to move this driver to the qca dir and split common code\nfrom specific code. Also the mgmt eth code still requires some love\nand can totally be optimized by recycling the same skb over time.\n\nAlso while working on the MTU it was notice some problem with\nthe stmmac driver and with the reloading phase that cause all\nsort of problems with qca8k.\n\nI\u0027m sending this here just to try to keep small series instead of\nproposing monster series hard to review.\n\nv2:\n- Rework MTU patch\nv3:\n- Drop unrealated changes from patch 3\n- Add fixup patch for mdio read\n- Unify bus name for legacy and OF mdio bus\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d1af50842bf2774f4edc57054206e909117469b",
      "tree": "0a3bedbfaebcd8ed8c3f9dbe162381b752041aee",
      "parents": [
        "6cfc03b602200c5cbbd8d906fd905547814e83df"
      ],
      "author": {
        "name": "Ansuel Smith",
        "email": "ansuelsmth@gmail.com",
        "time": "Sat Apr 16 01:30:17 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:29 2022 +0100"
      },
      "message": "net: dsa: qca8k: unify bus id naming with legacy and OF mdio bus\n\nAdd support for multiple switch with OF mdio bus declaration.\nUnify the bus id naming and use the same logic for both legacy and OF\nmdio bus.\n\nSigned-off-by: Ansuel Smith \u003cansuelsmth@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6cfc03b602200c5cbbd8d906fd905547814e83df",
      "tree": "8a45fac12abf4e4a890a36173bb7f874e3bc9493",
      "parents": [
        "2349b83a2486c55b9dd225326f0172a84a43c5e4"
      ],
      "author": {
        "name": "Ansuel Smith",
        "email": "ansuelsmth@gmail.com",
        "time": "Sat Apr 16 01:30:16 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:29 2022 +0100"
      },
      "message": "net: dsa: qca8k: correctly handle mdio read error\n\nRestore original way to handle mdio read error by returning 0xffff.\nThis was wrongly changed when the internal_mdio_read was introduced,\nnow that both legacy and internal use the same function, make sure that\nthey behave the same way.\n\nFixes: ce062a0adbfe (\"net: dsa: qca8k: fix kernel panic with legacy mdio mapping\")\nSigned-off-by: Ansuel Smith \u003cansuelsmth@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2349b83a2486c55b9dd225326f0172a84a43c5e4",
      "tree": "507b3b7bde984f23489961459e472089da91d52b",
      "parents": [
        "8255212e4130bd2dc1463286a3dddb74797bbdc1"
      ],
      "author": {
        "name": "Ansuel Smith",
        "email": "ansuelsmth@gmail.com",
        "time": "Sat Apr 16 01:30:15 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:29 2022 +0100"
      },
      "message": "net: dsa: qca8k: drop dsa_switch_ops from qca8k_priv\n\nNow that dsa_switch_ops is not switch specific anymore, we can drop it\nfrom qca8k_priv and use the static ops directly for the dsa_switch\npointer.\n\nSigned-off-by: Ansuel Smith \u003cansuelsmth@gmail.com\u003e\nReviewed-by: Vladimir Oltean \u003colteanv@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8255212e4130bd2dc1463286a3dddb74797bbdc1",
      "tree": "ff36033db046c360853f683fca0b0387a688114b",
      "parents": [
        "2b8fd87af7f156942971789abac8ee2bb60c03bc"
      ],
      "author": {
        "name": "Ansuel Smith",
        "email": "ansuelsmth@gmail.com",
        "time": "Sat Apr 16 01:30:14 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:28 2022 +0100"
      },
      "message": "net: dsa: qca8k: rework and simplify mdiobus logic\n\nIn an attempt to reduce qca8k_priv space, rework and simplify mdiobus\nlogic.\nWe now declare a mdiobus instead of relying on DSA phy_read/write even\nif a mdio node is not present. This is all to make the qca8k ops static\nand not switch specific. With a legacy implementation where port doesn\u0027t\nhave a phy map declared in the dts with a mdio node, we declare a\n\u0027qca8k-legacy\u0027 mdiobus. The conversion logic is used as legacy read and\nwrite ops are used instead of the internal one.\nAlso drop the legacy_phy_port_mapping as we now declare mdiobus with ops\nthat already address the workaround.\n\nSigned-off-by: Ansuel Smith \u003cansuelsmth@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b8fd87af7f156942971789abac8ee2bb60c03bc",
      "tree": "f2b1a5288e1165e23c361494be756ce60e9a91d7",
      "parents": [
        "69fd055957a02309ffdc23d887a01988b6e5bab1"
      ],
      "author": {
        "name": "Ansuel Smith",
        "email": "ansuelsmth@gmail.com",
        "time": "Sat Apr 16 01:30:13 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:28 2022 +0100"
      },
      "message": "net: dsa: qca8k: drop port_sts from qca8k_priv\n\nPort_sts is a thing of the past for this driver. It was something\npresent on the initial implementation of this driver and parts of the\noriginal struct were dropped over time. Using an array of int to store if\na port is enabled or not to handle PM operation seems overkill. Switch\nand use a simple u8 to store the port status where each bit correspond\nto a port. (bit is set port is enabled, bit is not set, port is disabled)\nAlso add some comments to better describe why we need to track port\nstatus.\n\nSigned-off-by: Ansuel Smith \u003cansuelsmth@gmail.com\u003e\nReviewed-by: Vladimir Oltean \u003colteanv@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69fd055957a02309ffdc23d887a01988b6e5bab1",
      "tree": "2d52c82c391d3d24d75f821ab37f7b12cc884577",
      "parents": [
        "f9a2fb73318eb4dbf8cd84866b8b0dd012d8b116"
      ],
      "author": {
        "name": "Ansuel Smith",
        "email": "ansuelsmth@gmail.com",
        "time": "Sat Apr 16 01:30:12 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:28:28 2022 +0100"
      },
      "message": "net: dsa: qca8k: drop MTU tracking from qca8k_priv\n\nDSA set the CPU port based on the largest MTU of all the slave ports.\nBased on this we can drop the MTU array from qca8k_priv and set the\nport_change_mtu logic on DSA changing MTU of the CPU port as the switch\nhave a global MTU settingfor each port.\n\nSigned-off-by: Ansuel Smith \u003cansuelsmth@gmail.com\u003e\nReviewed-by: Vladimir Oltean \u003colteanv@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9a2fb73318eb4dbf8cd84866b8b0dd012d8b116",
      "tree": "1441aad939fad8f1112d3bfb24eec862e472f0ee",
      "parents": [
        "0339d25a2807d913f5645b8d5e485640915f9702"
      ],
      "author": {
        "name": "Arun Ajith S",
        "email": "aajith@arista.com",
        "time": "Fri Apr 15 08:34:02 2022 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 13:23:49 2022 +0100"
      },
      "message": "net/ipv6: Introduce accept_unsolicited_na knob to implement router-side changes for RFC9131\n\nAdd a new neighbour cache entry in STALE state for routers on receiving\nan unsolicited (gratuitous) neighbour advertisement with\ntarget link-layer-address option specified.\nThis is similar to the arp_accept configuration for IPv4.\nA new sysctl endpoint is created to turn on this behaviour:\n/proc/sys/net/ipv6/conf/interface/accept_unsolicited_na.\n\nSigned-off-by: Arun Ajith S \u003caajith@arista.com\u003e\nReviewed-by: David Ahern \u003cdsahern@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0339d25a2807d913f5645b8d5e485640915f9702",
      "tree": "6557f6bc38136f7d8f3651132fef7ca414cd951a",
      "parents": [
        "c9a40d1c87e9b5c74b5ac73e81ed3d5be4d1b1af"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Wed Apr 13 13:56:53 2022 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:05:18 2022 -0700"
      },
      "message": "ipv6: fix NULL deref in ip6_rcv_core()\n\nidev can be NULL, as the surrounding code suggests.\n\nFixes: 4daf841a2ef3 (\"net: ipv6: add skb drop reasons to ip6_rcv_core()\")\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Menglong Dong \u003cimagedong@tencent.com\u003e\nCc: Jiang Biao \u003cbenbjiang@tencent.com\u003e\nCc: Hao Peng \u003cflyingpeng@tencent.com\u003e\nLink: https://lore.kernel.org/r/20220413205653.1178458-1-eric.dumazet@gmail.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "c9a40d1c87e9b5c74b5ac73e81ed3d5be4d1b1af",
      "tree": "90b7139ed70978a4185c7660abc39439259f8dd6",
      "parents": [
        "31248b5a354b6871afecb259690dd615de730ef0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Wed Apr 13 18:10:04 2022 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:04:56 2022 -0700"
      },
      "message": "net_sched: make qdisc_reset() smaller\n\nFor some unknown reason qdisc_reset() is using\na convoluted way of freeing two lists of skbs.\n\nUse __skb_queue_purge() instead.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nAcked-by: Jamal Hadi Salim \u003cjhs@mojatatu.com\u003e\nLink: https://lore.kernel.org/r/20220414011004.2378350-1-eric.dumazet@gmail.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "31248b5a354b6871afecb259690dd615de730ef0",
      "tree": "677940a18def1693264e997ea52b8671026eb9e3",
      "parents": [
        "a992005cc88bdb6628110b97afe8651baa87f1e3"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leonro@nvidia.com",
        "time": "Thu Apr 14 10:52:42 2022 +0300"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:04:14 2022 -0700"
      },
      "message": "octeon_ep: Remove custom driver version\n\nIn review comment [1] was pointed that new code is not supposed\nto set driver version and should rely on kernel version instead.\n\nAs an outcome of that comment all the dance around setting such\ndriver version to FW should be removed too, because in upstream\nkernel whole driver will have same version so read/write from/to\nFW will give same result.\n\n[1] https://lore.kernel.org/all/YladGTmon1x3dfxI@unreal\n\nFixes: 862cd659a6fb (\"octeon_ep: Add driver framework and device initialization\")\nSigned-off-by: Leon Romanovsky \u003cleonro@nvidia.com\u003e\nLink: https://lore.kernel.org/r/5d76f3116ee795071ec044eabb815d6c2bdc7dbd.1649922731.git.leonro@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "a992005cc88bdb6628110b97afe8651baa87f1e3",
      "tree": "05d01c69167837b133d302c539d284fc27d437bd",
      "parents": [
        "7b05c54226015807993a7d1bab0ba59d00e592ad",
        "93b1ebb348a94a04ae4bfbd028f89005090cf8c7"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:09 2022 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:11 2022 -0700"
      },
      "message": "Merge branch \u0027ibmvnic-use-a-set-of-ltbs-per-pool\u0027\n\nSukadev Bhattiprolu says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nibmvnic: Use a set of LTBs per pool\n\nibmvnic uses a single large long term buffer (LTB) per rx or tx\npool (queue). This has two limitations.\n\nFirst, if we need to free/allocate an LTB (eg during a reset), under\nlow memory conditions, the allocation can fail.\n\nSecond, the kernel limits the size of single LTB (DMA buffer) to 16MB\n(based on MAX_ORDER). With jumbo frames (mtu \u003d 9000) we can only have\nabout 1763 buffers per LTB (16MB / 9588 bytes per frame) even though\nthe max supported buffers is 4096. (The 9588 instead of 9088 comes from\nIBMVNIC_BUFFER_HLEN.)\n\nTo overcome these limitations, allow creating a set of LTBs per queue.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20220413171026.1264294-1-drt@linux.ibm.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "93b1ebb348a94a04ae4bfbd028f89005090cf8c7",
      "tree": "05d01c69167837b133d302c539d284fc27d437bd",
      "parents": [
        "a75de820575d54185a7569494e89f83dca49368e"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.ibm.com",
        "time": "Wed Apr 13 13:10:26 2022 -0400"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:06 2022 -0700"
      },
      "message": "ibmvnic: Allow multiple ltbs in txpool ltb_set\n\nAllow multiple LTBs in the txpool\u0027s ltb_set. i.e rather than using\na single large LTB, use several smaller LTBs.\n\nThe first n-1 LTBs will all be of the same size. The size of the last\nLTB in the set depends on the number of buffers and buffer (mtu) size.\nThis strategy hopefully allows more reuse of the initial LTBs and also\nreduces the chances of an allocation failure (of the large LTB) when\nsystem is low in memory.\n\nSuggested-by: Brian King \u003cbrking@linux.ibm.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.ibm.com\u003e\nSigned-off-by: Dany Madden \u003cdrt@linux.ibm.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "a75de820575d54185a7569494e89f83dca49368e",
      "tree": "a3f812b18cf2a68055b9915ec40e294e44d3d38e",
      "parents": [
        "d6b458509035db32b935f15922b530373fb6d27e"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.ibm.com",
        "time": "Wed Apr 13 13:10:25 2022 -0400"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:05 2022 -0700"
      },
      "message": "ibmvnic: Allow multiple ltbs in rxpool ltb_set\n\nAllow multiple LTBs in the rxpool\u0027s ltb_set. The first n-1 LTBs will all\nbe of the same size. The size of the last LTB in the set depends on the\nnumber of buffers and buffer (mtu) size.\n\nHaving a set of LTBs per pool provides a couple of benefits.\n\nFirst, with the current value of IBMVNIC_MAX_LTB_SIZE of 16MB, with an\nMTU of 9000, we need a LTB (DMA buffer) of that size but the allocation\ncan fail in low memory conditions. With a set of LTBs per pool, we can\nuse several smaller (8MB) LTBs and hopefully have fewer allocation\nfailures. (See also comments in ibmvnic.h on the trade-off with smaller\nLTBs)\n\nSecond since the kernel limits the size of the DMA buffer to 16MB (based\non MAX_ORDER), with a single DMA buffer per pool, the pool is also limited\nto 16MB. This in turn limits the number of buffers per pool to 1763 when\nMTU is 9000. With a set of LTBs per pool, we can have upto the max of 4096\nbuffers per pool even when MTU is 9000.\n\nSuggested-by: Brian King \u003cbrking@linux.ibm.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.ibm.com\u003e\nSigned-off-by: Dany Madden \u003cdrt@linux.ibm.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "d6b458509035db32b935f15922b530373fb6d27e",
      "tree": "e063394ef8c647449e64cf98c273e7d955e58141",
      "parents": [
        "0c91bf9ceba6296892010a48c5eef0bd17ec35d5"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.ibm.com",
        "time": "Wed Apr 13 13:10:24 2022 -0400"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:05 2022 -0700"
      },
      "message": "ibmvnic: convert rxpool ltb to a set of ltbs\n\nDefine and use interfaces that treat the long term buffer (LTB) of an\nrxpool as a set of LTBs rather than a single LTB. The set only has one\nLTB for now.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.ibm.com\u003e\nSigned-off-by: Dany Madden \u003cdrt@linux.ibm.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "0c91bf9ceba6296892010a48c5eef0bd17ec35d5",
      "tree": "634853ef1804abbe40e68deeb94a529480d3ad23",
      "parents": [
        "2872a67c6bcfbd996fda08ea0a8119be230f428e"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.ibm.com",
        "time": "Wed Apr 13 13:10:23 2022 -0400"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:04 2022 -0700"
      },
      "message": "ibmvnic: define map_txpool_buf_to_ltb()\n\nDefine a helper to map a given txpool buffer into its corresponding long\nterm buffer (LTB) and offset. Currently there is just one LTB per txpool\nso the mapping is trivial. When we add support for multiple LTBs per\ntxpool, this helper will be more useful.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.ibm.com\u003e\nSigned-off-by: Dany Madden \u003cdrt@linux.ibm.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "2872a67c6bcfbd996fda08ea0a8119be230f428e",
      "tree": "e081fe69dfc57040e2a687d791679e96ca533ae1",
      "parents": [
        "8880fc669deda4fafde3ce90b3128f079567447f"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.ibm.com",
        "time": "Wed Apr 13 13:10:22 2022 -0400"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:04 2022 -0700"
      },
      "message": "ibmvnic: define map_rxpool_buf_to_ltb()\n\nDefine a helper to map a given rx pool buffer into its corresponding long\nterm buffer (LTB) and offset. Currently there is just one LTB per pool so\nthe mapping is trivial. When we add support for multiple LTBs per pool,\nthis helper will be more useful.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.ibm.com\u003e\nSigned-off-by: Dany Madden \u003cdrt@linux.ibm.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "8880fc669deda4fafde3ce90b3128f079567447f",
      "tree": "a5f7295f1da943f0cef819266a5f70887eabfca0",
      "parents": [
        "7b05c54226015807993a7d1bab0ba59d00e592ad"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.ibm.com",
        "time": "Wed Apr 13 13:10:21 2022 -0400"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 14:02:03 2022 -0700"
      },
      "message": "ibmvnic: rename local variable index to bufidx\n\nThe local variable \u0027index\u0027 is heavily used in some functions and is\nconfusing with the presence of other \"index\" fields like pool-\u003eindex,\n-\u003econsumer_index, etc. Rename it to bufidx to better reflect that its\nthe index of a buffer in the pool.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.ibm.com\u003e\nSigned-off-by: Dany Madden \u003cdrt@linux.ibm.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "7b05c54226015807993a7d1bab0ba59d00e592ad",
      "tree": "00081ea02390cf29fc0e12f9ed3ee1fc9e444caa",
      "parents": [
        "0a03f3c511f57da4d7159a150f1ab4b87f62c040",
        "1f702c1643f2f9657f9dd03085b309ab9a1de1d7"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 11:41:56 2022 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 11:41:57 2022 -0700"
      },
      "message": "Merge branch \u0027net-ethool-add-support-to-get-set-tx-push-by-ethtool-g-g\u0027\n\nJie Wang says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nnet: ethool: add support to get/set tx push by ethtool -G/g\n\nThese three patches add tx push in ring params and adapt the set and get APIs\nof ring params.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20220412020121.14140-1-huangguangbin2@huawei.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "1f702c1643f2f9657f9dd03085b309ab9a1de1d7",
      "tree": "00081ea02390cf29fc0e12f9ed3ee1fc9e444caa",
      "parents": [
        "bde292c07b480e23137060dad83cca24d55c4cc4"
      ],
      "author": {
        "name": "Jie Wang",
        "email": "wangjie125@huawei.com",
        "time": "Tue Apr 12 10:01:21 2022 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 11:41:51 2022 -0700"
      },
      "message": "net: hns3: add tx push support in hns3 ring param process\n\nThis patch adds tx push param to hns3 ring param and adapts the set and get\nAPI of ring params. So users can set it by cmd ethtool -G and get it by cmd\nethtool -g.\n\nSigned-off-by: Jie Wang \u003cwangjie125@huawei.com\u003e\nSigned-off-by: Guangbin Huang \u003chuangguangbin2@huawei.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "bde292c07b480e23137060dad83cca24d55c4cc4",
      "tree": "5106c0fc4f46524cfc3d69f19c991ff4dad3de50",
      "parents": [
        "4dc84c06a343fcb95fd5a0acb537aefa4ebdd1b0"
      ],
      "author": {
        "name": "Jie Wang",
        "email": "wangjie125@huawei.com",
        "time": "Tue Apr 12 10:01:20 2022 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 11:41:45 2022 -0700"
      },
      "message": "net: ethtool: move checks before rtnl_lock() in ethnl_set_rings\n\nCurrently these two checks in ethnl_set_rings are added after rtnl_lock()\nwhich will do useless works if the request is invalid.\n\nSo this patch moves these checks before the rtnl_lock() to avoid these\ncosts.\n\nSigned-off-by: Jie Wang \u003cwangjie125@huawei.com\u003e\nSigned-off-by: Guangbin Huang \u003chuangguangbin2@huawei.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "4dc84c06a343fcb95fd5a0acb537aefa4ebdd1b0",
      "tree": "1d4d2df174abd6f963ed1fb7a082e56e5725aded",
      "parents": [
        "0a03f3c511f57da4d7159a150f1ab4b87f62c040"
      ],
      "author": {
        "name": "Jie Wang",
        "email": "wangjie125@huawei.com",
        "time": "Tue Apr 12 10:01:19 2022 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Fri Apr 15 11:41:35 2022 -0700"
      },
      "message": "net: ethtool: extend ringparam set/get APIs for tx_push\n\nCurrently tx push is a standard driver feature which controls use of a fast\npath descriptor push. So this patch extends the ringparam APIs and data\nstructures to support set/get tx push by ethtool -G/g.\n\nSigned-off-by: Jie Wang \u003cwangjie125@huawei.com\u003e\nSigned-off-by: Guangbin Huang \u003chuangguangbin2@huawei.com\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "0a03f3c511f57da4d7159a150f1ab4b87f62c040",
      "tree": "ed307988cf6abbc63d22f4e176c5fb9f778b7639",
      "parents": [
        "48b48b654c2213e102aa939c15cadb5a5172d100"
      ],
      "author": {
        "name": "Yang Yingliang",
        "email": "yangyingliang@huawei.com",
        "time": "Fri Apr 15 10:39:57 2022 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:49:20 2022 +0100"
      },
      "message": "octeon_ep: fix error return code in octep_probe()\n\nIf register_netdev() fails , it should return error\ncode in octep_probe().\n\nFixes: 862cd659a6fb (\"octeon_ep: Add driver framework and device initialization\")\nReported-by: Hulk Robot \u003chulkci@huawei.com\u003e\nSigned-off-by: Yang Yingliang \u003cyangyingliang@huawei.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "48b48b654c2213e102aa939c15cadb5a5172d100",
      "tree": "dcdd2bc5aed3c52572c6875243cefd6a0bb473a0",
      "parents": [
        "81669e7c6ca44746d869925f337d9bbb0a252fc1",
        "7240bf6fb216e03fb9add3a3dd23117ad589a0c7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:46:29 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:46:29 2022 +0100"
      },
      "message": "Merge branch \u0027emaclite-cleanups\u0027\n\nRadhey Shyam Pandey says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nnet: emaclite: Trivial code cleanup\n\nThis patchset fix coding style issues, remove BUFFER_ALIGN\nmacro and also update copyright text.\n\nI have to resend as earlier series didn\u0027t reach mailing list\ndue to some configuration issue.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7240bf6fb216e03fb9add3a3dd23117ad589a0c7",
      "tree": "dcdd2bc5aed3c52572c6875243cefd6a0bb473a0",
      "parents": [
        "7ae7d494f626a2f1a598fcf15b789a347c2d451a"
      ],
      "author": {
        "name": "Shravya Kumbham",
        "email": "shravya.kumbham@xilinx.com",
        "time": "Thu Apr 14 18:07:11 2022 +0530"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:46:29 2022 +0100"
      },
      "message": "net: emaclite: Remove custom BUFFER_ALIGN macro\n\nBUFFER_ALIGN macro is used to calculate the number of bytes\nrequired for the next alignment. Instead of this, we can directly\nuse the skb_reserve(skb, NET_IP_ALIGN) to make the protocol header\nbuffer aligned on at least a 4-byte boundary, where the NET_IP_ALIGN\nis by default defined as 2. So removing the BUFFER_ALIGN and its\nrelated defines which it can be done by the skb_reserve() itself.\n\nSigned-off-by: Shravya Kumbham \u003cshravya.kumbham@xilinx.com\u003e\nSigned-off-by: Radhey Shyam Pandey \u003cradhey.shyam.pandey@xilinx.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ae7d494f626a2f1a598fcf15b789a347c2d451a",
      "tree": "1e543d29fafed62dcb4c57fc5565b6f4625a408f",
      "parents": [
        "945e659dffad2d2e11a105c477d423cb1b5edd95"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "michal.simek@xilinx.com",
        "time": "Thu Apr 14 18:07:10 2022 +0530"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:46:29 2022 +0100"
      },
      "message": "net: emaclite: Update copyright text to correct format\n\nBased on recommended guidance Copyright term should be also present in\nfront of (c). That\u0027s why aligned driver to match this pattern.\nIt helps automated tools with source code scanning.\n\nSigned-off-by: Michal Simek \u003cmichal.simek@xilinx.com\u003e\nSigned-off-by: Radhey Shyam Pandey \u003cradhey.shyam.pandey@xilinx.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "945e659dffad2d2e11a105c477d423cb1b5edd95",
      "tree": "3dc662d76f810df89a11bc487727e117aba77acb",
      "parents": [
        "81669e7c6ca44746d869925f337d9bbb0a252fc1"
      ],
      "author": {
        "name": "Radhey Shyam Pandey",
        "email": "radhey.shyam.pandey@xilinx.com",
        "time": "Thu Apr 14 18:07:09 2022 +0530"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:46:29 2022 +0100"
      },
      "message": "net: emaclite: Fix coding style\n\nMake coding style changes to fix checkpatch script warnings.\nThere is no functional change. Fixes below check and warnings-\n\nCHECK: Blank lines aren\u0027t necessary after an open brace \u0027{\u0027\nCHECK: spinlock_t definition without comment\nCHECK: Please don\u0027t use multiple blank lines\nWARNING: Prefer \u0027unsigned int\u0027 to bare use of \u0027unsigned\u0027\nCHECK: braces {} should be used on all arms of this statement\nCHECK: Unbalanced braces around else statement\nCHECK: Alignment should match open parenthesis\nWARNING: Missing a blank line after declarations\n\nSigned-off-by: Radhey Shyam Pandey \u003cradhey.shyam.pandey@xilinx.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81669e7c6ca44746d869925f337d9bbb0a252fc1",
      "tree": "c424db7a808794bdf415d281912596ea7878f882",
      "parents": [
        "bb578430d05b8b9114195ef2c25284374fdf9549"
      ],
      "author": {
        "name": "Minghao Chi",
        "email": "chi.minghao@zte.com.cn",
        "time": "Thu Apr 14 09:08:00 2022 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:18:24 2022 +0100"
      },
      "message": "net: ethernet: ti: davinci_emac: using pm_runtime_resume_and_get instead of pm_runtime_get_sync\n\nUsing pm_runtime_resume_and_get() to replace pm_runtime_get_sync and\npm_runtime_put_noidle. This change is just to simplify the code, no\nactual functional changes.\n\nReported-by: Zeal Robot \u003czealci@zte.com.cn\u003e\nSigned-off-by: Minghao Chi \u003cchi.minghao@zte.com.cn\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb578430d05b8b9114195ef2c25284374fdf9549",
      "tree": "6bcf161cffd70973a395fbcfee33fa032604e6bd",
      "parents": [
        "25f428f990ddd116e266bd278bb7396f966af4d9"
      ],
      "author": {
        "name": "Colin Ian King",
        "email": "colin.i.king@gmail.com",
        "time": "Thu Apr 14 09:08:34 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:16:09 2022 +0100"
      },
      "message": "octeon_ep: Fix spelling mistake \"inerrupts\" -\u003e \"interrupts\"\n\nThere is a spelling mistake in a dev_info message. Fix it.\n\nSigned-off-by: Colin Ian King \u003ccolin.i.king@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25f428f990ddd116e266bd278bb7396f966af4d9",
      "tree": "4e5feae5b85b3134523eee50433233084a0bc90f",
      "parents": [
        "be52d266d2930f8963e49de68c59be3ca431b98d",
        "03978fb88b06bdbe6c404ffb49cf8290d2d015a5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "Merge branch \u0027mlxsw-line-card-prep\u0027\n\nIdo Schimmel says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nmlxsw: Preparations for line cards support\n\nCurrently, mlxsw registers thermal zones as well as hwmon entries for\nobjects such as transceiver modules and gearboxes. In upcoming modular\nsystems, these objects are no longer found on the main board (i.e., slot\n0), but on plug-able line cards. This patchset prepares mlxsw for such\nsystems in terms of hwmon, thermal and cable access support.\n\nPatches #1-#3 gradually prepare mlxsw for transceiver modules access\nsupport for line cards by splitting some of the internal structures and\nsome APIs.\n\nPatches #4-#5 gradually prepare mlxsw for hwmon support for line cards\nby splitting some of the internal structures and augmenting them with a\nslot index.\n\nPatches #6-#7 do the same for thermal zones.\n\nPatch #8 selects cooling device for binding to a thermal zone by exact\nname match to prevent binding to non-relevant devices.\n\nPatch #9 replaces internal define for thermal zone name length with a\ncommon define.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "03978fb88b06bdbe6c404ffb49cf8290d2d015a5",
      "tree": "4e5feae5b85b3134523eee50433233084a0bc90f",
      "parents": [
        "739d56bc635e9ba642777445d8c9c37e4a35ba3c"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:33 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "mlxsw: core_thermal: Use common define for thermal zone name length\n\nReplace internal define \u0027MLXSW_THERMAL_ZONE_MAX_NAME\u0027 by common\n\u0027THERMAL_NAME_LENGTH\u0027.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "739d56bc635e9ba642777445d8c9c37e4a35ba3c",
      "tree": "3a0ec58f6ac562ad30af028a29b7787c50e0e28f",
      "parents": [
        "6d94449a7d7dca9d4b9b5a2792db537b2b69b4b7"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:32 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "mlxsw: core_thermal: Use exact name of cooling devices for binding\n\nModular system supports additional cooling devices \"mlxreg_fan1\",\n\"mlxreg_fan2\", etcetera. Thermal zones in \"mlxsw\" driver should be\nbound to the same device as before called \"mlxreg_fan\". Used exact\nmatch for cooling device name to avoid binding to new additional\ncooling devices.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d94449a7d7dca9d4b9b5a2792db537b2b69b4b7",
      "tree": "165357ec9f04d09b1844fab87f0657b3e1d7a144",
      "parents": [
        "ef0df4fa324af23a5b55d3518f5799c87b6b665a"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:31 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "mlxsw: core_thermal: Add line card id prefix to line card thermal zone name\n\nAdd prefix \"lc#n\" to thermal zones associated with the thermal objects\nfound on line cards.\n\nFor example thermal zone for module #9 located at line card #7 will\nhave type:\nmlxsw-lc7-module9.\nAnd thermal zone for gearbox #3 located at line card #5 will have type:\nmlxsw-lc5-gearbox3.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nReviewed-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef0df4fa324af23a5b55d3518f5799c87b6b665a",
      "tree": "e0ffe266515cc7cdf7b5b2026edfa3f995918d49",
      "parents": [
        "fd27849dd6fd6913c35948653f8e167672655438"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:30 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "mlxsw: core_thermal: Extend internal structures to support multi thermal areas\n\nIntroduce intermediate level for thermal zones areas.\nCurrently all thermal zones are associated with thermal objects located\nwithin the main board. Such objects are created during driver\ninitialization and removed during driver de-initialization.\n\nFor line cards in modular system the thermal zones are to be associated\nwith the specific line card. They should be created whenever new line\ncard is available (inserted, validated, powered and enabled) and\nremoved, when line card is getting unavailable.\nThe thermal objects found on the line card #n are accessed by setting\nslot index to #n, while for access to objects found on the main board\nslot index should be set to default value zero.\n\nEach thermal area contains the set of thermal zones associated with\nparticular slot index.\nThus introduction of thermal zone areas allows to use the same APIs for\nthe main board and line cards, by adding slot index argument.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd27849dd6fd6913c35948653f8e167672655438",
      "tree": "9a92dc5eac7e81be64d60c7a163cd6372f451efd",
      "parents": [
        "b890ad418e1feada06dddc3f00ee2c8cccf77c13"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:29 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "mlxsw: core_hwmon: Introduce slot parameter in hwmon interfaces\n\nAdd \u0027slot\u0027 parameter to \u0027mlxsw_hwmon_dev\u0027 structure. Use this parameter\nin mlxsw_reg_mtmp_pack(), mlxsw_reg_mtbr_pack(), mlxsw_reg_mgpir_pack()\nand mlxsw_reg_mtmp_slot_index_set() routines.\nFor main board it\u0027ll always be zero, for line cards it\u0027ll be set to\nthe physical slot number in modular systems.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nReviewed-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b890ad418e1feada06dddc3f00ee2c8cccf77c13",
      "tree": "185ebe20a5aec28697048022a451db4790f3611e",
      "parents": [
        "b244143a085e1e6b9bee83bafe99b4e1fc9ee51e"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:28 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:13 2022 +0100"
      },
      "message": "mlxsw: core_hwmon: Extend internal structures to support multi hwmon objects\n\nCurrently, mlxsw supports a single hwmon device and registers it with\nattributes corresponding to the various objects found on the main\nboard such as fans and gearboxes.\n\nLine cards can have the same objects, but unlike the main board they\ncan be added and removed while the system is running. The various\nhwmon objects found on these line cards should be created when the\nline card becomes available and destroyed when the line card becomes\nunavailable.\n\nThe above can be achieved by representing each line card as a\ndifferent hwmon device and registering / unregistering it when the\nline card becomes available / unavailable.\n\nPrepare for multi hwmon device support by splitting\n\u0027struct mlxsw_hwmon\u0027 into \u0027struct mlxsw_hwmon\u0027 and\n\u0027struct mlxsw_hwmon_dev\u0027. The first will hold information relevant to\nall hwmon devices, whereas the second will hold per-hwmon device\ninformation.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nReviewed-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b244143a085e1e6b9bee83bafe99b4e1fc9ee51e",
      "tree": "badc53eceafe850a1bf0d25532bdf779ed252e57",
      "parents": [
        "e5b6a5bac8cc12790eccf69e01372e135f9e4af2"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:27 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:12 2022 +0100"
      },
      "message": "mlxsw: core: Move port module events enablement to a separate function\n\nUse a separate function for enablement of port module events such\nplug/unplug and temperature threshold crossing. The motivation is to\nreuse the function for line cards.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5b6a5bac8cc12790eccf69e01372e135f9e4af2",
      "tree": "c05f9dd4e0fa9c8ae3f7c8c94ad24eb9549e8b3e",
      "parents": [
        "349454526f5fe6488083c35306b04acd0d065bbb"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:26 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:12 2022 +0100"
      },
      "message": "mlxsw: core: Extend port module data structures for line cards\n\nThe port module core is tasked with module operations such as setting\npower mode policy and reset. The per-module information is currently\nstored in one large array suited for non-modular systems where only the\nmain board is present (i.e., slot index 0).\n\nAs a preparation for line cards support, allocate a per line card array\naccording to the queried number of slots in the system. For each line\ncard, allocate a module array according to the queried maximum number of\nmodules per-slot.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "349454526f5fe6488083c35306b04acd0d065bbb",
      "tree": "941c3b26a3ae7e7bfd02f93dbdb4bb7944b18355",
      "parents": [
        "be52d266d2930f8963e49de68c59be3ca431b98d"
      ],
      "author": {
        "name": "Vadim Pasternak",
        "email": "vadimp@nvidia.com",
        "time": "Wed Apr 13 18:17:25 2022 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 11:06:12 2022 +0100"
      },
      "message": "mlxsw: core: Extend interfaces for cable info access with slot argument\n\nExtend all cable info APIs with \u0027slot_index\u0027 argument.\n\nFor main board, slot will always be set to zero and these APIs will work\nas before. If reading cable information is required from cages located\non line cards, slot should be set to the physical slot number, where\nline card is located in modular systems.\n\nSigned-off-by: Vadim Pasternak \u003cvadimp@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be52d266d2930f8963e49de68c59be3ca431b98d",
      "tree": "a18d732581f96d76529f28423c494f081f0ef035",
      "parents": [
        "85648865bb95e3c2b10d22687fc5998cb5ae37cc"
      ],
      "author": {
        "name": "Minghao Chi",
        "email": "chi.minghao@zte.com.cn",
        "time": "Wed Apr 13 09:38:36 2022 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:53:46 2022 +0100"
      },
      "message": "net: ethernet: ti: cpsw_priv: using pm_runtime_resume_and_get instead of pm_runtime_get_sync\n\nUsing pm_runtime_resume_and_get is more appropriate\nfor simplifing code\n\nReported-by: Zeal Robot \u003czealci@zte.com.cn\u003e\nSigned-off-by: Minghao Chi \u003cchi.minghao@zte.com.cn\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "85648865bb95e3c2b10d22687fc5998cb5ae37cc",
      "tree": "5136dd3a0e8949b3fafba41602037fc450077d53",
      "parents": [
        "c557a9ae4960a8aaede722833e567897f05aa9ef"
      ],
      "author": {
        "name": "Minghao Chi",
        "email": "chi.minghao@zte.com.cn",
        "time": "Wed Apr 13 09:38:01 2022 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:53:46 2022 +0100"
      },
      "message": "net: stmmac: stmmac_main: using pm_runtime_resume_and_get instead of pm_runtime_get_sync\n\nUsing pm_runtime_resume_and_get is more appropriate\nfor simplifing code\n\nReported-by: Zeal Robot \u003czealci@zte.com.cn\u003e\nSigned-off-by: Minghao Chi \u003cchi.minghao@zte.com.cn\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c557a9ae4960a8aaede722833e567897f05aa9ef",
      "tree": "e3118e5d5f89d3cc3f9111e6f4b63ff79e7a4bd9",
      "parents": [
        "f623f83ae77396a5eda25451335295c0141c8c46"
      ],
      "author": {
        "name": "Minghao Chi",
        "email": "chi.minghao@zte.com.cn",
        "time": "Wed Apr 13 09:35:29 2022 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:53:46 2022 +0100"
      },
      "message": "net: ethernet: ti: cpsw_new: use pm_runtime_resume_and_get() instead of pm_runtime_get_sync()\n\nUsing pm_runtime_resume_and_get is more appropriate\nfor simplifing code\n\nReported-by: Zeal Robot \u003czealci@zte.com.cn\u003e\nSigned-off-by: Minghao Chi \u003cchi.minghao@zte.com.cn\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f623f83ae77396a5eda25451335295c0141c8c46",
      "tree": "16c8ba266cc2ac0c45c45ec2a59ce4bdb4656496",
      "parents": [
        "4867d750b227fa1affb171cd257dd9dde48d7d32"
      ],
      "author": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Wed Apr 13 10:44:40 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:52:29 2022 +0100"
      },
      "message": "geneve: avoid indirect calls in GRO path, when possible\n\nIn the most common setups, the geneve tunnels use an inner\nethernet encapsulation. In the GRO path, when such condition is\ntrue, we can call directly the relevant GRO helper and avoid\na few indirect calls.\n\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4867d750b227fa1affb171cd257dd9dde48d7d32",
      "tree": "bf6c91452e8bda9c83c0a37fdade0f67b4ac7e28",
      "parents": [
        "edf45f007a31e86738f6be3065591ddad94477d1",
        "b3fc79225f055af7ef48b47a90752c31cc062e6e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:43:48 2022 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:43:48 2022 +0100"
      },
      "message": "Merge branch \u0027mneta-page_pool_get_stats\u0027\n\nLorenzo Bianconi says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nnet: mvneta: add support for page_pool_get_stats\n\nIntroduce page_pool stats ethtool APIs in order to avoid driver duplicated\ncode.\n\nChanges since v4:\n- rebase on top of net-next\n\nChanges since v3:\n- get rid of wrong for loop in page_pool_ethtool_stats_get()\n- add API stubs when page_pool_stats are not compiled in\n\nChanges since v2:\n- remove enum list of page_pool stats in page_pool.h\n- remove leftover change in mvneta.c for ethtool_stats array allocation\n\nChanges since v1:\n- move stats accounting to page_pool code\n- move stats string management to page_pool code\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b3fc79225f055af7ef48b47a90752c31cc062e6e",
      "tree": "bf6c91452e8bda9c83c0a37fdade0f67b4ac7e28",
      "parents": [
        "f3c5264f452a5b0ac1de1f2f657efbabdea3c76a"
      ],
      "author": {
        "name": "Lorenzo Bianconi",
        "email": "lorenzo@kernel.org",
        "time": "Tue Apr 12 18:31:59 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:43:48 2022 +0100"
      },
      "message": "net: mvneta: add support for page_pool_get_stats\n\nIntroduce support for the page_pool stats API into mvneta driver.\nReport page_pool stats through ethtool.\n\nReviewed-by: Andrew Lunn \u003candrew@lunn.ch\u003e\nSigned-off-by: Lorenzo Bianconi \u003clorenzo@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f3c5264f452a5b0ac1de1f2f657efbabdea3c76a",
      "tree": "9d5e53b6a1d3464e88088a445651768866e34ba5",
      "parents": [
        "edf45f007a31e86738f6be3065591ddad94477d1"
      ],
      "author": {
        "name": "Lorenzo Bianconi",
        "email": "lorenzo@kernel.org",
        "time": "Tue Apr 12 18:31:58 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 10:43:47 2022 +0100"
      },
      "message": "net: page_pool: introduce ethtool stats\n\nIntroduce page_pool APIs to report stats through ethtool and reduce\nduplicated code in each driver.\n\nSigned-off-by: Lorenzo Bianconi \u003clorenzo@kernel.org\u003e\nReviewed-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\nReviewed-by: Ilias Apalodimas \u003cilias.apalodimas@linaro.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "edf45f007a31e86738f6be3065591ddad94477d1",
      "tree": "2805eeead7a03344a2b1185314d791a65fe15dc1",
      "parents": [
        "caf968b483351d8825e68b06d77de5eb618aeb64",
        "d20339fa93e9810fcf87518bdd62e44f62bb64ee"
      ],
      "author": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Fri Apr 15 09:26:00 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Fri Apr 15 09:26:00 2022 +0200"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net\n"
    },
    {
      "commit": "d20339fa93e9810fcf87518bdd62e44f62bb64ee",
      "tree": "5eca0a822379c8528d41621f98b57d29703e9761",
      "parents": [
        "b9b4c79e58305ac64352286ee5030d193fc8aa22",
        "2df3fc4a84e917a422935cc5bae18f43f9955d31"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 11:58:19 2022 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 11:58:19 2022 -0700"
      },
      "message": "Merge tag \u0027net-5.18-rc3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net\n\nPull networking fixes from Paolo Abeni:\n \"Including fixes from wireless and netfilter.\n\n  Current release - regressions:\n\n   - smc: fix af_ops of child socket pointing to released memory\n\n   - wifi: ath9k: fix usage of driver-private space in tx_info\n\n  Previous releases - regressions:\n\n   - ipv6: fix panic when forwarding a pkt with no in6 dev\n\n   - sctp: use the correct skb for security_sctp_assoc_request\n\n   - smc: fix NULL pointer dereference in smc_pnet_find_ib()\n\n   - sched: fix initialization order when updating chain 0 head\n\n   - phy: don\u0027t defer probe forever if PHY IRQ provider is missing\n\n   - dsa: revert \"net: dsa: setup master before ports\"\n\n   - dsa: felix: fix tagging protocol changes with multiple CPU ports\n\n   - eth: ice:\n      - fix use-after-free when freeing @rx_cpu_rmap\n      - revert \"iavf: fix deadlock occurrence during resetting VF\n        interface\"\n\n   - eth: lan966x: stop processing the MAC entry is port is wrong\n\n  Previous releases - always broken:\n\n   - sched:\n      - flower: fix parsing of ethertype following VLAN header\n      - taprio: check if socket flags are valid\n\n   - nfc: add flush_workqueue to prevent uaf\n\n   - veth: ensure eth header is in skb\u0027s linear part\n\n   - eth: stmmac: fix altr_tse_pcs function when using a fixed-link\n\n   - eth: macb: restart tx only if queue pointer is lagging\n\n   - eth: macvlan: fix leaking skb in source mode with nodst option\"\n\n* tag \u0027net-5.18-rc3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (52 commits)\n  net: bcmgenet: Revert \"Use stronger register read/writes to assure ordering\"\n  rtnetlink: Fix handling of disabled L3 stats in RTM_GETSTATS replies\n  net: dsa: felix: fix tagging protocol changes with multiple CPU ports\n  tun: annotate access to queue-\u003etrans_start\n  nfc: nci: add flush_workqueue to prevent uaf\n  net: dsa: realtek: don\u0027t parse compatible string for RTL8366S\n  net: dsa: realtek: fix Kconfig to assure consistent driver linkage\n  net: ftgmac100: access hardware register after clock ready\n  Revert \"net: dsa: setup master before ports\"\n  macvlan: Fix leaking skb in source mode with nodst option\n  netfilter: nf_tables: nft_parse_register can return a negative value\n  net: lan966x: Stop processing the MAC entry is port is wrong.\n  net: lan966x: Fix when a port\u0027s upper is changed.\n  net: lan966x: Fix IGMP snooping when frames have vlan tag\n  net: lan966x: Update lan966x_ptp_get_nominal_value\n  sctp: Initialize daddr on peeled off socket\n  net/smc: Fix af_ops of child socket pointing to released memory\n  net/smc: Fix NULL pointer dereference in smc_pnet_find_ib()\n  net/smc: use memcpy instead of snprintf to avoid out of bounds read\n  net: macb: Restart tx only if queue pointer is lagging\n  ...\n"
    },
    {
      "commit": "b9b4c79e58305ac64352286ee5030d193fc8aa22",
      "tree": "ca7797a4392477ea846330e69493bdf03376dbcd",
      "parents": [
        "722985e2f6ec9127064771ba526578ea8275834d",
        "24d0c9f0e7de95fe3e3e0067cbea1cd5d413244b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 11:08:12 2022 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 11:08:12 2022 -0700"
      },
      "message": "Merge tag \u0027sound-5.18-rc3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound\n\nPull sound fixes from Takashi Iwai:\n \"This became an unexpectedly large pull request due to various\n  regression fixes in the previous kernels.\n\n  The majority of fixes are a series of patches to address the\n  regression at probe errors in devres\u0027ed drivers, while there are yet\n  more fixes for the x86 SG allocations and for USB-audio buffer\n  management. In addition, a few HD-audio quirks and other small fixes\n  are found\"\n\n* tag \u0027sound-5.18-rc3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (52 commits)\n  ALSA: usb-audio: Limit max buffer and period sizes per time\n  ALSA: memalloc: Add fallback SG-buffer allocations for x86\n  ALSA: nm256: Don\u0027t call card private_free at probe error path\n  ALSA: mtpav: Don\u0027t call card private_free at probe error path\n  ALSA: rme9652: Fix the missing snd_card_free() call at probe error\n  ALSA: hdspm: Fix the missing snd_card_free() call at probe error\n  ALSA: hdsp: Fix the missing snd_card_free() call at probe error\n  ALSA: oxygen: Fix the missing snd_card_free() call at probe error\n  ALSA: lx6464es: Fix the missing snd_card_free() call at probe error\n  ALSA: cmipci: Fix the missing snd_card_free() call at probe error\n  ALSA: aw2: Fix the missing snd_card_free() call at probe error\n  ALSA: als300: Fix the missing snd_card_free() call at probe error\n  ALSA: lola: Fix the missing snd_card_free() call at probe error\n  ALSA: bt87x: Fix the missing snd_card_free() call at probe error\n  ALSA: sis7019: Fix the missing error handling\n  ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error\n  ALSA: via82xx: Fix the missing snd_card_free() call at probe error\n  ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error\n  ALSA: rme96: Fix the missing snd_card_free() call at probe error\n  ALSA: rme32: Fix the missing snd_card_free() call at probe error\n  ...\n"
    },
    {
      "commit": "722985e2f6ec9127064771ba526578ea8275834d",
      "tree": "8807a3b8532cd7d9f3fc8d06f17aa14db0362cba",
      "parents": [
        "ec9c57a7328b178918aa3124f989060bc5624a3f",
        "acee08aaf6d158d03668dc82b0a0eef41100531b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 10:58:27 2022 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 10:58:27 2022 -0700"
      },
      "message": "Merge tag \u0027for-5.18-rc2-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux\n\nPull btrfs fixes from David Sterba:\n \"A few more code and warning fixes.\n\n  There\u0027s one feature ioctl removal patch slated for 5.18 that did not\n  make it to the main pull request. It\u0027s just a one-liner and the ioctl\n  has a v2 that\u0027s in use for a long time, no point to postpone it to\n  5.19.\n\n  Late update:\n\n   - remove balance v1 ioctl, superseded by v2 in 2012\n\n  Fixes:\n\n   - add back cgroup attribution for compressed writes\n\n   - add super block write start/end annotations to asynchronous balance\n\n   - fix root reference count on an error handling path\n\n   - in zoned mode, activate zone at the chunk allocation time to avoid\n     ENOSPC due to timing issues\n\n   - fix delayed allocation accounting for direct IO\n\n  Warning fixes:\n\n   - simplify assertion condition in zoned check\n\n   - remove an unused variable\"\n\n* tag \u0027for-5.18-rc2-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:\n  btrfs: fix btrfs_submit_compressed_write cgroup attribution\n  btrfs: fix root ref counts in error handling in btrfs_get_root_ref\n  btrfs: zoned: activate block group only for extent allocation\n  btrfs: return allocated block group from do_chunk_alloc()\n  btrfs: mark resumed async balance as writing\n  btrfs: remove support of balance v1 ioctl\n  btrfs: release correct delalloc amount in direct IO write path\n  btrfs: remove unused variable in btrfs_{start,write}_dirty_block_groups()\n  btrfs: zoned: remove redundant condition in btrfs_run_delalloc_range\n"
    },
    {
      "commit": "ec9c57a7328b178918aa3124f989060bc5624a3f",
      "tree": "ed570f83c687a5b3ec2146b3b52ee6ea24a51a87",
      "parents": [
        "a19944809fe9942e6a96292490717904d0690c21",
        "61132ceeda723d2c48cbc2610ca3213a7fcb083b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 10:51:20 2022 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 14 10:51:20 2022 -0700"
      },
      "message": "Merge tag \u0027fscache-fixes-20220413\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs\n\nPull fscache fixes from David Howells:\n \"Here\u0027s a collection of fscache and cachefiles fixes and misc small\n  cleanups. The two main fixes are:\n\n   - Add a missing unmark of the inode in-use mark in an error path.\n\n   - Fix a KASAN slab-out-of-bounds error when setting the xattr on a\n     cachefiles volume due to the wrong length being given to memcpy().\n\n  In addition, there\u0027s the removal of an unused parameter, removal of an\n  unused Kconfig option, conditionalising a bit of procfs-related stuff\n  and some doc fixes\"\n\n* tag \u0027fscache-fixes-20220413\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:\n  fscache: remove FSCACHE_OLD_API Kconfig option\n  fscache: Use wrapper fscache_set_cache_state() directly when relinquishing\n  fscache: Move fscache_cookies_seq_ops specific code under CONFIG_PROC_FS\n  fscache: Remove the cookie parameter from fscache_clear_page_bits()\n  docs: filesystems: caching/backend-api.rst: fix an object withdrawn API\n  docs: filesystems: caching/backend-api.rst: correct two relinquish APIs use\n  cachefiles: Fix KASAN slab-out-of-bounds in cachefiles_set_volume_xattr\n  cachefiles: unmark inode in use in error path\n"
    },
    {
      "commit": "caf968b483351d8825e68b06d77de5eb618aeb64",
      "tree": "5718718ae3dd8cfaf28fd56d09b23f86fd343751",
      "parents": [
        "9386ebccfc599de5578a278ffb16d90cc696969a",
        "171cfae6b78c3b73d8cd3d405a63e38f15f363f2"
      ],
      "author": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 15:08:16 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 15:08:16 2022 +0200"
      },
      "message": "Merge branch \u0027rndis_host-handle-bogus-mac-addresses-in-zte-rndis-devices\u0027\n\nLech Perczak says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nrndis_host: handle bogus MAC addresses in ZTE RNDIS devices\n\nWhen porting support of ZTE MF286R to OpenWrt [1], it was discovered,\nthat its built-in LTE modem fails to adjust its target MAC address,\nwhen a random MAC address is assigned to the interface, due to detection of\n\"locally-administered address\" bit. This leads to dropping of ingress\ntrafficat the host. The modem uses RNDIS as its primary interface,\nwith some variants exposing both of them simultaneously.\n\nThen it was discovered, that cdc_ether driver contains a fixup for that\nexact issue, also appearing on CDC ECM interfaces.\nI discussed how to proceed with that with Bjørn Mork at OpenWrt forum [3],\nwith the first approach would be to trust the locally-administered MAC\nagain, and add a quirk for the problematic ZTE devices, as suggested by\nKristian Evensen. before [4], but reusing the fixup from cdc_ether looks\nlike a safer and more generic solution.\n\nFinally, according to Bjørn\u0027s suggestion. limit the scope of bogus MAC\naddressdetection to ZTE devices, the same way as it is done in cdc_ether,\nas this trait wasn\u0027t really observed outside of ZTE devices.\nDo that for both flavours of RNDIS devices, with interface classes\n02/02/ff and e0/01/03, as both types are reported by different modems.\n\n[1] https://git.openwrt.org/?p\u003dopenwrt/openwrt.git;a\u003dcommit;h\u003d7ac8da00609f42b8aba74b7efc6b0d055b7cef3e\n[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id\u003dbfe9b9d2df669a57a95d641ed46eb018e204c6ce\n[3] https://forum.openwrt.org/t/problem-with-modem-in-zte-mf286r/120988\n[4] https://lore.kernel.org/all/CAKfDRXhDp3heiD75Lat7cr1JmY-kaJ-MS0tt7QXX\u003ds8RFjbpUQ@mail.gmail.com/T/\n\nCc: Bjørn Mork \u003cbjorn@mork.no\u003e\nCc: Kristian Evensen \u003ckristian.evensen@gmail.com\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\n\nv3: Fixed wrong identifier commit description and whitespace in patch 2.\n\nv2: ensure that MAC fixup is applied to all Ethernet frames in RNDIS\nbatch, by introducing a driver flag, and integrating the fixup inside\nrndis_rx_fixup().\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20220413014416.2306843-1-lech.perczak@gmail.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "171cfae6b78c3b73d8cd3d405a63e38f15f363f2",
      "tree": "5718718ae3dd8cfaf28fd56d09b23f86fd343751",
      "parents": [
        "36e747972d8b4c09e6e3275e31a3acba46e2c4d2"
      ],
      "author": {
        "name": "Lech Perczak",
        "email": "lech.perczak@gmail.com",
        "time": "Wed Apr 13 03:44:16 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 15:08:12 2022 +0200"
      },
      "message": "rndis_host: limit scope of bogus MAC address detection to ZTE devices\n\nReporting of bogus MAC addresses and ignoring configuration of new\ndestination address wasn\u0027t observed outside of a range of ZTE devices,\namong which this seems to be the common bug. Align rndis_host driver\nwith implementation found in cdc_ether, which also limits this workaround\nto ZTE devices.\n\nSuggested-by: Bjørn Mork \u003cbjorn@mork.no\u003e\nCc: Kristian Evensen \u003ckristian.evensen@gmail.com\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nSigned-off-by: Lech Perczak \u003clech.perczak@gmail.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "36e747972d8b4c09e6e3275e31a3acba46e2c4d2",
      "tree": "5dcda5520b55f5d846491c5c29cbf922ddfcf303",
      "parents": [
        "64b97df995f0c943be469a019d6117c89e2131bc"
      ],
      "author": {
        "name": "Lech Perczak",
        "email": "lech.perczak@gmail.com",
        "time": "Wed Apr 13 03:44:15 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 15:08:12 2022 +0200"
      },
      "message": "rndis_host: enable the bogus MAC fixup for ZTE devices from cdc_ether\n\nCertain ZTE modems, namely: MF823. MF831, MF910, built-in modem from\nMF286R, expose both CDC-ECM and RNDIS network interfaces.\nThey have a trait of ignoring the locally-administered MAC address\nconfigured on the interface both in CDC-ECM and RNDIS part,\nand this leads to dropping of incoming traffic by the host.\nHowever, the workaround was only present in CDC-ECM, and MF286R\nexplicitly requires it in RNDIS mode.\n\nRe-use the workaround in rndis_host as well, to fix operation of MF286R\nmodule, some versions of which expose only the RNDIS interface. Do so by\nintroducing new flag, RNDIS_DRIVER_DATA_DST_MAC_FIXUP, and testing for it\nin rndis_rx_fixup. This is required, as RNDIS uses frame batching, and all\nof the packets inside the batch need the fixup. This might introduce a\nperformance penalty, because test is done for every returned Ethernet\nframe.\n\nApply the workaround to both \"flavors\" of RNDIS interfaces, as older ZTE\nmodems, like MF823 found in the wild, report the USB_CLASS_COMM class\ninterfaces, while MF286R reports USB_CLASS_WIRELESS_CONTROLLER.\n\nSuggested-by: Bjørn Mork \u003cbjorn@mork.no\u003e\nCc: Kristian Evensen \u003ckristian.evensen@gmail.com\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nSigned-off-by: Lech Perczak \u003clech.perczak@gmail.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "64b97df995f0c943be469a019d6117c89e2131bc",
      "tree": "db2d832372d1d6c7c57987f00e84b3d367785826",
      "parents": [
        "9386ebccfc599de5578a278ffb16d90cc696969a"
      ],
      "author": {
        "name": "Lech Perczak",
        "email": "lech.perczak@gmail.com",
        "time": "Wed Apr 13 03:44:14 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 15:08:12 2022 +0200"
      },
      "message": "cdc_ether: export usbnet_cdc_zte_rx_fixup\n\nCommit bfe9b9d2df66 (\"cdc_ether: Improve ZTE MF823/831/910 handling\")\nintroduces a workaround for certain ZTE modems reporting invalid MAC\naddresses over CDC-ECM.\nThe same issue was present on their RNDIS interface,which was fixed in\ncommit a5a18bdf7453 (\"rndis_host: Set valid random MAC on buggy devices\").\n\nHowever, internal modem of ZTE MF286R router, on its RNDIS interface, also\nexhibits a second issue fixed already in CDC-ECM, of the device not\nrespecting configured random MAC address. In order to share the fixup for\nthis with rndis_host driver, export the workaround function, which will\nbe re-used in the following commit in rndis_host.\n\nCc: Kristian Evensen \u003ckristian.evensen@gmail.com\u003e\nCc: Bjørn Mork \u003cbjorn@mork.no\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nSigned-off-by: Lech Perczak \u003clech.perczak@gmail.com\u003e\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "2df3fc4a84e917a422935cc5bae18f43f9955d31",
      "tree": "9bb9a52b90ec54ef764ed540fc64b35fe731d084",
      "parents": [
        "23cfe941b52e2fa645bdfd770087128a74c7dbee"
      ],
      "author": {
        "name": "Jeremy Linton",
        "email": "jeremy.linton@arm.com",
        "time": "Tue Apr 12 16:04:20 2022 -0500"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 09:13:07 2022 +0200"
      },
      "message": "net: bcmgenet: Revert \"Use stronger register read/writes to assure ordering\"\n\nIt turns out after digging deeper into this bug, that it was being\ntriggered by GCC12 failing to call the bcmgenet_enable_dma()\nroutine. Given that a gcc12 fix has been merged [1] and the genet\ndriver now works properly when built with gcc12, this commit should\nbe reverted.\n\n[1]\nhttps://gcc.gnu.org/bugzilla/show_bug.cgi?id\u003d105160\nhttps://gcc.gnu.org/git/?p\u003dgcc.git;a\u003dcommit;h\u003daabb9a261ef060cf24fd626713f1d7d9df81aa57\n\nFixes: 8d3ea3d402db (\"net: bcmgenet: Use stronger register read/writes to assure ordering\")\nSigned-off-by: Jeremy Linton \u003cjeremy.linton@arm.com\u003e\nAcked-by: Florian Fainelli \u003cf.fainelli@gmail.com\u003e\nLink: https://lore.kernel.org/r/20220412210420.1129430-1-jeremy.linton@arm.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "23cfe941b52e2fa645bdfd770087128a74c7dbee",
      "tree": "c2890ee41df25a3c1d8e12e783aa8c93959d13b3",
      "parents": [
        "00fa91bc9cc2a9d340f963af5e457610ad4b2f9c"
      ],
      "author": {
        "name": "Petr Machata",
        "email": "petrm@nvidia.com",
        "time": "Tue Apr 12 22:25:06 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 09:01:26 2022 +0200"
      },
      "message": "rtnetlink: Fix handling of disabled L3 stats in RTM_GETSTATS replies\n\nWhen L3 stats are disabled, rtnl_offload_xstats_get_size_stats() returns\nsize of 0, which is supposed to be an indication that the corresponding\nattribute should not be emitted. However, instead, the current code\nreserves a 0-byte attribute.\n\nThe reason this does not show up as a citation on a kasan kernel is that\nnetdev_offload_xstats_get(), which is supposed to fill in the data, never\nends up getting called, because rtnl_offload_xstats_get_stats() notices\nthat the stats are not actually used and skips the call.\n\nThus a zero-length IFLA_OFFLOAD_XSTATS_L3_STATS attribute ends up in a\nresponse, confusing the userspace.\n\nFix by skipping the L3-stats related block in rtnl_offload_xstats_fill().\n\nFixes: 0e7788fd7622 (\"net: rtnetlink: Add UAPI for obtaining L3 offload xstats\")\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nReviewed-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nLink: https://lore.kernel.org/r/591b58e7623edc3eb66dd1fcfa8c8f133d090974.1649794741.git.petrm@nvidia.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "00fa91bc9cc2a9d340f963af5e457610ad4b2f9c",
      "tree": "a063642d6a487532fb7a42be63389b923745087c",
      "parents": [
        "968a1a5d6541cd24e37dadc1926eab9c10aeb09b"
      ],
      "author": {
        "name": "Vladimir Oltean",
        "email": "vladimir.oltean@nxp.com",
        "time": "Tue Apr 12 20:22:09 2022 +0300"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 08:52:26 2022 +0200"
      },
      "message": "net: dsa: felix: fix tagging protocol changes with multiple CPU ports\n\nWhen the device tree has 2 CPU ports defined, a single one is active\n(has any dp-\u003ecpu_dp pointers point to it). Yet the second one is still a\nCPU port, and DSA still calls -\u003echange_tag_protocol on it.\n\nOn the NXP LS1028A, the CPU ports are ports 4 and 5. Port 4 is the\nactive CPU port and port 5 is inactive.\n\nAfter the following commands:\n\n # Initial setting\n cat /sys/class/net/eno2/dsa/tagging\n ocelot\n echo ocelot-8021q \u003e /sys/class/net/eno2/dsa/tagging\n echo ocelot \u003e /sys/class/net/eno2/dsa/tagging\n\ntraffic is now broken, because the driver has moved the NPI port from\nport 4 to port 5, unbeknown to DSA.\n\nThe problem can be avoided by detecting that the second CPU port is\nunused, and not doing anything for it. Further rework will be needed\nwhen proper support for multiple CPU ports is added.\n\nTreat this as a bug and prepare current kernels to work in single-CPU\nmode with multiple-CPU DT blobs.\n\nFixes: adb3dccf090b (\"net: dsa: felix: convert to the new .change_tag_protocol DSA API\")\nSigned-off-by: Vladimir Oltean \u003cvladimir.oltean@nxp.com\u003e\nLink: https://lore.kernel.org/r/20220412172209.2531865-1-vladimir.oltean@nxp.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "968a1a5d6541cd24e37dadc1926eab9c10aeb09b",
      "tree": "a96c4192f8a45a0b213f319970f189c8a84d9578",
      "parents": [
        "ef27324e2cb7bb24542d6cb2571740eefe6b00dc"
      ],
      "author": {
        "name": "Antoine Tenart",
        "email": "atenart@kernel.org",
        "time": "Tue Apr 12 15:58:52 2022 +0200"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Apr 14 08:30:09 2022 +0200"
      },
      "message": "tun: annotate access to queue-\u003etrans_start\n\nCommit 5337824f4dc4 (\"net: annotate accesses to queue-\u003etrans_start\")\nintroduced a new helper, txq_trans_cond_update, to update\nqueue-\u003etrans_start using WRITE_ONCE. One snippet in drivers/net/tun.c\nwas missed, as it was introduced roughly at the same time.\n\nFixes: 5337824f4dc4 (\"net: annotate accesses to queue-\u003etrans_start\")\nCc: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: Antoine Tenart \u003catenart@kernel.org\u003e\nReviewed-by: Eric Dumazet \u003cedumazet@google.com\u003e\nLink: https://lore.kernel.org/r/20220412135852.466386-1-atenart@kernel.org\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "ef27324e2cb7bb24542d6cb2571740eefe6b00dc",
      "tree": "910c342902a8fc994ab62dbe5ff67758e8bed53a",
      "parents": [
        "8e925de60ddaeccb455f0bdad17ce9d8cc2db2e1"
      ],
      "author": {
        "name": "Lin Ma",
        "email": "linma@zju.edu.cn",
        "time": "Wed Apr 13 00:04:30 2022 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 13 14:44:44 2022 +0100"
      },
      "message": "nfc: nci: add flush_workqueue to prevent uaf\n\nOur detector found a concurrent use-after-free bug when detaching an\nNCI device. The main reason for this bug is the unexpected scheduling\nbetween the used delayed mechanism (timer and workqueue).\n\nThe race can be demonstrated below:\n\nThread-1                           Thread-2\n                                 | nci_dev_up()\n                                 |   nci_open_device()\n                                 |     __nci_request(nci_reset_req)\n                                 |       nci_send_cmd\n                                 |         queue_work(cmd_work)\nnci_unregister_device()          |\n  nci_close_device()             | ...\n    del_timer_sync(cmd_timer)[1] |\n...                              | Worker\nnci_free_device()                | nci_cmd_work()\n  kfree(ndev)[3]                 |   mod_timer(cmd_timer)[2]\n\nIn short, the cleanup routine thought that the cmd_timer has already\nbeen detached by [1] but the mod_timer can re-attach the timer [2], even\nit is already released [3], resulting in UAF.\n\nThis UAF is easy to trigger, crash trace by POC is like below\n\n[   66.703713] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[   66.703974] BUG: KASAN: use-after-free in enqueue_timer+0x448/0x490\n[   66.703974] Write of size 8 at addr ffff888009fb7058 by task kworker/u4:1/33\n[   66.703974]\n[   66.703974] CPU: 1 PID: 33 Comm: kworker/u4:1 Not tainted 5.18.0-rc2 #5\n[   66.703974] Workqueue: nfc2_nci_cmd_wq nci_cmd_work\n[   66.703974] Call Trace:\n[   66.703974]  \u003cTASK\u003e\n[   66.703974]  dump_stack_lvl+0x57/0x7d\n[   66.703974]  print_report.cold+0x5e/0x5db\n[   66.703974]  ? enqueue_timer+0x448/0x490\n[   66.703974]  kasan_report+0xbe/0x1c0\n[   66.703974]  ? enqueue_timer+0x448/0x490\n[   66.703974]  enqueue_timer+0x448/0x490\n[   66.703974]  __mod_timer+0x5e6/0xb80\n[   66.703974]  ? mark_held_locks+0x9e/0xe0\n[   66.703974]  ? try_to_del_timer_sync+0xf0/0xf0\n[   66.703974]  ? lockdep_hardirqs_on_prepare+0x17b/0x410\n[   66.703974]  ? queue_work_on+0x61/0x80\n[   66.703974]  ? lockdep_hardirqs_on+0xbf/0x130\n[   66.703974]  process_one_work+0x8bb/0x1510\n[   66.703974]  ? lockdep_hardirqs_on_prepare+0x410/0x410\n[   66.703974]  ? pwq_dec_nr_in_flight+0x230/0x230\n[   66.703974]  ? rwlock_bug.part.0+0x90/0x90\n[   66.703974]  ? _raw_spin_lock_irq+0x41/0x50\n[   66.703974]  worker_thread+0x575/0x1190\n[   66.703974]  ? process_one_work+0x1510/0x1510\n[   66.703974]  kthread+0x2a0/0x340\n[   66.703974]  ? kthread_complete_and_exit+0x20/0x20\n[   66.703974]  ret_from_fork+0x22/0x30\n[   66.703974]  \u003c/TASK\u003e\n[   66.703974]\n[   66.703974] Allocated by task 267:\n[   66.703974]  kasan_save_stack+0x1e/0x40\n[   66.703974]  __kasan_kmalloc+0x81/0xa0\n[   66.703974]  nci_allocate_device+0xd3/0x390\n[   66.703974]  nfcmrvl_nci_register_dev+0x183/0x2c0\n[   66.703974]  nfcmrvl_nci_uart_open+0xf2/0x1dd\n[   66.703974]  nci_uart_tty_ioctl+0x2c3/0x4a0\n[   66.703974]  tty_ioctl+0x764/0x1310\n[   66.703974]  __x64_sys_ioctl+0x122/0x190\n[   66.703974]  do_syscall_64+0x3b/0x90\n[   66.703974]  entry_SYSCALL_64_after_hwframe+0x44/0xae\n[   66.703974]\n[   66.703974] Freed by task 406:\n[   66.703974]  kasan_save_stack+0x1e/0x40\n[   66.703974]  kasan_set_track+0x21/0x30\n[   66.703974]  kasan_set_free_info+0x20/0x30\n[   66.703974]  __kasan_slab_free+0x108/0x170\n[   66.703974]  kfree+0xb0/0x330\n[   66.703974]  nfcmrvl_nci_unregister_dev+0x90/0xd0\n[   66.703974]  nci_uart_tty_close+0xdf/0x180\n[   66.703974]  tty_ldisc_kill+0x73/0x110\n[   66.703974]  tty_ldisc_hangup+0x281/0x5b0\n[   66.703974]  __tty_hangup.part.0+0x431/0x890\n[   66.703974]  tty_release+0x3a8/0xc80\n[   66.703974]  __fput+0x1f0/0x8c0\n[   66.703974]  task_work_run+0xc9/0x170\n[   66.703974]  exit_to_user_mode_prepare+0x194/0x1a0\n[   66.703974]  syscall_exit_to_user_mode+0x19/0x50\n[   66.703974]  do_syscall_64+0x48/0x90\n[   66.703974]  entry_SYSCALL_64_after_hwframe+0x44/0xae\n\nTo fix the UAF, this patch adds flush_workqueue() to ensure the\nnci_cmd_work is finished before the following del_timer_sync.\nThis combination will promise the timer is actually detached.\n\nFixes: 6a2968aaf50c (\"NFC: basic NCI protocol implementation\")\nSigned-off-by: Lin Ma \u003clinma@zju.edu.cn\u003e\nReviewed-by: Krzysztof Kozlowski \u003ckrzysztof.kozlowski@linaro.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e925de60ddaeccb455f0bdad17ce9d8cc2db2e1",
      "tree": "3733c380cf501d8a59da3f669ee1560138acc72d",
      "parents": [
        "2511e0c87786f333c4665508f421ac99e378c719"
      ],
      "author": {
        "name": "Alvin Šipraga",
        "email": "alsi@bang-olufsen.dk",
        "time": "Tue Apr 12 17:57:49 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 13 14:40:59 2022 +0100"
      },
      "message": "net: dsa: realtek: don\u0027t parse compatible string for RTL8366S\n\nThis switch is not even supported, but if someone were to actually put\nthis compatible string \"realtek,rtl8366s\" in their device tree, they\nwould be greeted with a kernel panic because the probe function would\ndereference NULL. So let\u0027s just remove it.\n\nLink: https://lore.kernel.org/all/CACRpkdYdKZs0WExXc3\u003d0yPNOwP+oOV60HRz7SRoGjZvYHaT\u003d1g@mail.gmail.com/\nSigned-off-by: Alvin Šipraga \u003calsi@bang-olufsen.dk\u003e\nReviewed-by: Andrew Lunn \u003candrew@lunn.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2511e0c87786f333c4665508f421ac99e378c719",
      "tree": "1517a45f1edfec70403de1684ac2062a0b7b25e3",
      "parents": [
        "dad32cfeed7c5a375335b04398bf064a9c61cc20"
      ],
      "author": {
        "name": "Alvin Šipraga",
        "email": "alsi@bang-olufsen.dk",
        "time": "Tue Apr 12 17:55:27 2022 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 13 14:30:31 2022 +0100"
      },
      "message": "net: dsa: realtek: fix Kconfig to assure consistent driver linkage\n\nThe kernel test robot reported a build failure:\n\nor1k-linux-ld: drivers/net/dsa/realtek/realtek-smi.o:(.rodata+0x16c): undefined reference to `rtl8366rb_variant\u0027\n\n... with the following build configuration:\n\nCONFIG_NET_DSA_REALTEK\u003dy\nCONFIG_NET_DSA_REALTEK_SMI\u003dy\nCONFIG_NET_DSA_REALTEK_RTL8365MB\u003dy\nCONFIG_NET_DSA_REALTEK_RTL8366RB\u003dm\n\nThe problem here is that the realtek-smi interface driver gets built-in,\nwhile the rtl8366rb switch subdriver gets built as a module, hence the\nsymbol rtl8366rb_variant is not reachable when defining the OF device\ntable in the interface driver.\n\nThe Kconfig dependencies don\u0027t help in this scenario because they just\nsay that the subdriver(s) depend on at least one interface driver. In\nfact, the subdrivers don\u0027t depend on the interface drivers at all, and\ncan even be built even in their absence. Somewhat strangely, the\ninterface drivers can also be built in the absence of any subdriver,\nBUT, if a subdriver IS enabled, then it must be reachable according to\nthe linkage of the interface driver: effectively what the IS_REACHABLE()\nmacro achieves. If it is not reachable, the above kind of linker error\nwill be observed.\n\nRather than papering over the above build error by simply using\nIS_REACHABLE(), we can do a little better and admit that it is actually\nthe interface drivers that have a dependency on the subdrivers. So this\npatch does exactly that. Specifically, we ensure that:\n\n1. The interface drivers\u0027 Kconfig symbols must have a value no greater\n   than the value of any subdriver Kconfig symbols.\n\n2. The subdrivers should by default enable both interface drivers, since\n   most users probably want at least one of them; those interface\n   drivers can be explicitly disabled however.\n\nWhat this doesn\u0027t do is prevent a user from building only a subdriver,\nwithout any interface driver. To that end, add an additional line of\nhelp in the menu to guide users in the right direction.\n\nLink: https://lore.kernel.org/all/202204110757.XIafvVnj-lkp@intel.com/\nReported-by: kernel test robot \u003clkp@intel.com\u003e\nFixes: aac94001067d (\"net: dsa: realtek: add new mdio interface for drivers\")\nSigned-off-by: Alvin Šipraga \u003calsi@bang-olufsen.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "9386ebccfc599de5578a278ffb16d90cc696969a"
}
