Created shutdown.c for the shutdown thread and all the shutdown related
functions.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
Changesd since v1:
* Updated license to a BSD 3-clause. This license was taken
from the updated original file. (Repo: sysml/mini-os)
---
Ma
For mini-OS to support suspend and restore, the kernel will have to suspend
different modules such as xenbus, console, irq, etc. During save/restore the
kernel and arch pre_suspend and post_suspend functions will be invoked to
suspend/resume each of the modules.
Signed-off-by: Bruno Alvisio
Performed an additional cleanup to make the file more syntactically consistent.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
include/netfront.h | 8 +-
kernel.c | 8 ++
netfront.c
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
Changed since v1:
- Moved suspend/resume _gnttab to arch specific files
---
arch/x86/mm.c| 34 ++
gnttab.c | 10 ++
include/gnttab.h | 4
kernel.c | 4
4
Currently the watch path is not saved in the watch struct when it is registered.
During xenbus resume the path is needed so that the watches can be registered
again.
Thus, 'path' field is added to struct watch so that watches can be re-registered
during xenbus resume.
Signed-off-by: Bruno
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
kernel.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel.c b/kernel.c
index 1cd40e8..782eb79 100644
--- a/kernel.c
+++ b/kernel.
Before suspending the domain the shared_info_page is unmapped and for PVs the
pagetables should be canonicalized. After resume the shared_info_page should be
mapped again.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
events.c | 5 +
include/events.h | 1 +
kernel.c | 2 ++
3 files changed, 8 insertions(+)
diff --git a/events.c b/events.c
index e8ef8aa..34
Hi all,
I am sending the second revision for supporting save/restore in Mini-OS PVH.
The
branch can be found at:
https://github.com/balvisio/mini-os/tree/feature/mini-os-suspend-support-submission-2
Feedback would be greatly appreciated.
Cheers,
Bruno
Signed-off-by: Bruno Alvisio
The shutdown thread present in kernel.c was removed and now the thread in
shutdown.c is created instead.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
arch/x86/setup.c | 2 +-
include/kernel.h | 2
functions: trap_init (sets up IDT) and xen_callback_vector (sets the
HVM vector callback). During the post-suspend operations the xen_callback_vector
function will be invoked.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
-
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
console/console.c | 15 -
console/xenbus.c | 3 +-
console/xencons_ring.c | 83 +++---
include/console
This function is necessary as part of the pre-suspend operation.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
Changed since v1:
* Changed HYPERVISOR_shared_info for shared_info
---
arch/x86/setu
operation is needed.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
arch/x86/mm.c | 14 ++
include/x86/arch_mm.h | 3 +++
2 files changed, 17 insertions(+)
diff --git a/arch/x86/mm.c b/arch/x8
This function is necessary as part of the pre-suspend operation.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
Changed since v1:
* Changed HYPERVISOR_shared_info for shared_info
---
arch/x86/setu
xenbus_release_wait_for_watch generates a fake event to trigger make
xenbus_wait_for_watch return. This is necessary to wake up waiting threads.
release_xenbus_id additionally checks if the number of requests == 0 to wake
up the 'waiting' suspend xenbus thread.
Signed-off-by: Bruno Alvisio
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
console/console.c | 15 -
console/xenbus.c | 3 +-
console/xencons_ring.c | 83 +++---
include/console
operation is needed.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
arch/x86/mm.c | 14 ++
include/x86/arch_mm.h | 3 +++
2 files changed, 17 insertions(+)
diff --git a/arch/x86/mm.c b/arch/x8
xenbus_release_wait_for_watch generates a fake event to trigger make
xenbus_wait_for_watch return. This is necessary to wake up waiting threads.
release_xenbus_id additionally checks if the number of requests == 0 to wake
up the 'waiting' suspend xenbus thread.
Signed-off-by: Bruno Alvisio
Hi all,
I am sending the second revision for supporting save/restore in Mini-OS PVH.
The
branch can be found at:
https://github.com/balvisio/mini-os/tree/feature/mini-os-suspend-support-submission-2
Feedback would be greatly appreciated.
Cheers,
Bruno
Signed-off-by: Bruno Alvisio
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
Changed since v1:
* Removed resume/suspend_time() and used init/fini_time() instead
---
arch/x86/time.c | 1 -
kernel.c| 4
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/arch/x86/time.c b/arch/x86/
The shutdown thread present in kernel.c was removed and now the thread in
shutdown.c is created instead.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
arch/x86/setup.c | 2 +-
include/kernel.h | 2
Created shutdown.c for the shutdown thread and all the shutdown related
functions.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
Changesd since v1:
* Updated license to a BSD 3-clause. This license was taken
from the updated original file. (Repo: sysml/mini-os)
---
Ma
For mini-OS to support suspend and restore, the kernel will have to suspend
different modules such as xenbus, console, irq, etc. During save/restore the
kernel and arch pre_suspend and post_suspend functions will be invoked to
suspend/resume each of the modules.
Signed-off-by: Bruno Alvisio
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
---
kernel.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel.c b/kernel.c
index 1cd40e8..782eb79 100644
--- a/kernel.c
+++ b/kernel.
functions: trap_init (sets up IDT) and xen_callback_vector (sets the
HVM vector callback). During the post-suspend operations the xen_callback_vector
function will be invoked.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thiba...@ens-lyon.org>
-
Hello all,
I am doing some testing with Xen. After some of the guest domains I am
testing crashed, I decided to add some logging to Xen and the tools. After
rebuilding, reinstalling and rebooting the system, Xen seems to create
guest domains (the ones created before reboot) on startup (with no
On Sun, Dec 31, 2017 at 5:12 PM, Andrew Cooper <andrew.coop...@citrix.com>
wrote:
> On 31/12/2017 15:19, Bruno Alvisio wrote:
>
> Hi all,
>
>
>
> I was trying to create mini-os PVH instances both x86_32 and x86_64. I
> have no issue with x86_32 but when trying to
Hi all,
I was trying to create mini-os PVH instances both x86_32 and x86_64. I have
no issue with x86_32 but when trying to ‘xl create’ x86_64 type I get the
following error:
root@debianxen:/home/balvisio# xl -vvv create minios_pvh.cfg
Parsing config from minios_pvh.cfg
libxl: debug:
r with the XTF relocalability code. Any pointer or
suggestion at this point would be again appreciated.
Thanks,
Bruno
On Thu, Dec 28, 2017 at 7:18 PM, Andrew Cooper <andrew.coop...@citrix.com>
wrote:
> On 28/12/17 18:33, Bruno Alvisio wrote:
>
> (d360) Bootstrapping...
>
> (
Hello all,
I am trying to build PVH mini-os with libc support. These are the steps I
have followed so far:
1. Xen repo (master: commit id: d2f86bf604698806d311cc251c1b66fbb752673c)
2. mini-os repo (master: commit id:
0b4b7897e08b967a09bed2028a79fabff82342dd)
3. Made the following modifications
ops to restore
the domain. The restore is performed by the POST_MIRROR_DISKS phase stream that
is executed later in the restore flow. If no local disks are mirrored the
restore is executed by the DEFAULT phase stream type.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools
A new field 'mirror_disks' is added to the libxl struct
libxl__domain_create_state to record if QEMU drives should be mirrored during
migration. This variable is used to setup the sequence of calls and streams in
libxl and libxc.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
ed using the migrate incoming command
(QMP command: migrate_incoming).
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxl/libxl_internal.h | 11
tools/libxl/libxl_qmp.c | 139 +++
2 files changed, 150 insertions(+)
the source that the
NBD server has been started it triggers the disks mirroring job. Once it
receives an event from QEMU that the mirroring job is complete, the
POST_MIRROR_DISKS phase stream type is invoked.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxl/libxl_dom_save.
The function migrate_fixed_message is going to be used in the libxl create and
save flow for event synchronization during migration. It needs to be accessible
from libxl_create and libxl_dom_save and thus it is moved to libxl_utils.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.
will be resumed
using the QMP 'migrate-incoming' command.
When qemu-xen is started with '-incoming defer' option the initial state of the
instance will be 'inmigrate'. Thus, when either 'running' or 'inmigrate' are
read from xenstore the spawn detach is carried out.
Signed-off-by: Bruno Alvisio
drives will be mirrored to.
libxl_domain_suspend takes a 'recv_fd' param that is used for receving messages
from destination during migration.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxl/libxl.h | 4 +-
tools/libxl/libxl_domain.c | 4 +-
by the
POST_MIRROR_DISKS libxl stream.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxc/include/xenguest.h | 3 +-
tools/libxc/xc_nomigrate.c | 3 +-
tools/libxc/xc_sr_save.c | 3 +-
tools/libxl/libxl_internal.h | 12 +--
tools/libxl/libxl_save_callout.
b.com/balvisio/qemu-xen/tree/feature/migration_with_local_disks_mirroring
Any feedback/suggestion is appreciated.
Cheers,
Bruno
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
___
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
cuting QMP "migrate-incoming" command
11. domcreate_devmodel_started
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxl/libxl.h | 6 +++
tools/libxl/libxl_create.c | 117 +--
tools/libxl/libxl_internal.h |
)
libxl__xc_mirror_disks_restore_returned is the callback function in the
libxl_read_stream that is registered for the return of libxc_mirror_disks
stream.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxc/include/xenguest.h | 3 ++-
tools/libxc/xc_nomigrate.c | 3 ++-
tools
==
XC_PRE_MIRROR_DISKS_STREAM_PHASE only the pre_mirror_disks op is executed as
part of the save(). In all other libxc phase types, the original flow is
executed.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxc/xc_sr_common.h | 11
tools/libxc/xc_sr_
. This code adds
support to register handlers when QMP events are received.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxl/libxl_qmp.c | 58 +
1 file changed, 58 insertions(+)
diff --git a/tools/libxl/libxl_qmp.c b/tools
Hi all,
I was understanding the code in tools/libxc/xc_sr_save_x86_pv.c and found
this comment to the normalise_pagetable:
/*
* Normalise a pagetable for the migration stream. Performs pfn->mfn
* conversions on the ptes.
*/
static int normalise_pagetable(struct xc_sr_context *ctx, const
This function is necessary as part of the pre-suspend operation.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
arch/x86/setup.c | 12
hypervisor.c | 12
include/hypervisor.h | 1 +
3 files changed, 25 insertions(+)
diff --git a/ar
Currently the watch path is not saved in the watch struct when it is registered.
During xenbus resume the path is needed so that the watches can be registered
again.
Thus, 'path' field is added to struct watch so that watches can be re-registered
during xenbus resume.
Signed-off-by: Bruno
xenbus_release_wait_for_watch generates a fake event to trigger make
xenbus_wait_for_watch return. This is necessary to wake up waiting threads.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
include/xenbus.h | 1 +
xenbus/xenbus.c | 10 +-
2 files changed, 10 inse
Performed an additional cleanup to make the file more syntactically consistent.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
include/netfront.h | 8 +-
kernel.c | 8 ++
netfront.c | 242 +
3 files c
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
kernel.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel.c b/kernel.c
index 1cd40e8..782eb79 100644
--- a/kernel.c
+++ b/kernel.c
@@ -119,12 +119,12 @@ void start_kernel(void* par)
void pre_suspen
For mini-OS to support suspend and restore, the kernel will have to suspend
different modules such as xenbus, console, irq, etc. During save/restore the
kernel and arch pre_suspend and post_suspend functions will be invoked to
suspend/resume each of the modules.
Signed-off-by: Bruno Alvisio
functions: trap_init (sets up IDT) and xen_callback_vector (sets the
HVM vector callback). During the post-suspend operations the xen_callback_vector
function will be invoked.
Signed-off-by: Bruno Alvisio <bruno.alvi...@oracle.com>
---
arch/x86/traps.c | 17 +++--
include/x86/os.
The shutdown thread present in kernel.c was removed and now the thread in
shutdown.c is created instead.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
arch/x86/setup.c | 2 +-
include/kernel.h | 2 +-
kernel.c | 50 ++-
operation is needed.
Signed-off-by: Bruno Alvisio <bruno.alvi...@oracle.com>
---
arch/x86/mm.c | 14 ++
include/x86/arch_mm.h | 3 +++
2 files changed, 17 insertions(+)
diff --git a/arch/x86/mm.c b/arch/x86/mm.c
index 05ad029..1b163ac 100644
--- a/arch/x86/mm.c
+++ b/ar
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
gnttab.c | 33 +
include/gnttab.h | 2 ++
kernel.c | 4
3 files changed, 39 insertions(+)
diff --git a/gnttab.c b/gnttab.c
index 3f0e35f..a91c2e1 100644
--- a/gnttab.c
+++ b/gn
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
arch/x86/time.c | 13 +
include/time.h | 2 ++
kernel.c| 4
3 files changed, 19 insertions(+)
diff --git a/arch/x86/time.c b/arch/x86/time.c
index 3658142..8f79d69 100644
--- a/arch/x86/time.c
+++ b/ar
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
events.c | 5 +
include/events.h | 1 +
kernel.c | 2 ++
3 files changed, 8 insertions(+)
diff --git a/events.c b/events.c
index e8ef8aa..342aead 100644
--- a/events.c
+++ b/events.c
@@ -183,6 +183,11 @
Hi all,
I have been working on supporting save/restore for mini-os PVH. Some parts of
the implementation were taken from the sysml/mini-os repository. The branch can
be found at:
https://github.com/balvisio/mini-os/tree/feature/mini-os-suspend-support
Any feedback would be greatly appreciated.
ops to restore
the domain. The restore is performed by the POST_MIRROR_DISKS phase stream that
is executed later in the restore flow. If no local disks are mirrored the
restore is executed by the DEFAULT phase stream type.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools
==
XC_PRE_MIRROR_DISKS_STREAM_PHASE only the pre_mirror_disks op is executed as
part of the save(). In all other libxc phase types, the original flow is
executed.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxc/xc_sr_common.h | 11
tools/libxc/xc_sr_
)
libxl__xc_mirror_disks_restore_returned is the callback function in the
libxl_read_stream that is registered for the return of libxc_mirror_disks
stream.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.com>
---
tools/libxc/include/xenguest.h | 3 ++-
tools/libxc/xc_nomigrate.c | 3 ++-
tools
The function migrate_fixed_message is going to be used in the libxl create and
save flow for event synchronization during migration. It needs to be accessible
from libxl_create and libxl_dom_save and thus it is moved to libxl_utils.
Signed-off-by: Bruno Alvisio <bruno.alvi...@gmail.
62 matches
Mail list logo