In the Linux kernel, the following vulnerability has been resolved:
net/mlx5: Fix peer devlink set for SF representor devlink port
The cited patch change register devlink flow, and neglect to reflect the changes for peer devlink set logic. Peer devlink set is triggering a call trace if done after devl_register.[1]
Hence, align peer devlink set logic with register devlink flow.
[1] WARNING: CPU: 4 PID: 3394 at net/devlink/core.c:155 devlinkrelnestedinadd+0x177/0x180 CPU: 4 PID: 3394 Comm: kworker/u40:1 Not tainted 6.9.0-rc4forlinustmindebug202404161408 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 Workqueue: mlx5vhcaevent0 mlx5vhcastateworkhandler [mlx5core] RIP: 0010:devlinkrelnestedinadd+0x177/0x180 Call Trace: <TASK> ? _warn+0x78/0x120 ? devlinkrelnestedinadd+0x177/0x180 ? reportbug+0x16d/0x180 ? handlebug+0x3c/0x60 ? excinvalidop+0x14/0x70 ? asmexcinvalidop+0x16/0x20 ? devlinkportinit+0x30/0x30 ? devlinkporttypeclear+0x50/0x50 ? devlinkrelnestedinadd+0x177/0x180 ? devlinkrelnestedinadd+0xdd/0x180 mlx5sfmdevevent+0x74/0xb0 [mlx5core] notifiercallchain+0x35/0xb0 blockingnotifiercallchain+0x3d/0x60 mlx5blockingnotifiercallchain+0x22/0x30 [mlx5core] mlx5sfdevprobe+0x185/0x3e0 [mlx5core] auxiliarybusprobe+0x38/0x80 ? driversysfsadd+0x51/0x80 reallyprobe+0xc5/0x3a0 ? driverprobedevice+0x90/0x90 _driverprobedevice+0x80/0x160 driverprobedevice+0x1e/0x90 _deviceattachdriver+0x7d/0x100 busforeachdrv+0x80/0xd0 _deviceattach+0xbc/0x1f0 busprobedevice+0x86/0xa0 deviceadd+0x64f/0x860 _auxiliarydeviceadd+0x3b/0xa0 mlx5sfdevadd+0x139/0x330 [mlx5core] mlx5sfdevstatechangehandler+0x1e4/0x250 [mlx5core] notifiercallchain+0x35/0xb0 blockingnotifiercallchain+0x3d/0x60 mlx5vhcastateworkhandler+0x151/0x200 [mlx5core] processonework+0x13f/0x2e0 workerthread+0x2bd/0x3c0 ? rescuerthread+0x410/0x410 kthread+0xc4/0xf0 ? kthreadcompleteandexit+0x20/0x20 retfromfork+0x2d/0x50 ? kthreadcompleteandexit+0x20/0x20 retfromforkasm+0x11/0x20 </TASK>
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/38xxx/CVE-2024-38595.json",
"cna_assigner": "Linux"
}"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-38595.json"
[
{
"id": "CVE-2024-38595-106be8dc",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a0501201751034ebe7a22bd9483ed28fea1cd213",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/main.c",
"function": "mlx5_init_one_light"
},
"digest": {
"function_hash": "317466963560520609835412508526480613592",
"length": 844.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2024-38595-2699739c",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@05d9d7b66836d87c914f8fdd4b062b78e373458d",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/sf/dev/driver.c",
"function": "mlx5_sf_dev_probe"
},
"digest": {
"function_hash": "53382015387559154771275984869220863334",
"length": 1535.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2024-38595-304c83f1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3c453e8cc672de1f9c662948dba43176bc68d7f0",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/main.c",
"function": "mlx5_init_one_light"
},
"digest": {
"function_hash": "317466963560520609835412508526480613592",
"length": 844.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2024-38595-332813b4",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a0501201751034ebe7a22bd9483ed28fea1cd213",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/sf/dev/driver.c",
"function": "mlx5_sf_dev_probe"
},
"digest": {
"function_hash": "53382015387559154771275984869220863334",
"length": 1535.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2024-38595-38171206",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3c453e8cc672de1f9c662948dba43176bc68d7f0",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/sf/dev/driver.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"43566388276371427771522929428742773790",
"22478787560540712494923826515894835501",
"118235057016412604981259437432119691433",
"157601007295630851527511156512516191612",
"207801697323681440906730957849640794695",
"205274781736607270687547563992001904915",
"213722988710581690308470470444302967038",
"339541294379764826058808822164399286400",
"118628234762107599322466714594205595683",
"121246855987475766795553112924691663427",
"24201862727236810840084017060266834412",
"2924182044171401523946862084011608082",
"319872018870422970048407364580303348081",
"25479986848566633723461889323725047700",
"275605672991852530101965093500317655794",
"35124861070698663962474873725662593134",
"268164248715175329174404166230443797473",
"248301972584568322910595886701592433971"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2024-38595-3c09a4ba",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@05d9d7b66836d87c914f8fdd4b062b78e373458d",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/main.c",
"function": "mlx5_init_one_light"
},
"digest": {
"function_hash": "317466963560520609835412508526480613592",
"length": 844.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2024-38595-4bd815ce",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a0501201751034ebe7a22bd9483ed28fea1cd213",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/main.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"198923853698729845709356857699422179528",
"50571995864666867983594150757313153827",
"253012341945577287797394459094301722485",
"40492528607021149608418994310473650872",
"117593258654067499939583991428601755418",
"114817397210725323535241284899930263307",
"210074184143293905200586209759246797523",
"121938378775507688548124103440168332504",
"195060809821610726200197676879443601025",
"285790439379412356976805205811939975046",
"73415660627716948982510651668524134965",
"142544091572675372523132277534481865877",
"193986762541378492257408877969277951744",
"178890110573483963940574281214912968966",
"136591355319465843351509347917300657153",
"287536057142800404065230486803659214886",
"309163473885185476387069333737612017700",
"203382478187193864605879022889936732695",
"335099269243814827907948270640508577568",
"83785272968255150436365021076324419489",
"289965320784836071605855460125905447804",
"334435313033088427012293089686756736669",
"124866437721674838372311192890704463393",
"50830421475529414989897062523782995814"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2024-38595-6016eb1a",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@05d9d7b66836d87c914f8fdd4b062b78e373458d",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/sf/dev/driver.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"43566388276371427771522929428742773790",
"22478787560540712494923826515894835501",
"118235057016412604981259437432119691433",
"157601007295630851527511156512516191612",
"207801697323681440906730957849640794695",
"205274781736607270687547563992001904915",
"213722988710581690308470470444302967038",
"339541294379764826058808822164399286400",
"118628234762107599322466714594205595683",
"121246855987475766795553112924691663427",
"24201862727236810840084017060266834412",
"2924182044171401523946862084011608082",
"319872018870422970048407364580303348081",
"25479986848566633723461889323725047700",
"275605672991852530101965093500317655794",
"35124861070698663962474873725662593134",
"268164248715175329174404166230443797473",
"248301972584568322910595886701592433971"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2024-38595-89629264",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3c453e8cc672de1f9c662948dba43176bc68d7f0",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/main.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"198923853698729845709356857699422179528",
"50571995864666867983594150757313153827",
"253012341945577287797394459094301722485",
"40492528607021149608418994310473650872",
"117593258654067499939583991428601755418",
"114817397210725323535241284899930263307",
"210074184143293905200586209759246797523",
"121938378775507688548124103440168332504",
"195060809821610726200197676879443601025",
"285790439379412356976805205811939975046",
"73415660627716948982510651668524134965",
"142544091572675372523132277534481865877",
"193986762541378492257408877969277951744",
"178890110573483963940574281214912968966",
"136591355319465843351509347917300657153",
"287536057142800404065230486803659214886",
"309163473885185476387069333737612017700",
"203382478187193864605879022889936732695",
"335099269243814827907948270640508577568",
"83785272968255150436365021076324419489",
"289965320784836071605855460125905447804",
"334435313033088427012293089686756736669",
"124866437721674838372311192890704463393",
"50830421475529414989897062523782995814"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2024-38595-9db0d376",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@05d9d7b66836d87c914f8fdd4b062b78e373458d",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/main.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"198923853698729845709356857699422179528",
"50571995864666867983594150757313153827",
"253012341945577287797394459094301722485",
"40492528607021149608418994310473650872",
"117593258654067499939583991428601755418",
"114817397210725323535241284899930263307",
"210074184143293905200586209759246797523",
"121938378775507688548124103440168332504",
"195060809821610726200197676879443601025",
"285790439379412356976805205811939975046",
"73415660627716948982510651668524134965",
"142544091572675372523132277534481865877",
"193986762541378492257408877969277951744",
"178890110573483963940574281214912968966",
"136591355319465843351509347917300657153",
"287536057142800404065230486803659214886",
"309163473885185476387069333737612017700",
"203382478187193864605879022889936732695",
"335099269243814827907948270640508577568",
"83785272968255150436365021076324419489",
"289965320784836071605855460125905447804",
"334435313033088427012293089686756736669",
"124866437721674838372311192890704463393",
"50830421475529414989897062523782995814"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2024-38595-c1400498",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a0501201751034ebe7a22bd9483ed28fea1cd213",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/sf/dev/driver.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"43566388276371427771522929428742773790",
"22478787560540712494923826515894835501",
"118235057016412604981259437432119691433",
"157601007295630851527511156512516191612",
"207801697323681440906730957849640794695",
"205274781736607270687547563992001904915",
"213722988710581690308470470444302967038",
"339541294379764826058808822164399286400",
"118628234762107599322466714594205595683",
"121246855987475766795553112924691663427",
"24201862727236810840084017060266834412",
"2924182044171401523946862084011608082",
"319872018870422970048407364580303348081",
"25479986848566633723461889323725047700",
"275605672991852530101965093500317655794",
"35124861070698663962474873725662593134",
"268164248715175329174404166230443797473",
"248301972584568322910595886701592433971"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2024-38595-cf71f55b",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3c453e8cc672de1f9c662948dba43176bc68d7f0",
"target": {
"file": "drivers/net/ethernet/mellanox/mlx5/core/sf/dev/driver.c",
"function": "mlx5_sf_dev_probe"
},
"digest": {
"function_hash": "53382015387559154771275984869220863334",
"length": 1535.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
}
]