x86/vpt: fix build with old gcc
authorJan Beulich <jbeulich@suse.com>
Tue, 1 Dec 2020 14:32:51 +0000 (15:32 +0100)
committerJan Beulich <jbeulich@suse.com>
Tue, 1 Dec 2020 14:32:51 +0000 (15:32 +0100)
I believe it was the XSA-336 fix (42fcdd42328f "x86/vpt: fix race when
migrating timers between vCPUs") which has unmasked a bogus
uninitialized variable warning. This is observable with gcc 4.3.4, but
only on 4.13 and older; it's hidden on newer versions apparently due to
the addition to _read_unlock() done by 12509bbeb9e3 ("rwlocks: call
preempt_disable() when taking a rwlock").

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
master commit: f2c620aa062767b318267d678ae249dcb637b870
master date: 2020-11-18 12:38:01 +0100

xen/arch/x86/hvm/vpt.c

index d64467b631f503b045697d8adc341b7b32d6686d..ae7f715620fd8a0a5a4d518e229884c368a1d501 100644 (file)
@@ -401,7 +401,7 @@ int pt_update_irq(struct vcpu *v)
                  * associated with the timer.
                  */
                 time_cb *cb = NULL;
-                void *cb_priv;
+                void *cb_priv = NULL;
 
                 pt_vcpu_lock(v);
                 /* Make sure the timer is still on the list. */