On Tue, Oct 13 2020 at 08:52, David Woodhouse wrote: > On Tue, 2020-10-13 at 00:13 +0200, Thomas Gleixner wrote: > + dom = irq_find_matching_fwspec(fwspec, DOMAIN_BUS_IR); > + if (dom) > + return IS_ERR(dom) ? NULL : dom; > + > + return x86_vector_domain; > +} > > Ick. There's no need for that. > > Eliminating that awful "if not found then slip the x86_vector_domain in > as a special case" was the whole *point* of using > irq_find_matching_fwspec() in the first place. The point was to get rid of irq_remapping_get_irq_domain(). And TBH, if (apicid_valid(32768)) is just another way to slip the vector domain in. It's just differently awful. Having an explicit answer from the search for IR: - Here is the domain - Your device is not registered properly - IR not enabled or not supported is way more obvious than the above disguised is_remapping_enabled() check. Thanks, tglx