@@ -49,15 +49,42 @@ bool filter_reg(__u64 reg)
49
49
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_SVPBMT :
50
50
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBA :
51
51
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBB :
52
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBC :
53
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBKB :
54
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBKC :
55
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBKX :
52
56
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZBS :
57
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZFA :
58
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZFH :
59
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZFHMIN :
53
60
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZICBOM :
54
61
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZICBOZ :
55
62
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZICNTR :
56
63
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZICOND :
57
64
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZICSR :
58
65
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZIFENCEI :
66
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZIHINTNTL :
59
67
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZIHINTPAUSE :
60
68
case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZIHPM :
69
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKND :
70
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKNE :
71
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKNH :
72
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKR :
73
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKSED :
74
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKSH :
75
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZKT :
76
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVBB :
77
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVBC :
78
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVFH :
79
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVFHMIN :
80
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKB :
81
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKG :
82
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKNED :
83
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKNHA :
84
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKNHB :
85
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKSED :
86
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKSH :
87
+ case KVM_REG_RISCV_ISA_EXT | KVM_REG_RISCV_ISA_SINGLE | KVM_RISCV_ISA_EXT_ZVKT :
61
88
/*
62
89
* Like ISA_EXT registers, SBI_EXT registers are only visible when the
63
90
* host supports them and disabling them does not affect the visibility
@@ -394,15 +421,42 @@ static const char *isa_ext_single_id_to_str(__u64 reg_off)
394
421
KVM_ISA_EXT_ARR (SVPBMT ),
395
422
KVM_ISA_EXT_ARR (ZBA ),
396
423
KVM_ISA_EXT_ARR (ZBB ),
424
+ KVM_ISA_EXT_ARR (ZBC ),
425
+ KVM_ISA_EXT_ARR (ZBKB ),
426
+ KVM_ISA_EXT_ARR (ZBKC ),
427
+ KVM_ISA_EXT_ARR (ZBKX ),
397
428
KVM_ISA_EXT_ARR (ZBS ),
429
+ KVM_ISA_EXT_ARR (ZFA ),
430
+ KVM_ISA_EXT_ARR (ZFH ),
431
+ KVM_ISA_EXT_ARR (ZFHMIN ),
398
432
KVM_ISA_EXT_ARR (ZICBOM ),
399
433
KVM_ISA_EXT_ARR (ZICBOZ ),
400
434
KVM_ISA_EXT_ARR (ZICNTR ),
401
435
KVM_ISA_EXT_ARR (ZICOND ),
402
436
KVM_ISA_EXT_ARR (ZICSR ),
403
437
KVM_ISA_EXT_ARR (ZIFENCEI ),
438
+ KVM_ISA_EXT_ARR (ZIHINTNTL ),
404
439
KVM_ISA_EXT_ARR (ZIHINTPAUSE ),
405
440
KVM_ISA_EXT_ARR (ZIHPM ),
441
+ KVM_ISA_EXT_ARR (ZKND ),
442
+ KVM_ISA_EXT_ARR (ZKNE ),
443
+ KVM_ISA_EXT_ARR (ZKNH ),
444
+ KVM_ISA_EXT_ARR (ZKR ),
445
+ KVM_ISA_EXT_ARR (ZKSED ),
446
+ KVM_ISA_EXT_ARR (ZKSH ),
447
+ KVM_ISA_EXT_ARR (ZKT ),
448
+ KVM_ISA_EXT_ARR (ZVBB ),
449
+ KVM_ISA_EXT_ARR (ZVBC ),
450
+ KVM_ISA_EXT_ARR (ZVFH ),
451
+ KVM_ISA_EXT_ARR (ZVFHMIN ),
452
+ KVM_ISA_EXT_ARR (ZVKB ),
453
+ KVM_ISA_EXT_ARR (ZVKG ),
454
+ KVM_ISA_EXT_ARR (ZVKNED ),
455
+ KVM_ISA_EXT_ARR (ZVKNHA ),
456
+ KVM_ISA_EXT_ARR (ZVKNHB ),
457
+ KVM_ISA_EXT_ARR (ZVKSED ),
458
+ KVM_ISA_EXT_ARR (ZVKSH ),
459
+ KVM_ISA_EXT_ARR (ZVKT ),
406
460
};
407
461
408
462
if (reg_off >= ARRAY_SIZE (kvm_isa_ext_reg_name ))
@@ -888,15 +942,42 @@ KVM_ISA_EXT_SIMPLE_CONFIG(svnapot, SVNAPOT);
888
942
KVM_ISA_EXT_SIMPLE_CONFIG (svpbmt , SVPBMT );
889
943
KVM_ISA_EXT_SIMPLE_CONFIG (zba , ZBA );
890
944
KVM_ISA_EXT_SIMPLE_CONFIG (zbb , ZBB );
945
+ KVM_ISA_EXT_SIMPLE_CONFIG (zbc , ZBC );
946
+ KVM_ISA_EXT_SIMPLE_CONFIG (zbkb , ZBKB );
947
+ KVM_ISA_EXT_SIMPLE_CONFIG (zbkc , ZBKC );
948
+ KVM_ISA_EXT_SIMPLE_CONFIG (zbkx , ZBKX );
891
949
KVM_ISA_EXT_SIMPLE_CONFIG (zbs , ZBS );
950
+ KVM_ISA_EXT_SIMPLE_CONFIG (zfa , ZFA );
951
+ KVM_ISA_EXT_SIMPLE_CONFIG (zfh , ZFH );
952
+ KVM_ISA_EXT_SIMPLE_CONFIG (zfhmin , ZFHMIN );
892
953
KVM_ISA_EXT_SUBLIST_CONFIG (zicbom , ZICBOM );
893
954
KVM_ISA_EXT_SUBLIST_CONFIG (zicboz , ZICBOZ );
894
955
KVM_ISA_EXT_SIMPLE_CONFIG (zicntr , ZICNTR );
895
956
KVM_ISA_EXT_SIMPLE_CONFIG (zicond , ZICOND );
896
957
KVM_ISA_EXT_SIMPLE_CONFIG (zicsr , ZICSR );
897
958
KVM_ISA_EXT_SIMPLE_CONFIG (zifencei , ZIFENCEI );
959
+ KVM_ISA_EXT_SIMPLE_CONFIG (zihintntl , ZIHINTNTL );
898
960
KVM_ISA_EXT_SIMPLE_CONFIG (zihintpause , ZIHINTPAUSE );
899
961
KVM_ISA_EXT_SIMPLE_CONFIG (zihpm , ZIHPM );
962
+ KVM_ISA_EXT_SIMPLE_CONFIG (zknd , ZKND );
963
+ KVM_ISA_EXT_SIMPLE_CONFIG (zkne , ZKNE );
964
+ KVM_ISA_EXT_SIMPLE_CONFIG (zknh , ZKNH );
965
+ KVM_ISA_EXT_SIMPLE_CONFIG (zkr , ZKR );
966
+ KVM_ISA_EXT_SIMPLE_CONFIG (zksed , ZKSED );
967
+ KVM_ISA_EXT_SIMPLE_CONFIG (zksh , ZKSH );
968
+ KVM_ISA_EXT_SIMPLE_CONFIG (zkt , ZKT );
969
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvbb , ZVBB );
970
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvbc , ZVBC );
971
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvfh , ZVFH );
972
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvfhmin , ZVFHMIN );
973
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvkb , ZVKB );
974
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvkg , ZVKG );
975
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvkned , ZVKNED );
976
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvknha , ZVKNHA );
977
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvknhb , ZVKNHB );
978
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvksed , ZVKSED );
979
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvksh , ZVKSH );
980
+ KVM_ISA_EXT_SIMPLE_CONFIG (zvkt , ZVKT );
900
981
901
982
struct vcpu_reg_list * vcpu_configs [] = {
902
983
& config_sbi_base ,
@@ -914,14 +995,41 @@ struct vcpu_reg_list *vcpu_configs[] = {
914
995
& config_svpbmt ,
915
996
& config_zba ,
916
997
& config_zbb ,
998
+ & config_zbc ,
999
+ & config_zbkb ,
1000
+ & config_zbkc ,
1001
+ & config_zbkx ,
917
1002
& config_zbs ,
1003
+ & config_zfa ,
1004
+ & config_zfh ,
1005
+ & config_zfhmin ,
918
1006
& config_zicbom ,
919
1007
& config_zicboz ,
920
1008
& config_zicntr ,
921
1009
& config_zicond ,
922
1010
& config_zicsr ,
923
1011
& config_zifencei ,
1012
+ & config_zihintntl ,
924
1013
& config_zihintpause ,
925
1014
& config_zihpm ,
1015
+ & config_zknd ,
1016
+ & config_zkne ,
1017
+ & config_zknh ,
1018
+ & config_zkr ,
1019
+ & config_zksed ,
1020
+ & config_zksh ,
1021
+ & config_zkt ,
1022
+ & config_zvbb ,
1023
+ & config_zvbc ,
1024
+ & config_zvfh ,
1025
+ & config_zvfhmin ,
1026
+ & config_zvkb ,
1027
+ & config_zvkg ,
1028
+ & config_zvkned ,
1029
+ & config_zvknha ,
1030
+ & config_zvknhb ,
1031
+ & config_zvksed ,
1032
+ & config_zvksh ,
1033
+ & config_zvkt ,
926
1034
};
927
1035
int vcpu_configs_n = ARRAY_SIZE (vcpu_configs );
0 commit comments