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

Re: [PATCH 01/14] lib: obey to Misra rule 11.8 where possible


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
  • Date: Tue, 22 Sep 2026 01:24:06 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=FFkLjgcY5vFbcVBbMNc6DQ0M31JpYAiTXQSw2Doajqo=; b=Vq0ucSRl+lG2GOEBa5J3+eJ7XGJye/zkN+u04P3W0Ie/XRnJ0VteKv1lAcssIyPnVzQDjSfNVyCj4/l6vnpIctRKm28L1yB0zeKYcxNO0zbkB3EHOfFrZPvPy+Wcotp69vDbtZW6pqvWXgK/p3HCrvwos9nX5o6DW9FroIWuv9VuXsjYL3HsakStMoIr9zs13h/gG/Me7gMwyFxFVFciZ8EioM/nkpRMBGrBApQwFwje9gtZCpfr1AomCpBMQ9w45DuhqHImMsu3V2ozYv79pFxawaNvSO4Y8gN1HDFau/adp3L4bdCAEBaKj07qGpGbQFBc/oBbXfZZ4hVapitaOw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HvfKMmHTleRBI1pDwQjiVRhIQIIrIyzyYJNI5o/EIfQOY2lpfnKlH3QyclIYvP3UkZdMvIJn76yA/Zv2L0iGNIf9YNPTEyHEWlybDtO/z8zSqDcOqGDH8RGV/YRM86odlRjC4L4nOCkDsFkGxmRWt2TBLf1Vxpo9mPClU8yNA6OBMiSbs1wVzMjvuGNHBIAOJwIS2nAz2ZWbNxi9BHRVjm3YM5rWLKuhFG7WEZz/yZB+EJ3kgLMVTC+SRenFVCJr+3v1aMT2H9lm2QG63yE2UPKWsQ8pQNetNXxnlYV+I77l7pD3xAS+R6l+ZjAUCfX9OErnnwwkozAHZyrec31aXA==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=epam.com header.i="@epam.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:x-ms-exchange-senderadcheck"
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Roger Pau Monné <roger@xxxxxxxxxxxxxx>
  • Delivery-date: Tue, 22 Sep 2026 01:24:27 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHdOqSP/YfdAsU2nkefZ0kBfbUzQg==
  • Thread-topic: [PATCH 01/14] lib: obey to Misra rule 11.8 where possible

Hi Jan,

Jan Beulich <jbeulich@xxxxxxxx> writes:

> Casting away const-ness (or volatile-ness) is never a good idea, but
> some library functions (e.g. strchr()) require doing so. Where not
> required, remove / replace respective casts.
>
> While there convert touched functions to Xen style.
>
> No functional change intended.
>
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

Reviewed-by: Volodymyr Babchuk <volodymyr_babchuk@xxxxxxxx>

>
> --- a/xen/lib/memcpy.c
> +++ b/xen/lib/memcpy.c
> @@ -15,12 +15,13 @@
>   */
>  void *(memcpy)(void *dest, const void *src, size_t n)
>  {
> -     char *tmp = (char *) dest, *s = (char *) src;
> +    char *tmp = dest;
> +    const char *s = src;
>  
> -     while (n--)
> -             *tmp++ = *s++;
> +    while ( n-- )
> +        *tmp++ = *s++;
>  
> -     return dest;
> +    return dest;
>  }
>  
>  /*
> --- a/xen/lib/memmove.c
> +++ b/xen/lib/memmove.c
> @@ -14,21 +14,25 @@
>   */
>  void *(memmove)(void *dest, const void *src, size_t n)
>  {
> -     char *tmp, *s;
> +    char *tmp;
> +    const char *s;
>  
> -     if (dest <= src) {
> -             tmp = (char *) dest;
> -             s = (char *) src;
> -             while (n--)
> -                     *tmp++ = *s++;
> -     } else {
> -             tmp = (char *) dest + n;
> -             s = (char *) src + n;
> -             while (n--)
> -                     *--tmp = *--s;
> -     }
> +    if ( dest <= src )
> +    {
> +        tmp = dest;
> +        s = src;
> +        while ( n-- )
> +            *tmp++ = *s++;
> +    }
> +    else
> +    {
> +        tmp = dest + n;
> +        s = src + n;
> +        while ( n-- )
> +            *--tmp = *--s;
> +    }
>  
> -     return dest;
> +    return dest;
>  }
>  
>  /*
> --- a/xen/lib/strcmp.c
> +++ b/xen/lib/strcmp.c
> @@ -11,16 +11,15 @@
>   */
>  int (strcmp)(const char *cs, const char *ct)
>  {
> -     unsigned char *csu = (unsigned char *)cs;
> -     unsigned char *ctu = (unsigned char *)ct;
> -     int res;
> +    const unsigned char *csu = (const void *)cs;
> +    const unsigned char *ctu = (const void *)ct;
> +    int res;
>  
> -     while (1) {
> -             if ((res = *csu - *ctu++) != 0 || !*csu++)
> -                     break;
> -     }
> +    for ( ; ; )
> +        if ( (res = *csu - *ctu++) != 0 || !*csu++ )
> +            break;
>  
> -     return res;
> +    return res;
>  }
>  
>  /*
> --- a/xen/lib/strncmp.c
> +++ b/xen/lib/strncmp.c
> @@ -12,17 +12,18 @@
>   */
>  int (strncmp)(const char *cs, const char *ct, size_t count)
>  {
> -     unsigned char *csu = (unsigned char *)cs;
> -     unsigned char *ctu = (unsigned char *)ct;
> -     int res = 0;
> +    const unsigned char *csu = (const void *)cs;
> +    const unsigned char *ctu = (const void *)ct;
> +    int res = 0;
>  
> -     while (count) {
> -             if ((res = *csu - *ctu++) != 0 || !*csu++)
> -                     break;
> -             count--;
> -     }
> +    while ( count )
> +    {
> +        if ( (res = *csu - *ctu++) != 0 || !*csu++ )
> +            break;
> +        count--;
> +    }
>  
> -     return res;
> +    return res;
>  }
>  
>  /*

-- 
WBR, Volodymyr


 


Rackspace

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