topology_init() is called. In latest Linux kernels it
iterates over cpu_present_map rather than cpu_possible_map.
Also, save/restore should really iterate over
possible cpus, not present ones (not that it really matters,
but it's a small cleanup).
Signed-off-by: Keir Fraser <keir@xensource.com>
generic functions where appropriate. This prevents us using the
generic functions early during boot, when pte_pfn() does not work
(because max_mapnr is not initialised).
Signed-off-by: Keir Fraser <keir@xensource.com>
was incorrect when machine address > 4GB. We believe this fixes bugzilla #267.
Also tidy up and fix show_page_walk.
Signed-off-by: Steven Hand <steven@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
get populated with objects on first allocation, so if large
caches end up being unused, they don't actually cost us
very much.
Signed-off-by: Keir Fraser <keir@xensource.com>
function defined in page.h.
For self-migration, I need the ability to trap writes to the p2m map
during migration, because I keep a dictionary mapping mfns to pfns,
which I use for remapping the page tables once I am on the other side.
Signed-off-by: Jacob Gorm Hansen <jacobg@diku.dk>
set saved eflags.IF to !saved_upcall_mask. This allows the
guest to test interrupts-enabled in the interrupted context
in the same way as when running natively.
Signed-off-by: Keir Fraser <keir@xensource.com>
stack frame and into vcpu_info_t (in shared_info_t). This
makes the guest #PF handler much more similar to native.
Signed-off-by: Keir Fraser <keir@xensource.com>
cannot allocate a contiguous multi-page extent of memory. This
should avoid unnecessary crashes in the xen-specific skbuff
cache constructor.
Signed-off-by: Keir Fraser <keir@xensource.com>
flag is now associated with the pgd rather than the mm -- this
avoids a race where a pgd is allocated from the pgd_cache but,
before it gets associated with an mm, the kernel suspends itself.
At this point the kernel mappings will not get rewritten when the
kernel is resumed, and the system will fail.
A further advantage is that the code is slightly simpler and less
invasive (no changes to mm_context for example).
Signed-off-by: Keir Fraser <keir@xensource.com>
cpu_present map. This prevents domU SMP kernels without HOTPLUG_CPU
support from booting. Secondary cpus need to be present and online
before init/main.c:do_basic_setup() calls init_workqueues() (which
initializes per-cpu workqueues).
Without this patch, non HOTPLUG_CPU enabled kernels hang when flushing
cpu workqueues as the spinlock in the structure is never initialized (it
has a default value of zero which means the lock has been acquired on
x86).
Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
an error code if the page is still in use, and gnttab_end_foreign_access takes
a page to free. This allows us to cope with frontends wanting to end access
while backends are still using pages by, eventually, placing the page and
grant table entry on a list, for freeing later. At the moment, the page and
grant table entry are leaked, with a diagnostic.
Tidied up netfront.c's clean-up code.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
problem whereby migrated domains would shut themselves down immediately,
because the watch from the removal of the control/shutdown node would fire
after the workqueue had started, but before the domain was suspended, meaning
that an additional piece of work was scheduled, which ran immediately after the
domain was resumed.
Signed-off-by: Ewan Mellor <ewan@xensource.com>