In the Linux kernel, the following vulnerability has been resolved:
net: mdiobus: fix unbalanced node reference count
I got the following report while doing device(mscc-miim) load test with CONFIGOFUNITTEST and CONFIGOFDYNAMIC enabled:
OF: ERROR: memory leak, expected refcount 1 instead of 2, ofnodeget()/ofnodeput() unbalanced - destroy cset entry: attach overlay node /spi/soc@0/mdio@7107009c/ethernet-phy@0
If the 'fwnode' is not an acpi node, the refcount is get in fwnodemdiobusphydeviceregister(), but it has never been put when the device is freed in the normal path. So call fwnodehandleput() in phydevicerelease() to avoid leak.
If it's an acpi node, it has never been get, but it's put in the error path, so call fwnodehandleget() before phydeviceregister() to keep get/put operation balanced.
{ "vanir_signatures": [ { "target": { "file": "drivers/net/mdio/fwnode_mdio.c", "function": "fwnode_mdiobus_register_phy" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2708b357440427d6a9fee667eb7b8307f4625adc", "digest": { "length": 946.0, "function_hash": "206369008473237629103635501755946581163" }, "deprecated": false, "id": "CVE-2022-49016-1e2d3e94", "signature_type": "Function", "signature_version": "v1" }, { "target": { "file": "drivers/net/phy/phy_device.c" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2708b357440427d6a9fee667eb7b8307f4625adc", "digest": { "threshold": 0.9, "line_hashes": [ "95074494671049175860470845947260836356", "193660856583917591712509917462886635091", "44730505593811830096899842275496078258", "186760641805473872502138111867938479178" ] }, "deprecated": false, "id": "CVE-2022-49016-3b4330f6", "signature_type": "Line", "signature_version": "v1" }, { "target": { "file": "drivers/net/phy/phy_device.c", "function": "phy_device_release" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2708b357440427d6a9fee667eb7b8307f4625adc", "digest": { "length": 77.0, "function_hash": "198116239689472689870110612360515563622" }, "deprecated": false, "id": "CVE-2022-49016-63f948a6", "signature_type": "Function", "signature_version": "v1" }, { "target": { "file": "drivers/net/mdio/fwnode_mdio.c", "function": "fwnode_mdiobus_register_phy" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cdde1560118f82498fc9e9a7c1ef7f0ef7755891", "digest": { "length": 1139.0, "function_hash": "153035345187954118318879631704036494681" }, "deprecated": false, "id": "CVE-2022-49016-69495937", "signature_type": "Function", "signature_version": "v1" }, { "target": { "file": "drivers/net/phy/phy_device.c" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@543d917f691ab06885ee779c862065899eaa4251", "digest": { "threshold": 0.9, "line_hashes": [ "95074494671049175860470845947260836356", "193660856583917591712509917462886635091", "44730505593811830096899842275496078258", "186760641805473872502138111867938479178" ] }, "deprecated": false, "id": "CVE-2022-49016-825855f9", "signature_type": "Line", "signature_version": "v1" }, { "target": { "file": "drivers/net/mdio/fwnode_mdio.c" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cdde1560118f82498fc9e9a7c1ef7f0ef7755891", "digest": { "threshold": 0.9, "line_hashes": [ "234821440306602979865896169972579826526", "164114980967537113533187550604577556480", "232642503574430282368621138851914741611", "254773457988584592777178900108427333254" ] }, "deprecated": false, "id": "CVE-2022-49016-b63c2887", "signature_type": "Line", "signature_version": "v1" }, { "target": { "file": "drivers/net/phy/phy_device.c" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cdde1560118f82498fc9e9a7c1ef7f0ef7755891", "digest": { "threshold": 0.9, "line_hashes": [ "95074494671049175860470845947260836356", "193660856583917591712509917462886635091", "44730505593811830096899842275496078258", "186760641805473872502138111867938479178" ] }, "deprecated": false, "id": "CVE-2022-49016-c1b23af3", "signature_type": "Line", "signature_version": "v1" }, { "target": { "file": "drivers/net/phy/phy_device.c", "function": "phy_device_release" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@543d917f691ab06885ee779c862065899eaa4251", "digest": { "length": 77.0, "function_hash": "198116239689472689870110612360515563622" }, "deprecated": false, "id": "CVE-2022-49016-c4551fd4", "signature_type": "Function", "signature_version": "v1" }, { "target": { "file": "drivers/net/mdio/fwnode_mdio.c" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2708b357440427d6a9fee667eb7b8307f4625adc", "digest": { "threshold": 0.9, "line_hashes": [ "234821440306602979865896169972579826526", "164114980967537113533187550604577556480", "232642503574430282368621138851914741611", "182081209681462190784819387729048204024" ] }, "deprecated": false, "id": "CVE-2022-49016-c509d7a3", "signature_type": "Line", "signature_version": "v1" }, { "target": { "file": "drivers/net/phy/phy_device.c", "function": "phy_device_release" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cdde1560118f82498fc9e9a7c1ef7f0ef7755891", "digest": { "length": 77.0, "function_hash": "198116239689472689870110612360515563622" }, "deprecated": false, "id": "CVE-2022-49016-e284c8a6", "signature_type": "Function", "signature_version": "v1" }, { "target": { "file": "drivers/net/mdio/fwnode_mdio.c" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@543d917f691ab06885ee779c862065899eaa4251", "digest": { "threshold": 0.9, "line_hashes": [ "234821440306602979865896169972579826526", "164114980967537113533187550604577556480", "232642503574430282368621138851914741611", "182081209681462190784819387729048204024" ] }, "deprecated": false, "id": "CVE-2022-49016-e8735761", "signature_type": "Line", "signature_version": "v1" }, { "target": { "file": "drivers/net/mdio/fwnode_mdio.c", "function": "fwnode_mdiobus_register_phy" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@543d917f691ab06885ee779c862065899eaa4251", "digest": { "length": 946.0, "function_hash": "206369008473237629103635501755946581163" }, "deprecated": false, "id": "CVE-2022-49016-fd57682c", "signature_type": "Function", "signature_version": "v1" } ] }