[PATCH v3 4/5] Sysfs: Export VMCSINFO via sysfs

From: Yanfei Zhang
Date: Wed Jun 27 2012 - 04:58:06 EST


This patch export offsets of fields via /sys/devices/cpu/vmcs/.
Individual offsets are contained in subfiles named by the filed's
encoding, e.g.: /sys/devices/cpu/vmcs/0800

Signed-off-by: zhangyanfei <zhangyanfei@xxxxxxxxxxxxxx>
---
drivers/base/core.c | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/drivers/base/core.c b/drivers/base/core.c
index 346be8b..dd05ee7 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -26,6 +26,7 @@
#include <linux/async.h>
#include <linux/pm_runtime.h>
#include <linux/netdevice.h>
+#include <asm/vmcsinfo.h>

#include "base.h"
#include "power/power.h"
@@ -1038,6 +1039,11 @@ int device_add(struct device *dev)
error = dpm_sysfs_add(dev);
if (error)
goto DPMError;
+#if defined(CONFIG_KVM_INTEL) || defined(CONFIG_KVM_INTEL_MODULE)
+ error = vmcs_sysfs_add(dev);
+ if (error)
+ goto VMCSError;
+#endif
device_pm_add(dev);

/* Notify clients of device addition. This call must come
@@ -1069,6 +1075,10 @@ int device_add(struct device *dev)
done:
put_device(dev);
return error;
+#if defined(CONFIG_KVM_INTEL) || defined(CONFIG_KVM_INTEL_MODULE)
+ VMCSError:
+ dpm_sysfs_remove(dev);
+#endif
DPMError:
bus_remove_device(dev);
BusError:
@@ -1171,6 +1181,9 @@ void device_del(struct device *dev)
blocking_notifier_call_chain(&dev->bus->p->bus_notifier,
BUS_NOTIFY_DEL_DEVICE, dev);
device_pm_remove(dev);
+#if defined(CONFIG_KVM_INTEL) || defined(CONFIG_KVM_INTEL_MODULE)
+ vmcs_sysfs_remove(dev);
+#endif
dpm_sysfs_remove(dev);
if (parent)
klist_del(&dev->p->knode_parent);
--
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/