-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
recstruct.h
2432 lines (2401 loc) · 65.6 KB
/
recstruct.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/*
* This file is part of z/VM Performance Monitor Daemon.
*
* z/VM Performance Monitor Daemon is free software: you can redistribute
* it and/or modify it under the terms of the GNU General Public License
* as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* z/VM Performance Monitor Daemon is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with z/VM Performance Monitor Daemon.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _RECSTRUCT_H
#define _RECSTRUCT_H
#ifdef __cplusplus
extern "C" {
#endif
/* format:
DOMAIN-X, where X is a number of domain
struct dXrY, where X is a domain's nr and Y is a record nr
*/
//typedef __uint64_t __eu64;
//DOMAIN-0
struct d0r1
{
__u8 filler[20];
__u16 sytsyp_pfxcpuad;
__u16 ibm;
__u32 sytsyp_plsabnct;
__u32 sytsyp_plsdiagt;
__u32 sytsyp_plsprvis;
__u32 sytsyp_plsextnx;
__u32 sytsyp_plsextnc;
__u32 sytsyp_plsmchct;
__u32 sytsyp_plsctss;
__u32 sytsyp_plsctrs;
__u32 sytsyp_plsctcs;
__u32 sytsyp_plscths;
__u32 sytsyp_plsctsi;
__u32 sytsyp_plsctui;
__u32 sytsyp_plspiopr;
__u32 sytsyp_plspiopw;
__u32 sytsyp_plspiosr;
__u32 sytsyp_plspiosw;
__u32 sytsyp_plsdguct;
__u32 sytsyp_plsxitct;
__u32 sytsyp_plspagps;
__u32 sytsyp_plsstkpe;
__u32 sytsyp_plstmrce;
__u32 sytsyp_plsprvsc;
__u8 sytsyp_pfxcputy;
__u8 ibm2[3];
};
struct d0r2
{
__u8 filler[20];
__u16 sytprp_pfxcpuad;
__u16 sytprp_plscuhaf;
__u8 sytprp_pfxprbtm[8];
__eu64 sytprp_pfxutime;
__u8 sytprp_pfxtmsys[8];
__u8 ibm[8];
__u8 ibm2[8];
__u32 ibm3;
__eu64 sytprp_pfxtotwt;
__u32 sytprp_pfxrunci;
__u32 sytprp_pfxrunpf;
__u32 sytprp_pfxruncp;
__u32 sytprp_calfstph;
__eu64 sytprp_pfxspint;
__u32 sytprp_pfxspinc;
__u8 sytprp_pfxcputy;
__u8 ibm4[3];
};
struct d0r3
{
__u8 filler[20];
__u32 ibm;
__u32 ibm2;
__u32 ibm3;
__u32 ibm4;
__u32 sytrsg_sysrsvpg;
__u32 sytrsg_rsacplok;
__u32 sytrsg_rsanonpg;
__u32 sytrsg_rsapgabl;
__u32 sytrsg_rsaavail;
__u32 sytrsg_rsafrqwt;
__u32 sytrsg_rsaxtend;
__u32 ibm5;
__u32 sytrsg_rsasavfr;
__u8 ibm6;
__u8 sytrsg_calflag1; //bitstring
__u16 sytrsg_hcpstpmb;
__u32 sytrsg_sys98xa;
__u32 ibm7;
__u32 sytrsg_tcmmidsz;
__u32 sytrsg_tcmmain;
__u32 sytrsg_tcmmnmin;
__u32 sytrsg_tcmmnmax;
__u32 sytrsg_tcmmndl;
__u32 sytrsg_tcmstlmn;
__u32 sytrsg_sysscmav;
__u32 sytrsg_tcmmnblw;
__u32 sytrsg_tcmmnabv;
__u32 sytrsg_rsa2gdct;
__u32 sytrsg_sysscgct;
__u8 sytrsg_rsalgfrm[8];
__u32 sytrsg_rsacplkg;
__u8 sytrsg_rsa2gavl[8];
__u32 sytrsg_rsa2gav1;
__u32 sytrsg_rsa2gav2;
__u32 sytrsg_rsafsb2g;
__u32 sytrsg_rsafsa2g;
__u32 sytrsg_rsafsyub;
__u32 sytrsg_rsafsyua;
__u32 sytrsg_rsasxcpl;
__u32 sytrsg_rsasxcla;
__u32 sytrsg_rsarfrst;
__u8 sytrsg_rsarfrsg[8];
__u32 sytrsg_rsasxbct;
__u32 sytrsg_rsasxact;
__u32 sytrsg_rsaafrdb;
__u8 sytrsg_rsaafrdw[8];
__u32 sytrsg_rsaafrib;
__u8 sytrsg_rsaafriu[8];
__u8 sytrsg_rsacalct[8];
__u8 sytrsg_rsasng2g[8];
__u32 sytrsg_rsasngav;
__u32 sytrsg_rsaltdb1;
__u32 sytrsg_rsaltda1;
__u32 sytrsg_rsaltdd1;
__u32 sytrsg_rsaltdc1;
__u32 sytrsg_rsaltdb2;
__u32 sytrsg_rsaltda2;
__u32 sytrsg_rsaltdd2;
__u32 sytrsg_rsaltdc2;
__u32 sytrsg_rsaltdbe;
__u32 sytrsg_rsaltdae;
__u32 sytrsg_rsaltdde;
__u32 sytrsg_rsaltdce;
__u32 sytrsg_rsadrmb1;
__u32 sytrsg_rsadrma1;
__u32 sytrsg_rsadrmd1;
__u32 sytrsg_rsadrmc1;
__u32 sytrsg_rsadrmb2;
__u32 sytrsg_rsadrma2;
__u32 sytrsg_rsadrmd2;
__u32 sytrsg_rsadrmc2;
__u32 sytrsg_rsadrmbe;
__u32 sytrsg_rsadrmae;
__u32 sytrsg_rsadrmde;
__u32 sytrsg_rsadrmce;
__u32 sytrsg_rsaelgb1;
__u32 sytrsg_rsaelga1;
__u32 sytrsg_rsaelgd1;
__u32 sytrsg_rsaelgc1;
__u32 sytrsg_rsaelgb2;
__u32 sytrsg_rsaelga2;
__u32 sytrsg_rsaelgd2;
__u32 sytrsg_rsaelgc2;
__u32 sytrsg_rsaelgbe;
__u32 sytrsg_rsaelgae;
__u32 sytrsg_rsaelgde;
__u32 sytrsg_rsaelgce;
__u32 sytrsg_rsadspb1;
__u32 sytrsg_rsadspa1;
__u32 sytrsg_rsadspd1;
__u32 sytrsg_rsadspc1;
__u32 sytrsg_rsadspb2;
__u32 sytrsg_rsadspa2;
__u32 sytrsg_rsadspd2;
__u32 sytrsg_rsadspc2;
__u32 sytrsg_rsadspbe;
__u32 sytrsg_rsadspae;
__u32 sytrsg_rsadspde;
__u32 sytrsg_rsadspce;
__u32 sytrsg_rsashrb1;
__u32 sytrsg_rsashra1;
__u32 sytrsg_rsashrd1;
__u32 sytrsg_rsashrc1;
__u32 sytrsg_rsashrb2;
__u32 sytrsg_rsashra2;
__u32 sytrsg_rsashrd2;
__u32 sytrsg_rsashrc2;
__u32 sytrsg_rsashrbe;
__u32 sytrsg_rsashrae;
__u32 sytrsg_rsashrde;
__u32 sytrsg_rsashrce;
__u32 sytrsg_rsaresac;
__u32 sytrsg_rsaresbc;
};
struct d0r4
{
__u8 filler[20];
__u16 sytrsp_pfxcpuad;
__u16 ibm;
__u32 sytrsp_plsstlfr;
__u32 sytrsp_plsprqdf;
__u32 sytrsp_plsshrrd;
__u32 sytrsp_plsalemp;
__u32 sytrsp_plsnocmp;
__u32 sytrsp_plsmvb2g;
__u32 sytrsp_plsalemg;
__u32 sytrsp_plsgclem;
__u32 sytrsp_plsmvabv;
__u8 sytrsp_pfxcputy;
__u8 ibm2[3];
__u32 sytrsp_plsalecl;
__u32 sytrsp_plsalecg;
};
struct d0r5
{
__u8 filler[20];
__u16 sytxsp_pfxcpuad;
__u16 ibm;
__u32 sytxsp_pfxpgin;
__u32 sytxsp_plspgin;
__u32 sytxsp_plspgout;
__u32 sytxsp_plspgxrd;
__u32 sytxsp_plspgxwt;
__u32 sytxsp_plspgmrx;
__u32 sytxsp_plspgmrd;
__u8 sytxsp_pfxcputy;
__u8 ibm2[3];
};
struct d0r6
{
__u8 filler[20];
__u32 sytasg_cal90ful;
__u32 sytasg_cal91ful;
__u32 sytasg_calslta1;
__u32 sytasg_calslti1;
__u32 ibm;
__u32 ibm2;
__u32 sytasg_calslta2;
__u32 sytasg_calslti2;
__u32 sytasg_syssfcrt;
__u32 sytasg_syssfpur;
__u32 sytasg_caltotm1;
__u32 sytasg_calavgm1;
__u32 sytasg_caltotm2;
__u32 sytasg_calavgm2;
__u32 sytasg_caldmpav;
__u32 sytasg_caldmpiu;
};
struct d0r7
{
__u8 filler[20];
__u32 sytshs_systanss;
__u32 sytshs_systadcs;
__u32 sytshs_rsashare;
__u32 sytshs_calnumsa;
__u32 sytshs_rsactshr;
__u32 sytshs_vmdsforo;
__u32 sytshs_vmdsfore;
__u32 sytshs_qdgsyslm;
__u32 sytshs_qdgusrlm;
__u32 sytshs_qdgsysca;
__u32 sytshs_qdglkcnt;
__u32 sytshs_qdgdisks;
};
struct d0r11
{
__u8 filler[20];
__u16 sytcom_pfxcpuad;
__u16 ibm;
__u32 sytcom_plsisevm;
__u32 sytcom_plsisema;
__u32 sytcom_plsisem;
__u32 sytcom_plsisera;
__u32 sytcom_plsisebl;
__u32 sytcom_plsisemo;
__u32 sytcom_plsistma;
__u32 sytcom_plsistvm;
__u32 sytcom_plsistm;
__u32 sytcom_plsistra;
__u32 sytcom_plsistbl;
__u32 sytcom_plsistmo;
__u32 sytcom_plsisuvm;
__u32 sytcom_plsisuma;
__u32 sytcom_plsisum;
__u32 sytcom_plsisura;
__u32 sytcom_plsisubl;
__u32 sytcom_plsisumo;
__u32 sytcom_plsvsevm;
__u32 sytcom_plsvstvm;
__u32 sytcom_plsvsuvm;
__u32 sytcom_plsisecc;
__u32 sytcom_plsistcc;
__u32 sytcom_plsisucc;
__u32 sytcom_plsisesi;
__u32 sytcom_plsistsi;
__u32 sytcom_plsisusi;
__u32 sytcom_plsisesp;
__u32 sytcom_plsistsp;
__u32 sytcom_plsisusp;
__u32 sytcom_plsisesy;
__u32 sytcom_plsistsy;
__u32 sytcom_plsisusy;
__u32 sytcom_plsiseac;
__u32 sytcom_plsistac;
__u32 sytcom_plsisuac;
__u32 sytcom_plsiselo;
__u32 sytcom_plsistlo;
__u32 sytcom_plsisulo;
__u32 sytcom_plsisecr;
__u32 sytcom_plsistcr;
__u32 sytcom_plsisucr;
__u32 sytcom_plsiseid;
__u32 sytcom_plsistid;
__u32 sytcom_plsisuid;
__u32 sytcom_plsisecf;
__u32 sytcom_plsistcf;
__u32 sytcom_plsisucf;
__u32 sytcom_plsiucvt;
__u8 sytcom_pfxcputy;
__u8 ibm2[3];
__u32 sytcom_plsisevs;
__u32 sytcom_plsistvs;
__u32 sytcom_plsisuvs;
__u32 sytcom_plsiseas;
__u32 sytcom_plsistas;
__u32 sytcom_plsisuas;
__u32 sytcom_plsisesc;
__u32 sytcom_plsistsc;
__u32 sytcom_plsisusc;
__u32 sytcom_plsiseve;
__u32 sytcom_plsistve;
__u32 sytcom_plsisuve;
};
struct d0r12
{
__u8 filler[20];
__u32 sytuwt_caltidl;
__u32 sytuwt_caltsvm;
__s32 sytuwt_caliowt;
__s32 sytuwt_calwtpag;
__s32 sytuwt_calcfwt;
__s32 sytuwt_calsimwt;
__s32 sytuwt_calcpuwt;
__s32 sytuwt_calcpurn;
__s32 sytuwt_calothr;
__s32 sytuwt_calqdisp;
__s32 sytuwt_calelsvm;
__u16 sytuwt_srmcelig;
__u16 ibm;
__s32 sytuwt_srmdsvmw;
__u32 sytuwt_calioact;
__u32 sytuwt_calllist;
__u32 sytuwt_calllcp;
__u32 sytuwt_calllzap;
__u32 sytuwt_calllifl;
__u32 sytuwt_calllzip;
__s32 sytuwt_calcfcp;
__s32 sytuwt_calcfzap;
__s32 sytuwt_calcfifl;
__s32 sytuwt_calcfzip;
__s32 sytuwt_calswcp;
__s32 sytuwt_calswzap;
__s32 sytuwt_calswifl;
__s32 sytuwt_calswzip;
__s32 sytuwt_calcwcp;
__s32 sytuwt_calcwzap;
__s32 sytuwt_calcwifl;
__s32 sytuwt_calcwzip;
__s32 sytuwt_calcrcp;
__s32 sytuwt_calcrzap;
__s32 sytuwt_calcrifl;
__s32 sytuwt_calcrzip;
};
struct d0r13
{
__u8 filler[20];
__u16 sytscp_pfxcpuad;
__u16 sytscp_plseqkad;
__u16 sytscp_plsefrc1;
__u16 sytscp_plsefrc2;
__u16 sytscp_plsefrc3;
__u16 ibm;
__u32 sytscp_plsdspcn;
__u8 sytscp_pfxcputy;
__u8 ibm2[3];
};
struct d0r14
{
__u8 filler[20];
__u32 sytxsg_xstxbget;
__u32 sytxsg_xstxbrel;
__u32 sytxsg_xstusrsh;
__u8 sytxsg_xstctxav[8]; //bitstring
__u8 sytxsg_xstcppar[8]; //bitstring
__u32 sytxsg_hcpmdcpy;
__u32 sytxsg_hcpmdcpn;
__u32 sytxsg_hcpmdcpr;
__u32 sytxsg_hcpmdcpw;
__u32 sytxsg_hcpmdcac;
__u32 sytxsg_hcpmdcne;
__u32 ibm;
__u32 sytxsg_hcpmdcex;
__u32 sytxsg_hcpmdcli;
__u32 sytxsg_calmdcau;
__u32 ibm2;
__u32 ibm3;
__u32 ibm4;
__u32 sytxsg_hcpmdcis;
__u32 ibm5;
__u32 ibm6;
__u32 ibm7;
__u32 ibm8;
__u32 ibm9;
__u32 sytxsg_hcpmdcqc;
__u32 sytxsg_hcpmdcxg;
__u32 sytxsg_hcpmdcxr;
__u32 sytxsg_hcpmdctr;
__u32 sytxsg_hcpmdcia;
__u32 sytxsg_hcpmdcib;
__u32 sytxsg_hcpmdcit;
__u32 ibm10;
__u32 sytxsg_tcmxidsz;
__u32 sytxsg_tcmxsmin;
__u32 sytxsg_tcmstlxs;
__u32 sytxsg_xstavgag;
__u16 sytxsg_hcpstpxb;
__u8 ibm11[2];
__u32 sytxsg_tcmfshvm;
__u32 sytxsg_tcmrdct;
__u32 sytxsg_tcmpin4k;
};
struct d0r15
{
__u8 filler[20];
__u8 sytcug_lcutnpar;
__u8 sytcug_lcutflag;
__u8 ibm[2];
__u16 sytcug_lcutslce;
__u16 sytcug_lcutpcct;
__u16 sytcug_lpnumber;
__u8 ibm2[1];
__u8 sytcug_cpuchar;
__u16 sytcug_cpucount;
__u16 sytcug_cpucfgct;
__u16 sytcug_cpustnby;
__u16 sytcug_cpuresvd;
__u8 sytcug_lparname[8];
__u32 sytcug_lparcaf;
__u16 sytcug_cpudedct;
__u16 sytcug_cpushard;
};
struct d0r19
{
__u8 filler[20];
__u8 sytsyg_xctmsact[8]; //Accumulated elapsed time (ms)
__u32 sytsyg_ftrdone;
__u32 sytsyg_ftrabort;
__u32 sytsyg_ftrnotel;
__u32 sytsyg_ftrwrite;
__u32 sytsyg_ctndone;
__u32 sytsyg_ctnabort;
__u32 sytsyg_ctnnotel;
__u32 sytsyg_scpcapab;
__u32 sytsyg_cpucapab;
__u16 sytsyg_cpucount;
__u16 sytsyg_cpucfgct;
__u16 sytsyg_cpustnby;
__u16 sytsyg_cpuresvd;
__u8 sytsyg_vl3dbct;
__u8 ibm[1];
__u16 sytsyg_vl3count;
__u16 sytsyg_vl3cfgct;
__u16 sytsyg_vl3stnby;
__u16 sytsyg_vl3resvd;
__u8 ibm2[2];
__u8 sytsyg_vl3mname[8]; //String
__u32 sytsyg_vl3caf;
__u8 sytsyg_vl3cpnam[16]; //String
};
struct d0r21
{
__u8 filler[20];
__u32 sytsxg_sxssize;
__u32 sytsxg_rsasxavl;
__u32 sytsxg_rsasxbka;
__u32 sytsxg_rsasxbkb;
__u32 sytsxg_rsasxusd;
__u32 sytsxg_rsasxucp;
__u32 sytsxg_rsasxuid;
__u32 sytsxg_rsasxufs;
__u32 sytsxg_rsasxufg;
__u32 sytsxg_rsasxali;
__u32 sytsxg_rsasxnop;
__u32 sytsxg_rsasxcla;
__u32 sytsxg_rsasxqct;
__u32 sytsxg_rsasxact;
__u32 sytsxg_rsasxbct;
__u32 sytsxg_rsarsvsy;
};
struct d0r22
{
__u8 filler[20];
__u16 sytsxp_pfxcpuad;
__u16 ibm;
__u32 sytsxp_plssxrep;
__u32 sytsxp_plssxacc;
__u32 sytsxp_plssxarc;
__u32 sytsxp_plssxaqc;
__u32 sytsxp_plsspfsc;
__u32 sytsxp_plsspgpc;
__u32 sytsxp_plsspgcc;
__u32 sytsxp_plsspgct;
__u32 sytsxp_plssprpc;
__u32 sytsxp_plssprcc;
__u32 sytsxp_plssprct;
__u32 sytsxp_plssprqc;
__u32 sytsxp_plssprqt;
__u32 sytsxp_plsspgfc;
__u32 sytsxp_plssprfc;
__u8 sytsxp_pfxcputy;
__u8 ibm2[3];
};
//DOMAIN-1
struct d1r1
{
__u8 filler[20];
__u8 mtrepr_edomains;
__u8 ibm;
__u16 mtrepr_config;
};
struct d1r3
{
__u8 filler[20];
__u32 mtrsus_lostrcct;
};
struct d1r4
{
__u8 filler[20];
__u8 mtrsys_hcpcpepp[8]; //bitstring
__u8 mtrsys_hcpcpeid[8];
__eu64 mtrsys_systodst; //tod at last ipl
__eu64 mtrsys_systerm; //tod at termination
__u8 mtrsys_sysdate[8]; //current date
__u8 mtrsys_sysabncd[8]; //abend code of last termination
__u32 ibm;
__u32 ibm2;
__u32 ibm3;
__u32 mtrsys_syszone;
__u8 mtrsys_calflgs;
__u8 mtrsys_sysvrfsg;
__u8 mtrsys_calflg2;
__u8 ibm4[1];
__u8 mtrsys_systmid[8]; //sys id
__u8 mtrsys_sysckvol[6];
__u8 mtrsys_syswmvol[6];
__u8 mtrsys_sysmtype[4]; //'0' if not present
__u8 mtrsys_sysmmodl[16];
__u8 mtrsys_sysmseqc[16];
__u8 mtrsys_sysmpom[4];
__u16 mtrsys_lpnumber;
__u8 mtrsys_cpuchar;
__u8 ibm5;
__u16 mtrsys_cpucount;
__u16 mtrsys_cpucfgct;
__u16 mtrsys_cpustnby;
__u16 mtrsys_cpuresvd;
__u8 mtrsys_lparname[8];
__u32 mtrsys_lparcaf;
__u16 mtrsys_cpudedct;
__u16 mtrsys_cpushard;
__u32 mtrsys_cpucapab;
__u32 mtrsys_scpcapab;
};
struct d1r5
{
__u8 filler[20];
__u16 mtrprp_pfxcpuad;
__u8 mtrprp_pfxidmdl[2];
__u8 mtrprp_pfxidser[3];
__u8 ibm;
__u8 mtrprp_calflags;
__u8 mtrprp_pcccsu;
__u8 mtrprp_pfxidver;
__u8 mtrprp_pfxtype;
__u8 mtrprp_caluded[8];
__u8 mtrprp_pfxcputy;
__u8 ibm2[3];
};
struct d1r9
{
__u8 filler[20];
__s32 mtrspr_interval;
__s32 mtrspr_hfrate;
__u8 mtrspr_sdomains;
__u8 ibm;
__u8 mtrspr_hdomains;
__u8 ibm2;
__u16 mtrspr_config;
__u16 ibm3;
};
struct d1r10
{
__u8 filler[20];
__eu64 mtrscm_caltod;
__u32 mtrscm_calbyct;
};
struct d1r17
{
__u8 filler[20];
__u8 mtrxsg_xstotalb[8];
__u8 mtrxsg_sysxtsiz[8];
};
struct d1r18
{
__u8 filler[20];
__u32 mtrccc_cpucapab;
__u32 mtrccc_scpcapab;
};
struct d1r19 //not tested
{
__u8 filler[20];
__u16 mtrqdc_rdevdev;
__u8 mtrqdc_vmduser[8]; //String
__u16 mtrqdc_vdevdev;
__u16 mtrqdc_qdiofmt;
__u16 mtrqdc_qdinpct;
__u16 mtrqdc_qdioutct;
__u8 mtrqdc_status[4]; //Bitstring
__u16 ibm; //?reserved by ibm? -bug in doc
__u32 mtrqdc_qdiocsgr;
__u32 mtrqdc_qdiocsgw;
__u32 mtrqdc_qdiocsgs;
__u32 mtrqdc_rdevvssr;
__u32 mtrqdc_rdevvssw;
__u32 mtrqdc_rdevvsss;
__u64 mtrqdc_bftoa;
__u64 mtrqdc_bytoa;
__u64 mtrqdc_bffra;
__u64 mtrqdc_byfra;
__u32 mtrqdc_rdevvsin;
__u32 mtrqdc_rdevvsir;
__u32 mtrqdc_rdevvsid;
__u32 mtrqdc_qsbsqbvm;
__u32 mtrqdc_qsbsqbpv;
__u32 mtrqdc_qsbeqbvm;
__u32 mtrqdc_qsbeqbpv;
__u32 mtrqdc_qsblock;
__u32 mtrqdc_qsbfobx;
__u32 mtrqdc_qsbolck;
__u32 mtrqdc_qsbsigwt;
__u32 mtrqdc_qsbsigrt;
__u32 mtrqdc_qsbsiglt;
__u32 mtrqdc_sumofpin;
__u32 mtrqdc_sumunpin;
__u8 mtrqdc_resvd[208]; //reserved by ibm
};
struct d1r20
{
__u8 filler[20];
__u16 mtrhpp_hppoolnm;
__u16 mtrhpp_hpptoken;
};
//DOMAIN-2
struct d2r1
{
__u8 filler[20];
__u8 sclrdb_vmduser[8];
__u8 sclrdb_calflags;
__u8 ibm[3];
__u32 sclrdb_rdevsid;
};
struct d2r2
{
__u8 filler[20];
__u8 sclrdc_vmduser[8];
__u8 sclrdc_calflags;
__u8 ibm[3];
__u32 sclrdc_rdevsid;
__u32 sclrdc_calbyct;
};
struct d2r3
{
__u8 filler[20];
__u8 sclwrr_vmduser[8];
__u8 sclwrr_calflags;
__u8 ibm[3];
__u32 sclwrr_rdevsid;
__u32 sclwrr_calbyct;
};
struct d2r4
{
__u8 filler[20];
__u8 scladl_vmduser[8];
__u32 scladl_srmtotst;
__u32 scladl_srmwssdl;
__u16 scladl_srmcdisp;
__u16 scladl_srmc1dsp;
__u16 scladl_srmc2dsp;
__u16 scladl_srmc3dsp;
__u8 scladl_vmdsvmid[8];
__u8 scladl_vmdsvmwt;
__u8 scladl_vmdsvmw2; ///???
//__u8 scladl_vmdsvmwt;
__u8 scladl_vmdrdycm;
//__u8 scladl_vmdsvmwt;
__u8 scladl_calflag1;
__u32 scladl_vmdwsspr;
__u32 scladl_vmdpgrte;
__u8 scladl_calqstat;
__u8 scladl_vmdelist;
__u16 scladl_vmdcpuad;
__u32 scladl_vmdrplim;
__u32 scladl_vmdctpvr;
__u8 scladl_vmdvtime[8];
__u8 scladl_vmdttime[8];
__u8 scladl_vmdeprty[8];
__u8 scladl_vmddprty[8];
__u8 scladl_vmdoprty[8];
__u32 scladl_vmdrthru;
__u32 scladl_vmdctxbk;
__u32 scladl_vmdflreo;
__u32 scladl_vmdctorf;
__u32 scladl_calcppst;
__u8 scladl_calostat;
__u8 scladl_calsharf;
__s16 scladl_vmdslcnt;
__u8 scladl_vmdeslic[8];
__u32 scladl_vmdrelsh;
__u32 scladl_vmdabssh;
__u32 scladl_vmdvusct;
__s32 scladl_srmabsdl;
__s32 scladl_srmreldl;
__u32 scladl_vmdctcrt;
__u32 scladl_vmdmxshr;
__u8 scladl_srmatod[8];
__u8 scladl_srmatod2[8];
__u32 scladl_vmdctpvg;
__u8 scladl_vmdcfgem;
__u8 scladl_vmdpust;
__u8 ibm[2];
__u8 scladl_vmdvtmp[8];
__u8 scladl_vmdttmp[8];
__u8 scladl_vmdvtms[8];
__u8 scladl_vmdttms[8];
};
struct d2r5
{
__u8 filler[20];
__u8 sclddl_vmduser[8];
__u8 sclddl_vmdsvmid[8];
__u8 sclddl_vmdsvmwt;
__u8 sclddl_vmdsvmw2;
//__u8 sclddl_vmdsvmwt;
__u8 sclddl_vmdrdycm;
//__u8 sclddl_vmdsvmwt;
__u8 sclddl_calflag1;
__u32 sclddl_vmdwsspr;
__u32 sclddl_vmdpgrte;
__u32 sclddl_vmdrplim;
__u32 sclddl_vmdctpvr;
__u8 sclddl_vmdvtime[8];
__u8 sclddl_vmdttime[8];
__u8 sclddl_vmddprty[8];
__u8 sclddl_vmdoprty[8];
__u32 sclddl_vmdrthru;
__u32 sclddl_vmdctxbk;
__u32 sclddl_vmdflreo;
__u32 sclddl_vmdctorf;
__u32 sclddl_calcppst;
__u8 sclddl_calrstat;
__u8 sclddl_vmdstate;
__u8 sclddl_calostat;
__u8 sclddl_vmdsactl;
__u32 sclddl_vmdcwss;
__u8 sclddl_vmdsactx;
__u8 sclddl_calqstat;
__u16 sclddl_vmdcpuad;
__u32 sclddl_vmdctcrt;
__u32 sclddl_vmdrelsh;
__u32 sclddl_vmdabssh;
__u8 sclddl_calsharf;
__u8 ibm;
__s16 sclddl_vmdslcnt;
__u32 sclddl_vmdmxshr;
__u8 sclddl_srmatod[8];
__u8 sclddl_srmatod2[8];
__u32 sclddl_vmdctpvg;
__u8 sclddl_vmdcfgem;
__u8 sclddl_vmdpust;
__u8 ibm2[2];
__u8 sclddl_vmdvtmp[8];
__u8 sclddl_vmdttmp[8];
__u8 sclddl_vmdvtms[8];
__u8 sclddl_vmdttms[8];
};
struct d2r6
{
__u8 filler[20];
__u8 sclael_vmduser[8];
__u16 sclael_srmc1elg;
__u16 sclael_srmc2elg;
__u16 sclael_srmc3elg;
__u16 sclael_vmdcpuad;
__u8 sclael_vmdsvmid[8];
__u8 sclael_vmdsvmwt;
__u8 sclael_vmdsvmw2;
// __u8 sclael_vmdsvmwt;
__u8 sclael_vmdrdycm;
//__u8 sclael_vmdsvmwt;
__u8 sclael_calflag1;
__u32 sclael_vmdwsspr;
__u32 sclael_vmdpgrte;
__u8 sclael_calqstat;
__u8 sclael_vmdelist;
__u8 sclael_vmdwrkcs;
__u8 sclael_calostat;
__u8 sclael_vmdeprty[8];
__u32 sclael_vmdctpvr;
__u32 sclael_vmdctxbk;
__u32 sclael_calcppst;
__u32 sclael_vmdrelsh;
__u32 sclael_vmdabssh;
__s32 sclael_vmdurrsp;
__s32 sclael_srmabsde;
__s32 sclael_srmrelde;
__u32 sclael_vmdctcrt;
__u8 sclael_calsharf;
__u8 ibm[3];
__u32 sclael_vmdmxshr;
__u8 sclael_srmatod[8];
__u8 sclael_srmatod2[8];
__u32 sclael_vmdctpvg;
__u8 sclael_vmdcfgem;
__u8 sclael_vmdpust;
__u8 ibm2[2];
};
struct d2r9
{
__u8 filler[20];
__u8 sclshr_vmduser[8];
__u32 sclshr_vmdrelsh;
__u32 sclshr_vmdabssh;
__u8 sclshr_calsharf;
__u8 ibm[3];
__u32 sclshr_vmdmxshr;
__u8 sclshr_vmdcfgem;
__u8 sclshr_vmdpust;
__u8 ibm2[2];
};
struct d2r10
{
__u8 filler[20];
__u8 sclsqd_vmduser[8];
__u8 sclsqd_calflag1;
__u8 ibm[3];
};
struct d2r11
{
__u8 filler[20];
__u8 scliop_vmduser[8];
__u32 scliop_ipqupr1;
__u8 scliop_newrqlo;
__u8 scliop_newrqhi;
__u8 ibm[1];
__u8 scliop_ipqx0;
__u32 scliop_sysiopq;
__u8 scliop_sysiopqh;
__u8 scliop_sysioplo;
__u8 scliop_sysiophi;
__u8 ibm2[1];
};
struct d2r12
{
__u8 filler[20];
__u8 sclsca_vmduser[8];
__u8 sclsca_vmdcfgem;
__u8 sclsca_vmdpust;
__u16 ibm;
};
//DOMAIN-3
struct d3r1
{
__u8 filler[20];
__u32 storsg_calssubt;
__u32 ibm;
__u32 storsg_rsasavfr;
__u32 storsg_rsamaxpp;
__u32 storsg_rsacplok;
__u32 storsg_rsaavllt;
__u32 storsg_rsaavlht;
__u32 storsg_xstbprct;
__u32 storsg_xstsrgct;
__u32 storsg_xstmrabi;
__u32 storsg_xstsrabi;
__u32 storsg_xstsrsct;
__u32 storsg_calptrrt;
__u32 storsg_calcaafp;
__u32 storsg_calascut;
__u32 storsg_rsasxcpl;
__u32 storsg_rsasxcla;
__u32 storsg_rsaavlhg;
__u32 storsg_rsaavllg;
__u32 storsg_rsacplkg;
__u32 storsg_calssubg;
__u32 storsg_rsarsvsy;
__u8 storsg_rsacallt[8];
__u8 storsg_rsacalmt[8];
__u8 storsg_rsacalut[8];
__u32 storsg_rsaafsdw;
__u32 storsg_rsaafsdb;
__u32 storsg_rsaafsiu;
__u32 storsg_rsaafsib;
__u32 storsg_rsavcbdw;
__u32 storsg_rsavcbdb;
__u32 storsg_rsavcbiu;
__u32 storsg_rsavcbib;
__u32 storsg_rsavfsdw;
__u32 storsg_rsavfsiu;
__u32 storsg_rsa2gdct;
__u32 storsg_rsafrqwt;
__u32 storsg_rsafrrda;
__u32 storsg_rsafrrdc;
__u32 storsg_rsastlwt;
__u32 storsg_rsaswg2g;
__u32 storsg_rsafvmud;
__u32 storsg_rsafvmub;
__u32 storsg_rsavmxfr;
__u32 storsg_rsavmxfb;
__u32 storsg_rsavmxud;
__u32 storsg_rsavmxub;
__u32 storsg_rsasysfr;
__u32 storsg_rsasysfb;
__u32 storsg_rsasysud;
__u32 storsg_rsasysub;
__u32 storsg_rsaplpct;
__u32 storsg_rsaplpcb;
__u32 storsg_rsanpgct;
__u32 storsg_rsanpghi;
__u32 storsg_rsanolkl;
__u8 storsg_rsanolka[8];
__u32 storsg_rsasxnop;
__u32 storsg_rsapptps;
__u32 storsg_rsapptpf;
__u32 storsg_rsapptcs;
__u32 storsg_rsablkgc;
__u32 storsg_rsafrqmw;
__u32 storsg_rsafrqdf;
__u32 storsg_rsafrqdl;
__u32 storsg_rsaalfmf;
__u32 storsg_rsaavclt;
__u32 storsg_rsaavcht;
__u32 storsg_rsaavclg;
__u32 storsg_rsaavchg;
__u32 storsg_rsaemlo;
__u32 storsg_rsaemhi;
__u32 storsg_rsaemcpc;
__u32 storsg_rsaemerg;
__u32 storsg_rsaemblo;
__u32 storsg_rsaempty;
__u32 storsg_rsaemdfr;
__u32 storsg_rsaswpwt;
__u32 storsg_rsaswp2g;
};
struct d3r2
{
__u8 filler[20];
__u16 storsp_pfxcpuad;
__u16 ibm;
__u32 ibm2;
__u32 ibm3;
__u32 ibm4;
__u32 ibm5;
__u32 ibm6;
__u32 ibm7;
__u32 ibm8;
__u32 ibm9;
__u32 storsp_plspread;
__u32 storsp_plspnew;
__u32 storsp_pfxclear;
__u32 storsp_pfxptrct;
__u32 storsp_plsreles;
__u32 storsp_plsretfr;
__u32 storsp_plsrelfr;
__u32 storsp_plsalnct;
__u32 storsp_plsstlwt;