Subject: [PATCH] mmio-decode-movz.patch
- Handle the movz instruction in the decoder. This was necessary to get
X working.
Signed-off-by: Chengyuan Li <chengyuan.li@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
Subject: [PATCH] pit-in-hv.patch
- Use ac_timer for PIT interrupt injection (more accurate time keeping)
- Accelerate some critical PIT I/O operations in the hypervisor
(saves 15us per op). Cuts down guest timer interrupt handler execution time
by a third.
- If the domain is scheduled out, make sure that interrupts are not lost
- Add a generic framework for device I/O interception
Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
Fix the synchronization issues between xend and the device model at
startup time.
Initialize the shared page in the hypervisor. Otherwise, the hypervisor
might try to inject spurious interrupts into the guest due to
uninitialized data.
Signed-off-by: Xin B Li <xin.b.li@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk
into labyrinth.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-unstable.bk
Some cleanups:
- Use ENTRIES_PER_L1_PAGETABLE instead of ENTRIES_PER_L2_PAGETABLE
- Use PAGE_SHIFT instead of L1_PAGETABLE_SHIFT
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
This very simple patch is really just cosmetic. It "fixes" xend so that
it doesn't report restart as: "WARNING (XendDomainInfo:1038) Unknown
config field restart" in the xend.log. I'm not sure who should sign off
on this, but the patch is attached.
From: "B.G. Bruce" <bgb@nt-nv.com>
Signed-off-by: ian@xensource.com
Use 1:1 pagetables used for guest physical mode emulation for doing
phys_to_machine_mapping as well.
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
- Detect the CPU speed automatically, rather than having the user
specify a ips in bochsrc. The user can still specify it to override
the auto-detected value.
- Care should be taken to make sure that tsc_per_bx_tick is not too
small or too big. Otherwise, numerical precision issues may result
in the wrong calculation of elapsed time
Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
- Use a more appropriate path for disk images
- Add a 1 GB disk image as an option
From: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
Fix some of the time virtualization issues.
- Compute the elapsed time correctly in the cpu loop
- Try to inject interrupts in the vmexit handler
Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian@xensource.com
As pointed out on the xen-devel list, the vm86 call was not very robust in
Xen.
It turned out to be due to a missing check in the pagefault handler,
determining whether the pagefault came from userspace or from the kernel.
Now the syscall-crash tool doesn't cause any "Oops" on the vm86 calls anymore.
From: Stephan Diestelhorst <sd386@cam.ac.uk>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Name: pic-lib.patch
Description: support PIC code generation
Libraries have 2 methods of being compiled; a .so must contain non-pic
objects, while the .a can contain standard objects.
Signed-off-by: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Name: tools-misc-TARGETS.patch
Description: Split compile/link stages
distcc behaves much better when you compile and link in 2 separate steps.
Plus, this is a more standard way of doing things.
Signed-off-by: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk
into labyrinth.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-unstable.bkX
1. Deleted slab.c, added xmalloc.c. Do not rename header or remove
unnecessary includes (yet).
2. Add explicit align arg, although current implementation
over-aligns.
3. Add list_for_each_entry_safe().
4. Make xmalloc_array use _xmalloc_array, to avoid duplicate eval
of "num" arg.
5. Rearrange slab.h a little to show the exposed functions/macros
first.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk
into labyrinth.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-unstable.bk
Add checking ISA DMA flag in cpu_loop. Also need to do bios_init manually
for now. With this change, floppy is functional.
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk
into labyrinth.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-unstable.bk
slab.c in Linux is not a very nice piece of code: the version in Xen has
been hacked a certain amount and is not a vision of beauty either.
Given how rare and non-time-critical dynamic allocations are in Xen,
this replaces the 1800-line slab.c with a 160-line malloc.c which is
written as simply as possible for future enhancement.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored)
Signed-off-by: ian.pratt@cl.cam.ac.uk
Slab caches for things allocated only on initialization seems to be
overkill. This patch replaces them with the previous typesafe
allocator.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored)
Signed-off-by: ian.pratt@cl.cam.ac.uk
A typesafe allocator submitted by Rusty Russel with trivial renames by me.
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au> (authored)
Signed-off-by: ian.pratt@cl.cam.ac.uk
Small hack to make CROMMULTISESSION ioctl return success rather than enosys, like we did on Xen 1.2.
From: Anthony Liguori aliguori@us.ibm.com
Signed-off-by: ian.pratt@cl.cam.ac.uk
Create the e820 map dynamically. This makes it easy to run VMX guests
of different memory sizes (no need to manually edit the e820 map).
Signed-off-by: Xin B Li <xin.b.li@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Right now, the memory for the 1:1 physical mode page tables comes from the
VMX domain's memory. With this change, when the user asks for a domain with
M Megabytes of memory, we actually allocate M+N megabytes in xend, where
N is the memory for the page table pages.
This simplifies the code in the device models that maps guest memory (we
now map all of it) and the E820 map can also give the full M megabytes to
the guest.
Signed-off-by: Xin B Li <xin.b.li@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Allow specification of backend vif MAC addresses. If a backend
MAC is not provided, generate one as before
Signed-off-by: Jody Belka <knew-xen@pimb.org>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Fix the device number calculation for /dev/hd* device names;
ide device numbering works differently to scsi
Signed-off-by: Jody Belka <knew-xen@pimb.org>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Currently xcs is run by xend in xen-unstable by simply making it a child
process. If you launch xend from an ssh session, the session won't exit
because the xcs still is connected to it's controlling terminal.
xcs should daemonize itself to prevent this from happening. This patch
does that along with making the domain id => port mapping dynamically
allocated.
Signed-off-by: Anthony Liguori aliguori@us.ibm.com
Some guests depend on getting a #GP fault in order to boot. This patch
makes sure that the GP fault is injected into the guest properly.
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
With ipv6, every network interface always has a link local
address. This fools the network script into thinking that
xen-br0 already has a network address, and it refuses to
transfer over eth0's IP address to xen-br0.
By grepping for 'inet ' instead of just 'inet', the network
script is no longer fooled and does the right thing. This
patch makes Xen networking work again on my Fedora system.
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: split banner.h
Split banner.h, to make it easier to edit, and more properly fit in with
normal build systems.
Also, inline the rules to actually build figlet.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: use DESTDIR correctly
Standard makefiles always attempt to install to the root(/). Setting
DESTDIR is the normal way to install to an alternative location.
Setting prefix has the possibility of breaking programs, as the prefix
may have been embedded inside a compiled binary.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: conditionally call modules targets for 2.4
There was a complaint on the mailing list about linux 2.6 not building
if module support was disabled; a patch was done to fix this. However,
the same change was not done to the 2.4 files.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: add force-reload option
Debian policy requires init scripts to implement force-reload. So, alias
that to restart.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: support parallellism better
Using shell for loops doesn't allow make to run it the most parallel
modes. Use patsubst/addsuffix tricks to make this work.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Missing prat of earlier patch.
Description: use INSTALL everywhere
Use install(by way of INSTALL variables) to create directories, install
programs, and install data files.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: use INSTALL everywhere
Use install(by way of INSTALL variables) to create directories, install
programs, and install data files.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: Use vars for complex programs
It's generally standard to call complex programs indirectly thru make
variables. This allows them to be replaced easily with alternative
versions, without editting each makefile.
Additionally, this patch makes use of $(pkgdocdir) in docs/Makefile.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: support PIC code generation
Libraries have 2 methods of being compiled; a .so must contain non-pic
objects, while the .a can contain standard objects.
From: Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Description: Use proper targets in makefiles
A rule in make should produce only what it's target allows. When it
produces side-effects, things like ctrl-c and parallellism break it
oddly.
From Adam Heath <doogie@brainfood.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-2.0-testing.bk
into labyrinth.cl.cam.ac.uk:/auto/anfs/scratch/labyrinth/iap10/xeno-clone/xeno.bk
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-2.0-testing.bk
into labyrinth.cl.cam.ac.uk:/auto/anfs/scratch/labyrinth/iap10/xeno-clone/xen-unstable.bk
Symptom:
When using a udev-based dom0, if you try to create a domU with a virtual
sda device and you do not have a local scsi device xm create fails.
Fix:
When using udev, only the device nodes needed are made. The follow
patch changes Xend to return a device number based on:
http://www.lanana.org/docs/device-list/devices.txt
For sd and hd devices if stat() fails. It was tested against both 2.0.2
and 2.0.3.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Patch from Leendert van Doorn leendert@watson.ibm.com to fix bug that was effecting mapping of IO pages when Xen was built with certain versions of gcc.
Patch from Leendert van Doorn leendert@watson.ibm.com to fix bug that was effecting mapping of IO pages when Xen was built with certain versions of gcc.