# HG changeset patch
# User Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
# Date 1279908893 -3600
# Node ID 243aaf84268840c30d5e53e96b1a5737013f2202
# Parent fa96fbfcac0c7c7410d3d8b4feea1d388d1cdf29
# Parent b0b1a6163203574d53876c3afa2e1ffc94c9f3d3
Merge
---
tools/firmware/hvmloader/xenbus.c | 5 ++---
tools/libxc/xc_hvm_build.c | 23 +----------------------
2 files changed, 3 insertions(+), 25 deletions(-)
diff -r fa96fbfcac0c -r 243aaf842688 tools/firmware/hvmloader/xenbus.c
--- a/tools/firmware/hvmloader/xenbus.c Fri Jul 23 19:13:29 2010 +0100
+++ b/tools/firmware/hvmloader/xenbus.c Fri Jul 23 19:14:53 2010 +0100
@@ -63,9 +63,8 @@ void xenbus_shutdown(void)
* having used the rings. */
memset(rings, 0, sizeof *rings);
- /* Clear the xenbus event-channel too */
- get_shared_info()->evtchn_pending[event / sizeof (unsigned long)]
- &= ~(1UL << ((event % sizeof (unsigned long))));
+ /* Clear the event-channel state too. */
+ memset(get_shared_info(), 0, PAGE_SIZE);
rings = NULL;
}
diff -r fa96fbfcac0c -r 243aaf842688 tools/libxc/xc_hvm_build.c
--- a/tools/libxc/xc_hvm_build.c Fri Jul 23 19:13:29 2010 +0100
+++ b/tools/libxc/xc_hvm_build.c Fri Jul 23 19:14:53 2010 +0100
@@ -28,8 +28,7 @@
#define SPECIALPAGE_XENSTORE 1
#define SPECIALPAGE_IOREQ 2
#define SPECIALPAGE_IDENT_PT 3
-#define SPECIALPAGE_SHINFO 4
-#define NR_SPECIAL_PAGES 5
+#define NR_SPECIAL_PAGES 4
#define special_pfn(x) (0xff000u - NR_SPECIAL_PAGES + (x))
static void build_hvm_info(void *hvm_info_page, uint64_t mem_size)
@@ -125,8 +124,6 @@ static int setup_guest(xc_interface *xch
unsigned long target_pages = (unsigned long)target << (20 - PAGE_SHIFT);
unsigned long pod_pages = 0;
unsigned long entry_eip, cur_pages;
- struct xen_add_to_physmap xatp;
- struct shared_info *shared_info;
void *hvm_info_page;
uint32_t *ident_pt;
struct elf_binary elf;
@@ -337,28 +334,10 @@ static int setup_guest(xc_interface *xch
build_hvm_info(hvm_info_page, v_end);
munmap(hvm_info_page, PAGE_SIZE);
- /* Map and initialise shared_info page. */
- xatp.domid = dom;
- xatp.space = XENMAPSPACE_shared_info;
- xatp.idx = 0;
- xatp.gpfn = special_pfn(SPECIALPAGE_SHINFO);
- if ( (xc_memory_op(xch, XENMEM_add_to_physmap, &xatp) != 0) ||
- ((shared_info = xc_map_foreign_range(
- xch, dom, PAGE_SIZE, PROT_READ | PROT_WRITE,
- special_pfn(SPECIALPAGE_SHINFO))) == NULL) )
- goto error_out;
- memset(shared_info, 0, PAGE_SIZE);
- /* NB. evtchn_upcall_mask is unused: leave as zero. */
- memset(&shared_info->evtchn_mask[0], 0xff,
- sizeof(shared_info->evtchn_mask));
- munmap(shared_info, PAGE_SIZE);
-
/* Allocate and clear special pages. */
for ( i = 0; i < NR_SPECIAL_PAGES; i++ )
{
xen_pfn_t pfn = special_pfn(i);
- if ( i == SPECIALPAGE_SHINFO )
- continue;
rc = xc_domain_memory_populate_physmap(xch, dom, 1, 0, 0, &pfn);
if ( rc != 0 )
{
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|