-
Notifications
You must be signed in to change notification settings - Fork 511
xocl: Fixes for compilation on kernel 6.16+ #9411
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
superm1 - is not a collaborator |
maxzhen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add kernel version check for the iommu and timer related changes so that we can keep the same logic and not break build with older kernel version.
|
ok to test |
|
superm1 - is not a collaborator |
|
clang-tidy review says "All clean, LGTM! 👍" |
|
superm1 - is not a collaborator |
|
ok to test |
|
superm1 - is not a collaborator |
1 similar comment
|
superm1 - is not a collaborator |
|
Anything else needed for me for this? |
3 similar comments
Link: https://git.kernel.org/torvalds/c/6632863226d88 Signed-off-by: Mario Limonciello (AMD) <[email protected]>
|
clang-tidy review says "All clean, LGTM! 👍" |
1b084e0 to
6d32b7a
Compare
Newer kernels are more stringent about the use of const. Link: Xilinx#9300 Signed-off-by: Mario Limonciello (AMD) <[email protected]>
…6.16 Link: https://git.kernel.org/torvalds/c/41cb08555c416 Signed-off-by: Mario Limonciello (AMD) <[email protected]>
Signed-off-by: Mario Limonciello (AMD) <[email protected]>
CC [M] ../../common/kds_hwctx.o
../../common/kds_hwctx.c: In function ‘show_kds_cuctx_stat_raw’:
../../common/kds_hwctx.c:59:41: error: ‘__seg_gs’ specified for auto variable ‘res’
59 | cu_stat_read(cu_mgmt, usage[i]), type);
| ^~~~~~~~~~~~
../../common/kds_hwctx.c:99:49: error: ‘__seg_gs’ specified for auto variable ‘res’
99 | cu_stat_read(cu_mgmt, usage[i]), type);
| ^~~~~~~~~~~~
make[5]: *** [/usr/src/linux-headers-6.17.6+deb14-common/scripts/Makefile.build:292: ../../common/kds_hwctx.o] Error 1
The issue is that the stat_read macro is using typeof on a per-CPU variable field, which newer GCC versions handle
differently for segment-register-based per-CPU variables. The __seg_gs attribute is getting applied to the local
res variable, which is causing a compilation error.
Modify the stat_read macro to avoid the issue with typeof and segment registers.
Signed-off-by: Mario Limonciello (AMD) <[email protected]>
Link: torvalds/linux@cdd30eb Signed-off-by: Mario Limonciello (AMD) <[email protected]>
Signed-off-by: Mario Limonciello (AMD) <[email protected]>
|
Matching change in libqdma: Xilinx/dma_ip_drivers#358 |
|
Is that latest CI failure real? Can you upload the log? http://fisweb.xilinx.com:8080/proj/fis/scripts/buildNumber:3714_1_boardfarm_xilinx_u250_gen3x16_xdma_4_1_202210_1.log seems to be 404 for me. |
|
But FYI this patch series + libqdma one does work properly on kernel 6.17 now. |
Link: https://git.kernel.org/torvalds/c/cb2e1c2136f7 Signed-off-by: Mario Limonciello (AMD) <[email protected]>
Signed-off-by: Mario Limonciello (AMD) <[email protected]>
This at least fixes up the code in XRT. I think there is more work to be done in libqdma.
See #9300