On Tue, 6 Mar 2018 09:23:23 +0100 Christian Borntraeger <borntrae...@de.ibm.com> wrote:
> On 03/05/2018 04:27 PM, Cornelia Huck wrote: > > On Fri, 2 Mar 2018 10:44:46 +0100 > > Christian Borntraeger <borntrae...@de.ibm.com> wrote: > > > >> On 02/23/2018 06:42 PM, Claudio Imbrenda wrote: > >>> Extend the SCLP event masks to 64 bits. > >>> > >>> Notice that using any of the new bits results in a state that > >>> cannot be migrated to an older version. > >>> > >>> Signed-off-by: Claudio Imbrenda <imbre...@linux.vnet.ibm.com> > >>> --- > >>> hw/s390x/event-facility.c | 56 > >>> ++++++++++++++++++++++++++++++--------- > >>> include/hw/s390x/event-facility.h | 2 +- 2 files changed, 45 > >>> insertions(+), 13 deletions(-) > >>> > >>> diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c > >>> index e04ed9f..c3e39ee 100644 > >>> --- a/hw/s390x/event-facility.c > >>> +++ b/hw/s390x/event-facility.c > >>> @@ -30,7 +30,7 @@ struct SCLPEventFacility { > >>> SysBusDevice parent_obj; > >>> SCLPEventsBus sbus; > >>> /* guest's receive mask */ > >>> - sccb_mask_t receive_mask; > >>> + uint32_t receive_mask_pieces[2]; > >> > >> > >> Before the change, we basically use be32_to_cpu to transfer the > >> byte field into a cpu endianess value. In the end it is actually a > >> bitfield, but for compat we need to keep he reversal. So it will > >> be hard to get this fixed without some kind of ugliness. > > > > Could we also use a compat mask callback/handler for older machines > > and switch to 64 bit handlers for the default case? Probably would > > be even more ugly, though. > > Claudio had a version with a pre/post/load/save handler. Claudio can > you repost this version so that we can have a look what is "less > ugly"? I actually never sent that around, and reworked it after you said it was ugly (and it was ugly), so I don't actually have it around anymore :(