1
The following changes since commit 77d472291812cf04f97974dadbda767e59e31fde:
1
The following changes since commit 13356edb87506c148b163b8c7eb0695647d00c2a:
2
2
3
Merge remote-tracking branch 'remotes/sstabellini/tags/xen-20170707-tag' into staging (2017-07-10 10:29:11 +0100)
3
Merge tag 'block-pull-request' of https://gitlab.com/stefanha/qemu into staging (2023-01-24 09:45:33 +0000)
4
4
5
are available in the git repository at:
5
are available in the Git repository at:
6
6
7
https://repo.or.cz/qemu/kevin.git tags/for-upstream
7
8
8
git://repo.or.cz/qemu/kevin.git tags/for-upstream
9
for you to fetch changes up to 1fb9d23f06e0eea297fd57ac62f0fa9efbce865f:
9
10
10
for you to fetch changes up to 51b0a488882328f8f02519bb47ca7e0e7fbe12ff:
11
qemu-img: Change info key names for protocol nodes (2023-01-24 18:40:18 +0100)
11
12
12
block: Make bdrv_is_allocated_above() byte-based (2017-07-10 13:18:07 +0200)
13
v3:
14
- Make the compiler happier on BSD and CentOS Stream 8
15
16
v2:
17
- Rebased to resolve merge conflicts in coroutine.h
13
18
14
----------------------------------------------------------------
19
----------------------------------------------------------------
15
Block layer patches
20
Block layer patches
16
21
22
- qemu-img info: Show protocol-level information
23
- Move more functions to coroutines
24
- Make coroutine annotations ready for static analysis
25
- qemu-img: Fix exit code for errors closing the image
26
- qcow2 bitmaps: Fix theoretical corruption in error path
27
- pflash: Only load non-zero parts of backend image to save memory
28
- Code cleanup and test case improvements
29
17
----------------------------------------------------------------
30
----------------------------------------------------------------
18
Daniel P. Berrange (1):
31
Alberto Faria (2):
19
qemu-img: drop -e and -6 options from the 'create' & 'convert' commands
32
coroutine: annotate coroutine_fn for libclang
33
block: Add no_coroutine_fn and coroutine_mixed_fn marker
20
34
21
Eric Blake (25):
35
Emanuele Giuseppe Esposito (14):
22
qemu-io: Don't die on second open
36
block-coroutine-wrapper: support void functions
23
block: Guarantee that *file is set on bdrv_get_block_status()
37
block: Convert bdrv_io_plug() to co_wrapper
24
block: Simplify use of BDRV_BLOCK_RAW
38
block: Convert bdrv_io_unplug() to co_wrapper
25
blkdebug: Support .bdrv_co_get_block_status
39
block: Convert bdrv_is_inserted() to co_wrapper
26
blockjob: Track job ratelimits via bytes, not sectors
40
block: Rename refresh_total_sectors to bdrv_refresh_total_sectors
27
trace: Show blockjob actions via bytes, not sectors
41
block: Convert bdrv_refresh_total_sectors() to co_wrapper_mixed
28
stream: Switch stream_populate() to byte-based
42
block-backend: use bdrv_getlength instead of blk_getlength
29
stream: Drop reached_end for stream_complete()
43
block: use bdrv_co_refresh_total_sectors when possible
30
stream: Switch stream_run() to byte-based
44
block: Convert bdrv_get_allocated_file_size() to co_wrapper
31
commit: Switch commit_populate() to byte-based
45
block: Convert bdrv_get_info() to co_wrapper_mixed
32
commit: Switch commit_run() to byte-based
46
block: Convert bdrv_eject() to co_wrapper
33
mirror: Switch MirrorBlockJob to byte-based
47
block: Convert bdrv_lock_medium() to co_wrapper
34
mirror: Switch mirror_do_zero_or_discard() to byte-based
48
block: Convert bdrv_debug_event() to co_wrapper_mixed
35
mirror: Update signature of mirror_clip_sectors()
49
block: Rename bdrv_load/save_vmstate() to bdrv_co_load/save_vmstate()
36
mirror: Switch mirror_cow_align() to byte-based
37
mirror: Switch mirror_do_read() to byte-based
38
mirror: Switch mirror_iteration() to byte-based
39
block: Drop unused bdrv_round_sectors_to_clusters()
40
backup: Switch BackupBlockJob to byte-based
41
backup: Switch block_backup.h to byte-based
42
backup: Switch backup_do_cow() to byte-based
43
backup: Switch backup_run() to byte-based
44
block: Make bdrv_is_allocated() byte-based
45
block: Minimize raw use of bds->total_sectors
46
block: Make bdrv_is_allocated_above() byte-based
47
50
48
Hervé Poussineau (13):
51
Hanna Reitz (12):
49
vvfat: fix qemu-img map and qemu-img convert
52
block: Improve empty format-specific info dump
50
vvfat: replace tabs by 8 spaces
53
block/file: Add file-specific image info
51
vvfat: fix typos
54
block/vmdk: Change extent info type
52
vvfat: rename useless enumeration values
55
block: Split BlockNodeInfo off of ImageInfo
53
vvfat: introduce offset_to_bootsector, offset_to_fat and offset_to_root_dir
56
qemu-img: Use BlockNodeInfo
54
vvfat: fix field names in FAT12/FAT16 and FAT32 boot sectors
57
block/qapi: Let bdrv_query_image_info() recurse
55
vvfat: always create . and .. entries at first and in that order
58
block/qapi: Introduce BlockGraphInfo
56
vvfat: correctly create long names for non-ASCII filenames
59
block/qapi: Add indentation to bdrv_node_info_dump()
57
vvfat: correctly create base short names for non-ASCII filenames
60
iotests: Filter child node information
58
vvfat: correctly generate numeric-tail of short file names
61
iotests/106, 214, 308: Read only one size line
59
vvfat: limit number of entries in root directory in FAT12/FAT16
62
qemu-img: Let info print block graph
60
vvfat: handle KANJI lead byte 0xe5
63
qemu-img: Change info key names for protocol nodes
61
vvfat: change OEM name to 'MSWIN4.1'
62
64
63
Thomas Huth (1):
65
Kevin Wolf (4):
64
blockdev: Print a warning for legacy drive options that belong to -device
66
qcow2: Fix theoretical corruption in store_bitmap() error path
67
qemu-img commit: Report errors while closing the image
68
qemu-img bitmap: Report errors while closing the image
69
qemu-iotests: Test qemu-img bitmap/commit exit code on error
65
70
66
block/backup.c | 128 +--
71
Paolo Bonzini (2):
67
block/blkdebug.c | 11 +
72
qemu-io: do not reinvent the blk_pwrite_zeroes wheel
68
block/commit.c | 56 +-
73
block: remove bdrv_coroutine_enter
69
block/io.c | 102 +-
70
block/mirror.c | 310 +++---
71
block/raw-format.c | 2 +-
72
block/replication.c | 29 +-
73
block/stream.c | 37 +-
74
block/trace-events | 14 +-
75
block/vpc.c | 2 +-
76
block/vvfat.c | 2336 ++++++++++++++++++++++--------------------
77
blockdev.c | 14 +
78
include/block/block.h | 16 +-
79
include/block/block_backup.h | 11 +-
80
include/qemu/ratelimit.h | 3 +-
81
migration/block.c | 16 +-
82
qemu-img.c | 41 +-
83
qemu-io-cmds.c | 70 +-
84
qemu-io.c | 7 +-
85
qemu-options.hx | 9 +-
86
tests/qemu-iotests/060.out | 1 +
87
tests/qemu-iotests/114.out | 5 +-
88
tests/qemu-iotests/153.out | 6 +
89
tests/qemu-iotests/177 | 3 +
90
tests/qemu-iotests/177.out | 5 +
91
25 files changed, 1675 insertions(+), 1559 deletions(-)
92
74
75
Philippe Mathieu-Daudé (1):
76
block/nbd: Add missing <qemu/bswap.h> include
77
78
Thomas Huth (2):
79
tests/qemu-iotests/312: Mark "quorum" as required driver
80
tests/qemu-iotests/262: Check for availability of "blkverify" first
81
82
Xiang Zheng (1):
83
pflash: Only read non-zero parts of backend image
84
85
qapi/block-core.json | 123 +++++++-
86
include/block/block-common.h | 11 +-
87
include/block/block-io.h | 41 ++-
88
include/block/block_int-common.h | 26 +-
89
include/block/block_int-io.h | 5 +-
90
include/block/nbd.h | 1 +
91
include/block/qapi.h | 14 +-
92
include/qemu/osdep.h | 44 +++
93
include/sysemu/block-backend-io.h | 31 +-
94
block.c | 88 +++---
95
block/blkdebug.c | 11 +-
96
block/blkio.c | 15 +-
97
block/blklogwrites.c | 6 +-
98
block/blkreplay.c | 6 +-
99
block/blkverify.c | 6 +-
100
block/block-backend.c | 38 +--
101
block/commit.c | 4 +-
102
block/copy-on-read.c | 18 +-
103
block/crypto.c | 14 +-
104
block/curl.c | 10 +-
105
block/file-posix.c | 137 +++++----
106
block/file-win32.c | 18 +-
107
block/filter-compress.c | 20 +-
108
block/gluster.c | 23 +-
109
block/io.c | 76 ++---
110
block/iscsi.c | 17 +-
111
block/mirror.c | 6 +-
112
block/monitor/block-hmp-cmds.c | 2 +-
113
block/nbd.c | 8 +-
114
block/nfs.c | 4 +-
115
block/null.c | 13 +-
116
block/nvme.c | 14 +-
117
block/preallocate.c | 16 +-
118
block/qapi.c | 317 ++++++++++++++++-----
119
block/qcow.c | 5 +-
120
block/qcow2-bitmap.c | 5 +-
121
block/qcow2-refcount.c | 2 +-
122
block/qcow2.c | 17 +-
123
block/qed.c | 11 +-
124
block/quorum.c | 8 +-
125
block/raw-format.c | 25 +-
126
block/rbd.c | 9 +-
127
block/replication.c | 6 +-
128
block/ssh.c | 4 +-
129
block/throttle.c | 6 +-
130
block/vdi.c | 7 +-
131
block/vhdx.c | 5 +-
132
block/vmdk.c | 22 +-
133
block/vpc.c | 5 +-
134
blockdev.c | 8 +-
135
hw/block/block.c | 36 ++-
136
hw/scsi/scsi-disk.c | 5 +
137
qemu-img.c | 100 +++++--
138
qemu-io-cmds.c | 62 +---
139
tests/unit/test-block-iothread.c | 3 +
140
scripts/block-coroutine-wrapper.py | 20 +-
141
tests/qemu-iotests/iotests.py | 18 +-
142
block/meson.build | 1 +
143
tests/qemu-iotests/065 | 2 +-
144
tests/qemu-iotests/106 | 4 +-
145
tests/qemu-iotests/214 | 6 +-
146
tests/qemu-iotests/262 | 3 +-
147
tests/qemu-iotests/302.out | 5 +
148
tests/qemu-iotests/308 | 4 +-
149
tests/qemu-iotests/312 | 1 +
150
tests/qemu-iotests/common.filter | 22 +-
151
tests/qemu-iotests/common.rc | 22 +-
152
tests/qemu-iotests/tests/qemu-img-close-errors | 95 ++++++
153
tests/qemu-iotests/tests/qemu-img-close-errors.out | 23 ++
154
69 files changed, 1208 insertions(+), 552 deletions(-)
155
create mode 100755 tests/qemu-iotests/tests/qemu-img-close-errors
156
create mode 100644 tests/qemu-iotests/tests/qemu-img-close-errors.out
157
158
diff view generated by jsdifflib