[Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-02-27 Thread Michal Marek
Indicate the actual features in the STFL implementation and implement STFLE. Signed-off-by: Michal Marek --- v4: - Remove redundant buffer clearing in do_stfle() - Always store whole doublewords in STFLE - Use s390_cpu_virt_mem_write() to store the result - Raise a specification exception if

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-02-28 Thread Richard Henderson
On 02/27/2017 09:18 PM, Michal Marek wrote: Indicate the actual features in the STFL implementation and implement STFLE. Signed-off-by: Michal Marek --- v4: - Remove redundant buffer clearing in do_stfle() - Always store whole doublewords in STFLE - Use s390_cpu_virt_mem_write() to store the

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-03-01 Thread Thomas Huth
On 28.02.2017 23:11, Richard Henderson wrote: > On 02/27/2017 09:18 PM, Michal Marek wrote: >> Indicate the actual features in the STFL implementation and implement >> STFLE. >> >> Signed-off-by: Michal Marek >> --- >> v4: >> - Remove redundant buffer clearing in do_stfle() >> - Always store who

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-03-01 Thread Richard Henderson
On 03/01/2017 07:00 PM, Thomas Huth wrote: Primarily, it does not raise an exception for error. Protection and page faults should be generated properly via trigger_access_exception() there ... or did I miss something? So why does s390_cpu_virt_mem_rw document that it returns non-zero if there

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-03-01 Thread Thomas Huth
On 01.03.2017 20:30, Richard Henderson wrote: > On 03/01/2017 07:00 PM, Thomas Huth wrote: >>> Primarily, it does not raise an exception for error. >> >> Protection and page faults should be generated properly via >> trigger_access_exception() there ... or did I miss something? > > So why does s39

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-03-02 Thread Michal Marek
Dne 28.2.2017 v 23:11 Richard Henderson napsal(a): > On 02/27/2017 09:18 PM, Michal Marek wrote: >> +static int do_stfle(CPUS390XState *env, uint64_t addr, uint32_t ar, >> int len) >> +{ >> +S390CPU *cpu = s390_env_get_cpu(env); >> +/* 256 doublewords as per STFLE documentation */ >> +u

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-03-02 Thread David Hildenbrand
>>> Of course, in practice we could reduce this to just one cpu_stl_data for >>> STFL and one or two cpu_stq_data for STFLE. >> >> I think STFLE can store more than two 64-bit words, can't it? > > Technically, yes. But there are less than 128 bits defined. Certainly much > less than the 4k bits

Re: [Qemu-devel] [PATCH v4] target-s390x: Implement stfl and stfle

2017-03-02 Thread David Hildenbrand
>> As it happens, this reminds me that I wrote a version of this several >> years ago but never submitted it upstream. I'll dig it out. > > So, does it make sense for me to post a v5 again not using > s390_cpu_virt_mem_write(), or are you going to refresh your stfle > implementation? > > Thanks,