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

Re: [Xen-devel] [PATCH v2 3/3] gnttab: clean up gnttab_set_version()



On 22/06/15 12:46, Jan Beulich wrote:
> - drop pointless nr_grant_entries() check from loop over reserved
>   entries (adding suitable BUILD_BUG_ON()s to validate that)
> - adjust types
> - rename d to currd
> - formatting
>
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, with one suggestion.

> @@ -2625,66 +2633,78 @@ gnttab_set_version(XEN_GUEST_HANDLE_PARA
>          break;
>      }
>  
> -    /* Preserve the first 8 entries (toolstack reserved grants) */
> -    if ( gt->gt_version == 1 )
> -    {
> -        memcpy(reserved_entries, &shared_entry_v1(gt, 0), 
> sizeof(reserved_entries));
> -    }
> -    else if ( gt->gt_version == 2 )
> +    /* Preserve the first 8 entries (toolstack reserved grants). */
> +    switch ( gt->gt_version )
>      {
> -        for ( i = 0; i < GNTTAB_NR_RESERVED_ENTRIES && i < 
> nr_grant_entries(gt); i++ )
> +    case 1:
> +        memcpy(reserved_entries, &shared_entry_v1(gt, 0),
> +               sizeof(reserved_entries));
> +        break;
> +    case 2:
> +        for ( i = 0; i < GNTTAB_NR_RESERVED_ENTRIES; i++ )
>          {
> -            int flags = status_entry(gt, i);
> -            flags |= shared_entry_v2(gt, i).hdr.flags;
> -            if ((flags & GTF_type_mask) == GTF_permit_access)
> +            unsigned int flags = shared_entry_v2(gt, i).hdr.flags;
> +
> +            switch ( flags & GTF_type_mask )
>              {
> -                reserved_entries[i].flags = flags;
> +            case GTF_permit_access:
> +                reserved_entries[i].flags = flags | status_entry(gt, i);
>                  reserved_entries[i].domid = shared_entry_v2(gt, i).hdr.domid;
>                  reserved_entries[i].frame = shared_entry_v2(gt, 
> i).full_page.frame;
> -            }
> -            else
> -            {
> -                if ((flags & GTF_type_mask) != GTF_invalid)
> -                    gdprintk(XENLOG_INFO, "d%d: bad flags %x in grant %d 
> when switching grant version\n",
> -                           d->domain_id, flags, i);
> +                break;
> +            default:
> +                gdprintk(XENLOG_INFO,
> +                         "bad flags %x in grant %u when switching version\n",
> +                         flags, i);

A 0x for flags, to avoid decimal confusion.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.