On Thu, Apr 06, 2023 at 12:02:01PM +0200, Michal Prívozník wrote: > On 4/6/23 11:20, Andrea Bolognani wrote: > > On Thu, Apr 06, 2023 at 10:20:46AM +0200, Michal Prívozník wrote: > >>>> +typedef enum { > >>>> + VIR_IORT_NODE_TYPE_UNKNOWN = -1, > >>> > >>> Do we need this? virIORTNodeHeader.type is defined as unsigned. > > > > You didn't answer this one :) > > That's because I removed it in v2 ;-) I hadn't realized you had posted that already O:-) > > What about renaming @reference_id to @mappings_offset though, to > > match the corresponding fields for nodes in virIORTHeader? > > I can do that, but then again - it's named 'Reference to ID Array' in > the spec. And since I renamed SMMU_V1_2 to match whatever was in the > spec I figured staying close to the standard is key. Or how do we decide > when to stay true to the standard an when not? > > If anything, it should be named reference_to_id_array. But I believe > that anybody who will extend this implementation will do the same as I > did - open the code and the spec next to each other and try to find a > match between tables in spec and structs in our code. At that point, > whether this field is named 'reference_id', 'mappings_offset' or > 'reference_to_id_array' doesn't really matter. Yeah, it's unfortunate that the standard itself didn't adopt a reasonable and consistent naming convention. Let's stick to what they've chosen for now. -- Andrea Bolognani / Red Hat / Virtualization