In the Linux kernel, the following vulnerability has been resolved:
RDMA/rtrs: Ensure 'ib_sge list' is accessible
Move the declaration of the 'ibsge list' variable outside the 'alwaysinvalidate' block to ensure it remains accessible for use throughout the function.
Previously, 'ibsge list' was declared within the 'alwaysinvalidate' block, limiting its accessibility, then caused a 'BUG: kernel NULL pointer dereference'[1]. ? _diebody.cold+0x19/0x27 ? pagefaultoops+0x15a/0x2d0 ? searchmoduleextables+0x19/0x60 ? searchbpfextables+0x5f/0x80 ? excpagefault+0x7e/0x180 ? asmexcpagefault+0x26/0x30 ? memcpyorig+0xd5/0x140 rxemrcopy+0x1c3/0x200 [rdmarxe] ? rxepoolgetindex+0x4b/0x80 [rdmarxe] copydata+0xa5/0x230 [rdmarxe] rxerequester+0xd9b/0xf70 [rdmarxe] ? finishtaskswitch.isra.0+0x99/0x2e0 rxesender+0x13/0x40 [rdmarxe] dotask+0x68/0x1e0 [rdmarxe] processonework+0x177/0x330 workerthread+0x252/0x390 ? _pfxworker_thread+0x10/0x10
This change ensures the variable is available for subsequent operations that require it.
[1] https://lore.kernel.org/linux-rdma/6a1f3e8f-deb0-49f9-bc69-a9b03ecfcda7@fujitsu.com/
{ "vanir_signatures": [ { "signature_type": "Line", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c" }, "id": "CVE-2024-36476-22b24997", "digest": { "threshold": 0.9, "line_hashes": [ "312994844504447154132881805446161640719", "299314145584067606105556907679323565929", "249637820274696052066640135296271689398", "26159228862614145340414907354104693564", "15734508680527362283200429100902984503", "155130488007952262730582121127178255211", "327256690672926394694400064861501564948", "148086347771305507661033558474470655618" ] }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b238f61cc394d5fef27b26d7d9aa383ebfddabb0", "signature_version": "v1" }, { "signature_type": "Line", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c" }, "id": "CVE-2024-36476-3fbda0a4", "digest": { "threshold": 0.9, "line_hashes": [ "312994844504447154132881805446161640719", "299314145584067606105556907679323565929", "249637820274696052066640135296271689398", "26159228862614145340414907354104693564", "15734508680527362283200429100902984503", "155130488007952262730582121127178255211", "327256690672926394694400064861501564948", "148086347771305507661033558474470655618" ] }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@32e1e748a85bd52b20b3857d80fd166d22fa455a", "signature_version": "v1" }, { "signature_type": "Function", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c", "function": "send_io_resp_imm" }, "id": "CVE-2024-36476-5e807f6d", "digest": { "length": 2459.0, "function_hash": "223736718569445264142552360885034811415" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7eaa71f56a6f7ab87957213472dc6d4055862722", "signature_version": "v1" }, { "signature_type": "Line", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c" }, "id": "CVE-2024-36476-965539cb", "digest": { "threshold": 0.9, "line_hashes": [ "312994844504447154132881805446161640719", "299314145584067606105556907679323565929", "249637820274696052066640135296271689398", "26159228862614145340414907354104693564", "15734508680527362283200429100902984503", "155130488007952262730582121127178255211", "327256690672926394694400064861501564948", "148086347771305507661033558474470655618" ] }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@fb514b31395946022f13a08e06a435f53cf9e8b3", "signature_version": "v1" }, { "signature_type": "Line", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c" }, "id": "CVE-2024-36476-9ed2ed38", "digest": { "threshold": 0.9, "line_hashes": [ "312994844504447154132881805446161640719", "299314145584067606105556907679323565929", "249637820274696052066640135296271689398", "26159228862614145340414907354104693564", "15734508680527362283200429100902984503", "155130488007952262730582121127178255211", "327256690672926394694400064861501564948", "148086347771305507661033558474470655618" ] }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@143378075904e78b3b2a810099bcc3b3d82d762f", "signature_version": "v1" }, { "signature_type": "Function", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c", "function": "send_io_resp_imm" }, "id": "CVE-2024-36476-ac546c85", "digest": { "length": 2470.0, "function_hash": "196832869293510459519140979519346699311" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6ffb5c1885195ae5211a12b4acd2d51843ca41b0", "signature_version": "v1" }, { "signature_type": "Function", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c", "function": "send_io_resp_imm" }, "id": "CVE-2024-36476-d6abadfc", "digest": { "length": 2415.0, "function_hash": "272867208050007241050771473198160023548" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@143378075904e78b3b2a810099bcc3b3d82d762f", "signature_version": "v1" }, { "signature_type": "Line", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c" }, "id": "CVE-2024-36476-dbffda88", "digest": { "threshold": 0.9, "line_hashes": [ "112187515505917575497502562422233052386", "299314145584067606105556907679323565929", "249637820274696052066640135296271689398", "26159228862614145340414907354104693564", "15734508680527362283200429100902984503", "155130488007952262730582121127178255211", "107268779396737107441414810784263754736", "199465161169059379752678816208802953749" ] }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7eaa71f56a6f7ab87957213472dc6d4055862722", "signature_version": "v1" }, { "signature_type": "Line", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c" }, "id": "CVE-2024-36476-e6454c64", "digest": { "threshold": 0.9, "line_hashes": [ "312994844504447154132881805446161640719", "299314145584067606105556907679323565929", "249637820274696052066640135296271689398", "26159228862614145340414907354104693564", "15734508680527362283200429100902984503", "155130488007952262730582121127178255211", "327256690672926394694400064861501564948", "148086347771305507661033558474470655618" ] }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6ffb5c1885195ae5211a12b4acd2d51843ca41b0", "signature_version": "v1" }, { "signature_type": "Function", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c", "function": "send_io_resp_imm" }, "id": "CVE-2024-36476-ee617c30", "digest": { "length": 2470.0, "function_hash": "196832869293510459519140979519346699311" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b238f61cc394d5fef27b26d7d9aa383ebfddabb0", "signature_version": "v1" }, { "signature_type": "Function", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c", "function": "send_io_resp_imm" }, "id": "CVE-2024-36476-f3ec2b8d", "digest": { "length": 2470.0, "function_hash": "196832869293510459519140979519346699311" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@fb514b31395946022f13a08e06a435f53cf9e8b3", "signature_version": "v1" }, { "signature_type": "Function", "target": { "file": "drivers/infiniband/ulp/rtrs/rtrs-srv.c", "function": "send_io_resp_imm" }, "id": "CVE-2024-36476-fea0eed8", "digest": { "length": 2470.0, "function_hash": "196832869293510459519140979519346699311" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@32e1e748a85bd52b20b3857d80fd166d22fa455a", "signature_version": "v1" } ] }