Hi, I'm reading the source code of cow.c: https://github.com/qemu/qemu/blob/master/block/cow.c and try to understand the format better.
I created a cow format imagefile and can run 'qume-img info' to query the header info ------------------------------------------------------------------------------- -bash-4.1$ qemu-img create -f cow dummy 1M Formatting 'test/dummy', fmt=cow size=1048576 -bash-4.1$ qemu-img info dummy image: dummy file format: cow virtual size: 1.0M (1048576 bytes) disk size: 4.0K But when I used hexdump to dis the header part, I cannot find all info recorded: (compared the define of struct cow_header_v2 and cow_create()) ------------------------------------------------------------------------------ 1) recognize the magic and version info: -bash-4.1$ hexdump -C dummy -n 8 00000000 4f 4f 4f 4d 00 00 00 02 |OOOM....| 00000008 2) backing_file and mtime fields are 0s: # I think the "dummy" should be recorded -bash-4.1$ hexdump -C dummy -n 1032 00000000 4f 4f 4f 4d 00 00 00 02 00 00 00 00 00 00 00 00 |OOOM............| 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000400 00 00 00 00 00 00 00 00 |........| 00000408 -bash-4.1$ hexdump -C dummy -n 1036 00000000 4f 4f 4f 4d 00 00 00 02 00 00 00 00 00 00 00 00 |OOOM............| 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000400 00 00 00 00 00 00 00 00 00 00 00 00 |............| 0000040c 3) size field is 0s: -bash-4.1$ hexdump -C dummy -n 1044 # size should be 1M 00000000 4f 4f 4f 4d 00 00 00 02 00 00 00 00 00 00 00 00 |OOOM............| 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000410 00 00 00 00 |....| 00000414 4) sectorsize is 512: -bash-4.1$ hexdump -C dummy -n 1048 00000000 4f 4f 4f 4d 00 00 00 02 00 00 00 00 00 00 00 00 |OOOM............| 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000410 00 00 00 00 00 10 00 00 |........| 00000418 Can anyone help to explain this? Or how to debug further? -- Regards, shhuiw