fpga: bridge: add owner module and take its refcount
The current implementation of the fpga bridge assumes that the low-level
module registers a driver for the parent device and uses its owner pointer
to take the module's refcount. This approach is problematic since it can
lead to a null pointer dereference while attempting to get the bridge if
the parent device does not have a driver.
To address this problem, add a module owner pointer to the fpga_bridge
struct and use it to take the module's refcount. Modify the function for
registering a bridge to take an additional owner module parameter and
rename it to avoid conflicts. Use the old function name for a helper macro
that automatically sets the module that registers the bridge as the owner.
This ensures compatibility with existing low-level control modules and
reduces the chances of registering a bridge without setting the owner.
Also, update the documentation to keep it consistent with the new interface
for registering an fpga bridge.
Other changes: opportunistically move put_device() from __fpga_bridge_get()
to fpga_bridge_get() and of_fpga_bridge_get() to improve code clarity since
the bridge device is taken in these functions.
Metrics
Affected Vendors & Products
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-4076-1 | linux-6.1 security update |
Ubuntu USN |
USN-6999-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6999-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7004-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7005-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7005-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7008-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7029-1 | Linux kernel vulnerabilities |
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
Mon, 03 Nov 2025 21:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Mon, 03 Feb 2025 16:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Linux
Linux linux Kernel |
|
| CPEs | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Linux
Linux linux Kernel |
|
| Metrics |
cvssV3_1
|
cvssV3_1
|
Sat, 14 Dec 2024 21:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Sat, 14 Dec 2024 21:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Wed, 11 Sep 2024 18:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Wed, 11 Sep 2024 13:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Status: PUBLISHED
Assigner: Linux
Published:
Updated: 2025-11-03T20:37:46.921Z
Reserved: 2024-06-24T13:53:25.564Z
Link: CVE-2024-36479
Updated: 2025-11-03T20:37:46.921Z
Status : Modified
Published: 2024-06-24T14:15:12.157
Modified: 2025-11-03T21:16:12.697
Link: CVE-2024-36479
OpenCVE Enrichment
No data.
Debian DLA
Ubuntu USN