8547e28bd5
23233-hvm-cr-access.patch 23234-svm-decode-assist-base.patch 23235-svm-decode-assist-crs.patch 23236-svm-decode-assist-invlpg.patch 23238-svm-decode-assist-insn-fetch.patch 23303-cpufreq-misc.patch 23304-amd-oprofile-strings.patch 23305-amd-fam15-xenoprof.patch 23306-amd-fam15-vpmu.patch 23334-amd-fam12+14-vpmu.patch 23338-vtd-force-intremap.patch - fate#310957 - Update to Xen 4.1.1-rc1 c/s 23064 - xentrace: dynamic tracebuffer allocation xen-unstable.xentrace.dynamic_tbuf.patch xen-unstable.xentrace.empty_t_info_pages.patch xen-unstable.xentrace.verbose.patch xen-unstable.xentrace.no_gdprintk.patch xen-unstable.xentrace.comments.patch xen-unstable.xentrace.printk_prefix.patch xen-unstable.xentrace.remove_debug_printk.patch xen-unstable.xentrace.t_info_pages-formula.patch xen-unstable.xentrace.register_cpu_notifier-boot_time.patch xen-unstable.xentrace.t_info_page-overflow.patch xen-unstable.xentrace.t_info_first_offset.patch xen-unstable.xentrace.data_size__read_mostly.patch xen-unstable.xentrace.__insert_record-dst-type.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=124
76 lines
2.6 KiB
Diff
76 lines
2.6 KiB
Diff
Index: xen-4.1.1-testing/tools/ioemu-qemu-xen/xenstore.c
|
|
===================================================================
|
|
--- xen-4.1.1-testing.orig/tools/ioemu-qemu-xen/xenstore.c
|
|
+++ xen-4.1.1-testing/tools/ioemu-qemu-xen/xenstore.c
|
|
@@ -978,6 +978,18 @@ static void xenstore_process_dm_command_
|
|
}
|
|
|
|
snapshot_name = xs_read(xsh, XBT_NULL, path, &len);
|
|
+ } else if (!strncmp(command, "snapshot-delete", len)) {
|
|
+ if (pasprintf(&path,
|
|
+ "/local/domain/0/device-model/%u/parameter", domid) == -1) {
|
|
+ fprintf(logfile, "out of memory reading dm command parameter\n");
|
|
+ goto out;
|
|
+ }
|
|
+ par = xs_read(xsh, XBT_NULL, path, &len);
|
|
+ if (!par)
|
|
+ goto out;
|
|
+ if (delete_disk_snapshots(par) == 0)
|
|
+ xenstore_record_dm_state("snapshot-deleted");
|
|
+ free(par);
|
|
} else if (!strncmp(command, "continue", len)) {
|
|
fprintf(logfile, "dm-command: continue after state save\n");
|
|
xen_pause_requested = 0;
|
|
Index: xen-4.1.1-testing/tools/ioemu-qemu-xen/savevm.c
|
|
===================================================================
|
|
--- xen-4.1.1-testing.orig/tools/ioemu-qemu-xen/savevm.c
|
|
+++ xen-4.1.1-testing/tools/ioemu-qemu-xen/savevm.c
|
|
@@ -1106,6 +1106,35 @@ the_end:
|
|
return ret;
|
|
}
|
|
|
|
+int delete_disk_snapshots(const char* name)
|
|
+{
|
|
+ BlockDriverState *bs, *bs1;
|
|
+ int i, ret;
|
|
+
|
|
+ bs = get_bs_snapshots();
|
|
+ if (!bs) {
|
|
+ xenstore_record_dm_error("No block device supports snapshots");
|
|
+ return -1;
|
|
+ }
|
|
+
|
|
+ for(i = 0; i <= nb_drives; i++) {
|
|
+ bs1 = drives_table[i].bdrv;
|
|
+ if (bdrv_has_snapshot(bs1)) {
|
|
+ ret = bdrv_snapshot_delete(bs1, name);
|
|
+ if (ret < 0) {
|
|
+ if (ret == -ENOTSUP)
|
|
+ fprintf(stderr, "Snapshots not supported on device '%s'\n",
|
|
+ bdrv_get_device_name(bs1));
|
|
+ else
|
|
+ fprintf(stderr, "Error %d while deleting snapshot on "
|
|
+ "'%s'\n", ret, bdrv_get_device_name(bs1));
|
|
+ }
|
|
+ }
|
|
+ }
|
|
+
|
|
+ return 0;
|
|
+}
|
|
+
|
|
#ifndef CONFIG_DM
|
|
|
|
void do_savevm(const char *name)
|
|
Index: xen-4.1.1-testing/tools/ioemu-qemu-xen/qemu-xen.h
|
|
===================================================================
|
|
--- xen-4.1.1-testing.orig/tools/ioemu-qemu-xen/qemu-xen.h
|
|
+++ xen-4.1.1-testing/tools/ioemu-qemu-xen/qemu-xen.h
|
|
@@ -42,6 +42,7 @@ enum {
|
|
|
|
/* xen-vl-extra.c */
|
|
int save_disk_snapshots(const char* name);
|
|
+int delete_disk_snapshots(const char* name);
|
|
|
|
/* helper2.c */
|
|
extern long time_offset;
|