Commit Graph
10901 Commits
Author SHA1 Message Date
kfraser@localhost.localdomain bb41ceb3e9 [IA64] Updates the ia64 buildconfigs.
Enables pcifront for all kernels and pciback for -xen and -xen0.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-08-02 10:08:33 +01:00
kfraser@localhost.localdomain 50b3cef2ee [HVM] Place all APIC registers into one page in native format.
With this change we can re-use code at include/asm-x86/apicdef.h,
making the code much cleaner. Also it help for future enhancement.

This patch does not change any logic except the change to
CONTROL_REG_ACCESS_NUM, which should be 0xf for CR8 access.

Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com
2006-08-02 10:07:03 +01:00
kfraser@localhost.localdomain 0496f983a2 [HVM] Fix an issue with APIC priority checks.
Signed-off-by; Yunhong Jiang <yunhong.jiang@intel.com>
2006-08-02 10:04:27 +01:00
kfraser@localhost.localdomain f0667416be [VMXASSIST] Fix GDTR accesses when paging mode enabled.
The gdtr information in oldctx is an address for guest, not for
vmxassist. When access descriptor on guest gdt, we need to go through
guest page table if guest enable paging. This error may happen if
guest enable PE/PG in one instruction.

Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>=20
Signed-off-by: Xin Li <xin.b.li@intel.com>
2006-08-02 10:03:04 +01:00
kfraser@localhost.localdomain 7dcaf7de5f [SHADOW] Build p2m mapping according to m2p mapping.
Signed-off-by: Xin Li <xin.b.li@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
2006-08-02 09:58:06 +01:00
chris@kneesaa.uk.xensource.com 0baacdb68b Update patch to reflect changes from 10867:edf7a25fdc43.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-02 09:54:32 +01:00
kfraser@localhost.localdomain ed3a5e71bd [HVM] Initialise full regs structure for PIO requests.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-02 09:52:03 +01:00
kfraser@localhost.localdomain 8b7270326c [HVM][VMX] Clean up vmx hvm interface functions:
1) define vmx hvm interface functions static.
 2) setup hvm interface functions only once.

Signed-off-by: Xin Li <xin.b.li@intel.com>
2006-08-02 09:38:08 +01:00
kfraser@localhost.localdomain 9552068222 There is an allocation-failure path in sched_credit.c that BUGs. The
attached patch handles this potential failure case more gracefully.

Signed-off-by:  Charles Coffing <ccoffing@novell.com>
2006-08-02 09:20:09 +01:00
kfraser@localhost.localdomain 63c35d0351 [TOOLS] ppc64 is not a LIB_64_ARCH
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
2006-08-02 09:16:26 +01:00
kfraser@localhost.localdomain bef5a7699a [PCI] back: Fix potential infinite loop in pcistub_match_one().
The for loop in pcistub_match_one will loop forever if the
dev->bus->self links to itself at the uppermost bridge.  Adding a
check to prevent linking back in on itself prevents this.

Signed-off-by: Jon Mason <jdmason@us.ibm.com>
2006-08-02 09:15:26 +01:00
kfraser@localhost.localdomain ceec78aa83 Merge. 2006-08-01 18:08:01 +01:00
kfraser@localhost.localdomain 6c8184a0a3 [LINUX] Fix save/restore (broken by my own GSO tweaks).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 18:06:44 +01:00
jchesterfield@dhcp92.uk.xensource.com 7005c6cd93 Switch blktapctrl.c over to using standard system daemon(3) call. Current patch was not closing all FDs and redirecting output to /dev/null, preventing tapdisk from launching correctly. 2006-08-01 17:59:27 +01:00
kfraser@localhost.localdomain ad3b5ffb6a [TOOLS] Clean up libxenstore.a on 'make clean'.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 17:47:21 +01:00
kfraser@localhost.localdomain 0d3e262620 [XEN] Fix 32-bit build.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 17:47:01 +01:00
kfraser@localhost.localdomain 8e3af29104 [HVM][SVM] Change the calling convention for SVM VMMCALLs so
that they don't conflict with the hypercall calling convention.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-01 17:28:19 +01:00
kfraser@localhost.localdomain 0ead411665 [XEN] Add hypercall support for HVM guests. This is
fairly useless at the moment, since all of the hypercalls
fail, since copy_from_user doesn't work correctly in HVM
domains.

Signed-off-by: Steven Smith <ssmith@xensource.com>

Add a CPUID hypervisor platform interface at leaf
0x40000000. Allow hypercall transfer page to be filled
in via MSR 0x40000000.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 17:18:05 +01:00
kfraser@localhost.localdomain 177155de98 [LINUX] Do not early-unpin pagetables that contain foreign mappings.
This fixes a bug whereby foreign pages were freed by the unpin, which
then become owned by the local domain before it destroys its ptes.
It therefore (erroneously) detects the mappings as local and so
updates reference counts, leading to crashes.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 15:48:48 +01:00
kfraser@localhost.localdomain 5dd83c7e6d [XEN] Hide compile-time information values behind a
functional interface, so that the values are contained
within a single object file.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 15:28:09 +01:00
emellor@leeni.uk.xensource.com 9212caa7a4 Rename all the CVS directories to .CVS. We want to keep the references to
upstream QEMU, but they can be confusing when they are called CVS.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-08-01 14:34:18 +01:00
kfraser@localhost.localdomain 0434f44fcd [NET] Enable TCPv4 segmentation offload in front/back drivers.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 11:54:45 +01:00
kfraser@localhost.localdomain 33ac7e69c8 [ACM] A wxPython GUI tool for sHype/ACM in Xen. It is used
and described in the user guide to demonstrate how to quickly create, 
enforce, and test workload protection policies in Xen. The tool is aimed 
to improve usability of sHype/ACM for Xen.It is included in a single 
file to make it easy to try it out on different platforms (it inherits 
the look and feel of the base platform). It is tested on Linux and 
Windows. Please read the new user guide section about how to start and 
use the tool (section 10.2).

Requirements: python (www.python.org), wxPython (www.wxpython.org or
try 'yum install wxPython').

Signed-off by: Reiner Sailer <sailer@us.ibm.com>
2006-07-31 18:12:53 +01:00
kfraser@localhost.localdomain 50fe16d8b6 [DOCS][ACM] Update the user guide for Xen with a chapter describing the
sHype/ACM security module for Xen. Section 10.2 offers a quick guide 
showing how to setup and test the workload protection with sHype/ACM
in Xen.

Signed-off by: Reiner Sailer <sailer@us.ibm.com>
2006-07-31 18:12:04 +01:00
kfraser@localhost.localdomain 31c8886dc2 [BLKTAP] Properly daemonise the blktap control daemon. Fixes bug #709.
Signed-off-by: Harry Butterworth <butterwo@uk.ibm.com>
2006-07-31 18:07:25 +01:00
kfraser@localhost.localdomain e40c413dc9 [NET] back: Transmit TSO packets if supported
This patch adds TSO transmission support to the backend.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Disable for now, as domU->dom0 direction.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-31 17:49:36 +01:00
kfraser@localhost.localdomain 3fa4fb49fe [NET] front: Add TSO support
This patch adds TCP Segmentation Offload (TSO) support to the
frontend.
It also advertises this fact through xenbus so that the frontend can
detect this and send through TSO requests only if it is supported.

This is done using an extra request slot which is indicated by a flag
in the first slot.  In future checksum offload can be done in the same
way.

Even though only TSO is supported for now the code actually supports
GSO so it can be applied to any other protocol.  The only missing bit
is the detection of host support for a specific GSO protocol.  Once
that is added we can advertise all supported protocols to the guest.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Disable for now, as in domU->dom0 direction.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-31 17:45:22 +01:00
kfraser@localhost.localdomain ee5e8cb59c [NET] back: Transmit SG packets if supported
This patch adds scatter-and-gather transmission support to the
backend. This allows the MTU to be raised right now and the potential
for TSO in future.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-07-31 17:42:13 +01:00
kfraser@localhost.localdomain 0cfb94daa1 [NET] front: Add SG support
This patch adds scatter-and-gather support to the frontend.  It also
advertises this fact through xenbus so that the backend can detect
this and send through SG requests only if it is supported.

SG support is required to support skb's larger than one page.  This
in turn is needed for either jumbo MTU or TSO.  One of these is
required to bring local networking performance up to a level that
is acceptable.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-07-31 17:35:43 +01:00
kfraser@localhost.localdomain 0e81c9938e [NET] back: Added tx queue
This patch adds a tx queue to the backend if the frontend supports rx
refill notification.  A queue is needed because SG/TSO greatly reduces
the number of packets that can be stored in the rx ring.  Given an rx
ring with 256 entries, a maximum TSO packet can occupy as many as 18
entries, meaning that the entire ring can only hold 14 packets.  This
is too small at high bandwidths with large TCP RX windows.

Having a tx queue does not present a new security risk as the queue is
a fixed size buffer just like the rx ring.  So each guest can only
hold a
fixed amount of memory (proportional to the tx queue length) on the
host.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Cannot BUG_ON netbk_queue_full yet !netbk_can_queue, as this can be
triggered by a misbehaving client. Set req_event appropriately when
stopping the packet queue, or we will not receive a notification.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-31 17:29:00 +01:00
kfraser@localhost.localdomain b4b462732b [XEN] Some suspicion that we may enter an infinite
#PF loop due to broken spurious pagefault detection.
Beef up the tracing on that code path so we can catch
some useful info if it happens.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-31 10:40:21 +01:00
vhanquez@gwig.uk.xensource.com 8d79f14a5d Add a transaction_started field in xenstored connection structure instead of
browsing the list of transaction each time
Bump the default to 10, and make it configurable through the command line.

Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-07-31 09:30:36 +00:00
vhanquez@gwig.uk.xensource.com d763fcc163 Limit the number of opened transactions per connection to 5.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-07-29 14:05:59 +01:00
chris@kneesaa.uk.xensource.com 6a999d5ed8 Add back changes lost from xen-ia64 cset 10570:8dc4af3f192c
with the new qemu tree.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-07-29 13:06:41 +01:00
kfraser@localhost.localdomain cef4d5d58a [NET] front: Fix the build (broken my me a few changesets back).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-28 17:52:57 +01:00
kfraser@localhost.localdomain e489d9a4e9 [XM] Print shorthelp of xm shutdown.
# xm shutdown
Error: 'xm shutdown' requires between 1 and 4 arguments.

   shutdown <DomId> [-w][-a][-R|-H] Shutdown a domain

# xm shutdown vm1 -w -a -R -H
Error: 'xm shutdown' requires between 1 and 4 arguments.

   shutdown <DomId> [-w][-a][-R|-H] Shutdown a domain

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2006-07-28 17:36:08 +01:00
kfraser@localhost.localdomain 87f45629c6 [XEND] Better checking of shutdown of domain0.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2006-07-28 17:35:39 +01:00
kfraser@localhost.localdomain ffb974095f [TPM] Remove some stale code from the TPM backend driver. The code
used to be used for sending of vTPM control commands, but now this is
all done with the hotplug scripts.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-07-28 17:33:26 +01:00
kfraser@localhost.localdomain 160bfb4e1c [LINUX] update_va_mapping multicalls: Use MULTI_UVMxxx_INDEX where possible.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-07-28 17:25:20 +01:00
kfraser@localhost.localdomain 6faab8acaf [PCI] Pcifront for ia64.
Added in Kconfig.
On ia64, use ia64 sysdata instead of pcifront genuine one.
Fix a warning on xenbus.c

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-07-28 17:23:15 +01:00
kfraser@localhost.localdomain d5dd60406f [NET] front: Added feature-rx-notify
This patch adds support to the frontend for notifying the backend whenever
the rx ring is refilled.  This is required in order for the backend to
get a tx queue.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Modified to only send notification if req_event index is set
appropriately.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-28 17:13:08 +01:00
kfraser@localhost.localdomain 648ad07608 [NET] back: Replace netif->status with netif_carrier_ok
The connection status to the frontend can be represented using
netif_carrier_ok instead of netif->status.  As a result, we delay
the construction of the dev qdisc until the carrier comes on.  This
is a prerequisite for adding a tx queue.

By the same token, netif->active is now simply the conjunction of
netif_running and netif_carrier_ok so it too can be removed.

Because netif_carrier_off/netif_carrier_on and rtnl_lock all entail
memory barriers, there is no need to have extra memory barriers around
them.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-07-28 17:04:55 +01:00
kfraser@localhost.localdomain db9f62f570 [NET] front: Move rx req pushing to one spot
This patch moves all rx request pushing to network_alloc_rx_buffers.
This is needed to reduce churn for TSO.  More importantly, this makes
it easier to send notifications when adding rx requests which is
required for having a queue in dom0.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-07-28 17:03:26 +01:00
kfraser@localhost.localdomain 47a078f101 [NET] front: Clean up rx ring recovery.
Signed-off-by: Keir Fraser <keir@xensource.com>

This is an update to c/s
10855:03c8002068d9d60c7bbfc2f41af975e09b2e2211
which should have contained the following changeset message
(rather than 'Merge.').

[NET] front: Stop using rx->id

With the current protocol for transferring packets from dom0 to domU,
the
rx->id field is useless because it can be derived from the rx request
ring
ID.  In particular,

        rx->id = (ring_id & NET_RX_RING_SIZE - 1) + 1;

This formula works because the rx response to each request always
occupies
the same slot that the request arrived in.  This in turn is a
consequence
of the fact that each packet only occupies one slot.

The other important reason that this works for dom0=>domU but not
domU=>dom0
is that the resource associated with the rx->id is freed immediately
while
in the domU=>dom0 case the resource is held until the skb is liberated
by
dom0.

Using this formula we can essentially remove rx->id from the protocol,
freeing up space that could be instead be used by things like TSO.
The
only constraint is that the backend must obey the rule that each id
must
only be used in the response that occupies the same slot as the
request.

The actual field of rx->id is still maintained for compatibility with
older backends.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-07-28 17:00:10 +01:00
kfraser@localhost.localdomain 447fae9b0a Merge. 2006-07-28 16:54:17 +01:00
kfraser@localhost.localdomain 30ec819826 Merge. 2006-07-28 16:53:58 +01:00
kfraser@localhost.localdomain b907e33985 [IA64] Add missing empty files. 2006-07-28 16:53:35 +01:00
sos22@douglas.cl.cam.ac.uk 2be92f3f4e Merge. 2006-07-28 14:09:05 +01:00
sos22@douglas.cl.cam.ac.uk e6ce746c39 [MINI-OS] Add a function mapping grant table error codes to strings.
Signed-off-by: John D. Ramsdell <ramsdell@mitre.org>
Signed-off-by: Steven Smith <sos22@cam.ac.uk>
2006-07-28 14:06:27 +01:00
sos22@douglas.cl.cam.ac.uk e573f4fac0 [MINI-OS] Add evtchn_bind_interdomain to mini-os, allowing clients to
bind to interdomain event channels.

Signed-off-by: John D. Ramsdell <ramsdell@mitre.org>
Signed-off-by: Steven Smith <sos22@cam.ac.uk>
2006-07-28 14:05:02 +01:00