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

Re: [Xen-devel] [PATCH 3/6] x86/shadow: Use ERR_PTR infrastructure for sh_emulate_map_dest()



>>> On 21.06.17 at 17:12, <andrew.cooper3@xxxxxxxxxx> wrote:
> sh_emulate_map_dest() predates the introduction of the generic ERR_PTR()
> infrasturcture, but take the opportunity to avoid opencoding it.
> 
> The chosen error constants require need to be negative to work with IS_ERR(),
> but no other changes.

Drop one of "require" or "need"?

> --- a/xen/arch/x86/mm/shadow/private.h
> +++ b/xen/arch/x86/mm/shadow/private.h
> @@ -395,10 +395,9 @@ void shadow_unhook_mappings(struct domain *d, mfn_t 
> smfn, int user_only);
>  
>  /* Returns a mapped pointer to write to, or one of the following error
>   * indicators. */
> -#define MAPPING_UNHANDLEABLE ((void *)(unsigned long)X86EMUL_UNHANDLEABLE)
> -#define MAPPING_EXCEPTION    ((void *)(unsigned long)X86EMUL_EXCEPTION)
> -#define MAPPING_SILENT_FAIL  ((void *)(unsigned long)X86EMUL_OKAY)
> -#define sh_emulate_map_dest_failed(rc) ((unsigned long)(rc) <= 3)
> +#define MAPPING_UNHANDLEABLE ERR_PTR(~(long)X86EMUL_UNHANDLEABLE)
> +#define MAPPING_EXCEPTION    ERR_PTR(~(long)X86EMUL_EXCEPTION)
> +#define MAPPING_SILENT_FAIL  ERR_PTR(~(long)X86EMUL_OKAY)

While this doesn't change with your patch, this last definition has a
string dependency on X86EMUL_OKAY to be zero, yet there's no
respective BUILD_BUG_ON() anywhere. Would you mind adding
one at once? In any event
Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>

Jan


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

 


Rackspace

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