diff options
author | Kevin Wolf <kwolf@redhat.com> | 2017-01-17 11:56:42 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2017-02-28 20:40:37 +0100 |
commit | 76d554e20bd0a965ac22d6155a129be12fac2667 (patch) | |
tree | dd9e34a6339d8cebb1c60a51782cb6ae84490dcd /block/stream.c | |
parent | 26de9438c1b6013532fb95de0720e2696588332f (diff) | |
download | qemu-76d554e20bd0a965ac22d6155a129be12fac2667.zip qemu-76d554e20bd0a965ac22d6155a129be12fac2667.tar.gz qemu-76d554e20bd0a965ac22d6155a129be12fac2667.tar.bz2 |
blockjob: Add permissions to block_job_add_bdrv()
Block jobs don't actually do I/O through the the reference they create
with block_job_add_bdrv(), but they might want to use the permisssion
system to express what the block job does to intermediate nodes. This
adds permissions to block_job_add_bdrv() to provide the means to request
permissions.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Acked-by: Fam Zheng <famz@redhat.com>
Diffstat (limited to 'block/stream.c')
-rw-r--r-- | block/stream.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/block/stream.c b/block/stream.c index 7f49279..ba8650f 100644 --- a/block/stream.c +++ b/block/stream.c @@ -248,7 +248,9 @@ void stream_start(const char *job_id, BlockDriverState *bs, /* Block all intermediate nodes between bs and base, because they * will disappear from the chain after this operation */ for (iter = backing_bs(bs); iter && iter != base; iter = backing_bs(iter)) { - block_job_add_bdrv(&s->common, iter); + /* FIXME Use real permissions */ + block_job_add_bdrv(&s->common, "intermediate node", iter, 0, + BLK_PERM_ALL, &error_abort); } s->base = base; |