On 16/07/18 10:57, Wei Liu wrote: > On Fri, Jul 13, 2018 at 09:03:10PM +0100, Andrew Cooper wrote: >> As with the serialise side, Xen's copy_from_guest API is used, with a >> compatibility wrapper for the userspace build. >> >> Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com> >> Signed-off-by: Sergey Dyasli <sergey.dya...@citrix.com> >> Signed-off-by: Roger Pau Monné <roger....@citrix.com> >> --- >> CC: Jan Beulich <jbeul...@suse.com> >> CC: Wei Liu <wei.l...@citrix.com> >> CC: Roger Pau Monné <roger....@citrix.com> >> CC: Sergey Dyasli <sergey.dya...@citrix.com> >> CC: Ian Jackson <ian.jack...@eu.citrix.com> >> >> v2: >> * Rewrite copy_from_buffer_offset() to avoid multiple evaluation of its >> arguments. >> * Expand boundary justifications. >> --- >> xen/common/libx86/cpuid.c | 94 >> ++++++++++++++++++++++++++++++++++++++++++ >> xen/common/libx86/private.h | 14 +++++++ >> xen/include/xen/libx86/cpuid.h | 11 +++++ >> 3 files changed, 119 insertions(+) >> >> diff --git a/xen/common/libx86/cpuid.c b/xen/common/libx86/cpuid.c >> index cf7dbd3..73cd574 100644 >> --- a/xen/common/libx86/cpuid.c >> +++ b/xen/common/libx86/cpuid.c >> @@ -123,6 +123,100 @@ int x86_cpuid_copy_to_buffer(const struct cpuid_policy >> *p, >> return 0; >> } >> >> + >> /* >> * Local variables: >> * mode: C >> diff --git a/xen/common/libx86/private.h b/xen/common/libx86/private.h >> index e874fb6..dc451d0 100644 >> --- a/xen/common/libx86/private.h >> +++ b/xen/common/libx86/private.h >> @@ -12,6 +12,7 @@ >> #include <asm/msr-index.h> >> >> #define copy_to_buffer_offset copy_to_guest_offset >> +#define copy_from_buffer_offset copy_from_guest_offset >> >> #else >> >> @@ -44,6 +45,19 @@ static inline bool test_bit(unsigned int bit, const void >> *vaddr) >> 0; \ >> }) >> >> +/* memcpy(), but with copy_from_guest_offset()'s API. */ >> +#define copy_from_buffer_offset(dst, src, index, nr) \ >> +({ \ >> + const typeof(*(dst)) *src_ = (src); \ > Same issue as previous patch here. Also enforcing dst_ and src_ are of > the same type would be good. > > Otherwise: > > Reviewed-by: Wei Liu <wei.l...@citrix.com>
The use of dst *is* the enforcement of them being the same type. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel