Slit the code in suspend.c into suspend_pv.c and suspend_hvm.c.
Reviewed-by: Juergen Gross
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/xen/Makefile | 3 ++-
arch/x86/xen/suspend.c | 54 --
arch/x86/xen/suspend_hvm.c | 22
Move PVHVM related code to mmu_hvm.c.
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/xen/Makefile | 2 +-
arch/x86/xen/mmu.c | 74 --
arch/x86/xen/mmu_hvm.c | 79 ++
3 files changed, 80 insertions
Balloon driver uses several PV-only concepts (xen_start_info,
xen_extra_mem,..) and it seems the simpliest solution to make HVM-only
build happy is to decorate these parts with #ifdefs.
Signed-off-by: Vitaly Kuznetsov
---
drivers/xen/balloon.c | 30 --
1 file changed
After code split between PV and HVM some functions in xen_smp_ops have
xen_pv_ prefix and some only xen_ which makes them look like they're
common for both PV and HVM while they're not. Rename all the rest to
have xen_pv_ prefix.
Signed-off-by: Vitaly Kuznetsov
---
- This patch i
Basically, enlighten.c is renamed to enlighten_pv.c and some code moved
out to common enlighten.c.
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/xen/Makefile |4 +-
arch/x86/xen/enlighten.c| 1626 ++-
arch/x86/xen/enlighten_pv.c | 1552
-table.c but only if !xen_feature(XENFEAT_auto_translated_physmap).
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/include/asm/xen/page.h | 25 +
1 file changed, 25 insertions(+)
diff --git a/arch/x86/include/asm/xen/page.h b/arch/x86/include/asm/xen/page.h
index 33cbd3d
Now everything is in place and we can move PV-only code under
CONFIG_XEN_PV. CONFIG_XEN_PV_SMP is created to support the change.
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/xen/Kconfig | 4
arch/x86/xen/Makefile | 9 +
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git
Michal Hocko writes:
> On Mon 13-03-17 11:55:54, Igor Mammedov wrote:
>> > >
>> > >- suggested RFC is not acceptable from virt point of view
>> > > as it regresses guests on top of x86 kvm/vmware which
>> > > both use ACPI based memory hotplug.
>> > >
>> > >- u
Boris Ostrovsky writes:
> On 03/02/2017 12:53 PM, Vitaly Kuznetsov wrote:
>> Changes since v1:
>> - Patches 1,2 and 3 were split and reordered to avoid adding temporary
>>#ifdefs [Juergen Gross]
>> - Juergen's R-b added to what is now patches 14 and 15 (patc
Michal Hocko writes:
> On Mon 13-03-17 13:54:59, Vitaly Kuznetsov wrote:
>> Michal Hocko writes:
>>
>> > On Mon 13-03-17 11:55:54, Igor Mammedov wrote:
>> >> > >
>> >> > >- suggested RFC is not acceptable from virt point of
Michal Hocko writes:
> On Mon 13-03-17 14:42:37, Vitaly Kuznetsov wrote:
>> >
>> > What is the API those guests ask for the memory? And who is actually
>> > responsible to ask for that memory? Is it a kernel or userspace
>> > solution?
>>
>>
Split xen_smp_prepare_boot_cpu() into xen_pv_smp_prepare_boot_cpu() and
xen_hvm_smp_prepare_boot_cpu() to support further splitting of smp.c.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/smp.c | 49 ++---
1 file changed
Move PVHVM related code to enlighten_hvm.c. Three functions:
xen_cpuhp_setup(), xen_reboot(), xen_emergency_restart() are shared, drop
static qualifier from them. These functions will go to common code once
it is split from enlighten.c.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
have_vcpu_info_placement applies to both PV and HVM and as we're going
to split the code we need to make it global.
Rename to xen_have_vcpu_info_placement.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/enlighten.c | 12 ++--
arch/x86/xen/xen-ops.h
Split xen_cpu_die() into xen_pv_cpu_die() and xen_hvm_cpu_die() to support
further splitting of smp.c.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/smp.c | 26 --
1 file changed, 20 insertions(+), 6 deletions(-)
diff --git a/arch/x86/xen
xen_smp_intr_init() and xen_smp_intr_free() have PV-specific code and as
a praparatory change to splitting smp.c we need to split these fucntions.
Create xen_smp_intr_init_pv()/xen_smp_intr_free_pv().
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
Changes since v2:
'e
ead_pv() and xen_cpu_dead_pv_hvm()
Add two parameters to xen_cpuhp_setup() to pass proper cpu_up_prepare and
cpu_dead hooks. xen_set_cpu_features() is now PV-only so the redundant
xen_pv_domain() check can be dropped.
Signed-off-by: Vitaly Kuznetsov
---
Changes since v2:
.pin_vcpu kept for x86_h
All code to support Xen PV will get under this new option. For the
beginning, check for it in the common code.
Signed-off-by: Vitaly Kuznetsov
---
Changes since v2:
select XEN_HAVE_PVMMU moved to config XEN_PV [Juergen Gross]
---
arch/x86/kernel/cpu/hypervisor.c | 4 +++-
arch/x86/kernel
Create enlighten_pvh.c by splitting off PVH related code from enlighten.c,
put it under CONFIG_XEN_PVH.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
Changes since v2:
#include added [kbuild test robot]
---
arch/x86/xen/Makefile| 2 +
arch/x86/xen/enlighten.c
sable Dom0 support.
Some patches are rather big but this is mostly just moving code around, no
functional changes intended. I smoke tested it with PV-only and PVHVM-only
builds, booted and did save/restore test. I also tried the newly introduced
PVHv2 guest, it even worked!
Vitaly Kuznetsov (21
Move PVHVM related code to mmu_hvm.c.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/Makefile | 2 +-
arch/x86/xen/mmu.c | 74 --
arch/x86/xen/mmu_hvm.c | 79 ++
3
Basically, enlighten.c is renamed to enlighten_pv.c and some code moved
out to common enlighten.c.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
Changes since v2:
xen_pin_vcpu() left in enlighten.c
---
arch/x86/xen/Makefile |4 +-
arch/x86/xen/enlighten.c
Basically, smp.c is renamed to smp_pv.c and some code moved out to common
smp.c. struct xen_common_irq delcaration ended up in smp.h.
Reviewed-by: Juergen Gross
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/xen/Makefile | 2 +-
arch/x86/xen/smp.c| 488
-table.c but only if !xen_feature(XENFEAT_auto_translated_physmap).
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/include/asm/xen/page.h | 25 +
1 file changed, 25 insertions(+)
diff --git a/arch/x86/include/asm/xen/page.h b/arch/x86/include/asm
Now everything is in place and we can move PV-only code under
CONFIG_XEN_PV. CONFIG_XEN_PV_SMP is created to support the change.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/Kconfig | 4
arch/x86/xen/Makefile | 9 +
2 files changed, 9 insertions
startup_xen references PV-only code, decorate it with #ifdef CONFIG_XEN_PV
to make PV-free builds possible.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/xen-head.S | 4
1 file changed, 4 insertions(+)
diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen
Balloon driver uses several PV-only concepts (xen_start_info,
xen_extra_mem,..) and it seems the simpliest solution to make HVM-only
build happy is to decorate these parts with #ifdefs.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
drivers/xen/balloon.c | 30
After code split between PV and HVM some functions in xen_smp_ops have
xen_pv_ prefix and some only xen_ which makes them look like they're
common for both PV and HVM while they're not. Rename all the rest to
have xen_pv_ prefix.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Jue
xen_pmu_init/finish() functions are used in suspend.c and
enlighten.c, add stubs for now.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
arch/x86/xen/Kconfig | 2 +-
arch/x86/xen/Makefile | 6 +++---
arch/x86/xen/pmu.h| 5 +
3 files changed, 9 insertions(+), 4
Slit the code in suspend.c into suspend_pv.c and suspend_hvm.c.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
Changes since v2:
#include added to suspend_pv.c [kbuild test robot]
---
arch/x86/xen/Makefile | 3 ++-
arch/x86/xen/suspend.c | 54
xen_create_contiguous_region()/xen_create_contiguous_region() are PV-only,
they both contain xen_feature(XENFEAT_auto_translated_physmap) check and
bail in the very beginning.
Signed-off-by: Vitaly Kuznetsov
Reviewed-by: Juergen Gross
---
include/xen/xen-ops.h | 14 ++
1 file
Move PVHVM related code to smp_hvm.c. Drop 'static' qualifier from
xen_smp_send_reschedule(), xen_smp_send_call_function_ipi(),
xen_smp_send_call_function_single_ipi(), these functions will be moved to
common smp code when smp_pv.c is split.
Signed-off-by: Vitaly Kuznetsov
Reviewed-b
init_hvm_pv_info();
+ /* Detect PVH booting after kexec */
+ xen_detect_pvh();
+
xen_hvm_init_shared_info();
xen_panic_handler_init();
With the hack I was able to do kdump on a PVHv2 guest. I'll start a separate
mail thread to discuss how we should do it right.
Vitaly Kuzn
Guests with LIBXL_DEVICE_MODEL_VERSION_NONE don't have a device model
running so there is no save file to rename.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxl/libxl_create.c | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/tools/libxl/libxl_creat
uests serial console
through QEMU is usually in use and for PVH we don't have it.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxl/libxl_console.c | 5 -
tools/libxl/libxl_create.c | 8 +++-
tools/libxl/libxl_internal.h | 1 +
3 files changed, 12 insertions(+), 2 deletions(-)
diff --g
a CPUID leaf or
something like that?
Signed-off-by: Vitaly Kuznetsov
---
arch/x86/xen/enlighten.c | 18 ++
1 file changed, 18 insertions(+)
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index ec1d5c4..4a30886 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/
Boris Ostrovsky writes:
> On 03/20/2017 02:20 PM, Vitaly Kuznetsov wrote:
>> PVH guests after kexec boot like normal HVM guests and we're not entering
>> xen_prepare_pvh()
>
> Is it not? Aren't we going via xen_hvm_shutdown() and then
> SHUTDOWN_soft_reset whi
Roger Pau Monne writes:
> On Tue, Mar 21, 2017 at 10:21:52AM +0100, Vitaly Kuznetsov wrote:
>> Boris Ostrovsky writes:
>>
>> > On 03/20/2017 02:20 PM, Vitaly Kuznetsov wrote:
>> >> PVH guests after kexec boot like normal HVM guests and we're not enterin
Boris Ostrovsky writes:
> On 03/21/2017 08:13 AM, Roger Pau Monne wrote:
>> On Tue, Mar 21, 2017 at 12:53:07PM +0100, Vitaly Kuznetsov wrote:
>>> Roger Pau Monne writes:
>>>
>>>> On Tue, Mar 21, 2017 at 10:21:52AM +0100, Vitaly Kuznetsov wrote:
>>&g
Vitaly Kuznetsov writes:
> Roger Pau Monne writes:
>
>> On Tue, Mar 21, 2017 at 10:21:52AM +0100, Vitaly Kuznetsov wrote:
>>> Boris Ostrovsky writes:
>>>
>>> > On 03/20/2017 02:20 PM, Vitaly Kuznetsov wrote:
>>> >> PVH guests after
Boris Ostrovsky writes:
> On 03/21/2017 10:44 AM, Vitaly Kuznetsov wrote:
>> Vitaly Kuznetsov writes:
>>
>>> Roger Pau Monne writes:
>>>
>>>> On Tue, Mar 21, 2017 at 10:21:52AM +0100, Vitaly Kuznetsov wrote:
>>>>> Boris Ostrovsky w
Wei Liu writes:
> On Mon, Mar 20, 2017 at 07:03:09PM +0100, Vitaly Kuznetsov wrote:
>> Vitaly Kuznetsov (2):
>> libxl: don't try to rename dm save file for PVH
>
> I've pushed this patch.
>
>> libxl: preserve console tty across soft reset
>>
uests serial console
through QEMU is usually in use and for PVH we don't have it.
Signed-off-by: Vitaly Kuznetsov
---
Changes since v1:
- Use libxl__xs_read_mandatory() instead of xs_read() [Wei Liu]
Signed-off-by: Vitaly Kuznetsov
---
tools/libxl/libxl_console.c | 5 -
tools/libxl/libxl
- Use libxl__xs_read_mandatory() instead of xs_read() [Wei Liu]
- Follow-up PATCH2 added to make do_domain_soft_reset () consistent.
Vitaly Kuznetsov (2):
libxl: preserve console tty across soft reset
libxl: use libxl__xs_read_checked() instead or raw xs_read() in
do_domain_soft_reset()
Replace raw xs_read() calls with libxl__xs_read_checked() and bail on error.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxl/libxl_create.c | 26 --
1 file changed, 16 insertions(+), 10 deletions(-)
diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
David Vrabel writes:
> On 06/11/15 11:39, Stefano Stabellini wrote:
>> On Thu, 5 Nov 2015, Mark Rutland wrote:
static void xen_percpu_init(void)
{
struct vcpu_register_vcpu_info info;
@@ -104,6 +120,8 @@ static void xen_percpu_init(void)
BUG_ON(err);
per_c
Mark Rutland writes:
> On Fri, Nov 06, 2015 at 11:41:49AM +, David Vrabel wrote:
>> On 06/11/15 11:39, Stefano Stabellini wrote:
>> > On Thu, 5 Nov 2015, Mark Rutland wrote:
>> >>> static void xen_percpu_init(void)
>> >>> {
>> >>> struct vcpu_register_vcpu_info info;
>> >>> @@ -104
Boris Ostrovsky writes:
> After commit 8c058b0b9c34 ("x86/irq: Probe for PIC presence before
> allocating descs for legacy IRQs") early_irq_init() will no longer
> preallocate descriptors for legacy interrupts if PIT does not
> exist.
PIC?
>
> Therefore we need to allocate those descriptors for
Boris Ostrovsky writes:
> On 11/18/2015 06:16 AM, Vitaly Kuznetsov wrote:
>> Boris Ostrovsky writes:
>>
>>> After commit 8c058b0b9c34 ("x86/irq: Probe for PIC presence before
>>> allocating descs for legacy IRQs") early_irq_init() will no longer
>&g
"Jan Beulich" writes:
On 03.06.15 at 15:35, wrote:
>> When soft reset is being performed we need to replace all actively
>> granted pages with empty pages to prevent possible future memory
>> corruption as the newly started kernel won't be aware of these
>> granted pages.
>>
>> We make the
"Jan Beulich" writes:
On 03.06.15 at 15:35, wrote:
>> --- a/xen/common/event_channel.c
>> +++ b/xen/common/event_channel.c
>> @@ -274,11 +274,13 @@ static long
>> evtchn_bind_interdomain(evtchn_bind_interdomain_t *bind)
>>
>> lchn->u.interdomain.remote_dom = rd;
>> lchn->u.int
"Jan Beulich" writes:
On 03.06.15 at 15:35, wrote:
>> +int arch_domain_soft_reset(struct domain *d)
>> +{
>> +struct page_info *page = virt_to_page(d->shared_info), *new_page;
>> +int ret = 0;
>> +struct domain *owner;
>> +unsigned long mfn, mfn_new, gfn;
>> +p2m_type_t
Tim Deegan writes:
> At 15:35 +0200 on 03 Jun (1433345722), Vitaly Kuznetsov wrote:
>> x86-specific hook cleans up the pirq-emuirq mappings and replaces the
>> shared_info frame with an empty page to support subsequent
>> XENMAPSPACE_shared_info call.
>
> That'
"Jan Beulich" writes:
On 03.06.15 at 15:35, wrote:
>> @@ -1129,8 +1129,9 @@ void unmap_vcpu_info(struct vcpu *v)
>> mfn = v->vcpu_info_mfn;
>> unmap_domain_page_global((void *)
>> ((unsigned long)v->vcpu_info & PAGE_MASK));
>> -
>> -v->vcpu_info =
"Jan Beulich" writes:
On 22.06.15 at 18:00, wrote:
>> "Jan Beulich" writes:
>>
>> On 03.06.15 at 15:35, wrote:
@@ -1129,8 +1129,9 @@ void unmap_vcpu_info(struct vcpu *v)
mfn = v->vcpu_info_mfn;
unmap_domain_page_global((void *)
"Jan Beulich" writes:
On 22.06.15 at 18:24, wrote:
>> "Jan Beulich" writes:
>>
>> On 22.06.15 at 18:00, wrote:
"Jan Beulich" writes:
On 03.06.15 at 15:35, wrote:
>> @@ -1129,8 +1129,9 @@ void unmap_vcpu_info(struct vcpu *v)
>> mfn = v->vcpu_info_mfn
This special type of shutdown is supposed to be used by PVHVM guests when
they want to perform some sort of kexec/kdump.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/shutdown.c | 6 ++
xen/include/public/sched.h | 3 ++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a
x86-specific hook cleans up the pirq-emuirq mappings, destroys all ioreq
servers and and replaces the shared_info frame with an empty page to support
subsequent XENMAPSPACE_shared_info call.
ARM-specific hook is a noop for now.
Signed-off-by: Vitaly Kuznetsov
---
Changes since 'PATCH RF
Use letter 'S' to indicate a domain in such state.
Signed-off-by: Vitaly Kuznetsov
Acked-by: Ian Campbell
---
tools/libxl/libxl_types.idl | 1 +
tools/libxl/xl_cmdimpl.c | 2 +-
tools/python/xen/lowlevel/xl/xl.c | 1 +
3 files changed, 3 insertions(+), 1 deletion(-)
New domctl resets state for a domain allowing it to 'start over': register
vcpu_info, switch to FIFO ABI for event channels. Still active grants are
being logged to help debugging misbehaving backends.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/domain.c
This patch series provides x86 PVHVM domains with an ability to perform
kexec/kdump-style operations.
The list of currently known issues blocking kexec (and why the series is
required) is:
- Bound event channels.
- Registered vcpu_info.
- PIRQ/emuirq mappings.
- shared_info frame after XENMAPSPACE
Add new soft_reset vector to domain2 class, add it to create_domain
in the default policy.
Signed-off-by: Vitaly Kuznetsov
---
tools/flask/policy/policy/modules/xen/xen.if | 2 +-
xen/xsm/flask/hooks.c| 3 +++
xen/xsm/flask/policy/access_vectors | 2 ++
3 files
Use this in libxl_dm instead of hard-coding.
Signed-off-by: Vitaly Kuznetsov
Acked-by: Ian Campbell
---
tools/libxc/include/xenguest.h | 2 ++
tools/libxl/libxl_dm.c | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/libxc/include/xenguest.h b/tools/libxc
Use existing create/restore path to perform 'soft reset' for HVM domains.
Tear everything down, e.g. destroy domain's device model, remove the domain
from xenstore, save toolstack record and start over.
Signed-off-by: Vitaly Kuznetsov
---
Changes since 'v7'
- &
We need to close all event channel so the domain performing soft reset
will be able to open them back.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/event_channel.c | 38 +++---
xen/include/xen/event.h| 3 +++
2 files changed, 22 insertions(+), 19 deletions
Introduce xc_domain_soft_reset() function supporting XEN_DOMCTL_soft_reset.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxc/include/xenctrl.h | 3 +++
tools/libxc/xc_domain.c | 9 +
2 files changed, 12 insertions(+)
diff --git a/tools/libxc/include/xenctrl.h b/tools/libxc/include
Log first 10 active grants of a domain. This function is going to be used
for soft reset, active grants on this path usually mean misbehaving backends
refusing to release their mappings on shutdown.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/grant_table.c | 31
As a preparation before adding new restart type (soft reset) put all
restart types into an enum.
Signed-off-by: Vitaly Kuznetsov
Acked-by: Ian Campbell
---
Changes since v7:
- s,restarter,restarted, [Ian Campbell]
---
tools/libxl/xl.h | 6 ++
tools/libxl/xl_cmdimpl.c | 23
"Jan Beulich" writes:
On 26.05.15 at 15:32, wrote:
>> --- a/xen/arch/arm/p2m.c
>> +++ b/xen/arch/arm/p2m.c
>> @@ -1709,9 +1709,9 @@ bool_t p2m_mem_access_check(paddr_t gpa, vaddr_t gla,
>> const struct npfec npfec)
>>
>> /*
>> * Set access type for a region of pfns.
>> - * If start_pf
George Dunlap writes:
> On Tue, May 31, 2016 at 6:42 PM, Wei Liu wrote:
>> From: Vitaly Kuznetsov
>>
>> Commit 56fb5fd623 ("libxl: adjust PoD target by memory fudge, too")
>> introduced target_memkb adjustment for HVM PoD domains on create. The
&g
writes:
> * toolstack-based approach to pvhvm guest kexec (fair)
>also contains hypervisor side change, v6
> - Vitaly Kuznetsov
it is already "[PATCH v8 00/11] toolstack-assisted approach to
PVHVM guest kexec" waiting for reviews and (IMHO) 'ok' (as I
n' parameter passed to
gfn_lock/gfn_unlock is not defined. This code compiles only because of a
coincidence: gfn_lock/gfn_unlock are currently macros which don't use their
second argument.
Signed-off-by: Vitaly Kuznetsov
---
Changes since v2:
- Instead of adding start_ prefix on ARM remov
Andrew Cooper writes:
> On 26/06/15 16:17, Vitaly Kuznetsov wrote:
>> 'pfn' and 'start_pfn' are ambiguous, both these functions expect GFNs as
>> input.
>>
>> On x86 the interface of p2m_set_mem_access() in p2m.c doesn't match the
>> dec
mem_access on ARM)
interfaces to using gft_t instead of unsigned long and update all users of
these functions.
There is also an issue in p2m_get_mem_access on x86: 'gfn' parameter passed to
gfn_lock/gfn_unlock is not defined. This code compiles only because of a
coincidence: gfn_lock/gfn
George Dunlap writes:
> On 07/02/2015 12:25 PM, Tim Deegan wrote:
>> At 12:09 +0100 on 02 Jul (1435838956), Andrew Cooper wrote:
>>> On 02/07/15 11:48, George Dunlap wrote:
Now in p2m_set_mem_access(), rather than just using an unsigned long in
the loop iterating over gfns, you do this
mem_access on ARM)
interfaces to using gft_t instead of unsigned long and update all users of
these functions.
There is also an issue in p2m_get_mem_access on x86: 'gfn' parameter passed to
gfn_lock/gfn_unlock is not defined. This code compiles only because of a
coincidence: gfn_lock/gfn
e v5. I'd like to apologize for all that.
v5 and all the history of the series is available here:
http://lists.xenproject.org/archives/html/xen-devel/2014-12/msg01312.html
Vitaly Kuznetsov (10):
xen: introduce SHUTDOWN_soft_reset shutdown reason
libxl: support SHUTDOWN_soft_reset shutdown reason
xe
Dummy policy just checks that the current domain is privileged,
in flask policy soft_reset is added to create_domain.
Signed-off-by: Vitaly Kuznetsov
---
tools/flask/policy/policy/modules/xen/xen.if | 2 +-
xen/common/memory.c | 4
xen/include/xsm/dummy.h
Use this in libxl_dm instead of hard-coding.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxc/include/xenguest.h | 1 +
tools/libxl/libxl_dm.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/libxc/include/xenguest.h b/tools/libxc/include/xenguest.h
index
domain is
dying (so its mappings are locked and do not change) but the cleanup procedure
has not being started yet. It will be set from outside of the domain_kill()
function.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/domain.c | 1 +
xen/include/xen/sched.h | 3 ++-
2 files changed, 3
New operation reassigns all memory pages from source domain to the destination
domain mapping them at exactly the same GFNs. Pages mapped more than once (e.g.
grants) are being copied.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/memory.c | 232
. This operation
is not supported for PV domains including the hardware domain.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/shutdown.c | 6 ++
xen/include/public/sched.h | 3 ++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c
Use letter 'S' to indicate a domain in such state.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxl/libxl.h | 7 +++
tools/libxl/libxl_types.idl | 1 +
tools/libxl/xl_cmdimpl.c | 2 +-
tools/python/xen/lowlevel/xl/xl.c | 1 +
4 files changed, 10 insert
eset;
- Destroy the original domain;
- Restore HVM context, HVM params, seed grant table for the new domain.
After that the new domain resumes execution from where SHUTDOWN_soft_reset was
called by the original domain.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxc/Makefile | 1
As a preparation before adding new restart type (soft reset) put all
restart types into an enum.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxl/xl.h | 6 ++
tools/libxl/xl_cmdimpl.c | 23 ++-
2 files changed, 16 insertions(+), 13 deletions(-)
diff --git a
Introduce xc_domain_memory_soft_reset() function supporting XENMEM_soft_reset.
Signed-off-by: Vitaly Kuznetsov
---
tools/libxc/include/xenctrl.h | 5 +
tools/libxc/xc_domain.c | 18 ++
2 files changed, 23 insertions(+)
diff --git a/tools/libxc/include/xenctrl.h b
Perform soft reset when a domain did SHUTDOWN_soft_reset. Migrate the
content with xc_domain_soft_reset(), reload dm and toolstack.
Signed-off-by: Vitaly Kuznetsov
---
docs/man/xl.cfg.pod.5| 12 +
tools/libxl/libxl.c | 4 ++
tools/libxl/libxl.h | 6 +++
tools
writes:
> * toolstack-based approach to pvhvm guest kexec (fair)
>also contains hypervisor side change
> - Vitaly Kuznetsov
>
> * Toolstack-based approach to pvhvm guest kexec (ok)
> v4 posted
> - Vitaly Kuznetsov
v6 was jus
Julien Grall writes:
> Hi Vitaly,
>
> On 13/05/15 10:49, Vitaly Kuznetsov wrote:
>> +int xc_domain_soft_reset(xc_interface *xch, uint32_t source_dom,
>> + uint32_t dest_dom, domid_t console_domid,
>> + unsigned
Daniel De Graaf writes:
> On 05/13/2015 05:49 AM, Vitaly Kuznetsov wrote:
>> Dummy policy just checks that the current domain is privileged,
>> in flask policy soft_reset is added to create_domain.
>>
>> Signed-off-by: Vitaly Kuznetsov
>
> I think the FLASK pol
Vitaly Kuznetsov writes:
> Perform soft reset when a domain did SHUTDOWN_soft_reset. Migrate the
> content with xc_domain_soft_reset(), reload dm and toolstack.
>
..skip..
> +void libxl__xc_domain_soft_reset(libxl__egc *egc,
> + libxl__domain_cr
"Jan Beulich" writes:
On 13.05.15 at 11:49, wrote:
>> --- a/xen/include/xsm/dummy.h
>> +++ b/xen/include/xsm/dummy.h
>> @@ -193,6 +193,13 @@ static XSM_INLINE int
>> xsm_memory_exchange(XSM_DEFAULT_ARG struct domain *d)
>> return xsm_default_action(action, current->domain, d);
>> }
>
"Jan Beulich" writes:
On 13.05.15 at 11:49, wrote:
>> --- a/xen/common/memory.c
>> +++ b/xen/common/memory.c
>> @@ -580,6 +580,234 @@ static long
>> memory_exchange(XEN_GUEST_HANDLE_PARAM(xen_memory_exchange_t) arg)
>> return rc;
>> }
>>
>> +static long
>> memory_soft_reset(XEN_GU
Tim Deegan writes:
> At 17:26 +0100 on 22 May (1432315574), Jan Beulich wrote:
>> >>> On 22.05.15 at 17:36, wrote:
>> > On 13.05.15 at 11:49, wrote:
>> >>> +if ( !source_d->is_dying )
>> >>> +{
>> >>> +/*
>> >>> + * Make sure no allocation/remapping for the source do
It seems xen_domctl_monitor_op_t was supposed to be a typedef for
struct xen_domctl_monitor_op and not the non-existent xen_domctl__op.
Signed-off-by: Vitaly Kuznetsov
---
xen/include/public/domctl.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xen/include/public/domctl.h
'gfn' is not defined in p2m_get_mem_access() and this code compiles only
because of a coincidence: gfn_lock/gfn_unlock are currently macros which
don't use their second argument.
Signed-off-by: Vitaly Kuznetsov
---
xen/arch/x86/mm/p2m.c | 4 ++--
1 file changed, 2 insertions(
Tim Deegan writes:
> At 12:06 +0200 on 25 May (143265), Vitaly Kuznetsov wrote:
>> Tim Deegan writes:
>>
>> > At 17:26 +0100 on 22 May (1432315574), Jan Beulich wrote:
>> >> >>> On 22.05.15 at 17:36, wrote:
>> >> >>>>&g
n' parameter passed to
gfn_lock/gfn_unlock is not defined. This code compiles only because of a
coincidence: gfn_lock/gfn_unlock are currently macros which don't use their
second argument.
Signed-off-by: Vitaly Kuznetsov
---
- This patch is a successor of '[PATCH] x86/mm: use existin
domain is
dying (so its mappings are locked and do not change) but the cleanup procedure
has not being started yet. It will be set from outside of the domain_kill()
function.
Signed-off-by: Vitaly Kuznetsov
---
xen/common/domain.c | 1 +
xen/include/xen/sched.h | 3 ++-
2 files changed, 3
org/archives/html/xen-devel/2015-05/msg01613.html
v5 and all the history of the series is available here:
http://lists.xenproject.org/archives/html/xen-devel/2014-12/msg01312.html
Vitaly Kuznetsov (10):
xen: introduce SHUTDOWN_soft_reset shutdown reason
libxl: support SHUTDOWN_soft_reset shutd
101 - 200 of 381 matches
Mail list logo