Re: [PATCH 5/7] KVM: s390: provide query function for instructions returning 32 byte

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 17.04.19 17:42, David Hildenbrand wrote:
> On 17.04.19 17:28, Christian Borntraeger wrote:
>> Some of the new features have a 32byte response for the query function.
>> Provide a new wrapper similar to __cpacf_query. We might want to factor
>> this out if other users come up, as of today there is none. So let us
>> keep the function within KVM.
>>
>> Signed-off-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
>> Reviewed-by: Collin Walling <walling@xxxxxxxxxxxxx>
>> ---
>>  arch/s390/kvm/kvm-s390.c | 13 +++++++++++++
>>  1 file changed, 13 insertions(+)
>>
>> diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
>> index ff2444d935fd..f0404960a715 100644
>> --- a/arch/s390/kvm/kvm-s390.c
>> +++ b/arch/s390/kvm/kvm-s390.c
>> @@ -321,6 +321,19 @@ static inline int plo_test_bit(unsigned char nr)
>>  	return cc == 0;
>>  }
>>  
>> +static inline void __insn32_query(unsigned int opcode, u8 query[32])
>> +{
>> +	register unsigned long r0 asm("0") = 0;	/* query function */
>> +	register unsigned long r1 asm("1") = (unsigned long) query;
>> +
>> +	asm volatile(
>> +		/* Parameter regs are ignored */
>> +		"	.insn	rrf,%[opc] << 16,2,4,6,0\n"
>> +		: "=m" (*query)
>> +		: "d" (r0), "a" (r1), [opc] "i" (opcode)
>> +		: "cc");
>> +}
>> +
>>  static void kvm_s390_cpu_feat_init(void)
>>  {
>>  	int i;
>>
> 
> Are these !cpacf functions, so the generic name "__insn32" is preferred
> over e.g. __cpacf_query32 ?

yes, not cpacf.

> 
> Looks sane to me.
> 




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux