HomeFreeBSD

direct commit: fix KBI for pci_dev

Description

direct commit: fix KBI for pci_dev

Move all the new elemenets to the end of the structure for 13. We
allocate this inside the linuxkpi code, so the size isn't enccoded in
client modules. However, the offsets to the different fields are
encoded. Tihs modifies 04456f711853, 40a215e38a4d, and 3a606aadf2e7
and will likely create merge conflicts there (and that's a good thing
since the elements need to be moved to the end of the structure when
merging).

Tweak irq_ent to be binary compatible. Since this is inlined into the
clients, all clients have to agree on the irq_ent offsets.

Restore visibility to linux_kmem_cache_free_rcu
linux_kmem_cache_free_rcu was made static in 10235ad0567f, however
client drivers depended on calling it directly. Make it visible again to
restore the 13.0-Release KBI for linuxkpi.

Bump FreeBSD_version to 1300515 for restoration of 13.0 KBI. Since this
commmit changes the linuxkpi KBI (this time back to 13.0 release to
restore the status quo of), you'll need to recompile everything that
uses it (you needed to earlier as well, but those were silent
recompilation events). The plus side is that our packages (built using
13.0) for drm-kmod 5.4 work again on -stable systems.

Reviewed by: bz, wulf
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D31363

Details

Provenance
impAuthored on Sep 22 2021, 2:47 PM
Reviewer
bz
Differential Revision
D31363: Fix 13.x KBI for linuxkpi
Parents
rG5d8f8ab1eb40: genoffset.sh: Use 10 X's instead of 5 for pick mkdtemp implementations
Branches
Unknown
Tags
Unknown