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

Re: [RFC PATCH 2/4] xen/arm64: bitops: justify uninitialized variable inside a macro





On 17/07/23 22:45, Julien Grall wrote:


On 17/07/2023 21:40, Julien Grall wrote:
On 14/07/2023 12:49, Nicola Vetrini wrote:
The macro 'testop' expands to a function that declares the local
variable 'oldbit', which is written before being set, but is such a
way that is not amenable to automatic checking.

Therefore, a deviation comment, is introduced to document this situation.

A similar reasoning applies to macro 'guest_testop'.

Would you be able to check if the code below (only compile tested so far) would silence Eclair?

Hmmm.. I think my e-mail client mangled the diff. Here an unmangled version if needed:

http://paste.debian.net/1286154/

Cheers,


I have a question: wouldn't this patch also imply an update of xen/arch/arm/include/asm/guest_atomics.h ?

This in particular is the bit of code that needs to be reworked to use the newer *_timeout definition.


bool succeed;

succeed = name##_timeout(nr, p, &oldbit,
                         this_cpu(guest_safe_atomic_max));

if ( succeed )
        return oldbit;

Probably something similar to


int succeed;

succeed = name##_timeout(nr, p, false, NULL, [...]);
if ( succeed != 0 )
  return succeed;

I'm not really sure whether the third param should be true or false, but I assumed false because it's similar to the use in bitops.c

--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)



 


Rackspace

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