The files are meant to contain all device hotplug related code. The
first implementation will be live storage attach and detach.

On-behalf-of: SAP stefan.ko...@sap.com
Signed-off-by: Stefan Kober <stefan.ko...@cyberus-technology.de>
---
 po/POTFILES         |  1 +
 src/ch/ch_hotplug.c | 35 +++++++++++++++++++++++++++++++++++
 src/ch/ch_hotplug.h | 27 +++++++++++++++++++++++++++
 src/ch/meson.build  |  2 ++
 4 files changed, 65 insertions(+)
 create mode 100644 src/ch/ch_hotplug.c
 create mode 100644 src/ch/ch_hotplug.h

diff --git a/po/POTFILES b/po/POTFILES
index dc7293d0cd..50a055fb73 100644
--- a/po/POTFILES
+++ b/po/POTFILES
@@ -24,6 +24,7 @@ src/ch/ch_domain.c
 src/ch/ch_driver.c
 src/ch/ch_events.c
 src/ch/ch_hostdev.c
+src/ch/ch_hotplug.c
 src/ch/ch_interface.c
 src/ch/ch_monitor.c
 src/ch/ch_process.c
diff --git a/src/ch/ch_hotplug.c b/src/ch/ch_hotplug.c
new file mode 100644
index 0000000000..c46628e7e9
--- /dev/null
+++ b/src/ch/ch_hotplug.c
@@ -0,0 +1,35 @@
+/*
+ * ch_hotplug.c: CH device hotplug handling
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library.  If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#include <config.h>
+
+#include "ch_hotplug.h"
+
+#define VIR_FROM_THIS VIR_FROM_CH
+
+int
+chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm G_GNUC_UNUSED,
+                                        virCHDriver *driver G_GNUC_UNUSED,
+                                        const char *xml G_GNUC_UNUSED,
+                                        unsigned int flags)
+{
+    virCheckFlags(VIR_DOMAIN_AFFECT_LIVE |
+                  VIR_DOMAIN_AFFECT_CONFIG, -1);
+
+    return -1;
+}
diff --git a/src/ch/ch_hotplug.h b/src/ch/ch_hotplug.h
new file mode 100644
index 0000000000..04915ba5de
--- /dev/null
+++ b/src/ch/ch_hotplug.h
@@ -0,0 +1,27 @@
+/*
+ * ch_hotplug.h: CH device hotplug handling
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library.  If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include "ch_conf.h"
+
+int
+chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm,
+                                        virCHDriver *driver,
+                                        const char *xml,
+                                        unsigned int flags);
diff --git a/src/ch/meson.build b/src/ch/meson.build
index cd20c3d065..bba7ee90ee 100644
--- a/src/ch/meson.build
+++ b/src/ch/meson.build
@@ -17,6 +17,8 @@ ch_driver_sources = [
   'ch_process.h',
   'ch_hostdev.c',
   'ch_hostdev.h',
+  'ch_hotplug.c',
+  'ch_hotplug.h',
 ]
 
 driver_source_files += files(ch_driver_sources)
-- 
2.50.1

Reply via email to