{"id":"CVE-2021-47180","state":"PUBLISHED","title":"NFC: nci: fix memory leak in nci_allocate_device","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nNFC: nci: fix memory leak in nci_allocate_device\n\nnfcmrvl_disconnect fails to free the hci_dev field in struct nci_dev.\nFix this by freeing hci_dev in nci_free_device.\n\nBUG: memory leak\nunreferenced object 0xffff888111ea6800 (size 1024):\n  comm \"kworker/1:0\", pid 19, jiffies 4294942308 (age 13.580s)\n  hex dump (first 32 bytes):\n    00 00 00 00 00 00 00 00 00 60 fd 0c 81 88 ff ff  .........`......\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [<000000004bc25d43>] kmalloc include/linux/slab.h:552 [inline]\n    [<000000004bc25d43>] kzalloc include/linux/slab.h:682 [inline]\n    [<000000004bc25d43>] nci_hci_allocate+0x21/0xd0 net/nfc/nci/hci.c:784\n    [<00000000c59cff92>] nci_allocate_device net/nfc/nci/core.c:1170 [inline]\n    [<00000000c59cff92>] nci_allocate_device+0x10b/0x160 net/nfc/nci/core.c:1132\n    [<00000000006e0a8e>] nfcmrvl_nci_register_dev+0x10a/0x1c0 drivers/nfc/nfcmrvl/main.c:153\n    [<000000004da1b57e>] nfcmrvl_probe+0x223/0x290 drivers/nfc/nfcmrvl/usb.c:345\n    [<00000000d506aed9>] usb_probe_interface+0x177/0x370 drivers/usb/core/driver.c:396\n    [<00000000bc632c92>] really_probe+0x159/0x4a0 drivers/base/dd.c:554\n    [<00000000f5009125>] driver_probe_device+0x84/0x100 drivers/base/dd.c:740\n    [<000000000ce658ca>] __device_attach_driver+0xee/0x110 drivers/base/dd.c:846\n    [<000000007067d05f>] bus_for_each_drv+0xb7/0x100 drivers/base/bus.c:431\n    [<00000000f8e13372>] __device_attach+0x122/0x250 drivers/base/dd.c:914\n    [<000000009cf68860>] bus_probe_device+0xc6/0xe0 drivers/base/bus.c:491\n    [<00000000359c965a>] device_add+0x5be/0xc30 drivers/base/core.c:3109\n    [<00000000086e4bd3>] usb_set_configuration+0x9d9/0xb90 drivers/usb/core/message.c:2164\n    [<00000000ca036872>] usb_generic_driver_probe+0x8c/0xc0 drivers/usb/core/generic.c:238\n    [<00000000d40d36f6>] usb_probe_device+0x5c/0x140 drivers/usb/core/driver.c:293\n    [<00000000bc632c92>] really_probe+0x159/0x4a0 drivers/base/dd.c:554","publishedAt":"2024-03-25T09:16:29.580Z","updatedAt":"2026-05-11T13:49:31.554Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"448a1cb12977f52142e6feb12022c59662d88dc1","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"4a621621c7af3cec21c47c349b30cd9c3cea11c8","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"2c2fb2df46ea866b49fea5ec7112ec3cd4896c74","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"0365701bc44e078682ee1224866a71897495c7ef","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"af2a4426baf71163c0c354580ae98c7888a9aba7","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"b34cb7ac32cc8e5471dc773180ea9ae676b1a745","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"65234f50a90b64b335cbb9164b8a98c2a0d031dd","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"e0652f8bb44d6294eeeac06d703185357f25d50b","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/nfc/nci_core.h","net/nfc/nci/core.c","net/nfc/nci/hci.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.0","versionType":"semver"},{"version":"4.4.271","status":"unaffected","lessThanOrEqual":"4.4.*","versionType":"semver"},{"version":"4.9.271","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.235","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.193","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.123","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.41","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.12.8","status":"unaffected","lessThanOrEqual":"5.12.*","versionType":"semver"},{"version":"5.13","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/nfc/nci_core.h","net/nfc/nci/core.c","net/nfc/nci/hci.c"]}],"references":["https://git.kernel.org/stable/c/448a1cb12977f52142e6feb12022c59662d88dc1","https://git.kernel.org/stable/c/4a621621c7af3cec21c47c349b30cd9c3cea11c8","https://git.kernel.org/stable/c/2c2fb2df46ea866b49fea5ec7112ec3cd4896c74","https://git.kernel.org/stable/c/0365701bc44e078682ee1224866a71897495c7ef","https://git.kernel.org/stable/c/af2a4426baf71163c0c354580ae98c7888a9aba7","https://git.kernel.org/stable/c/b34cb7ac32cc8e5471dc773180ea9ae676b1a745","https://git.kernel.org/stable/c/65234f50a90b64b335cbb9164b8a98c2a0d031dd","https://git.kernel.org/stable/c/e0652f8bb44d6294eeeac06d703185357f25d50b"],"weaknesses":[],"ingestedAt":"2026-10-29T19:49:19.404Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2021/47xxx/CVE-2021-47180.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2021-47180","state":"PUBLISHED","datePublished":"2024-03-25T09:16:29.580Z","dateUpdated":"2026-05-11T13:49:31.554Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-03-25T09:12:14.112Z"},"containers":{"cna":{"title":"NFC: nci: fix memory leak in nci_allocate_device","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nNFC: nci: fix memory leak in nci_allocate_device\n\nnfcmrvl_disconnect fails to free the hci_dev field in struct nci_dev.\nFix this by freeing hci_dev in nci_free_device.\n\nBUG: memory leak\nunreferenced object 0xffff888111ea6800 (size 1024):\n  comm \"kworker/1:0\", pid 19, jiffies 4294942308 (age 13.580s)\n  hex dump (first 32 bytes):\n    00 00 00 00 00 00 00 00 00 60 fd 0c 81 88 ff ff  .........`......\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [<000000004bc25d43>] kmalloc include/linux/slab.h:552 [inline]\n    [<000000004bc25d43>] kzalloc include/linux/slab.h:682 [inline]\n    [<000000004bc25d43>] nci_hci_allocate+0x21/0xd0 net/nfc/nci/hci.c:784\n    [<00000000c59cff92>] nci_allocate_device net/nfc/nci/core.c:1170 [inline]\n    [<00000000c59cff92>] nci_allocate_device+0x10b/0x160 net/nfc/nci/core.c:1132\n    [<00000000006e0a8e>] nfcmrvl_nci_register_dev+0x10a/0x1c0 drivers/nfc/nfcmrvl/main.c:153\n    [<000000004da1b57e>] nfcmrvl_probe+0x223/0x290 drivers/nfc/nfcmrvl/usb.c:345\n    [<00000000d506aed9>] usb_probe_interface+0x177/0x370 drivers/usb/core/driver.c:396\n    [<00000000bc632c92>] really_probe+0x159/0x4a0 drivers/base/dd.c:554\n    [<00000000f5009125>] driver_probe_device+0x84/0x100 drivers/base/dd.c:740\n    [<000000000ce658ca>] __device_attach_driver+0xee/0x110 drivers/base/dd.c:846\n    [<000000007067d05f>] bus_for_each_drv+0xb7/0x100 drivers/base/bus.c:431\n    [<00000000f8e13372>] __device_attach+0x122/0x250 drivers/base/dd.c:914\n    [<000000009cf68860>] bus_probe_device+0xc6/0xe0 drivers/base/bus.c:491\n    [<00000000359c965a>] device_add+0x5be/0xc30 drivers/base/core.c:3109\n    [<00000000086e4bd3>] usb_set_configuration+0x9d9/0xb90 drivers/usb/core/message.c:2164\n    [<00000000ca036872>] usb_generic_driver_probe+0x8c/0xc0 drivers/usb/core/generic.c:238\n    [<00000000d40d36f6>] usb_probe_device+0x5c/0x140 drivers/usb/core/driver.c:293\n    [<00000000bc632c92>] really_probe+0x159/0x4a0 drivers/base/dd.c:554"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"448a1cb12977f52142e6feb12022c59662d88dc1","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"4a621621c7af3cec21c47c349b30cd9c3cea11c8","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"2c2fb2df46ea866b49fea5ec7112ec3cd4896c74","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"0365701bc44e078682ee1224866a71897495c7ef","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"af2a4426baf71163c0c354580ae98c7888a9aba7","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"b34cb7ac32cc8e5471dc773180ea9ae676b1a745","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"65234f50a90b64b335cbb9164b8a98c2a0d031dd","versionType":"git"},{"version":"11f54f228643d0248ec00ce8c9fb8d872f87e7b8","status":"affected","lessThan":"e0652f8bb44d6294eeeac06d703185357f25d50b","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/nfc/nci_core.h","net/nfc/nci/core.c","net/nfc/nci/hci.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.0","versionType":"semver"},{"version":"4.4.271","status":"unaffected","lessThanOrEqual":"4.4.*","versionType":"semver"},{"version":"4.9.271","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.235","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.193","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.123","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.41","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.12.8","status":"unaffected","lessThanOrEqual":"5.12.*","versionType":"semver"},{"version":"5.13","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/nfc/nci_core.h","net/nfc/nci/core.c","net/nfc/nci/hci.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/448a1cb12977f52142e6feb12022c59662d88dc1"},{"url":"https://git.kernel.org/stable/c/4a621621c7af3cec21c47c349b30cd9c3cea11c8"},{"url":"https://git.kernel.org/stable/c/2c2fb2df46ea866b49fea5ec7112ec3cd4896c74"},{"url":"https://git.kernel.org/stable/c/0365701bc44e078682ee1224866a71897495c7ef"},{"url":"https://git.kernel.org/stable/c/af2a4426baf71163c0c354580ae98c7888a9aba7"},{"url":"https://git.kernel.org/stable/c/b34cb7ac32cc8e5471dc773180ea9ae676b1a745"},{"url":"https://git.kernel.org/stable/c/65234f50a90b64b335cbb9164b8a98c2a0d031dd"},{"url":"https://git.kernel.org/stable/c/e0652f8bb44d6294eeeac06d703185357f25d50b"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T13:49:31.554Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"4.4.271"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"4.9.271"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"4.14.235"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"4.19.193"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"5.4.123"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"5.10.41"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"5.12.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"5.13"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2021-47180","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-03-25T13:48:55.834173Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-06-04T17:15:05.970Z"}},{"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/448a1cb12977f52142e6feb12022c59662d88dc1","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/4a621621c7af3cec21c47c349b30cd9c3cea11c8","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/2c2fb2df46ea866b49fea5ec7112ec3cd4896c74","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/0365701bc44e078682ee1224866a71897495c7ef","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/af2a4426baf71163c0c354580ae98c7888a9aba7","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/b34cb7ac32cc8e5471dc773180ea9ae676b1a745","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/65234f50a90b64b335cbb9164b8a98c2a0d031dd","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/e0652f8bb44d6294eeeac06d703185357f25d50b","tags":["x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-04T05:32:07.250Z"}}]}}}