Bug 2385604 - rust-drm-ffi: FTBFS in Fedora rawhide/f43
Summary: rust-drm-ffi: FTBFS in Fedora rawhide/f43
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: rust-drm-ffi
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Rust SIG
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: F43FTBFS 2385603
TreeView+ depends on / blocked
 
Reported: 2025-07-31 10:58 UTC by Fedora Release Engineering
Modified: 2025-08-18 12:56 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2025-08-18 12:56:17 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
build.log (32.00 KB, text/plain)
2025-07-31 10:58 UTC, Fedora Release Engineering
no flags Details
root.log (32.00 KB, text/plain)
2025-07-31 10:58 UTC, Fedora Release Engineering
no flags Details
state.log (1.66 KB, text/plain)
2025-07-31 10:58 UTC, Fedora Release Engineering
no flags Details

Description Fedora Release Engineering 2025-07-31 10:58:32 UTC
rust-drm-ffi failed to build from source in Fedora rawhide/f43

https://koji.fedoraproject.org/koji/taskinfo?taskID=135254552


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
Please fix rust-drm-ffi at your earliest convenience and set the bug's status to
ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks,
rust-drm-ffi will be orphaned. Before branching of Fedora 44,
rust-drm-ffi will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/

Comment 1 Fedora Release Engineering 2025-07-31 10:58:38 UTC
Created attachment 2101710 [details]
build.log

file build.log too big, will only attach last 32768 bytes

Comment 2 Fedora Release Engineering 2025-07-31 10:58:44 UTC
Created attachment 2101711 [details]
root.log

file root.log too big, will only attach last 32768 bytes

Comment 3 Fedora Release Engineering 2025-07-31 10:58:48 UTC
Created attachment 2101712 [details]
state.log

Comment 4 Fabio Valentini 2025-07-31 15:15:18 UTC
As far as I can tell, this issue is caused by libdrm adding a field to a struct that's in the API surface between 2.4.124 and 2.4.125:

"""
error[E0063]: missing field `point` in initializer of `drm_sys::drm_syncobj_handle`
  --> src/syncobj.rs:48:20
   |
48 |     let mut args = drm_syncobj_handle {
   |                    ^^^^^^^^^^^^^^^^^^ missing `point`
error[E0063]: missing field `point` in initializer of `drm_sys::drm_syncobj_handle`
  --> src/syncobj.rs:72:20
   |
72 |     let mut args = drm_syncobj_handle {
   |                    ^^^^^^^^^^^^^^^^^^ missing `point`
"""

The generated bindings pick up the change from the headers, but the "high-level" bindings in the drm-ffi and drm crates need to be adapted.

(I'm not sure why adding a field to a struct wasn't considered a breaking ABI change here ...)

Comment 5 Fabio Valentini 2025-08-18 12:56:17 UTC
Fixed by backporting upstream commit for these kernel / drm header changes:

https://bodhi.fedoraproject.org/updates/FEDORA-2025-4b8dc1dc53
https://bodhi.fedoraproject.org/updates/FEDORA-2025-dbc1cec24c


Note You need to log in before you can comment on or make changes to this bug.