From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yanfei Zhang Subject: [PATCH v3 4/5] Sysfs: Export VMCSINFO via sysfs Date: Wed, 27 Jun 2012 16:54:54 +0800 Message-ID: <4FEACA5E.4090009@cn.fujitsu.com> References: <4FEAC945.50700@cn.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: dzickus-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org, luto-3s7WtUTddSA@public.gmane.org, kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Joerg Roedel , kexec-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, paul.gortmaker-CWA4WttNNZF54TAoqtyWWQ@public.gmane.org, ludwig.nussel-l3A5Bk7waGM@public.gmane.org, ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org, Greg KH To: Avi Kivity , mtosatti-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org Return-path: In-Reply-To: <4FEAC945.50700-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kexec-bounces-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Errors-To: kexec-bounces+glkk-kexec=m.gmane.org-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org List-Id: kvm.vger.kernel.org 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 --- 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 #include #include +#include #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