tests: vmstate static checker: add size mismatch inside substructure
[qemu.git] / tests / vmstate-static-checker-data / dump2.json
1 {
2   "vmschkmachine": {
3     "Name": "pc-i440fx-2.2"
4   },
5   "fw_cfg2": {
6     "Name": "fw_cfg",
7     "version_id": 2,
8     "minimum_version_id": 1,
9     "Description": {
10       "name": "fw_cfg",
11       "version_id": 2,
12       "minimum_version_id": 1,
13       "Fields": [
14         {
15           "field": "cur_entry",
16           "version_id": 0,
17           "field_exists": false,
18           "size": 2
19         },
20         {
21           "field": "cur_offset",
22           "version_id": 0,
23           "field_exists": true,
24           "size": 4
25         },
26         {
27           "field": "cur_offset",
28           "version_id": 2,
29           "field_exists": false,
30           "size": 4
31         }
32       ]
33     }
34   },
35   "fusbh200-ehci-usb": {
36     "Name": "fusbh200-ehci-usb",
37     "version_id": 1,
38     "minimum_version_id": 1,
39     "Description": {
40       "name": "ehci-sysbus",
41       "version_id": 2,
42       "minimum_version_id": 1,
43       "Fields": [
44         {
45           "field": "ehci",
46           "version_id": 2,
47           "field_exists": false,
48           "size": 1880,
49           "Description": {
50             "name": "ehci-core",
51             "version_id": 2,
52             "minimum_version_id": 1,
53             "Fields": [
54               {
55                 "field": "usbcmd",
56                 "version_id": 0,
57                 "field_exists": false,
58                 "size": 4
59               },
60               {
61                 "field": "usbsts_pending",
62                 "version_id": 2,
63                 "field_exists": false,
64                 "size": 4
65               },
66               {
67                 "field": "usbsts_frindex",
68                 "version_id": 2,
69                 "field_exists": false,
70                 "size": 4
71               },
72               {
73                 "field": "usbintr",
74                 "version_id": 0,
75                 "field_exists": false,
76                 "size": 4
77               },
78               {
79                 "field": "frindex",
80                 "version_id": 0,
81                 "field_exists": false,
82                 "size": 4
83               },
84               {
85                 "field": "ctrldssegment",
86                 "version_id": 0,
87                 "field_exists": false,
88                 "size": 4
89               },
90               {
91                 "field": "periodiclistbase",
92                 "version_id": 0,
93                 "field_exists": false,
94                 "size": 4
95               },
96               {
97                 "field": "asynclistaddr",
98                 "version_id": 0,
99                 "field_exists": false,
100                 "size": 4
101               },
102               {
103                 "field": "configflag",
104                 "version_id": 0,
105                 "field_exists": false,
106                 "size": 4
107               },
108               {
109                 "field": "portsc[0]",
110                 "version_id": 0,
111                 "field_exists": false,
112                 "size": 4
113               },
114               {
115                 "field": "portsc[1]",
116                 "version_id": 0,
117                 "field_exists": false,
118                 "size": 4
119               },
120               {
121                 "field": "portsc[2]",
122                 "version_id": 0,
123                 "field_exists": false,
124                 "size": 4
125               },
126               {
127                 "field": "portsc[3]",
128                 "version_id": 0,
129                 "field_exists": false,
130                 "size": 4
131               },
132               {
133                 "field": "portsc[4]",
134                 "version_id": 0,
135                 "field_exists": false,
136                 "size": 4
137               },
138               {
139                 "field": "portsc[5]",
140                 "version_id": 0,
141                 "field_exists": false,
142                 "size": 4
143               },
144               {
145                 "field": "frame_timer",
146                 "version_id": 0,
147                 "field_exists": false,
148                 "size": 8
149               },
150               {
151                 "field": "last_run_ns",
152                 "version_id": 0,
153                 "field_exists": false,
154                 "size": 8
155               },
156               {
157                 "field": "async_stepdown",
158                 "version_id": 0,
159                 "field_exists": false,
160                 "size": 4
161               },
162               {
163                 "field": "astate",
164                 "version_id": 0,
165                 "field_exists": false,
166                 "size": 4
167               },
168               {
169                 "field": "pstate",
170                 "version_id": 0,
171                 "field_exists": false,
172                 "size": 4
173               },
174               {
175                 "field": "a_fetch_addr",
176                 "version_id": 0,
177                 "field_exists": false,
178                 "size": 4
179               },
180               {
181                 "field": "p_fetch_addr",
182                 "version_id": 0,
183                 "field_exists": false,
184                 "size": 4
185               }
186             ]
187           }
188         }
189       ]
190     }
191   },
192   "pci-serial-4x": {
193     "Name": "pci-serial-4x",
194     "version_id": 1,
195     "minimum_version_id": 1,
196     "Description": {
197       "name": "pci-serial-multi",
198       "version_id": 1,
199       "minimum_version_id": 1
200     }
201   },
202   "intel-hda-generic": {
203     "Name": "intel-hda-generic",
204     "version_id": 1,
205     "minimum_version_id": 0,
206     "Description": {
207       "name": "intel-hda",
208       "version_id": 1,
209       "minimum_version_id": 0,
210       "Fields": [
211         {
212           "field": "pci",
213           "version_id": 0,
214           "field_exists": false,
215           "size": 1944
216         },
217         {
218           "field": "g_ctl",
219           "version_id": 0,
220           "field_exists": false,
221           "size": 4
222         },
223         {
224           "field": "wake_en",
225           "version_id": 0,
226           "field_exists": false,
227           "size": 4
228         },
229         {
230           "field": "state_sts",
231           "version_id": 0,
232           "field_exists": false,
233           "size": 4
234         },
235         {
236           "field": "int_ctl",
237           "version_id": 0,
238           "field_exists": false,
239           "size": 4
240         },
241         {
242           "field": "int_sts",
243           "version_id": 0,
244           "field_exists": false,
245           "size": 4
246         },
247         {
248           "field": "wall_clk",
249           "version_id": 0,
250           "field_exists": false,
251           "size": 4
252         },
253         {
254           "field": "corb_lbase",
255           "version_id": 0,
256           "field_exists": false,
257           "size": 4
258         },
259         {
260           "field": "corb_ubase",
261           "version_id": 0,
262           "field_exists": false,
263           "size": 4
264         },
265         {
266           "field": "corb_rp",
267           "version_id": 0,
268           "field_exists": false,
269           "size": 4
270         },
271         {
272           "field": "corb_wp",
273           "version_id": 0,
274           "field_exists": false,
275           "size": 4
276         },
277         {
278           "field": "corb_ctl",
279           "version_id": 0,
280           "field_exists": false,
281           "size": 4
282         },
283         {
284           "field": "corb_sts",
285           "version_id": 0,
286           "field_exists": false,
287           "size": 4
288         },
289         {
290           "field": "corb_size",
291           "version_id": 0,
292           "field_exists": false,
293           "size": 4
294         },
295         {
296           "field": "rirb_lbase",
297           "version_id": 0,
298           "field_exists": false,
299           "size": 4
300         },
301         {
302           "field": "rirb_ubase",
303           "version_id": 0,
304           "field_exists": false,
305           "size": 4
306         },
307         {
308           "field": "rirb_wp",
309           "version_id": 0,
310           "field_exists": false,
311           "size": 4
312         },
313         {
314           "field": "rirb_cnt",
315           "version_id": 0,
316           "field_exists": false,
317           "size": 4
318         },
319         {
320           "field": "rirb_ctl",
321           "version_id": 0,
322           "field_exists": false,
323           "size": 4
324         },
325         {
326           "field": "rirb_sts",
327           "version_id": 0,
328           "field_exists": false,
329           "size": 4
330         },
331         {
332           "field": "rirb_size",
333           "version_id": 0,
334           "field_exists": false,
335           "size": 4
336         },
337         {
338           "field": "dp_lbase",
339           "version_id": 0,
340           "field_exists": false,
341           "size": 4
342         },
343         {
344           "field": "dp_ubase",
345           "version_id": 0,
346           "field_exists": false,
347           "size": 4
348         },
349         {
350           "field": "icw",
351           "version_id": 0,
352           "field_exists": false,
353           "size": 4
354         },
355         {
356           "field": "irr",
357           "version_id": 0,
358           "field_exists": false,
359           "size": 4
360         },
361         {
362           "field": "ics",
363           "version_id": 0,
364           "field_exists": false,
365           "size": 4
366         },
367         {
368           "field": "st",
369           "version_id": 0,
370           "field_exists": false,
371           "size": 56,
372           "Description": {
373             "name": "intel-hda-stream",
374             "version_id": 1,
375             "minimum_version_id": 0,
376             "Fields": [
377               {
378                 "field": "ctl",
379                 "version_id": 0,
380                 "field_exists": false,
381                 "size": 4
382               },
383               {
384                 "field": "lpib",
385                 "version_id": 0,
386                 "field_exists": false,
387                 "size": 4
388               },
389               {
390                 "field": "cbl",
391                 "version_id": 0,
392                 "field_exists": false,
393                 "size": 4
394               },
395               {
396                 "field": "lvi",
397                 "version_id": 0,
398                 "field_exists": false,
399                 "size": 4
400               },
401               {
402                 "field": "fmt",
403                 "version_id": 0,
404                 "field_exists": false,
405                 "size": 4
406               },
407               {
408                 "field": "bdlp_lbase",
409                 "version_id": 0,
410                 "field_exists": false,
411                 "size": 4
412               },
413               {
414                 "field": "bdlp_ubase",
415                 "version_id": 0,
416                 "field_exists": false,
417                 "size": 4
418               }
419             ]
420           }
421         },
422         {
423           "field": "rirb_count",
424           "version_id": 0,
425           "field_exists": false,
426           "size": 4
427         },
428         {
429           "field": "wall_base_ns",
430           "version_id": 0,
431           "field_exists": false,
432           "size": 8
433         }
434       ]
435     }
436   },
437   "cfi.pflash01": {
438     "Name": "cfi.pflash01",
439     "version_id": 1,
440     "minimum_version_id": 1
441   },
442   "megasas": {
443     "Name": "megasas",
444     "version_id": 0,
445     "minimum_version_id": 0,
446     "Description": {
447       "name": "megasas",
448       "version_id": 0,
449       "minimum_version_id": 0,
450       "Fields": [
451         {
452           "field": "parent_obj",
453           "version_id": 0,
454           "field_exists": false,
455           "size": 1944,
456           "Description": {
457             "name": "PCIDevice",
458             "version_id": 2,
459             "minimum_version_id": 1,
460             "Fields": [
461               {
462                 "field": "version_id",
463                 "version_id": 0,
464                 "field_exists": false,
465                 "size": 4
466               },
467               {
468                 "field": "config",
469                 "version_id": 0,
470                 "field_exists": false,
471                 "size": 256
472               }
473             ]
474           }
475         },
476         {
477           "field": "fw_state",
478           "version_id": 0,
479           "field_exists": false,
480           "size": 4
481         },
482         {
483           "field": "intr_mask",
484           "version_id": 0,
485           "field_exists": false,
486           "size": 4
487         },
488         {
489           "field": "doorbell",
490           "version_id": 0,
491           "field_exists": false,
492           "size": 4
493         },
494         {
495           "field": "reply_queue_pa",
496           "version_id": 0,
497           "field_exists": false,
498           "size": 8
499         },
500         {
501           "field": "consumer_pa",
502           "version_id": 0,
503           "field_exists": false,
504           "size": 8
505         },
506         {
507           "field": "producer_pa",
508           "version_id": 0,
509           "field_exists": false,
510           "size": 8
511         }
512       ]
513     }
514   },
515   "PIIX3-xen": {
516     "Name": "PIIX3-xen",
517     "version_id": 3,
518     "minimum_version_id": 2,
519     "Description": {
520       "name": "PIIX3",
521       "version_id": 3,
522       "minimum_version_id": 2,
523       "Fields": [
524         {
525           "field": "dev",
526           "version_id": 0,
527           "field_exists": false,
528           "size": 1944,
529           "Description": {
530             "name": "PCIDevice",
531             "version_id": 2,
532             "minimum_version_id": 1,
533             "Fields": [
534               {
535                 "field": "version_id",
536                 "version_id": 0,
537                 "field_exists": false,
538                 "size": 4
539               },
540               {
541                 "field": "config",
542                 "version_id": 0,
543                 "field_exists": false,
544                 "size": 256
545               },
546               {
547                 "field": "irq_state",
548                 "version_id": 2,
549                 "field_exists": false,
550                 "size": 16
551               }
552             ]
553           }
554         },
555         {
556           "field": "pci_irq_levels_vmstate",
557           "version_id": 3,
558           "field_exists": false,
559           "size": 4
560         }
561       ]
562     }
563   },
564   "tpci200": {
565     "Name": "tpci200",
566     "version_id": 1,
567     "minimum_version_id": 1,
568     "Description": {
569       "name": "tpci2002",
570       "version_id": 1,
571       "minimum_version_id": 1,
572       "Fields": [
573         {
574           "field": "dev",
575           "version_id": 0,
576           "field_exists": false,
577           "size": 1944,
578           "Description": {
579             "name": "PCIDevice",
580             "version_id": 2,
581             "minimum_version_id": 1,
582             "Fields": [
583               {
584                 "field": "version_id",
585                 "version_id": 0,
586                 "field_exists": false,
587                 "size": 4
588               },
589               {
590                 "field": "config",
591                 "version_id": 0,
592                 "field_exists": false,
593                 "size": 256
594               },
595               {
596                 "field": "irq_state",
597                 "version_id": 2,
598                 "field_exists": false,
599                 "size": 16
600               }
601             ]
602           }
603         },
604         {
605           "field": "big_endian",
606           "version_id": 0,
607           "field_exists": false,
608           "size": 1
609         },
610         {
611           "field": "ctrl",
612           "version_id": 0,
613           "field_exists": false,
614           "size": 1
615         },
616         {
617           "field": "status",
618           "version_id": 0,
619           "field_exists": false,
620           "size": 2
621         },
622         {
623           "field": "int_set",
624           "version_id": 0,
625           "field_exists": false,
626           "size": 1
627         }
628       ]
629     }
630   },
631   "SUNW,fdtwo": {
632     "Name": "SUNW,fdtwo",
633     "version_id": 2,
634     "minimum_version_id": 2,
635     "Description": {
636       "name": "fdc",
637       "version_id": 1,
638       "minimum_version_id": 2,
639       "Fields": [
640         {
641           "field": "state",
642           "version_id": 0,
643           "field_exists": false,
644           "size": 360,
645           "Description": {
646             "name": "fdc",
647             "version_id": 2,
648             "minimum_version_id": 2,
649             "Fields": [
650               {
651                 "field": "sra",
652                 "version_id": 0,
653                 "field_exists": false,
654                 "size": 1
655               },
656               {
657                 "field": "srb",
658                 "version_id": 0,
659                 "field_exists": false,
660                 "size": 1
661               },
662               {
663                 "field": "dor_vmstate",
664                 "version_id": 0,
665                 "field_exists": false,
666                 "size": 1
667               },
668               {
669                 "field": "tdr",
670                 "version_id": 0,
671                 "field_exists": false,
672                 "size": 1
673               },
674               {
675                 "field": "dsr",
676                 "version_id": 0,
677                 "field_exists": false,
678                 "size": 1
679               },
680               {
681                 "field": "msr",
682                 "version_id": 0,
683                 "field_exists": false,
684                 "size": 1
685               },
686               {
687                 "field": "status0",
688                 "version_id": 0,
689                 "field_exists": false,
690                 "size": 1
691               },
692               {
693                 "field": "status1",
694                 "version_id": 0,
695                 "field_exists": false,
696                 "size": 1
697               },
698               {
699                 "field": "status2",
700                 "version_id": 0,
701                 "field_exists": false,
702                 "size": 1
703               },
704               {
705                 "field": "fifo",
706                 "version_id": 0,
707                 "field_exists": false,
708                 "size": 1
709               },
710               {
711                 "field": "data_pos",
712                 "version_id": 0,
713                 "field_exists": false,
714                 "size": 4
715               },
716               {
717                 "field": "data_len",
718                 "version_id": 0,
719                 "field_exists": false,
720                 "size": 4
721               },
722               {
723                 "field": "data_state",
724                 "version_id": 0,
725                 "field_exists": false,
726                 "size": 1
727               },
728               {
729                 "field": "data_dir",
730                 "version_id": 0,
731                 "field_exists": false,
732                 "size": 1
733               },
734               {
735                 "field": "eot",
736                 "version_id": 0,
737                 "field_exists": false,
738                 "size": 1
739               },
740               {
741                 "field": "timer0",
742                 "version_id": 0,
743                 "field_exists": false,
744                 "size": 1
745               },
746               {
747                 "field": "timer1",
748                 "version_id": 0,
749                 "field_exists": false,
750                 "size": 1
751               },
752               {
753                 "field": "precomp_trk",
754                 "version_id": 0,
755                 "field_exists": false,
756                 "size": 1
757               },
758               {
759                 "field": "config",
760                 "version_id": 0,
761                 "field_exists": false,
762                 "size": 1
763               },
764               {
765                 "field": "lock",
766                 "version_id": 0,
767                 "field_exists": false,
768                 "size": 1
769               },
770               {
771                 "field": "pwrd",
772                 "version_id": 0,
773                 "field_exists": false,
774                 "size": 1
775               },
776               {
777                 "field": "num_floppies",
778                 "version_id": 0,
779                 "field_exists": false,
780                 "size": 1
781               },
782               {
783                 "field": "drives",
784                 "version_id": 1,
785                 "field_exists": false,
786                 "size": 40,
787                 "Description": {
788                   "name": "fdrive",
789                   "version_id": 1,
790                   "minimum_version_id": 1,
791                   "Fields": [
792                     {
793                       "field": "head",
794                       "version_id": 0,
795                       "field_exists": false,
796                       "size": 1
797                     },
798                     {
799                       "field": "track",
800                       "version_id": 0,
801                       "field_exists": false,
802                       "size": 1
803                     },
804                     {
805                       "field": "sect",
806                       "version_id": 0,
807                       "field_exists": false,
808                       "size": 1
809                     }
810                   ],
811                   "Subsections": [
812                     {
813                       "name": "fdrive/media_changed",
814                       "version_id": 1,
815                       "minimum_version_id": 1,
816                       "Fields": [
817                         {
818                           "field": "media_changed",
819                           "version_id": 0,
820                           "field_exists": false,
821                           "size": 1
822                         }
823                       ]
824                     }
825                   ]
826                 }
827               }
828             ]
829           }
830         }
831       ]
832     }
833   },
834   "usb-kbd": {
835     "Name": "usb-kbd",
836     "version_id": 1,
837     "minimum_version_id": 1,
838     "Description": {
839       "name": "usb-kbd",
840       "version_id": 1,
841       "minimum_version_id": 1,
842       "Fields": [
843         {
844           "field": "dev",
845           "version_id": 0,
846           "field_exists": false,
847           "size": 5832,
848           "Description": {
849             "name": "USBDevice",
850             "version_id": 1,
851             "minimum_version_id": 1,
852             "Fields": [
853               {
854                 "field": "addr",
855                 "version_id": 0,
856                 "field_exists": false,
857                 "size": 1
858               },
859               {
860                 "field": "state",
861                 "version_id": 0,
862                 "field_exists": false,
863                 "size": 4
864               },
865               {
866                 "field": "remote_wakeup",
867                 "version_id": 0,
868                 "field_exists": false,
869                 "size": 4
870               },
871               {
872                 "field": "setup_state",
873                 "version_id": 0,
874                 "field_exists": false,
875                 "size": 4
876               },
877               {
878                 "field": "setup_len",
879                 "version_id": 0,
880                 "field_exists": false,
881                 "size": 4
882               },
883               {
884                 "field": "setup_index",
885                 "version_id": 0,
886                 "field_exists": false,
887                 "size": 4
888               },
889               {
890                 "field": "setup_buf",
891                 "version_id": 0,
892                 "field_exists": false,
893                 "size": 1
894               }
895             ]
896           }
897         },
898         {
899           "field": "hid",
900           "version_id": 0,
901           "field_exists": false,
902           "size": 312,
903           "Description": {
904             "name": "HIDKeyboardDevice",
905             "version_id": 1,
906             "minimum_version_id": 1,
907             "Fields": [
908               {
909                 "field": "kbd.keycodes",
910                 "version_id": 0,
911                 "field_exists": false,
912                 "size": 2
913               },
914               {
915                 "field": "head",
916                 "version_id": 0,
917                 "field_exists": false,
918                 "size": 4
919               },
920               {
921                 "field": "n",
922                 "version_id": 0,
923                 "field_exists": false,
924                 "size": 4
925               },
926               {
927                 "field": "kbd.modifiers",
928                 "version_id": 0,
929                 "field_exists": false,
930                 "size": 2
931               },
932               {
933                 "field": "kbd.leds",
934                 "version_id": 0,
935                 "field_exists": false,
936                 "size": 1
937               },
938               {
939                 "field": "kbd.key",
940                 "version_id": 0,
941                 "field_exists": false,
942                 "size": 1
943               },
944               {
945                 "field": "kbd.keys",
946                 "version_id": 0,
947                 "field_exists": false,
948                 "size": 4
949               },
950               {
951                 "field": "protocol",
952                 "version_id": 0,
953                 "field_exists": false,
954                 "size": 4
955               },
956               {
957                 "field": "idle",
958                 "version_id": 0,
959                 "field_exists": false,
960                 "size": 1
961               }
962             ]
963           }
964         }
965       ]
966     }
967   }
968 }