On Mon, Sep 21, 2015 at 4:53 PM, Julien Grall <julien.gr...@citrix.com> wrote: > Hi Vijay, > > The only things I haven't check on this patch was the ITS command structure. [...] > Why a padding of only 56 bits? Shouldn't it be 248 bits (i.e 31 * 8 > bits) to fit all the command? > >> + } hdr; >> + struct __packed { >> + u8 cmd; >> + u8 res1[3]; >> + u32 devid; >> + u64 size:5; >> + u64 res2:59; >> + /* XXX: Though itt is 40 bit. Keep it 48 to avoid shift */ >> + u64 res3:8; > > It's very confusing for the reviewer to see a mix of usage (u8 res1[n], > u64 res3:8) within the same structure. > > The later (i.e u64 field:n) is the best to use because we can match > quickly the size with the spec. >
Do you mean to convert all field type as 64 as below? struct __packed { u64 cmd:8; u64 res:24; u64 devid:32; u64 size:5; u64 res2:59; /* XXX: Though itt is 40 bit. Keep it 48 to avoid shift */ u64 res3:8; u64 itt:40; u64 res4:15; u64 valid:1; u64 res5; } mapd_cmd; >> + u64 itt:40; >> + u64 res4:15; >> + u64 valid:1; >> + u64 res5; >> + } mapd; > > [..] l _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel