Thread (5 messages) 5 messages, 3 authors, 2017-11-18

Re: [PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros

From: Josh Poimboeuf <hidden>
Date: 2017-11-18 13:17:13
Also in: lkml

Possibly related (same subject, not in this thread)

On Sat, Nov 18, 2017 at 11:20:06AM +0100, Juergen Gross wrote:
quoted
quoted
quoted
quoted
+#define NATIVE_ZERO			"xor " _REG_ARG1 ", " _REG_ARG1
NATIVE_ZERO_OUT

I guess. NATIVE_ZERO reads like the native representation of 0 :-)
NATIVE_ZERO_ARG1?
On a slight tangent, does anybody know why it zeros the arg?
Why are _you_ asking? You've introduced it.
So I did.  Touché!
quoted
The only place it's used is here:

#if defined(CONFIG_PARAVIRT_SPINLOCKS)
DEF_NATIVE(pv_lock_ops,	queued_spin_unlock,	NATIVE_QUEUED_SPIN_UNLOCK);
DEF_NATIVE(pv_lock_ops,	vcpu_is_preempted,	NATIVE_ZERO);
#endif

Isn't that a bug?  Seems like it should _return_ zero.  Zeroing the arg
shouldn't have any effect.
Right. Before that patch it _did_ return zero instead of zeroing arg1.
Oops!
quoted
If I'm right, we could call it NATIVE_FALSE.
I'd prefer NATIVE_ZERO, as it will be usable for non-boolean cases, too.
NATIVE_ZERO works for me.

-- 
Josh
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help