KVM: s390: generate facility mask from readable list
Automatically generate the KVM facility mask out of a readable list. Manually changing the masks is very error prone, especially if the special IBM bit numbering has to be considered. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
This commit is contained in:
parent
29b4817d40
commit
f6c1d359be
|
@ -55,4 +55,28 @@ static struct facility_def facility_defs[] = {
|
||||||
-1 /* END */
|
-1 /* END */
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
.name = "FACILITIES_KVM",
|
||||||
|
.bits = (int[]){
|
||||||
|
0, /* N3 instructions */
|
||||||
|
1, /* z/Arch mode installed */
|
||||||
|
2, /* z/Arch mode active */
|
||||||
|
3, /* DAT-enhancement */
|
||||||
|
4, /* idte segment table */
|
||||||
|
5, /* idte region table */
|
||||||
|
6, /* ASN-and-LX reuse */
|
||||||
|
7, /* stfle */
|
||||||
|
8, /* enhanced-DAT 1 */
|
||||||
|
9, /* sense-running-status */
|
||||||
|
10, /* conditional sske */
|
||||||
|
13, /* ipte-range */
|
||||||
|
14, /* nonquiescing key-setting */
|
||||||
|
73, /* transactional execution */
|
||||||
|
75, /* access-exception-fetch/store indication */
|
||||||
|
76, /* msa extension 3 */
|
||||||
|
77, /* msa extension 4 */
|
||||||
|
78, /* enhanced-DAT 2 */
|
||||||
|
-1 /* END */
|
||||||
|
}
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -132,10 +132,7 @@ module_param(nested, int, S_IRUGO);
|
||||||
MODULE_PARM_DESC(nested, "Nested virtualization support");
|
MODULE_PARM_DESC(nested, "Nested virtualization support");
|
||||||
|
|
||||||
/* upper facilities limit for kvm */
|
/* upper facilities limit for kvm */
|
||||||
unsigned long kvm_s390_fac_list_mask[16] = {
|
unsigned long kvm_s390_fac_list_mask[16] = { FACILITIES_KVM };
|
||||||
0xffe6000000000000UL,
|
|
||||||
0x005e000000000000UL,
|
|
||||||
};
|
|
||||||
|
|
||||||
unsigned long kvm_s390_fac_list_mask_size(void)
|
unsigned long kvm_s390_fac_list_mask_size(void)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue