diff options
author | cl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk> | 2005-09-03 18:48:39 +0000 |
---|---|---|
committer | cl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk> | 2005-09-03 18:48:39 +0000 |
commit | 3bc1edc4ab3406100319d5590d259ff0bc203b5a (patch) | |
tree | be172c4b9f1eaa8c5e3b11673ba532fcac1e6f7f /tools/xcutils/xc_restore.c | |
parent | b319f36dde3044197297c218c540ddbcdc68b2b1 (diff) | |
download | xen-3bc1edc4ab3406100319d5590d259ff0bc203b5a.tar.gz xen-3bc1edc4ab3406100319d5590d259ff0bc203b5a.tar.bz2 xen-3bc1edc4ab3406100319d5590d259ff0bc203b5a.zip |
Update suspend/resume for new console code.
- translate console mfn to pfn
- unbind/bind console evtchn
- recover console mfn on restore
- trigger xenconsoled refresh after mfn is put in store
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
Diffstat (limited to 'tools/xcutils/xc_restore.c')
-rw-r--r-- | tools/xcutils/xc_restore.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/tools/xcutils/xc_restore.c b/tools/xcutils/xc_restore.c index c5d3c84c4c..c94dbd3bbe 100644 --- a/tools/xcutils/xc_restore.c +++ b/tools/xcutils/xc_restore.c @@ -17,22 +17,27 @@ int main(int argc, char **argv) { - unsigned int xc_fd, io_fd, domid, nr_pfns, evtchn; + unsigned int xc_fd, io_fd, domid, nr_pfns, store_evtchn, console_evtchn; int ret; - unsigned long mfn; + unsigned long store_mfn, console_mfn; - if (argc != 6) - errx(1, "usage: %s xcfd iofd domid nr_pfns evtchn", argv[0]); + if (argc != 7) + errx(1, + "usage: %s xcfd iofd domid nr_pfns store_evtchn console_evtchn", + argv[0]); xc_fd = atoi(argv[1]); io_fd = atoi(argv[2]); domid = atoi(argv[3]); nr_pfns = atoi(argv[4]); - evtchn = atoi(argv[5]); + store_evtchn = atoi(argv[5]); + console_evtchn = atoi(argv[6]); - ret = xc_linux_restore(xc_fd, io_fd, domid, nr_pfns, evtchn, &mfn); + ret = xc_linux_restore(xc_fd, io_fd, domid, nr_pfns, store_evtchn, + &store_mfn, console_evtchn, &console_mfn); if (ret == 0) { - printf("store-mfn %li\n", mfn); + printf("store-mfn %li\n", store_mfn); + printf("console-mfn %li\n", console_mfn); fflush(stdout); } return ret; |