qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 22/54] block: Request real permissions in bdrv_a


From: Max Reitz
Subject: Re: [Qemu-devel] [PATCH 22/54] block: Request real permissions in bdrv_attach_child()
Date: Wed, 22 Feb 2017 15:31:13 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0

On 21.02.2017 15:58, Kevin Wolf wrote:
> Now that all block drivers with children tell us what permissions they
> need from each of their children, bdrv_attach_child() can use this
> information and make the right requirements while trying to attach new
> children.
> 
> Signed-off-by: Kevin Wolf <address@hidden>
> ---
>  block.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/block.c b/block.c
> index 1c5f211..054e6f0 100644
> --- a/block.c
> +++ b/block.c
> @@ -1659,10 +1659,14 @@ BdrvChild *bdrv_attach_child(BlockDriverState 
> *parent_bs,
>                               Error **errp)
>  {
>      BdrvChild *child;
> +    uint64_t perm, shared_perm;
> +
> +    assert(parent_bs->drv);
> +    parent_bs->drv->bdrv_child_perm(parent_bs, NULL, child_role,
> +                                    0, BLK_PERM_ALL, &perm, &shared_perm);

Another Second Thoughtâ„¢: Why do we request no permissions for the new
child here? Seems weird to me. Shouldn't the caller specify the
necessary permissions and what can be shared?

Max

>  
> -    /* FIXME Use real permissions */
>      child = bdrv_root_attach_child(child_bs, child_name, child_role,
> -                                   0, BLK_PERM_ALL, parent_bs, errp);
> +                                   perm, shared_perm, parent_bs, errp);
>      if (child == NULL) {
>          return NULL;
>      }
> 


Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]