[MODERATED] Re: [PATCH v5 6/8] NX 6

Kanth Ghatraju <[email protected]>
Newsgroups org.kernel.lore.historical-speck
Message-ID <[email protected]>
Hi Ben,


A couple of options:

1. You could revert 6ca18b6950f8dee29361722f28f69847724b276f with commit 7390de1e99a70895721165d0ccd4a6e16482960a
2. Use kvm_mmu_invalidate_zap_all_pages()

-kanth

> On Oct 9, 2019, at 6:42 PM, speck for Ben Hutchings <[email protected]> wrote:
> 
> On Mon, 2019-07-01 at 15:52 +0200, speck for Paolo Bonzini wrote:
>> From: Paolo Bonzini <[email protected]>
>> Subject: [PATCH 6/8] kvm: mmu: ITLB_MULTIHIT mitigation
> [...]
>> +static int set_nx_huge_pages(const char *val, const struct kernel_param *kp)
>> +{
>> +	bool old_val = nx_huge_pages;
>> +	bool new_val;
>> +
>> +	/* In "auto" mode deploy workaround only if CPU has the bug. */
>> +	if (sysfs_streq(val, "off"))
>> +		new_val = 0;
>> +	else if (sysfs_streq(val, "force"))
>> +		new_val = 1;
>> +	else if (sysfs_streq(val, "auto"))
>> +		new_val = boot_cpu_has_bug(X86_BUG_ITLB_MULTIHIT);
>> +	else if (strtobool(val, &new_val) < 0)
>> +		return -EINVAL;
>> +
>> +	__set_nx_huge_pages(new_val);
>> +
>> +	if (new_val != old_val) {
>> +		struct kvm *kvm;
>> +		int idx;
>> +
>> +		mutex_lock(&kvm_lock);
>> +
>> +		list_for_each_entry(kvm, &vm_list, vm_list) {
>> +			idx = srcu_read_lock(&kvm->srcu);
>> +			kvm_mmu_zap_all(kvm);
>> +			srcu_read_unlock(&kvm->srcu, idx);
>> +		}
>> +		mutex_unlock(&kvm_lock);
>> +	}
> [...]
> 
> I've started trying to backport the NX patches to stable branches, and
> I think I can take them back as far as 4.9.
> 
> However, kvm_mmu_zap_all() is a relatively new addition and looks hard
> to backport.  I intend to make the nx_huge_pages parameter read-only
> (0444 permissions) and delete this "if (new_val != old_val)" block.
> Does that seem reasonable?
> 
> Ben.
> 
> --
> Ben Hutchings
> Humans are not rational beings; they are rationalising beings.
>
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEg8OoU+fZatIlEeG7RKoKlxvgTNUFAl2eZy4ACgkQRKoKlxvg
TNWVnxAAhkznQB/A13AB6SSyN5ei1C2JGKNu59xU2sNW2JwyJvT2vekTZsdMzu50
apZozswwcuYckGRTaPKC8Hoh4JllGTrZkVZ1Js4g6yshj3JWrhyMpVjv5EMRUmUn
B3MyPR6Vj55aaiXMoG0qIHlkQoZZ+M4KZCIMsDaiG+W7tsoyj2kSGbmBRSTWttMP
dm9os5dkdEUOBHYYh1N0NT405tSXW2gBTZ6CplSIUh5mfp3+NjVVzkPP4Ke95vlK
Sb1scUrmvDOWMICe2bCkvUubcLvV0IgOJIwLhsrry3ar/kuGgG5n9Uk5LQfqUbvw
Pq2C9pRveDcRCE8Pl53wNwkl3xA17J4Ya7Y4gFsW7pFnWpSNywPsOlEHSfJ67VJq
PNEVyd3PAkDL+tybAqYhgHBWbACjdSqwG7kWmE+lnEMLmIE8jNwgaUQLOsUsift7
ZXZqvNy1uaawKmymAVu0U7g6hvKg3jPUtdNEBjEupcTUoVguH+NmoUo3HEo05LgT
AYvX/Y0mQMp2tG25JeFMo7gsT2hpI+Gc572jRTA5iHzsfCN0wFj6P9gZHygkvx9k
ktYr1QAM7v6exxOrHN3B2J5LvdLl5Rx/whK+XYEwUmnjMyzR+ZM0+4gKeZTk2R4c
HrNFtxhRyvHM986DgRP8Rj8Frb0CGnMbzddOsjGv8+JK1qAQOPU=
=imfW
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.