This issue can be reproduced on SMP platform, while the domain 0
is UP. The reason is, after finishing a dma request, the dma thread will
trigger the interrupt and then clear the call back function. When guest
get the interrupt , it will try to check the call back function, if it
is set, then it will trigger a dma request again. So if the checking for
the callbackfunction happens between trigger interrupt and clear
callback function on dma thread, it will cause NULL function calling.
After with domain 0 UP and smp platform, this situation can be
reproduced easily.
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
Guest configuration files may now contain a features= declaration
listing the features which should be enabled in a | separated
list.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
do not need to be read-only in the old pagetables, and the old pagetables do
not need to be read-only in the new pagetables.
Signed-off-by: Keir Fraser <keir@xensource.com>
script's lock before doing the cleanup, to avoid a race that causes the message
"xenstore-list: could not list path backend/vbd/40" in /var/log/hotplug.log,
with a subsequent refusal to create the domain, after a domain reboot.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
common xen. It's meaningless to patch original file with many #ifdef
XEN, and so instead copy that file to create a new xen specific
uaccess file, with unused lines removed. May need render later.
Or else it breaks compilation on xen-unstable.
Signed-off-by Kevin Tian <kevin.tian@intel.com>
On x86_32p, after several creation/destroy of VMX domain, xen crashes
because we forget to unmap phys_table.
Signed-off-by: Xin Li <xin.b.li@intel.com>
IP addressing scheme
used by xm-test: each machine running network tests is using the same IP
addresses, so two machines
in the same network can cross-pollinate/interfere with each other's tests.
This patch changes the IP addressing scheme to add some randomness. It's
gone through a couple of dozen
passes of xm-test, some on -bridge and some on -route, while xm-test was
running on another box on the same network.
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
- introduces two basic tests for the virtual TPM (skipped on hardware
where a TPM is not available or vtpm manager has not been started
manually before)
- adapts the Makefiles to make the test cases available
- splits up the hotplug files into two files where the vtpm-common.sh
can be sourced by 'other' scripts as well
- uses echo "$var" to return variables from functions
- gets rid of the 'set +e" work-around
- introduces a script (vtpm-delete) to delete entries from the virtual
TPM directory in /etc/xen/vtpm.db
The xm-tests will skip over the 2nd test on most systems and the patch
has otherwise no effect on existing tests.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
- log() function from xen-hotplug-common.sh -> logging.sh
- locking-related functions from xen-hotplug-common.sh -> locking.sh
- xen-hotplug-common.sh 'sources' both those files now to not loose
these functions (which should make the break-out atomic)
- adapts the Makefile to install locking.sh and logging.sh at the right
place.
I ran the xm-tests over it and no (additional) errors appear due to this
change.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
In this mode only a single guest kernel is supported.
This mode only works for x86/32 (not x86/64).
Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
It is acceptable for a guest kernel to support (but not require)
a feature which the hypervisor does not understand.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
if it can't figure out partitions and filesystems. This then makes it
balloon to absurd sizes. Make this only happen if you pass a debugging
flag
Signed-off-by: Jeremy Katz <katzj@redhat.com>
that one might need to specify 'console=xxx' and not just 'comX=xxx'
if one isn't using the default com1,vga.
Signed-Off-By: Muli Ben-Yehuda <mulix@mulix.org>
Use strtoull to parse the final_exec_addr value from the command
line. Whe cross compiling on i386 for x86-64 unsigned long is 32 bit,
which leads to final_exec_addr being truncated to 32 bits by strtoul,
which leads to grub refusing to load the resulting image. Please
apply.
Use the target nm(1) when cross compiling to pick the _end address
from the Xen binary.
Signed-Off-By: Muli Ben-Yehuda <mulix@mulix.org>
need for a hypercall in the guest timer interrupt handler.
Cleaned up stolen/blocked tick handling in Linux.
Signed-off-by: Keir Fraser <keir@xensource.com>
exported by Xen. This is based heavily on a patch from Rik van Riel, but
extended to distinguish between idle/blocked cycles and stolen cycles.
There is still stuff todo:
1. Xen should export the time values in shared memory, to save a hypercall
on every time interrupt (even though that is only every 10ms, worst case).
2. As in s390, Xen's cputime_t should be measured at finer granularity than
jiffies. Nanoseconds would be a better unit.
3. Break out the internals of the account_steal_time() interface so that we don't
need to abuse it so wretchedly.
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
run state of a VCPU (running, runnable, blocked, etc.) and the total time
spent in each state since the VCPU was created.
Signed-off-by: Keir Fraser <keir@xensource.com>