]> xenbits.xensource.com Git - xen.git/log
xen.git
14 years agotmem: disallow bad gmfns from PV domains
Keir Fraser [Wed, 22 Sep 2010 07:55:09 +0000 (08:55 +0100)]
tmem: disallow bad gmfns from PV domains

Mfns for PV domains were not properly checked, potentially
allowing a buggy or malicious PV guest to crash Xen.  Also,
use get_page/put_page to claim a reference to the pages
so they can't disappear out from under tmem's feet.

Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
xen-unstable changeset:   22194:e8e3aeed3eba
xen-unstable date:        Wed Sep 22 08:54:08 2010 +0100

14 years agoRevert 22186:7167d6dd5c7c "x86: Retry do_mmu_update() a few times"
Keir Fraser [Wed, 22 Sep 2010 07:49:53 +0000 (08:49 +0100)]
Revert 22186:7167d6dd5c7c "x86: Retry do_mmu_update() a few times"

It does not work reliably for a couple of reasons:
(1) page_lock() fails if a page is !PGT_validated, and a page can
remain in that state for unbounded time.
(2) in the kernel-side race that motivated this patch, pgd_pin() can
lose to vmalloc_sync_all() -- pgd_pin() can try to chaneg a pmd page's
type to l2_pagetable while
vmalloc_sync_all()->set_pmd()->do_mmu_update() has it temporarily
pinned as writable. This is hard to fix on the Xen side.

Hence I give up on this approach, revert the patch, and settle for
kernel-side patching only.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22193:35a1a14c408e
xen-unstable date:        Wed Sep 22 08:49:09 2010 +0100

14 years agox86: Retry do_mmu_update() a few times when called on a pte whose type is in flux.
Keir Fraser [Mon, 20 Sep 2010 19:20:57 +0000 (20:20 +0100)]
x86: Retry do_mmu_update() a few times when called on a pte whose type is in flux.

This can really happen -- all our PV Linux kernels have a race
between vmalloc_sync_all() and pgdir pinning/unpinning. The former is
protected by pgd_lock while the latter by mm->page_table_lock. Hence
they can happen concurrently, and vmalloc_sync_all() can attempt to
set_pmd() on a page directory which is in the process of being
pinned. This can confuse the hypervisor which may see a type change,
and hence fail do_mmu_update(). Until this patch. :-)

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22186:7167d6dd5c7c
xen-unstable date:        Mon Sep 20 20:11:43 2010 +0100

14 years agox86/hvm: fix extra size passed to __trace_var()
Keir Fraser [Mon, 20 Sep 2010 19:20:28 +0000 (20:20 +0100)]
x86/hvm: fix extra size passed to __trace_var()

While removing the casts on the last arguments to __trace_var() I
noticed the bogus addition of 1 here.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   22185:9cebb977e9d8
xen-unstable date:        Mon Sep 20 18:53:18 2010 +0100

14 years agoEliminate unnecessary casts from __trace_var() invocations
Keir Fraser [Mon, 20 Sep 2010 19:19:58 +0000 (20:19 +0100)]
Eliminate unnecessary casts from __trace_var() invocations

This is possible now that its last parameter's type is 'const void *'.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   22184:62a44418d8a0
xen-unstable date:        Mon Sep 20 18:52:48 2010 +0100

14 years agoia64: fix gcc 4.5 warnings
Keir Fraser [Mon, 20 Sep 2010 19:19:01 +0000 (20:19 +0100)]
ia64: fix gcc 4.5 warnings

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   22183:a1d2d8222d01
xen-unstable date:        Mon Sep 20 18:51:19 2010 +0100

14 years agosched_credit: Raise bar for inter-socket migrations on mostly-idle systems
Keir Fraser [Mon, 20 Sep 2010 19:18:25 +0000 (20:18 +0100)]
sched_credit: Raise bar for inter-socket migrations on mostly-idle systems

The credit scheduler ties to keep work balanced, even on a mostly idle
system.  Unfortunately, if you have one VM burning cpu and another VM
idle, the effect is that the busy VM will flip back and forth between
sockets.

This patch addresses this, by only migrating to a different socket if
the number of idle processors is twice that of the socket the vcpu is
currently on.

This will only affect mostly-idle systems; as the system becomes more
busy, other load-balancing code will come into effect.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
xen-unstable changeset:   22180:0bc640853cfd
xen-unstable date:        Mon Sep 20 18:49:15 2010 +0100

14 years agox86_32: [un]map_domain_page() is now IRQ safe.
Keir Fraser [Mon, 20 Sep 2010 19:16:41 +0000 (20:16 +0100)]
x86_32: [un]map_domain_page() is now IRQ safe.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22177:7405e0ddb912
xen-unstable date:        Sat Sep 18 08:57:15 2010 +0100

14 years agox86: Fix indentation in irq.c.
Keir Fraser [Mon, 20 Sep 2010 19:16:22 +0000 (20:16 +0100)]
x86: Fix indentation in irq.c.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22176:0da4bfd2bc23
xen-unstable date:        Sat Sep 18 08:34:15 2010 +0100

14 years agox86: irq_enter()/irq_exit() covers all of do_IRQ().
Keir Fraser [Mon, 20 Sep 2010 19:15:57 +0000 (20:15 +0100)]
x86: irq_enter()/irq_exit() covers all of do_IRQ().

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22175:ee3c64073231
xen-unstable date:        Sat Sep 18 08:31:55 2010 +0100

14 years agohvm pmtimer: correct pmtimer accuracy
Keir Fraser [Fri, 17 Sep 2010 16:06:57 +0000 (17:06 +0100)]
hvm pmtimer: correct pmtimer accuracy

Several seconds of backward time drift per minute can be seen on a
RHEL6 HVM guest by switching the clocksource to 'acpi_pm' and then
running gettimeofday() in a loop. This is due to the accumulation
of small inaccuracies that are caused by shifting out the lower 32
bits when pmt_update_time() computes 'tmr_val'.

The patch makes sure that the lower 32 bits of the computed value
are not lost. They are saved in a new field 'not_accounted' in the
PMTState structure and are accounted the next time pmt_update_time()
is called.

From: Ulrich Obergfell <uobergfe@redhat.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22174:632c02167f97
xen-unstable date:        Fri Sep 17 16:59:21 2010 +0100

14 years agomem_event: Clean up and remove over-sized paused_vcpus[] array.
Keir Fraser [Wed, 15 Sep 2010 14:47:24 +0000 (15:47 +0100)]
mem_event: Clean up and remove over-sized paused_vcpus[] array.

This cuts the size of the domain structure by around 30kB! It is now a
little over a page in size.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22162:cf70ef051a82
xen-unstable date:        Wed Sep 15 15:45:42 2010 +0100

14 years agoC6 state with EOI issue fix for some Intel processors
Keir Fraser [Wed, 15 Sep 2010 08:02:10 +0000 (09:02 +0100)]
C6 state with EOI issue fix for some Intel processors

There is an errata in some of Intel processors.

AAJ72. EOI Transaction May Not be Sent if Software Enters Core C6
During an Interrupt Service Routine

If core C6 is entered after the start of an interrupt service routine
but before a write to the APIC EOI register, the core may not send an
EOI transaction (if needed) and further interrupts from the same
priority level or lower may be blocked.

This patch fix this issue, by checking if ISR is pending before enter
deep Cx state. If so, it would use power->safe_state instead of deep
Cx state to prevent the above issue happen.

Signed-off-by: Sheng Yang <sheng@linux.intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22160:1087f9a03ab6
xen-unstable date:        Wed Sep 15 09:00:35 2010 +0100

14 years agonotify_via_xen_event_channel() should check for dying domain.
Keir Fraser [Wed, 15 Sep 2010 07:22:44 +0000 (08:22 +0100)]
notify_via_xen_event_channel() should check for dying domain.

Else we can fail on either ASSERTion in that function.

From: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22159:62edd2611cbb
xen-unstable date:        Wed Sep 15 08:18:53 2010 +0100

14 years agox86: restore handling of "reboot=no"
Keir Fraser [Wed, 15 Sep 2010 07:22:16 +0000 (08:22 +0100)]
x86: restore handling of "reboot=no"

Somewhere between 3.2 and 3.3 this got dropped (as I noticed on a
[rarely used] box that didn't crash on me since then).

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   22158:869a0fdf8686
xen-unstable date:        Wed Sep 15 07:48:27 2010 +0100

14 years agox86: fix debug key 'i' handling with no IO-APICs
Keir Fraser [Wed, 15 Sep 2010 07:21:42 +0000 (08:21 +0100)]
x86: fix debug key 'i' handling with no IO-APICs

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   22157:d4976434b8bb
xen-unstable date:        Wed Sep 15 07:47:54 2010 +0100

14 years agoFix fd leak in xenstore
Keir Fraser [Wed, 15 Sep 2010 07:19:58 +0000 (08:19 +0100)]
Fix fd leak in xenstore

Missing from commit 'libxl: Backported stuff from unstable'
Without this change, xs_daemon_open/xs_daemon_close will leak
file descriptors.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
14 years agoFix an IO-APIC error message
Keir Fraser [Mon, 13 Sep 2010 16:51:50 +0000 (17:51 +0100)]
Fix an IO-APIC error message

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22149:9c1e3863c588
xen-unstable edate:        Mon Sep 13 17:44:19 2010 +0100

14 years agoFix serial interrupt's destination
Keir Fraser [Mon, 13 Sep 2010 16:51:28 +0000 (17:51 +0100)]
Fix serial interrupt's destination

Lowest Priority can't use with invalid cpu_mask, and the default value
of CPU_MASK_ALL may cover CPU which wasn't online.

From: "Yang, Sheng" <sheng.yang@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22148:a254d1236c1a
xen-unstable date:        Mon Sep 13 17:37:25 2010 +0100

14 years agoxsm: Avoid null dereference in flask get_page_sid
Keir Fraser [Mon, 13 Sep 2010 16:50:14 +0000 (17:50 +0100)]
xsm: Avoid null dereference in flask get_page_sid

From: Daniel De Graaf <dgdegra@tycho.nsa.gov>
xen-unstable changeset:   22144:ec31bb01c424
xen-unstable date:        Mon Sep 13 17:27:22 2010 +0100

14 years agotmem (tools): move to new ABI version to handle long object-ids
Keir Fraser [Mon, 13 Sep 2010 16:21:06 +0000 (17:21 +0100)]
tmem (tools): move to new ABI version to handle long object-ids

After a great deal of discussion and review with linux
kernel developers, it appears there are "next-generation"
filesystems (such as btrfs, xfs, Lustre) that will not
be able to use tmem due to an ABI limitation... a field
that represents a unique file identifier is 64-bits in
the tmem ABI and may need to be as large as 192-bits.
So to support these guest filesystems, the tmem ABI must be
revised, from "v0" to "v1".

I *think* it is still the case that tmem is experimental
and is not used anywhere yet in production.

The tmem ABI is designed to support multiple revisions,
so the Xen tmem implementation could be updated to
handle both v0 and v1.  However this is a bit
messy and would require data structures for both v0
and v1 to appear in public Xen header files.

I am inclined to update the Xen tmem implementation
to only support v1 and gracefully fail v0.  This would
result in only a performance loss (as if tmem were
disabled) for newly launched tmem-v0-enabled guests,
but live-migration between old tmem-v0 Xen and new
tmem-v1 Xen machines would fail, and saved tmem-v0
guests will not be able to be restored on a tmem-v1
Xen machine.  I would plan to update both pre-4.0.2
and unstable (future 4.1) to only support v1.

I believe these restrictions are reasonable at this
point in the tmem lifecycle, though they may not
be reasonable in the near future; should the tmem
ABI need to be revised from v1 to v2, I understand
backwards compatibility will be required.

Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
xen-unstable changeset:   22137:fd2e5008c2e0
xen-unstable date:        Mon Sep 13 17:11:04 2010 +0100

14 years agotmem (hv): move to new ABI version to handle long object-ids
Keir Fraser [Mon, 13 Sep 2010 16:19:34 +0000 (17:19 +0100)]
tmem (hv): move to new ABI version to handle long object-ids

After a great deal of discussion and review with linux
kernel developers, it appears there are "next-generation"
filesystems (such as btrfs, xfs, Lustre) that will not
be able to use tmem due to an ABI limitation... a field
that represents a unique file identifier is 64-bits in
the tmem ABI and may need to be as large as 192-bits.
So to support these guest filesystems, the tmem ABI must be
revised, from "v0" to "v1".

I *think* it is still the case that tmem is experimental
and is not used anywhere yet in production.

The tmem ABI is designed to support multiple revisions,
so the Xen tmem implementation could be updated to
handle both v0 and v1.  However this is a bit
messy and would require data structures for both v0
and v1 to appear in public Xen header files.

I am inclined to update the Xen tmem implementation
to only support v1 and gracefully fail v0.  This would
result in only a performance loss (as if tmem were
disabled) for newly launched tmem-v0-enabled guests,
but live-migration between old tmem-v0 Xen and new
tmem-v1 Xen machines would fail, and saved tmem-v0
guests will not be able to be restored on a tmem-v1
Xen machine.  I would plan to update both pre-4.0.2
and unstable (future 4.1) to only support v1.

I believe these restrictions are reasonable at this
point in the tmem lifecycle, though they may not
be reasonable in the near future; should the tmem
ABI need to be revised from v1 to v2, I understand
backwards compatibility will be required.

Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
xen-unstable changeset:   22136:b7f0ea22880d
xen-unstable date:        Mon Sep 13 17:10:14 2010 +0100

14 years agopage_alloc: Hold heap_lock while adjusting page states to/from PGC_state_free.
Keir Fraser [Mon, 13 Sep 2010 16:19:06 +0000 (17:19 +0100)]
page_alloc: Hold heap_lock while adjusting page states to/from PGC_state_free.

This avoids races with buddy-merging logic in free_heap_pages().

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   22135:69e8bb164683
xen-unstable date:        Mon Sep 13 17:08:31 2010 +0100

14 years agotools/debugger/gdbsx: use MTF flag for HVM guests for single step
Keir Fraser [Mon, 13 Sep 2010 16:18:07 +0000 (17:18 +0100)]
tools/debugger/gdbsx: use MTF flag for HVM guests for single step

The attached patch first tries the MTF flag for HVM guest
single step, reverting to manually setting the TF flag  if MTF fails.

Tested on 4.0.1. Compile tested on unstable.

Signed-off-by: mukesh.rathor@oracle.com
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
xen-unstable changeset:   22115:cd87550cea5e
xen-unstable date:        Tue Sep 07 19:17:16 2010 +0100

14 years agox86 intel: Disable XSAVE support.
Keir Fraser [Wed, 1 Sep 2010 09:22:05 +0000 (10:22 +0100)]
x86 intel: Disable XSAVE support.

It breaks HVM save/restore.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   ae0cd4e5cc01
xen-unstable date:        Wed Sep 01 10:19:14 2010 +0100

14 years agox86_64: Ensure frame-table compression leaves MAX_ORDER aligned
Keir Fraser [Wed, 1 Sep 2010 09:21:41 +0000 (10:21 +0100)]
x86_64: Ensure frame-table compression leaves MAX_ORDER aligned
contiguous ranges of page_info structs. This allows page-pointer
arithmetic in places like our buddy allocator.

This restriction was already implicitly guaranteed, but it is good to
make it explicit in the pdx-related initialisation.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   972d90ff3134
xen-unstable date:        Wed Sep 01 10:17:49 2010 +0100

14 years agoept: Put locks around ept_get_entry
Keir Fraser [Mon, 30 Aug 2010 07:59:46 +0000 (08:59 +0100)]
ept: Put locks around ept_get_entry

There's a subtle race in ept_get_entry, such that if tries to read an
entry that ept_set_entry is modifying, it gets neither the old entry
nor the new entry, but empty.  In the case of multi-cpu
populate-on-demand guests, this manifests as a guest crash when one
vcpu tries to read a page which another page is trying to populate,
and ept_get_entry returns p2m_mmio_dm.

This bug can also be fixed by making both ept_set_entry and
ept_next_level access-once (i.e., ept_next_level reads full ept_entry
and then works with local value; ept_set_entry construct the entry
locally and then sets it in one write).  But there doesn't seem to be
any major performance implications of just making ept_get_entry use
locks; so the simpler, the better.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
xen-unstable changeset:   22071:c5aed2e049bc
xen-unstable date:        Mon Aug 30 08:39:52 2010 +0100

14 years agoVT-d: Hardware require RH bit to be set in IRTE when delivery mode is LPR
Keir Fraser [Mon, 30 Aug 2010 07:57:08 +0000 (08:57 +0100)]
VT-d: Hardware require RH bit to be set in IRTE when delivery mode is LPR

Signed-off-by: Sheng Yang <sheng@linux.intel.com>
xen-unstable changeset:   3c4c3d48a835
xen-unstable date:        Thu Aug 26 11:16:56 2010 +0100

14 years agoFix bind_irq_vector() destination
Keir Fraser [Mon, 30 Aug 2010 07:56:37 +0000 (08:56 +0100)]
Fix bind_irq_vector() destination

The "mask" covered all online cpus in the "domain". It should be used
as destination later, instead of using "domain" directly.

Signed-off-by: Sheng Yang <sheng@linux.intel.com>
xen-unstable: changeset:   3eb5127e4636
xen-unstable: date:        Thu Aug 26 11:16:14 2010 +0100

14 years agoFix typo in audit_p2m(), SHARED_P2M_ENTRY does not exist.
Keir Fraser [Mon, 30 Aug 2010 07:56:07 +0000 (08:56 +0100)]
Fix typo in audit_p2m(), SHARED_P2M_ENTRY does not exist.
Without this change, p2m.c fails to compile if P2M_AUDIT is enabled.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
xen-unstable changeset:   a67b98978f5b
xen-unstable date:        Tue Aug 24 16:15:56 2010 +0100

14 years agobuildconfigs: update enable-xen-config
Keir Fraser [Mon, 30 Aug 2010 07:55:34 +0000 (08:55 +0100)]
buildconfigs: update enable-xen-config

Enable a bunch of new Xen options, primarily blktap, PCI passthrough
and platform PCI device (PVHVM).

Also set default for a bunch of non-Xen options which are not covered
by the defconfig.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
xen-unstable changeset:   143eb656084b
xen-unstable date:        Tue Aug 24 16:14:14 2010 +0100

14 years agotimers: Improve debug-key printing.
Keir Fraser [Mon, 30 Aug 2010 07:52:33 +0000 (08:52 +0100)]
timers: Improve debug-key printing.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   d20cbccb6fea
xen-unstable date:        Wed Aug 18 14:22:48 2010 +0100

timers: Fix printk format specifier

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   60746a2c14a6
xen-unstable date:        Thu Aug 19 16:24:13 2010 +0100

14 years agox2APIC: Improve x2APIC suspend/resume
Keir Fraser [Mon, 30 Aug 2010 07:50:52 +0000 (08:50 +0100)]
x2APIC: Improve x2APIC suspend/resume

x2apic depends on interrupt remapping, so it should disable interrupt
remapping behind x2apic disabling. And also this patch wraps
__enable_x2apic to get rid of duplicated code.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   3cee41690fa2
xen-unstable date:        Fri Aug 13 14:58:06 2010 +0100

14 years agoUpdate Xen version to 4.0.2-rc1-pre
Keir Fraser [Mon, 30 Aug 2010 07:47:20 +0000 (08:47 +0100)]
Update Xen version to 4.0.2-rc1-pre

14 years agoAdded signature for changeset b536ebfba183
Keir Fraser [Wed, 25 Aug 2010 08:23:31 +0000 (09:23 +0100)]
Added signature for changeset b536ebfba183

14 years agoAdded tag RELEASE-4.0.1 for changeset b536ebfba183
Keir Fraser [Wed, 25 Aug 2010 08:22:52 +0000 (09:22 +0100)]
Added tag RELEASE-4.0.1 for changeset b536ebfba183

14 years agoUpdate Xen version to 4.0.1 RELEASE-4.0.1
Keir Fraser [Wed, 25 Aug 2010 08:22:42 +0000 (09:22 +0100)]
Update Xen version to 4.0.1

14 years agoio: make shared ring pad field less enticing for users by adding a __ prefix
Keir Fraser [Tue, 17 Aug 2010 18:27:20 +0000 (19:27 +0100)]
io: make shared ring pad field less enticing for users by adding a __ prefix

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Daniel Stodden <daniel.stodden@citrix.com>
Cc: Dongxiao Xu <dongxiao.xu@intel.com>
xen-unstable changeset:   a8c5e5e12ec1
xen-unstable date:        Fri Jul 02 18:58:28 2010 +0100

14 years agoblktap2: make protocol specific usage of shared sring explicit
Keir Fraser [Sun, 15 Aug 2010 20:48:06 +0000 (21:48 +0100)]
blktap2: make protocol specific usage of shared sring explicit

I don't think protocol specific data really belongs in this header
but since it is already there and we seem to be stuck with it let's at
least make the users explicit lest people get caught out by future new
fields moving the pad field around.

This is the Xen portion of this change. The kernel portion will be
sent separately. There is no dependency between the two.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Daniel Stodden <daniel.stodden@citrix.com>
Cc: Dongxiao Xu <dongxiao.xu@intel.com>
xen-unstable changeset:   feee0abed6aa
xen-unstable date:        Fri Jul 02 18:58:02 2010 +0100

14 years agoFix IOAPIC S3 with interrupt remapping enabled
Keir Fraser [Fri, 13 Aug 2010 14:06:24 +0000 (15:06 +0100)]
Fix IOAPIC S3 with interrupt remapping enabled

In ioapic_suspend, it reads and saves ioapic RTEs. But when interrupt
remapping is enabled, io_apic_read will call io_apic_read_remap_rte to
convert remapped format interrupt to compatible format, this results
in 'dest' field may be changed in remap_entry_to_ioapic_rte. When in
ioapic_resume, it will write the saved RTEs with incorrect 'dest' to
interrupt remapping table.

Actually it needn't to convert RTEs regardless interrupt remapping is
enabled or not. It just needs to save and restore RTE values
directly. This patch just uses __io_apic_read and __io_apic_write,
which won't call Interrupt remapping functions to convert, to save and
restore RTEs in ioapic_suspend and ioapic_resume. Thus fix this issue.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   01d185dab39e
xen-unstable date:        Fri Aug 13 14:57:35 2010 +0100

14 years agoAdded signature for changeset c467b2e6fabd
Keir Fraser [Fri, 13 Aug 2010 08:25:46 +0000 (09:25 +0100)]
Added signature for changeset c467b2e6fabd

14 years agoAdded tag 4.0.1-rc6 for changeset c467b2e6fabd
Keir Fraser [Fri, 13 Aug 2010 08:18:08 +0000 (09:18 +0100)]
Added tag 4.0.1-rc6 for changeset c467b2e6fabd

14 years agoUpdate Xen version to 4.0.1-rc6 4.0.1-rc6
Keir Fraser [Fri, 13 Aug 2010 08:18:02 +0000 (09:18 +0100)]
Update Xen version to 4.0.1-rc6

14 years ago[Xen-devel] [PATCH] PoD: Fix domain build populate-on-demand cache
Keir Fraser [Fri, 13 Aug 2010 08:05:07 +0000 (09:05 +0100)]
[Xen-devel] [PATCH] PoD: Fix domain build populate-on-demand cache
allocation Rather than trying to count the number of PoD entries we're
putting in, we simply pass the target # of pages - the vga hole, and
let the hypervisor do the calculation.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
xen-unstable changeset:   6f059a340cdf
xen-unstable date:        Wed Aug 11 15:56:21 2010 +0100

14 years agolinux buildconfig: Fix quoting error
Keir Fraser [Fri, 13 Aug 2010 08:01:19 +0000 (09:01 +0100)]
linux buildconfig: Fix quoting error

Prevent shell syntax error if $(XEN_LINUX_CONFIG) is empty.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
xen-unstable changeset:   1f8a2d024379
xen-unstable date:        Fri Aug 13 08:46:45 2010 +0100

14 years agoxl: Fix xl vcpu-list output on machines with more than 16 cores
Keir Fraser [Fri, 13 Aug 2010 08:00:48 +0000 (09:00 +0100)]
xl: Fix xl vcpu-list output on machines with more than 16 cores
Signed-off-by: Andre Przywara <andre.przywara@amd.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
xen-unstable changeset:   cb71d0d30f0c
xen-unstable date:        Tue Aug 10 15:35:13 2010 +0100

14 years agoClean up event-channel debug-key output, and use spin_lock().
Keir Fraser [Fri, 13 Aug 2010 08:00:18 +0000 (09:00 +0100)]
Clean up event-channel debug-key output, and use spin_lock().

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   7d02b1046d14
xen-unstable date:        Fri Aug 13 08:39:11 2010 +0100

14 years agox86: Allow dom0 pstate control to access APERF/MPERF/HWCR MSRs
Keir Fraser [Fri, 13 Aug 2010 07:59:52 +0000 (08:59 +0100)]
x86: Allow dom0 pstate control to access APERF/MPERF/HWCR MSRs

The current version of the powernow driver uses the APERF/MPEF
and the HWCR MSRs.  Add cases in traps.c to let dom0 access
those MSRs.

Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
xen-unstable changeset:   6471b8b71401
xen-unstable date:        Fri Aug 13 08:38:35 2010 +0100

14 years agosvm: increment RIP over PAUSE instruction when emulating it
Keir Fraser [Fri, 13 Aug 2010 07:53:26 +0000 (08:53 +0100)]
svm: increment RIP over PAUSE instruction when emulating it

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
xen-unstable changeset:   31d200e5b922
xen-unstable date:        Fri Aug 13 08:31:49 2010 +0100

14 years agomsi: Avoid uninitialized msi descriptors
Keir Fraser [Fri, 13 Aug 2010 07:52:56 +0000 (08:52 +0100)]
msi: Avoid uninitialized msi descriptors

When __pci_enable_msix() returns early, output parameter (struct
msi_desc **desc) will not be initialized.  On my machine, a Broadcom
BCM5709 nic has both MSI and MSIX capability blocks and when guest
tries to enable msix interrupts but __pci_enable_msix() returns early
for encountering a msi block, the whole system will crash for fatal
page fault immediately.

Signed-off-by: Wei Wang <wei.wang2@amd.com>
xen-unstable changeset:   786b163da49b
xen-unstable date:        Wed Aug 11 17:01:02 2010 +0100

14 years agoxc: fix segfault in pv domain create if kernel is an invalid image
Keir Fraser [Fri, 13 Aug 2010 07:52:08 +0000 (08:52 +0100)]
xc: fix segfault in pv domain create if kernel is an invalid image

If libelf calls elf_err() or elf_msg() before elf_set_log() has been
called then it could potentially read an uninitialised log handling
callback function pointer from struct elf_binary. Fix this in libxc by
zeroing the structure before calling elf_init().

Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
xen-unstable changeset:   1d67dd785ef4
xen-unstable date:        Mon Aug 09 17:43:18 2010 +0100

14 years agoUpdate default pv_ops kernel to 2.6.32.x
Keir Fraser [Fri, 13 Aug 2010 07:48:28 +0000 (08:48 +0100)]
Update default pv_ops kernel to 2.6.32.x

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
14 years agoUpdate git pull machinery
Keir Fraser [Fri, 13 Aug 2010 07:48:08 +0000 (08:48 +0100)]
Update git pull machinery

This is needed to pull a non-default branch, and to allow the test
infrastructure's bisection machinery to work.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
14 years agox86: Detect and handle unexpected platform-timer counter wrap.
Keir Fraser [Wed, 11 Aug 2010 15:44:03 +0000 (16:44 +0100)]
x86: Detect and handle unexpected platform-timer counter wrap.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21346:7d4deb86b966
xen-unstable date:        Tue May 11 11:21:27 2010 +0100

14 years agoDefine ABS() library function. Use it.
Keir Fraser [Wed, 11 Aug 2010 15:43:44 +0000 (16:43 +0100)]
Define ABS() library function. Use it.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21345:2077d6ad6078
xen-unstable date:        Tue May 11 11:19:23 2010 +0100

14 years agox86: Correctly cook command lines for GRUB2.
Keir Fraser [Tue, 10 Aug 2010 14:49:20 +0000 (15:49 +0100)]
x86: Correctly cook command lines for GRUB2.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21883:4207549948a4
xen-unstable date:        Wed Jul 28 08:32:01 2010 +0100

14 years agovt-d: Fix ioapic_rte_to_remap_entry error path.
Keir Fraser [Mon, 9 Aug 2010 15:51:30 +0000 (16:51 +0100)]
vt-d: Fix ioapic_rte_to_remap_entry error path.

When ioapic_rte_to_remap_entry fails, currently it just writes value
to ioapic. But the 'mask' bit may be changed if it writes to the upper
half of RTE. This patch ensures to recover the original value of
'mask' bit in this case.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   21934:befd1814c0a2
xen-unstable date:        Mon Aug 09 16:33:45 2010 +0100

14 years agovt-d: Fix ioapic write order in io_apic_write_remap_rte
Keir Fraser [Mon, 9 Aug 2010 15:51:03 +0000 (16:51 +0100)]
vt-d: Fix ioapic write order in io_apic_write_remap_rte

At the end of io_apic_write_remap_rte, it writes new entry (remapped
interrupt) to ioapic. But it writes low 32 bits before high 32 bits,
it unmasks interrupt before writing high 32 bits if 'mask' bit in low
32 bits is cleared. Thus it may result in issues. This patch fixes
this issue by writing high 32 bits before low 32 bits.

Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   21933:add40eb47868
xen-unstable date:        Mon Aug 09 16:32:45 2010 +0100

14 years agox86: Fix NMI injection to PV guests
Keir Fraser [Mon, 9 Aug 2010 15:50:37 +0000 (16:50 +0100)]
x86: Fix NMI injection to PV guests

Signed-off-by: Juergen Gross <juergen.gross@ts.fujitsu.com>
xen-unstable changeset:   21926:6f07d9ac1e7c
xen-unstable date:        Thu Aug 05 14:41:14 2010 +0100

14 years agogdbsx: Install into correct directory $(SBINDIR)
Keir Fraser [Mon, 2 Aug 2010 16:19:06 +0000 (17:19 +0100)]
gdbsx: Install into correct directory $(SBINDIR)

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
xen-unstable changeset:   21903:668f71224241
xen-unstable date:        Mon Aug 02 16:58:50 2010 +0100

14 years agokexec: Clean up shutdown logic. Reinstate ACPI DMAR during kexec.
Keir Fraser [Mon, 2 Aug 2010 16:18:37 +0000 (17:18 +0100)]
kexec: Clean up shutdown logic. Reinstate ACPI DMAR during kexec.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21886:578ed14c3c67
xen-unstable date:        Thu Jul 29 10:31:21 2010 +0100

14 years agoxenpaging: Add a check to Xen for EPT.
Keir Fraser [Mon, 2 Aug 2010 16:17:55 +0000 (17:17 +0100)]
xenpaging: Add a check to Xen for EPT.

There isn't seem to be a way to directly check for EPT, so instead
check for HAP and an Intel processor. If EPT isn't enabled, then
return an error to the tool.

Signed-off-by: Patrick Colp <pjcolp@cs.ubc.ca>
xen-unstable changeset:   21882:af52102e4dcf
xen-unstable date:        Wed Jul 28 07:54:40 2010 +0100

14 years agoWalking the page lists needs the page_alloc lock
Keir Fraser [Mon, 2 Aug 2010 16:11:33 +0000 (17:11 +0100)]
Walking the page lists needs the page_alloc lock

There are a few places in Xen where we walk a domain's page lists
without holding the page_alloc lock.  They race with updates to the
page lists, which are normally rare but can be quite common under PoD
when the domain is close to its memory limit and the PoD reclaimer is
busy.  This patch protects those places by taking the page_alloc lock.

I think this is OK for the two debug-key printouts - they don't run
from irq context and look deadlock-free.  The tboot change seems safe
too unless tboot shutdown functions are called from irq context or
with the page_alloc lock held.  The p2m one is the scariest but there
are already code paths in PoD that take the page_alloc lock with the
p2m lock held so it's no worse than existing code.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
xen-unstable changeset:   21881:57de3a3118bb
xen-unstable date:        Wed Jul 28 07:54:12 2010 +0100

14 years agoUpdate Xen version to 4.0.1-rc6-pre
Keir Fraser [Mon, 2 Aug 2010 16:10:32 +0000 (17:10 +0100)]
Update Xen version to 4.0.1-rc6-pre

14 years agoAdded signature for changeset f200573325ba
Keir Fraser [Mon, 2 Aug 2010 10:18:41 +0000 (11:18 +0100)]
Added signature for changeset f200573325ba

14 years agoAdded tag 4.0.1-rc5 for changeset f200573325ba
Keir Fraser [Mon, 2 Aug 2010 10:18:26 +0000 (11:18 +0100)]
Added tag 4.0.1-rc5 for changeset f200573325ba

14 years agoUpdate Xen version to 4.0.1-rc5 4.0.1-rc5
Keir Fraser [Mon, 2 Aug 2010 10:18:11 +0000 (11:18 +0100)]
Update Xen version to 4.0.1-rc5

14 years agolibxl: fix fstat implicit declaration build error
Keir Fraser [Mon, 2 Aug 2010 10:17:22 +0000 (11:17 +0100)]
libxl: fix fstat implicit declaration build error

Signed-off-by: Zhigang Wang <zhigang.x.wang@oracle.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
xen-unstable changeset:   21895:de62cfdd7b9f
xen-unstable date:        Fri Jul 30 14:28:39 2010 +0100

14 years agotools/libxl: usbdevice should imply usb
Keir Fraser [Mon, 2 Aug 2010 10:16:57 +0000 (11:16 +0100)]
tools/libxl: usbdevice should imply usb

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
xen-unstable changeset:   21844:ef495616b946
xen-unstable date:        Fri Jul 23 16:58:35 2010 +0100

14 years agoWithout this we leak an fd on each domain shutdown and eventually run
Keir Fraser [Mon, 2 Aug 2010 10:16:31 +0000 (11:16 +0100)]
Without this we leak an fd on each domain shutdown and eventually run
out of file descriptors meaning new the console of new domains are not
logged.

Seems to have been accidentally removed in 16638:28921e83000b.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
xen-unstable changeset:   21818:9ccd024065c5
xen-unstable date:        Mon Jul 19 12:21:24 2010 +0100

14 years agoBefore this patch only log messages with precisely priority
Keir Fraser [Mon, 2 Aug 2010 10:16:04 +0000 (11:16 +0100)]
Before this patch only log messages with precisely priority
LOG_WARNING (or precisely LOG_DEBUG if -v) would be logged.

xenconsoled only actually logs using LOG_ERR and LOG_DEBUG so for the
most part we would have been logging absolutely nothing up until now.

Linux provides a LOG_UPTO macro but I'm not sure how portable that is
so I have opencoded the list of levels.

Do I get some sort of prize for fixing a bug introduced in 2005?

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
xen-unstable changeset:   21814:91ce0b0953ca
xen-unstable date:        Fri Jul 16 12:10:56 2010 +0100

14 years agoxenconsole: do not exit if a pty device is missing
Keir Fraser [Mon, 2 Aug 2010 10:15:30 +0000 (11:15 +0100)]
xenconsole: do not exit if a pty device is missing

This can just mean we have raced with the bootloader exiting and if we
continue we will likely see the real domain console show up.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
xen-unstable changeset:   21797:c18f43ed379e
xen-unstable date:        Wed Jul 14 16:36:47 2010 +0100

14 years agogdbsx: Always build -- remove build-time config option.
Keir Fraser [Mon, 2 Aug 2010 10:11:53 +0000 (11:11 +0100)]
gdbsx: Always build -- remove build-time config option.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21702:2846fd19945c
xen-unstable date:        Fri Jul 02 18:52:12 2010 +0100

tools/debugger/gdbsx: build enabled by default

Submitted-by: Bruce Edge <bruce.edge@gmail.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
xen-unstable changeset:   21752:29e545151078
xen-unstable date:        Thu Jul 08 16:50:34 2010 +0100

tools/debugger/gdbsx: enabled by only x86

The changeset 21752:29e545151078 breaks ia64, since gdbsx supports
only x86.

Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
xen-unstable changeset:   21788:8429a8a23241
xen-unstable date:        Tue Jul 13 19:08:48 2010 +0100

14 years agox86: Add -fno-exceptions to list of possibly-supported CFLAGS for embedded targets.
Keir Fraser [Sun, 25 Jul 2010 21:22:43 +0000 (22:22 +0100)]
x86: Add -fno-exceptions to list of possibly-supported CFLAGS for embedded targets.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21860:2b768d52bc7f
xen-unstable date:        Sun Jul 25 22:20:47 2010 +0100

14 years agotools: fix install bash-completion files to non-default locations.
Keir Fraser [Wed, 21 Jul 2010 12:55:00 +0000 (13:55 +0100)]
tools: fix install bash-completion files to non-default locations.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
xen-unstable changeset:   21565:0c10e80e083b
xen-unstable date:        Wed Jun 09 07:21:32 2010 +0100

Bash completion scripts go to /etc/bash_completion.d/

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21517:9002641064d8
xen-unstable date:        Fri Jun 04 10:09:11 2010 +0100

14 years agobuild: Make all GIT download URLs depend correctly on GIT_HTTP={y,n}
Keir Fraser [Wed, 21 Jul 2010 08:14:20 +0000 (09:14 +0100)]
build: Make all GIT download URLs depend correctly on GIT_HTTP={y,n}

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21838:e8dbc1262f52
xen-unstable date:        Wed Jul 21 09:02:10 2010 +0100

14 years agox86: New boot option availmem= to limit usable system RAM.
Keir Fraser [Wed, 21 Jul 2010 08:11:25 +0000 (09:11 +0100)]
x86: New boot option availmem= to limit usable system RAM.

Unlike mem=, this specifies the limit on usable RAM, rather than a
limit on maximum physical address of RAM.

Original patch by Sarina Canelake <sarina.canelake@Oracle.Com>

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21837:3c00cb0d9bc4
xen-unstable date:        Wed Jul 21 08:43:35 2010 +0100

14 years agovtd: Do not update-and-flush an IOMMU PTE if it does not change.
Keir Fraser [Wed, 21 Jul 2010 08:10:56 +0000 (09:10 +0100)]
vtd: Do not update-and-flush an IOMMU PTE if it does not change.

There are cases of identical repeated calls to
iommu_map_page(). Flushing is slow, so it's worth detecting these and
bailing early.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21813:07b718833c74
xen-unstable date:        Fri Jul 16 17:41:53 2010 +0100

14 years agoiommu: New options iommu=dom-strict and iommu=dom0-passthrough
Keir Fraser [Wed, 21 Jul 2010 08:10:27 +0000 (09:10 +0100)]
iommu: New options iommu=dom-strict and iommu=dom0-passthrough

The former strips dom0 of its usual 1:1 mapping of all memory, and
only provides it with mappings of its own memory, like any other
domain. The latter is a new consistent name for iommu=passthrough.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21771:42ccccfe1a6a
xen-unstable date:        Fri Jul 09 16:45:42 2010 +0100

iommu: Map dom0 initial allocation in 'dom0-strict' iommu mode.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21812:e382656e4dcc
xen-unstable date:        Fri Jul 16 16:19:51 2010 +0100

14 years agoxen: Send the debug VIRQ to guests after the rest of the domain dump is done.
Keir Fraser [Wed, 21 Jul 2010 08:08:45 +0000 (09:08 +0100)]
xen: Send the debug VIRQ to guests after the rest of the domain dump is done.

Send the debug VIRQ to guests after the rest of the domain dump is
done. This stops all the 'q' debug-key output getting interleaved with
the debug-virq output from a pv-ops dom0 kernel.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
xen-unstable changeset:   21809:1f7c2418e58c
xen-unstable date:        Fri Jul 16 13:51:27 2010 +0100

14 years agoUpdate Xen version to 4.0.1-rc5-pre
Keir Fraser [Wed, 21 Jul 2010 08:07:05 +0000 (09:07 +0100)]
Update Xen version to 4.0.1-rc5-pre

14 years agoAdded signature for changeset 1f6b423ee0c0
Keir Fraser [Fri, 16 Jul 2010 13:03:25 +0000 (14:03 +0100)]
Added signature for changeset 1f6b423ee0c0

14 years agoAdded tag 4.0.1-rc4 for changeset 1f6b423ee0c0
Keir Fraser [Fri, 16 Jul 2010 13:03:15 +0000 (14:03 +0100)]
Added tag 4.0.1-rc4 for changeset 1f6b423ee0c0

14 years agoUpdate Xen version to 4.0.1-rc4 4.0.1-rc4
Keir Fraser [Fri, 16 Jul 2010 13:03:08 +0000 (14:03 +0100)]
Update Xen version to 4.0.1-rc4

14 years agoxm: Do not check path of kernel if bootloader is specified
Keir Fraser [Fri, 16 Jul 2010 13:02:30 +0000 (14:02 +0100)]
xm: Do not check path of kernel if bootloader is specified

When create DomU, if bootloader is specified, 'kernel/ramdisk' will be
used by bootloader when boots DomU. So it is needless to check the
path is existent or not.

Signed-off-by: Yu Zhiguo <yuzg@cn.fujitsu.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
xen-unstable changeset:   21807:6fdb00dc93a5
xen-unstable date:        Thu Jul 15 16:32:50 2010 +0100

14 years agogdbsx: update README and remove space in q packet
Keir Fraser [Fri, 16 Jul 2010 13:02:10 +0000 (14:02 +0100)]
gdbsx: update README and remove space in q packet

Newer version of gdb, version 7*, seems to have bug where it is not
parsing thread list from gdbsx properly. Getting rid of the space in
thread list works around it. It's ok with older gdb also.

Signed-off-by: Mukesh Rathor <mukesh.rathor@oracle.com>
xen-unstable changeset:   21806:bb3b28cb7208
xen-unstable date:        Thu Jul 15 16:30:24 2010 +0100

14 years agoxl: start numbering vifs from 0
Keir Fraser [Fri, 16 Jul 2010 13:01:50 +0000 (14:01 +0100)]
xl: start numbering vifs from 0

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
xen-unstable changeset:   21805:2047364f0bdf
xen-unstable date:        Wed Jul 14 16:46:49 2010 +0100

14 years agoxl: default timer_mode to 1
Keir Fraser [Fri, 16 Jul 2010 13:01:25 +0000 (14:01 +0100)]
xl: default timer_mode to 1

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
xen-unstable changeset:   21794:843978ef0dee
xen-unstable date:        Wed Jul 14 16:31:59 2010 +0100

14 years agotools/hotplug: locking.sh script: fix lock directory remains on error bug
Keir Fraser [Fri, 16 Jul 2010 13:01:02 +0000 (14:01 +0100)]
tools/hotplug: locking.sh script: fix lock directory remains on error bug

_release_lock should be used instead of release_lock.
sigerr is introduced so that it can be redefined by
xen-hotplug-common.sh to a version which writes error status to
xenstore.

Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
xen-unstable changeset:   21738:473c170bca8d
xen-unstable date:        Tue Jul 06 13:10:14 2010 +0100

14 years agotools/pygrub: Fix a typo handling device specs with no partition part
Keir Fraser [Fri, 16 Jul 2010 13:00:36 +0000 (14:00 +0100)]
tools/pygrub: Fix a typo handling device specs with no partition part

pygrub: fix a typo that causes exceptions when looking at device
specifications that don't have a partition part (e.g. (hd0)).

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
xen-unstable changeset:   21733:f35512e244ff
xen-unstable date:        Fri Jul 02 17:56:05 2010 +0100

14 years agox86: allow the MSI-X table to reside beyond 4G even on 32-bit systems
Keir Fraser [Thu, 15 Jul 2010 08:49:45 +0000 (09:49 +0100)]
x86: allow the MSI-X table to reside beyond 4G even on 32-bit systems

Underlying interfaces allow this, and unduly (and silently) truncating
addresses doesn't seem nice.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   21779:08b2222ff505
xen-unstable date:        Mon Jul 12 10:43:57 2010 +0100

14 years agox86: prevent simultaneous use of MSI and MSI-X
Keir Fraser [Thu, 15 Jul 2010 08:49:22 +0000 (09:49 +0100)]
x86: prevent simultaneous use of MSI and MSI-X

This matches similar checks done in Linux, since no good can come from
a domain trying to enable both MSI and MSI-X on the same device at the
same time.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   21778:421f6c63b220
xen-unstable date:        Mon Jul 12 10:43:34 2010 +0100

14 years agox86: fix a benign typo
Keir Fraser [Thu, 15 Jul 2010 08:49:00 +0000 (09:49 +0100)]
x86: fix a benign typo

Just to avoid confusing readers - no functional change.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen-unstable changeset:   21777:a63e4c2d9ae4
xen-unstable date:        Mon Jul 12 10:43:10 2010 +0100

14 years agoiommu: Remove pointless iommu=pv boot option.
Keir Fraser [Thu, 15 Jul 2010 08:48:12 +0000 (09:48 +0100)]
iommu: Remove pointless iommu=pv boot option.

Allow devices to always be passed through to PV domains, just as they
can be to HVM domains.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   21770:510c797ee115
xen-unstable date:        Fri Jul 09 15:39:35 2010 +0100

14 years agox2APIC: improve enabling logic
Keir Fraser [Thu, 15 Jul 2010 09:43:50 +0000 (10:43 +0100)]
x2APIC: improve enabling logic

This patch masks PIC and IOAPIC RTE's before x2APIC enabling, unmask
and restore them after x2APIC enabling. It also really enables
interrupt remapping before x2APIC enabling instead of just checking
interrupt remapping setting. This patch also handles all x2APIC
configuration including BIOS settings and command line
settings. Especially, it handles that BIOS hands over in x2APIC mode
(when there is apic id > 255). It checks if x2APIC is already enabled
by BIOS. If already enabled, it will disable interrupt remapping and
queued invalidation first, then enable them again.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   21718:34f612ed4184
xen-unstable date:        Mon Jul 05 08:31:29 2010 +0100

14 years agox2APIC/VT-d: improve interrupt remapping and queued invalidation enabling and disabling
Keir Fraser [Thu, 15 Jul 2010 09:43:19 +0000 (10:43 +0100)]
x2APIC/VT-d: improve interrupt remapping and queued invalidation enabling and disabling

x2APIC depends on interrupt remapping, so interrupt remapping needs to
be enabled before x2APIC. Usually x2APIC is not enabled
(x2apic_enabled=0) when enable interrupt remapping, although x2APIC
will be enabled later. So it needs to pass a parameter to set
interrupt mode in intremap_enable, instead of checking
x2apic_enable. This patch adds a parameter "eim" to intremap_enable to
achieve it.  Interrupt remapping and queued invalidation are already
enabled when enable x2apic, so it needn't to enable them again when
setup iommu. This patch checks if interrupt remapping and queued
invalidation are already enable or not, and won't enable them if
already enabled. It does the similar in disabling, that's to say don't
disable them if already disabled.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   21717:176956d1d2fd
xen-unstable date:        Mon Jul 05 08:30:25 2010 +0100

14 years agox2APIC/VT-d: allocate iommu when create a drhd
Keir Fraser [Thu, 15 Jul 2010 09:42:38 +0000 (10:42 +0100)]
x2APIC/VT-d: allocate iommu when create a drhd

A drhd is created when parse ACPI DMAR table, but drhd->iommu is not
allocated until iommu setup. But iommu is needed by x2APIC which will
enable interrupt remapping before iommu setup. This patch allocates
iommu when create drhd. And then drhd->ecap can be removed because
it's the same as iommu->ecap.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen-unstable changeset:   21716:64a80813978f
xen-unstable date:        Mon Jul 05 08:29:10 2010 +0100

14 years agoMakefile: Serialise stubdom build after tools
Keir Fraser [Fri, 9 Jul 2010 11:44:53 +0000 (12:44 +0100)]
Makefile: Serialise stubdom build after tools

Currently "make stubdom" on its own fails because it depends on files
being installed by the results of "make tools".  This also means that
in some circumstances a parallel "make tools stubdom" (or "make all")
can fail due to races.  So make "make stubdom" depend on "make tools"
having completed first.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
xen-unstable changeset:   21760:84719437205c
xen-unstable date:        Fri Jul 09 12:22:52 2010 +0100

14 years agoxen: allow HVM save/restore from different cpus
Keir Fraser [Fri, 9 Jul 2010 11:44:33 +0000 (12:44 +0100)]
xen: allow HVM save/restore from different cpus

The hardware CPUID-levelling features level the feature flags but
don't change the CPU family/model/stepping.  Relax the HVM restore
check on family/model/stepping to printk but not veto the load, so
that VMs can be migrated between machines that have been
CPUID-levelled.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
xen-unstable changeset:   21759:8b2453940dac
xen-unstable date:        Fri Jul 09 12:22:35 2010 +0100

14 years agoxen: allow HVM save/restore from different changesets
Keir Fraser [Fri, 9 Jul 2010 11:44:14 +0000 (12:44 +0100)]
xen: allow HVM save/restore from different changesets

Allow HVM save/restore from different changesets of Xen.  The HVM save
records are supposed to be backwards compatible; XenServer
live-migrates between versions of Xen during upgrades.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
xen-unstable changeset:   21758:8afa0bb43c45
xen-unstable date:        Fri Jul 09 12:22:00 2010 +0100