On 12.06.2024 12:52, Roger Pau Monné wrote: > On Wed, Jun 12, 2024 at 10:44:56AM +0200, Jan Beulich wrote: >> It's hardly ever correct to check for just DOMID_SELF, as guests have >> ways to figure out their domain IDs and hence could instead use those as >> inputs to respective hypercalls. Note, however, that for ordinary DomU-s >> the adjustment is relaxing things rather than tightening them, since >> - as a result of XSA-237 - the respective XSM checks would have rejected >> self (un)mapping attempts for other than the control domain. >> >> Since in physdev_map_pirq() handling overall is a little easier this >> way, move obtaining of the domain pointer into the caller. Doing the >> same for physdev_unmap_pirq() is just to keep both consistent in this >> regard. For both this has the advantage that it is now provable (by the >> build not failing) that there are no DOMID_SELF checks left (and none >> could easily be re-added). >> >> Fixes: 0b469cd68708 ("Interrupt remapping to PIRQs in HVM guests") >> Fixes: 9e1a3415b773 ("x86: fixes after emuirq changes") >> Signed-off-by: Jan Beulich <jbeul...@suse.com> > > Acked-by: Roger Pau Monné <roger....@citrix.com>
Thanks. > I wonder if we should introduce a helper to check for the current > domain: > > #define is_current_domain(d) ((d) == current->domain) Hmm, that's not even shorter, and imo not any more "meaningful". Plus it wouldn't cover the case where we have currd already in a local var. Jan