This allows to remove unimplemented attrs parameter which type differs
between Linux kernel versions and to compile both drm-kmod and ofed
callers unmodified.
Also convert it to 'unsigned long' type to match modern Linuxes.
Details
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Just tried, and it succeeded.
If I understand build process correctly, OFED builds even if WITH_OFED is not included. It goes through sys/modules hierarchy
The one thing which scares me is to use unsigned long for pointers, which I think is not a good idea (and a bad Linuxism).
Would uintptr_t work between 32/64bit archs?
All of the LinuxKPI builds on that sizeof(long) == sizeof(void *) --- yeah bad Linux :-)
We even have an compile time assert for that.
Linux does not use unsigned long for pointers here. Initially they stored attrs as array of unsigned longs and passed it by reference. But after attrs stabilized, it is appeared that they fit in one byte and array of unsigned longs was replaced with single unsigned long passed directly.
Ok. Thanks for the explanation. I guess we can also mark some of them __unused but I am good.