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

Re: [PATCH 1/2] docs/misra: introduce rules.rst


  • To: Stefano Stabellini <sstabellini@xxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Thu, 26 May 2022 11:43:50 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rNLzXGPzEDdIGxLiFrm3a0H/HsUlejL2fZQ/rIXKN64=; b=I3Q7qgvZkkMsVU0EGnMK7moFkUJx/BWxdFm1V2zu3ltBT4mfLIv0gxKGpfNls6xYeL1vOBTGdAbd1fuCM7Kp5g2d4VqkDwaq8KEKCs/YaFnEP5cFihW4CWmCR1zmfb+CR7qBzekesa4TqoD9xH4lNbdm8n7oqZHnj0wNG/wG/YnO84jzlRScvlAH9hVYGpRq/GKkaivzSnilSftY832fXJBhtRt0Sw7expSl9cd9ES2y4faHjaXkss1huST/CgZFmNR0U2D1ziEZvYAmNakQR8IuY1K8LXoV7PXKw5iKyNUYg6cBWosFYP9V7scn607qk68Ge5SPELjGowG75cHHew==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M6f4AU1aD8MdO5DsNt0flMRvnx25m7dkgQpiFiDfQTd3IOFlH8bY2m0HTkkfRK5CAP+TsKV3I0NJOPrJ8ZEg4Le0hW05eFiU/RyspZQlb5Imun96fRhvJCeEw1R/8djggszpOf+xps9Kujmq4pzCEbm1DrPV/qJanTwtGIOW2201+HxWT01jTYeKT1DtRDYH84jE7O5uVcvUzpSCwW4yd+/lTZFqZKclg4GFOyG/0QZdd1yOgXhPRGY5l/Y2p4siXqc5u6XqGctNK0BvaRMATYlP8WSq5APVM/zApzE3g33RK5pTe7jAy/0Ijk21gCLL4ZXKEH+PfYP6jTnS53NvkQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx, andrew.cooper3@xxxxxxxxxx, roger.pau@xxxxxxxxxx, Bertrand.Marquis@xxxxxxx, George.Dunlap@xxxxxxxxxx, Stefano Stabellini <stefano.stabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>
  • Delivery-date: Thu, 26 May 2022 09:44:01 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 26.05.2022 03:02, Stefano Stabellini wrote:
> On Wed, 25 May 2022, Julien Grall wrote:
>> On 25/05/2022 01:35, Stefano Stabellini wrote:
>>> +- Rule: Dir 4.7
>>> +  - Severity:  Required
>>> +  - Summary:  If a function returns error information then that error
>>> information shall be tested
>>> +  - Link:
>>> https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c
>>
>>
>> ... this one. We are using (void) + a comment when the return is ignored on
>> purpose. This is technically not-compliant with MISRA but the best we can do
>> in some situation.
>>
>> With your proposed wording, we would technically have to remove them (or not
>> introduce new one). So I think we need to document that we are allowing
>> deviations so long they are commented.
> 
> Absolutely yes. All of these rules can have deviations as long as they
> make sense and they are commented. Note that we still have to work out
> a good tagging system so that ECLAIR and cppcheck can recognize the
> deviations automatically but for now saying that they need to be
> commented is sufficient I think.
> 
> So I'll add the following on top of the file:
> 
> """
> It is possible that in specific circumstances it is best not to follow a
> rule because it is not possible or because the alternative leads to
> better code quality. Those cases are called "deviations". They are
> permissible as long as they are documented with an in-code comment.
> """

Hmm, so you really mean in-code comments. I don't think this will scale
well (see e.g. the DCE related intended deviation), and it also goes
against the "no special casing for every static analysis tool" concern
I did voice on the call.

Jan




 


Rackspace

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