On Wed, Aug 25, 2021 at 6:41 AM Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > > On Wed, 2021-08-25 at 06:36 -0700, Dan Williams wrote: > > > > > > > > > > The problem here is that cpuid_eax() and cpuid_ebx() don't even exist on > > > [snip] > > > It can't compile because the arch dependencies are not stubbed out > > like other arch specific helpers. I think this is something to revisit > > if / when concepts similar to the "enqcmd" instruction appear on other > > archs. > > I think you're confusing ioat and idxd? :) > Whoops, indeed I am, sorry for that noise. > The ioat driver (which this patch is against) uses cpuid_eax() and > cpuid_ebx() above, and really if a driver uses that then it can only > possibly run on IA :) True. > I'm not sure it makes sense to abstract out things such as > dca_enabled_in_bios() to a general architecture thing either? Not general arch in this case, but a preference to keep x86'isms out of drivers. That helper can move behind some local header ifdef'ery and return false when needed. That said IOAT is mature, Vinod has already taken this as is, and the commit that added it pre-dated CONFIG_COMPILE_TEST by 6 years, so it can be forgiven.