|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just command queue
Hi Volodymyr, On 19/09/2023 12:28, Volodymyr Babchuk wrote: ITS manages Device Tables and Interrupt Translation Tables on its own, so generally we are not interested which shareability and cacheability attributes it uses. But there is one exception: ITS requires that DT and ITT must be initialized with zeroes. If ITS belongs to the Inner Cacheability domain there is no problem at all. But in all other cases we need to do clean CPU caches manually, or otherwise CPU can overwrite DT and ITT entries. From user perspective this looks like interrupts are not delivered from a device. Also, we will rename HOST_ITS_FLUSH_CMD_QUEUE flag to HOST_ITS_FLUSH_BUFFERS because now this flag controls not only command queue. Reading the specification, CBASER will indicate the cacheability for the command queue. But I couldn't find any reference saying this will apply to the ITT as well. If such reference doesn't exist then...
... I think we need to have this flush unconditional like Linux does. Cheers, -- Julien Grall
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |