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

[XEN PATCH] x86/mce: use offsetof to determine section offset


  • To: xen-devel@xxxxxxxxxxxxxxxxxxxx
  • From: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
  • Date: Wed, 14 Jan 2026 19:27:03 +0100
  • Arc-authentication-results: i=1; bugseng.com; arc=none smtp.remote-ip=93.44.185.98
  • Arc-message-signature: i=1; d=bugseng.com; s=openarc; a=rsa-sha256; c=relaxed/relaxed; t=1768415228; h=From:To:Cc:Subject:Date:Message-ID:X-Mailer:MIME-Version: Content-Transfer-Encoding; bh=DDvUkwhNpt4+B5Le4owhqbqzLz2eZLjRMbuVMhMsg1s=; b=j8+T4ZVC8v65TGQTO8IJwhi3kTo3DNY7cfAD76aRs57ps1OzzrhlzUtUZRFFReUDD74v gzxP9yss6HrC9vRKgKrt2B0xNS2KBeNrQeKx0WzoxnJVVeUfKAjeUYtSRxHQ2E9nL9PQQ teYSIuekDsQiQMVB2APqkVS1oYuPbiBJC90A/NBI9UI4gpT7zXddTtFdqNXOYSsQzsXSe R3n/VwTG/Uj69Wm2IFfOvvcJ1SGj8fl7XvMDGLnO1re4bobZPvzMG0EAOH/6fTpOUhzGg LyA6oFFr75FH0RPzfJDS6EkJcJKmaeueK/waRTjSEzDPTzVHJFFP8YFEM8HxwnChe/Ekj d/Tu10SzqJmfqm30hBP/h+eblvXmACzq9XSs1oMG6/8XV53ENltxmMNdwDKZ8eL2S9E6D ztnEUiF21Xk6/0igFgtQFExMrClJdc0mqYwcc+/DP+JFsvQmA5VHtO80HIUT/pjSBcI5e G0SzSDlEwwjrYgItzEVHMwXctYpi/vkWUvHVu0zSApGnlLBViOLniOPg9X70JUFUm8t33 WVf+Myy7GChFpT+pXz3hwLUuLK7waanORLZoQhBwy1QFWXYWLBJEV0GGEqEruEa6lrbjG AG/Fvc1uEa22Qf4hhTTtRRSEa2Frxov16+UVeJMfI01jdBZZZCfPJ5JzYwj3KH8=
  • Arc-seal: i=1; d=bugseng.com; s=openarc; a=rsa-sha256; cv=none; t=1768415228; b=lowYskxunXHL8atTnbMNCtL2jJGYGnZxwH3co/5qseUL/t6HXb/msLdxJ3CBpLcBgwTn GXqqy7oykGt9tpVKER4Jw5x91anZHnsNbhDBLl+zqSNu74w1Hef380IT+Rf5q5EHOU9u4 pCIL7SUO6yqkiOrWkuoNUMKeUEkQFizyUejbB3hjYjDOacmvP78fNxMaRpieIUY52rz2L LBPbrrF1H6dGIzH/2Cz3wJguIBeBcNJsrfhozEWSJ7y7KbHhY9kct35O3fyctdnEvlILB XOwXyDzVartbmVuz7vKoIWyqYeFAL5g55To0moEMlplQ3inlZrriFNUNBZyaZgtBShtql EZEJQn1lbFjiK4tZIcsER9bNqMOtUuBxe4faImv+Qr9/5JKD70LBCNV4mxzxv4kgtl8Dv 2Cfiff8dw285AvTCLsQX0cbmfqU/PidJtTXI/MqgY2VbGm+rpShgPErjYzm5G9rnzLYK0 3k1Ep5u6WiJeyIOt0e0QSUQr0xJEZvr0U2IcKNir4dpVv84AKz65+UMA5wxZG6IP9L+iS hxI0BnTtRfhlqne9sCAH1fYmSo7JNK5bOkCJj7XrhYpA1T58FJG8K3MMlcCG4tT5A49SD bIQP0V/P79P42wf0eVqtGGRHBJO7uzZ5syaZzJyC0Mh2N+XnWgKXdd/uix6CbMI=
  • Authentication-results: bugseng.com; arc=none smtp.remote-ip=93.44.185.98
  • Cc: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Delivery-date: Wed, 14 Jan 2026 18:27:30 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

There is no reason to use pointer difference.
A violation of MISRA C Rule 18.2 ("Subtraction between pointers
shall only be applied to pointers that address elements of the
same array") is also resolved because the object to the subtraction
is applied is not an array.

Signed-off-by: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
---
Found while randomly browsing violations of the rule on the allcode-x86_64 scan.
---
 xen/arch/x86/cpu/mcheck/mce-apei.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/cpu/mcheck/mce-apei.c 
b/xen/arch/x86/cpu/mcheck/mce-apei.c
index b89502088243..21aabe2027d0 100644
--- a/xen/arch/x86/cpu/mcheck/mce-apei.c
+++ b/xen/arch/x86/cpu/mcheck/mce-apei.c
@@ -74,7 +74,8 @@ int apei_write_mce(struct mce *m)
        rcd.hdr.record_id = cper_next_record_id();
        rcd.hdr.flags = CPER_HW_ERROR_FLAGS_PREVERR;
 
-       rcd.sec_hdr.section_offset = (void *)&rcd.mce - (void *)&rcd;
+       rcd.sec_hdr.section_offset = offsetof(struct cper_mce_record, mce) -
+                                    offsetof(struct cper_mce_record, hdr);
        rcd.sec_hdr.section_length = sizeof(rcd.mce);
        rcd.sec_hdr.revision = CPER_SEC_REV;
        /* fru_id and fru_text is invalid */
-- 
2.43.0




 


Rackspace

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