Skip to content
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

Does not build on Kernel 6.7+ #140

Closed
ich777 opened this issue Mar 6, 2024 · 15 comments
Closed

Does not build on Kernel 6.7+ #140

ich777 opened this issue Mar 6, 2024 · 15 comments

Comments

@ich777
Copy link
Contributor

ich777 commented Mar 6, 2024

i915-sriov does not build on Kernel version 6.7.8 and reports that message:

usr/src/i915-sriov-dkms/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: implicit declaration of function 'INTEL_MTL_M_IDS'; did you mean 'INTEL_MTL_IDS'? [-Werror=implicit-function-declaration]
  220 |         INTEL_MTL_M_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/usr/src/i915-sriov-dkms/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: initializer element is not constant
/usr/src/i915-sriov-dkms/drivers/gpu/drm/i915/intel_device_info.c:220:9: note: (near initialization for 'subplatform_m_ids[0]')
  CC [M]  /usr/src/i915-sriov-dkms/drivers/gpu/drm/i915/i915_mm.o
/usr/src/i915-sriov-dkms/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: implicit declaration of function 'INTEL_MTL_P_IDS'; did you mean 'INTEL_MTL_IDS'? [-Werror=implicit-function-declaration]
  224 |         INTEL_MTL_P_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/usr/src/i915-sriov-dkms/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: initializer element is not constant

@a17t did you yet build against a newer Kernel, I think it has to do because they got rid of the subplatforms see here.

@YuriTukhachevsky
Copy link

Same issue here on Kernel version 6.7.7-1.1 with exactly the same output

/var/lib/dkms/i915-sriov-dkms/6.7/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: implicit declaration of function ‘INTEL_MTL_M_IDS’; did you mean ‘INTEL_MTL_IDS’? [-Werror=implicit-function-declaration]
  220 |         INTEL_MTL_M_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/var/lib/dkms/i915-sriov-dkms/6.7/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: initializer element is not constant
/var/lib/dkms/i915-sriov-dkms/6.7/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: note: (near initialization for ‘subplatform_m_ids[0]’)
/var/lib/dkms/i915-sriov-dkms/6.7/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: implicit declaration of function ‘INTEL_MTL_P_IDS’; did you mean ‘INTEL_MTL_IDS’? [-Werror=implicit-function-declaration]
  224 |         INTEL_MTL_P_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/var/lib/dkms/i915-sriov-dkms/6.7/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: initializer element is not constant

Awaiting for solutions

@ich777
Copy link
Contributor Author

ich777 commented Mar 12, 2024

@strongtz do you plan to support Kernel 6.7+?
I just took a quick look at it but it seems that this change is a bit more involved since much changed from what I saw.

@strongtz
Copy link
Owner

@strongtz do you plan to support Kernel 6.7+? I just took a quick look at it but it seems that this change is a bit more involved since much changed from what I saw.

Sorry but I don't use SR-IOV on my machine anymore, so I'm not able to test it. :(

@ich777
Copy link
Contributor Author

ich777 commented Mar 26, 2024

Sorry but I don't use SR-IOV on my machine anymore, so I'm not able to test it. :(

Oh no too bad...
So the project is basically dead or better speaking relies on community support to keep it alive? :/

@chchia
Copy link

chchia commented Mar 31, 2024

this is the biggest bad news....

@lintush
Copy link

lintush commented Mar 31, 2024

it seems intel i915 sr-iov patch is mainlined in kernel 6.9.
https://www.phoronix.com/news/Intel-Xe-DRM-Linux-6.9-Pull
i'm planning to buy N100(alder) pc for vm host. could someone test new 6.9 mainline kernel to check sr-iov working on alder or later?

@KaarelP2rtel
Copy link

@lintush you seem to be wrong. They started work on supporting sr-iov for the new xe driver. Nothing on i915 yet.

@lintush
Copy link

lintush commented Apr 1, 2024

@lintush you seem to be wrong. They started work on supporting sr-iov for the new xe driver. Nothing on i915 yet.

oh I miswrote. you're correct currently i915 has no sriov support on mainline. the new "xe" driver for tiger lake and newer gpu (event it don't have "Xe" branding...) seem to have support on mainline 6.9. sorry for inconvenience I just want someone to test :)
I think the users of 6.7.8 can smoothly move to 6.9 if the xe driver works.

@KaarelP2rtel
Copy link

Sriov does not work yet. All they have done is started working on sriov full support.
I tried 6.9 and after forcing xe driver usage I was not able to sriov working.

https://www.reddit.com/r/VFIO/comments/17sw0bt/intel_begins_sorting_out_sriov_support_for_the_xe/

@NovaPixell
Copy link

NovaPixell commented Apr 24, 2024

Same issue while building dkms for 6.8.4-2 PVE, for Intel N95 GPU

/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: implicit declaration of function ‘INTEL_MTL_M_IDS’; did you mean ‘INTEL_MTL_IDS’? [-Werror=implicit-function-declaration]
  220 |         INTEL_MTL_M_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: initializer element is not constant
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: note: (near initialization for ‘subplatform_m_ids[0]’)
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: implicit declaration of function ‘INTEL_MTL_P_IDS’; did you mean ‘INTEL_MTL_IDS’? [-Werror=implicit-function-declaration]
  224 |         INTEL_MTL_P_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: initializer element is not constant
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: note: (near initialization for ‘subplatform_p_ids[0]’)
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.8.4-2-pve/Makefile:1926: /var/lib/dkms/i915-sriov-dkms/6.8.4-2/build] Error 2
make: *** [Makefile:240: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.8.4-2-pve'

Will the repo be updated to fix the bug? Or is it something that will take a long time?

@ich777
Copy link
Contributor Author

ich777 commented Apr 25, 2024

@NovaPixell 4th comment in this issue from @strongtz

If someone has the time/hardware to create a PR and submit it then it would be totally possible. I would also recommend that you read the whole issue.

@ich777 ich777 changed the title Does not build on Kernel 6.7.8 Does not build on Kernel 6.7+ Apr 25, 2024
@Hell0wor1d
Copy link

Same issue while building dkms for 6.8.4-2 PVE, for Intel N95 GPU

/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: implicit declaration of function ‘INTEL_MTL_M_IDS’; did you mean ‘INTEL_MTL_IDS’? [-Werror=implicit-function-declaration]
  220 |         INTEL_MTL_M_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: error: initializer element is not constant
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:220:9: note: (near initialization for ‘subplatform_m_ids[0]’)
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: implicit declaration of function ‘INTEL_MTL_P_IDS’; did you mean ‘INTEL_MTL_IDS’? [-Werror=implicit-function-declaration]
  224 |         INTEL_MTL_P_IDS(0),
      |         ^~~~~~~~~~~~~~~
      |         INTEL_MTL_IDS
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: error: initializer element is not constant
/var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.c:224:9: note: (near initialization for ‘subplatform_p_ids[0]’)
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/i915-sriov-dkms/6.8.4-2/build/drivers/gpu/drm/i915/intel_device_info.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.8.4-2-pve/Makefile:1926: /var/lib/dkms/i915-sriov-dkms/6.8.4-2/build] Error 2
make: *** [Makefile:240: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.8.4-2-pve'

Will the repo be updated to fix the bug? Or is it something that will take a long time?

me too, could anyone help to fix the issue?

@shenwii
Copy link
Contributor

shenwii commented May 7, 2024

I posted a PR try to fix this.
#168

@ich777
Copy link
Contributor Author

ich777 commented May 7, 2024

@shenwii builds fine against 6.7.12, have to do some testing and report back. Great work so far! Thanks!

BTW the build fails against 6.8.9 which I already mentioned in your PR

@ich777
Copy link
Contributor Author

ich777 commented May 7, 2024

Fixed in #168

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants