Re: [PULL 1/4] KVM: s390: randomize sca address

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

 



On 25/03/14 14:53, Paolo Bonzini wrote:
> Il 25/03/2014 14:35, Christian Borntraeger ha scritto:
>> We allocate a page for the 2k sca, so lets use the space to improve
>> hit rate of some internal cpu caches. No need to change the freeing
>> of the page, as this will shift away the page offset bits anyway.
>>
>> Signed-off-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
>> Reviewed-by: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
>> ---
>>  arch/s390/kvm/kvm-s390.c | 5 +++++
>>  1 file changed, 5 insertions(+)
>>
>> diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
>> index 7337c57..a02979f 100644
>> --- a/arch/s390/kvm/kvm-s390.c
>> +++ b/arch/s390/kvm/kvm-s390.c
>> @@ -215,6 +215,7 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
>>  {
>>      int rc;
>>      char debug_name[16];
>> +    static unsigned long sca_offset;
>>
>>      rc = -EINVAL;
>>  #ifdef CONFIG_KVM_S390_UCONTROL
>> @@ -236,6 +237,10 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
>>      kvm->arch.sca = (struct sca_block *) get_zeroed_page(GFP_KERNEL);
>>      if (!kvm->arch.sca)
>>          goto out_err;
>> +    spin_lock(&kvm_lock);
>> +    sca_offset = (sca_offset + 16) & 0x7f0;
>> +    kvm->arch.sca = (struct sca_block *) ((char *) kvm->arch.sca + sca_offset);
>> +    spin_unlock(&kvm_lock);
>>
>>      sprintf(debug_name, "kvm-%u", current->pid);
>>
>>
> 
> Does this have to remain the same across migration?

Nope, the sca address is just an internal _host_ detail and does not belong/influence
the guest.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[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