On 19.12.2023 12:05, Simone Ballarin wrote:
> --- a/xen/arch/arm/guestcopy.c
> +++ b/xen/arch/arm/guestcopy.c
> @@ -109,6 +109,7 @@ static unsigned long copy_guest(void *buf, uint64_t addr, 
> unsigned int len,
>  
>  unsigned long raw_copy_to_guest(void *to, const void *from, unsigned int len)
>  {
> +    /* SAF-3-safe COPY_to_guest doesn't modify from */
>      return copy_guest((void *)from, (vaddr_t)to, len,
>                        GVA_INFO(current), COPY_to_guest | COPY_linear);
>  }
> @@ -116,6 +117,7 @@ unsigned long raw_copy_to_guest(void *to, const void 
> *from, unsigned int len)
>  unsigned long raw_copy_to_guest_flush_dcache(void *to, const void *from,
>                                               unsigned int len)
>  {
> +    /* SAF-3-safe COPY_to_guest doesn't modify from */
>      return copy_guest((void *)from, (vaddr_t)to, len, GVA_INFO(current),
>                        COPY_to_guest | COPY_flush_dcache | COPY_linear);
>  }

Unlike below for x86, here in both cases the comment cover more than
just the one function argument they are intended to cover. I think we
want to limit the scope of such comments as much as possible (and
hence have as little as possible on the immediately following line).

Jan

> --- a/xen/arch/x86/hvm/hvm.c
> +++ b/xen/arch/x86/hvm/hvm.c
> @@ -3413,7 +3413,8 @@ static enum hvm_translation_result __hvm_copy(
>  enum hvm_translation_result hvm_copy_to_guest_phys(
>      paddr_t paddr, const void *buf, unsigned int size, struct vcpu *v)
>  {
> -    return __hvm_copy((void *)buf /* HVMCOPY_to_guest doesn't modify */,
> +    /* SAF-3-safe HVMCOPY_to_guest doesn't modify buf */
> +    return __hvm_copy((void *)buf,
>                        paddr, size, v,
>                        HVMCOPY_to_guest | HVMCOPY_phys, 0, NULL);
>  }
> @@ -3429,7 +3430,8 @@ enum hvm_translation_result hvm_copy_to_guest_linear(
>      unsigned long addr, const void *buf, unsigned int size, uint32_t pfec,
>      pagefault_info_t *pfinfo)
>  {
> -    return __hvm_copy((void *)buf /* HVMCOPY_to_guest doesn't modify */,
> +    /* SAF-3-safe HVMCOPY_to_guest doesn't modify buf */
> +    return __hvm_copy((void *)buf,
>                        addr, size, current, HVMCOPY_to_guest | HVMCOPY_linear,
>                        PFEC_page_present | PFEC_write_access | pfec, pfinfo);
>  }


Reply via email to