Messages in this thread | | | Subject | Re: [PATCH v5 1/7] x86/sgx: Provide indication of life-cycle of EPC pages | From | Jarkko Sakkinen <> | Date | Wed, 22 Sep 2021 08:27:58 +0300 |
| |
On Tue, 2021-09-21 at 15:15 -0700, Dave Hansen wrote: > On 9/21/21 2:28 PM, Jarkko Sakkinen wrote: > > > Since there are multiple uses of the "owner" field with different types > > > change the sgx_epc_page structure to define an anonymous union with > > > each of the uses explicitly called out. > > But it's still always a pointer. > > > > And not only that, but two alternative fields in that union have *exactly* the > > same type, so it's kind of artifically representing the problem more complex > > than it really is. > > > > I'm not just getting, why all this complexity, and not a few casts instead? > > I suggested this. It makes the structure more self-describing because > it explicitly lists the possibles uses of the space in the structure. > > Maybe I stare at 'struct page' and its 4 unions too much and I'm > enamored by their shininess. But, in the end, I prefer unions to casting.
Yeah, packing data into constrained space (as in the case of struct page) is the only application for, where you can speak of a quantitative decision, when you pick union.
/Jarkko
| |