state of a domain. Should still call _stateSet() to notify others
when you expect the state has changed.
Also some changes to locking in save/suspend, restore/resume and migrate
Passes xm-test against XenAPI...
signed-off-by: Tom Wilkie <tom.wilkie@gmail.com>
This reverts the preparation for removing the sparse tree, since these
modified scripts are not yet ready:
1. XENGUEST suffix was lost yet depended on still by sparse tree
Makefiles (hacked around by 14883; also reverted).
2. XEN_TARGET_X86_PAE default value seems to be ignored
(out-of-the-box 'make dist' will build non-PAE kernels).
Signed-off-by: Keir Fraser <keir@xensource.com>
Netfront's use of nh.raw and h.raw for storing page+offset is a bit
hinky, and it breaks with upcoming network stack updates which reduce
these fields to sub-pointer sizes. Fortunately, skb offers the "cb"
field specifically for stashing this kind of info, so use it.
Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: Chris Wright <chrisw@sous-sol.org>
Cc: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
change that breaks the case mod==0, rm==4, sib&7==5. That is,
disp32(scaled-index).
Also simplify get_immediate with sign extension.
Signed-off-by: Keir Fraser <keir@xensource.com>
This is needed to successfully boot a debug=y build of xen on kvm.
Reported by Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
ptc.ga infrequently clobbers the region register 0.
When vcpu1 purges TLBs of vcpu2 and ptc_ga_remote_func() is called
locally not via IPI (i.e. vcpu1 shares the same pcpu with vcpu2),
in ptc_ga_remote_func(),
save vrr[0] of vcpu2
... => switch to vcpu2 and set a new value of vrr[0]
restore vrr[0] of vcpu2 // the new value is lost
Windows will crash due to this issue.
Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
checks are done under an appropriate lock, allowing the lock-free
protocols surrounding this boolean to be removed.
Also simplification and fixes to code for setting/zapping the ioreq
and buf_ioreq shared pages.
Signed-off-by: Keir Fraser <keir@xensource.com>
Some instructions, like "add $imm8, r/m16"/"MOV $imm32, r/m64" require
the src immediate operand be sign-extented befere the op is executed,
but this is omitted in the current Xcode. The patch fixes this.
The patch also fixes an issue in handling address-size override
prefix, and fixes an issue in get_immediate().
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
that domain runs only when it has valid mapped ioreq pages, and to
safely drop ioreq page references when a domain dies.
Signed-off-by: Keir Fraser <keir@xensource.com>
1. rx_lock is a normal spinlock, and tx_lock is an irq spinlock. This
means that in normal use, tx_lock may be taken by an interrupt
routine while rx_lock is held. However, netif_disconnect_backend
takes them in the order tx_lock->rx_lock, which could lead to a
deadlock. Reverse them.
2. rx_lock can also be used in softirq context, so it should be
taken/released with spin_(un)lock_bh.
Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>