The following changes since commit b785d25e91718a660546a6550f64b3c543af7754:
Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2020-12-11 13:50:35 +0000) are available in the Git repository at: git://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to 960d5fb3e8ee09bc5f1a5c84f66dce42a6cef920: block: Fix deadlock in bdrv_co_yield_to_drain() (2020-12-11 17:52:40 +0100) ---------------------------------------------------------------- Block layer patches: - Support for FUSE exports - Fix deadlock in bdrv_co_yield_to_drain() - Use lock guard macros - Some preparational patches for 64 bit block layer - file-posix: Fix request extension to INT64_MAX in raw_do_pwrite_zeroes() ---------------------------------------------------------------- Gan Qixin (4): block/accounting: Use lock guard macros block/curl: Use lock guard macros block/throttle-groups: Use lock guard macros block/iscsi: Use lock guard macros Kevin Wolf (4): can-host: Fix crash when 'canbus' property is not set block: Simplify qmp_block_resize() error paths block: Fix locking in qmp_block_resize() block: Fix deadlock in bdrv_co_yield_to_drain() Li Feng (1): file-posix: check the use_lock before setting the file lock Max Reitz (21): meson: Detect libfuse fuse: Allow exporting BDSs via FUSE fuse: Implement standard FUSE operations fuse: Allow growable exports fuse: (Partially) implement fallocate() fuse: Implement hole detection through lseek iotests: Do not needlessly filter _make_test_img iotests: Do not pipe _make_test_img iotests: Use convert -n in some cases iotests/046: Avoid renaming images iotests: Derive image names from $TEST_IMG iotests/091: Use _cleanup_qemu instad of "wait" iotests: Restrict some Python tests to file iotests: Let _make_test_img guess $TEST_IMG_FILE iotests/287: Clean up subshell test image storage-daemon: Call bdrv_close_all() on exit iotests: Give access to the qemu-storage-daemon iotests: Allow testing FUSE exports iotests: Enable fuse for many tests iotests/308: Add test for FUSE exports iotests/221: Discard image before qemu-img map Vladimir Sementsov-Ogievskiy (4): block/file-posix: fix workaround in raw_do_pwrite_zeroes() block/io: bdrv_refresh_limits(): use ERRP_GUARD block/io: bdrv_check_byte_request(): drop bdrv_is_inserted() block: introduce BDRV_MAX_LENGTH qapi/block-export.json | 27 +- meson_options.txt | 4 + configure | 13 + include/block/block.h | 10 + include/block/block_int.h | 8 + include/block/fuse.h | 30 ++ block.c | 18 +- block/accounting.c | 32 +- block/curl.c | 28 +- block/export/export.c | 4 + block/export/fuse.c | 726 +++++++++++++++++++++++++++++++++++ block/file-posix.c | 9 +- block/io.c | 110 ++++-- block/iscsi.c | 50 ++- block/throttle-groups.c | 48 ++- blockdev.c | 14 +- net/can/can_host.c | 5 + storage-daemon/qemu-storage-daemon.c | 3 + tests/test-write-threshold.c | 4 + MAINTAINERS | 6 + block/export/meson.build | 2 + meson.build | 26 ++ tests/qemu-iotests/025 | 2 +- tests/qemu-iotests/026 | 2 +- tests/qemu-iotests/028 | 16 +- tests/qemu-iotests/028.out | 3 + tests/qemu-iotests/031 | 2 +- tests/qemu-iotests/034 | 2 +- tests/qemu-iotests/036 | 2 +- tests/qemu-iotests/037 | 2 +- tests/qemu-iotests/038 | 2 +- tests/qemu-iotests/039 | 2 +- tests/qemu-iotests/046 | 7 +- tests/qemu-iotests/046.out | 2 +- tests/qemu-iotests/050 | 2 +- tests/qemu-iotests/054 | 2 +- tests/qemu-iotests/060 | 2 +- tests/qemu-iotests/071 | 21 +- tests/qemu-iotests/079 | 2 +- tests/qemu-iotests/080 | 2 +- tests/qemu-iotests/089 | 5 +- tests/qemu-iotests/089.out | 1 + tests/qemu-iotests/090 | 2 +- tests/qemu-iotests/091 | 5 +- tests/qemu-iotests/095 | 2 +- tests/qemu-iotests/097 | 2 +- tests/qemu-iotests/098 | 2 +- tests/qemu-iotests/102 | 2 +- tests/qemu-iotests/103 | 2 +- tests/qemu-iotests/106 | 2 +- tests/qemu-iotests/107 | 2 +- tests/qemu-iotests/108 | 2 +- tests/qemu-iotests/111 | 2 +- tests/qemu-iotests/112 | 2 +- tests/qemu-iotests/115 | 2 +- tests/qemu-iotests/117 | 2 +- tests/qemu-iotests/120 | 2 +- tests/qemu-iotests/121 | 2 +- tests/qemu-iotests/127 | 2 +- tests/qemu-iotests/133 | 2 +- tests/qemu-iotests/137 | 2 +- tests/qemu-iotests/138 | 2 +- tests/qemu-iotests/140 | 2 +- tests/qemu-iotests/154 | 2 +- tests/qemu-iotests/161 | 14 +- tests/qemu-iotests/171 | 2 +- tests/qemu-iotests/174 | 10 +- tests/qemu-iotests/175 | 8 +- tests/qemu-iotests/176 | 2 +- tests/qemu-iotests/177 | 2 +- tests/qemu-iotests/179 | 2 +- tests/qemu-iotests/183 | 2 +- tests/qemu-iotests/186 | 2 +- tests/qemu-iotests/187 | 2 +- tests/qemu-iotests/191 | 2 +- tests/qemu-iotests/195 | 2 +- tests/qemu-iotests/200 | 5 +- tests/qemu-iotests/200.out | 4 +- tests/qemu-iotests/204 | 2 +- tests/qemu-iotests/206 | 5 +- tests/qemu-iotests/206.out | 6 + tests/qemu-iotests/214 | 2 +- tests/qemu-iotests/217 | 2 +- tests/qemu-iotests/220 | 2 +- tests/qemu-iotests/221 | 9 +- tests/qemu-iotests/221.out | 14 +- tests/qemu-iotests/229 | 5 +- tests/qemu-iotests/229.out | 6 +- tests/qemu-iotests/242 | 3 +- tests/qemu-iotests/247 | 2 +- tests/qemu-iotests/249 | 8 +- tests/qemu-iotests/250 | 2 +- tests/qemu-iotests/252 | 2 +- tests/qemu-iotests/265 | 2 +- tests/qemu-iotests/268 | 2 +- tests/qemu-iotests/272 | 2 +- tests/qemu-iotests/273 | 2 +- tests/qemu-iotests/279 | 2 +- tests/qemu-iotests/286 | 2 +- tests/qemu-iotests/287 | 6 +- tests/qemu-iotests/289 | 2 +- tests/qemu-iotests/290 | 2 +- tests/qemu-iotests/291 | 2 +- tests/qemu-iotests/292 | 2 +- tests/qemu-iotests/293 | 2 +- tests/qemu-iotests/294 | 2 +- tests/qemu-iotests/305 | 2 +- tests/qemu-iotests/308 | 339 ++++++++++++++++ tests/qemu-iotests/308.out | 97 +++++ tests/qemu-iotests/check | 17 + tests/qemu-iotests/common.filter | 5 +- tests/qemu-iotests/common.rc | 181 ++++++++- tests/qemu-iotests/group | 1 + 113 files changed, 1841 insertions(+), 265 deletions(-) create mode 100644 include/block/fuse.h create mode 100644 block/export/fuse.c create mode 100755 tests/qemu-iotests/308 create mode 100644 tests/qemu-iotests/308.out