Re: [Xen-devel] [PATCH v2 2/2] x86, arm, platform, xen, kconfig: add xen defconfig helper

2015-01-14 Thread Luis R. Rodriguez
On Wed, Jan 14, 2015 at 11:29:41AM +, Stefano Stabellini wrote:
 On Tue, 13 Jan 2015, Luis R. Rodriguez wrote:
  On Mon, Dec 15, 2014 at 02:58:26PM +, Stefano Stabellini wrote:
   On Tue, 9 Dec 2014, Luis R. Rodriguez wrote:
From: Luis R. Rodriguez mcg...@suse.com

This lets you build a kernel which can support xen dom0
or xen guests by just using:

   make xenconfig

on both x86 and arm64 kernels. This also splits out the
options which are available currently to be built with x86
and 'make ARCH=arm64' under a shared config.

Technically xen supports a dom0 kernel and also a guest
kernel configuration but upon review with the xen team
since we don't have many dom0 options its best to just
combine these two into one.

Cc: Josh Triplett j...@joshtriplett.org
Cc: Borislav Petkov b...@suse.de
Cc: Pekka Enberg penb...@kernel.org
Cc: David Rientjes rient...@google.com
Cc: Michal Marek mma...@suse.cz
Cc: Randy Dunlap rdun...@infradead.org
Cc: penb...@kernel.org
Cc: levinsasha...@gmail.com
Cc: mtosa...@redhat.com
Cc: fengguang...@intel.com
Cc: David Vrabel david.vra...@citrix.com
Cc: Ian Campbell ian.campb...@citrix.com
Cc: Konrad Rzeszutek Wilk konrad.w...@oracle.com
Cc: xen-de...@lists.xenproject.org
Reviewed-by: Josh Triplett j...@joshtriplett.org
Signed-off-by: Luis R. Rodriguez mcg...@suse.com
---
 arch/x86/configs/xen.config |  7 +++
 kernel/configs/xen.config   | 30 ++
 scripts/kconfig/Makefile|  5 +
 3 files changed, 42 insertions(+)
 create mode 100644 arch/x86/configs/xen.config
 create mode 100644 kernel/configs/xen.config

diff --git a/arch/x86/configs/xen.config b/arch/x86/configs/xen.config
new file mode 100644
index 000..92b8587f
--- /dev/null
+++ b/arch/x86/configs/xen.config
@@ -0,0 +1,7 @@
+# x86 xen specific config options
+CONFIG_XEN_PVHVM=y
+CONFIG_XEN_MAX_DOMAIN_MEMORY=500
+CONFIG_XEN_SAVE_RESTORE=y
+# CONFIG_XEN_DEBUG_FS is not set
+CONFIG_XEN_PVH=y
+CONFIG_XEN_MCE_LOG=y
diff --git a/kernel/configs/xen.config b/kernel/configs/xen.config
new file mode 100644
index 000..d2ec010
--- /dev/null
+++ b/kernel/configs/xen.config
@@ -0,0 +1,30 @@
+# generic config
+CONFIG_XEN=y
+CONFIG_XEN_DOM0=y
+CONFIG_PCI_XEN=y
   
   This shouldn't be here
  
  If PCI is not supported on the arch this won't be selected as kconfig would 
  not
  allow for it, what would be the issue of keeping it here?
 
 It looks wrong to me to have an arch specific option here. Moreover many
 ARM boards don't even have PCI, so it looks even worse.
 CONFIG_PCI_XEN is certainly not a generic config option for Xen.

OK fair enough.

  What xen instances
  would we not want to have this enabled for and can we instead manage that
  through Kconfig magic by negating PCI_XEN for it?
 
 Everything can be fixed via Kconfig magic, the point of this exercise is
 to try to avoid it.
 
 Are there any cases on x86 where you don't actually want CONFIG_PCI_XEN?

Not that I can think of.

 If not, then why don't just enable it automatically and silently if
 CONFIG_PCI is selected? If we did that, we could avoid specifying it
 here.

CONFIG_PCI_XEN already depends depends on PCI  XEN so I think its safe
to just put it in blindly for x86.

 In any case, given that CONFIG_PCI_XEN is only defined on x86, I think
 it should be in arch/x86/configs/xen.config.

OK!

Will respin.

  Luis

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH v2 2/2] x86, arm, platform, xen, kconfig: add xen defconfig helper

2015-01-14 Thread Stefano Stabellini
On Tue, 13 Jan 2015, Luis R. Rodriguez wrote:
 On Mon, Dec 15, 2014 at 02:58:26PM +, Stefano Stabellini wrote:
  On Tue, 9 Dec 2014, Luis R. Rodriguez wrote:
   From: Luis R. Rodriguez mcg...@suse.com
   
   This lets you build a kernel which can support xen dom0
   or xen guests by just using:
   
  make xenconfig
   
   on both x86 and arm64 kernels. This also splits out the
   options which are available currently to be built with x86
   and 'make ARCH=arm64' under a shared config.
   
   Technically xen supports a dom0 kernel and also a guest
   kernel configuration but upon review with the xen team
   since we don't have many dom0 options its best to just
   combine these two into one.
   
   Cc: Josh Triplett j...@joshtriplett.org
   Cc: Borislav Petkov b...@suse.de
   Cc: Pekka Enberg penb...@kernel.org
   Cc: David Rientjes rient...@google.com
   Cc: Michal Marek mma...@suse.cz
   Cc: Randy Dunlap rdun...@infradead.org
   Cc: penb...@kernel.org
   Cc: levinsasha...@gmail.com
   Cc: mtosa...@redhat.com
   Cc: fengguang...@intel.com
   Cc: David Vrabel david.vra...@citrix.com
   Cc: Ian Campbell ian.campb...@citrix.com
   Cc: Konrad Rzeszutek Wilk konrad.w...@oracle.com
   Cc: xen-de...@lists.xenproject.org
   Reviewed-by: Josh Triplett j...@joshtriplett.org
   Signed-off-by: Luis R. Rodriguez mcg...@suse.com
   ---
arch/x86/configs/xen.config |  7 +++
kernel/configs/xen.config   | 30 ++
scripts/kconfig/Makefile|  5 +
3 files changed, 42 insertions(+)
create mode 100644 arch/x86/configs/xen.config
create mode 100644 kernel/configs/xen.config
   
   diff --git a/arch/x86/configs/xen.config b/arch/x86/configs/xen.config
   new file mode 100644
   index 000..92b8587f
   --- /dev/null
   +++ b/arch/x86/configs/xen.config
   @@ -0,0 +1,7 @@
   +# x86 xen specific config options
   +CONFIG_XEN_PVHVM=y
   +CONFIG_XEN_MAX_DOMAIN_MEMORY=500
   +CONFIG_XEN_SAVE_RESTORE=y
   +# CONFIG_XEN_DEBUG_FS is not set
   +CONFIG_XEN_PVH=y
   +CONFIG_XEN_MCE_LOG=y
   diff --git a/kernel/configs/xen.config b/kernel/configs/xen.config
   new file mode 100644
   index 000..d2ec010
   --- /dev/null
   +++ b/kernel/configs/xen.config
   @@ -0,0 +1,30 @@
   +# generic config
   +CONFIG_XEN=y
   +CONFIG_XEN_DOM0=y
   +CONFIG_PCI_XEN=y
  
  This shouldn't be here
 
 If PCI is not supported on the arch this won't be selected as kconfig would 
 not
 allow for it, what would be the issue of keeping it here?

It looks wrong to me to have an arch specific option here. Moreover many
ARM boards don't even have PCI, so it looks even worse.
CONFIG_PCI_XEN is certainly not a generic config option for Xen.


 What xen instances
 would we not want to have this enabled for and can we instead manage that
 through Kconfig magic by negating PCI_XEN for it?

Everything can be fixed via Kconfig magic, the point of this exercise is
to try to avoid it.

Are there any cases on x86 where you don't actually want CONFIG_PCI_XEN?
If not, then why don't just enable it automatically and silently if
CONFIG_PCI is selected? If we did that, we could avoid specifying it
here.

In any case, given that CONFIG_PCI_XEN is only defined on x86, I think
it should be in arch/x86/configs/xen.config.

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH v2 2/2] x86, arm, platform, xen, kconfig: add xen defconfig helper

2015-01-13 Thread Luis R. Rodriguez
On Mon, Dec 15, 2014 at 02:58:26PM +, Stefano Stabellini wrote:
 On Tue, 9 Dec 2014, Luis R. Rodriguez wrote:
  From: Luis R. Rodriguez mcg...@suse.com
  
  This lets you build a kernel which can support xen dom0
  or xen guests by just using:
  
 make xenconfig
  
  on both x86 and arm64 kernels. This also splits out the
  options which are available currently to be built with x86
  and 'make ARCH=arm64' under a shared config.
  
  Technically xen supports a dom0 kernel and also a guest
  kernel configuration but upon review with the xen team
  since we don't have many dom0 options its best to just
  combine these two into one.
  
  Cc: Josh Triplett j...@joshtriplett.org
  Cc: Borislav Petkov b...@suse.de
  Cc: Pekka Enberg penb...@kernel.org
  Cc: David Rientjes rient...@google.com
  Cc: Michal Marek mma...@suse.cz
  Cc: Randy Dunlap rdun...@infradead.org
  Cc: penb...@kernel.org
  Cc: levinsasha...@gmail.com
  Cc: mtosa...@redhat.com
  Cc: fengguang...@intel.com
  Cc: David Vrabel david.vra...@citrix.com
  Cc: Ian Campbell ian.campb...@citrix.com
  Cc: Konrad Rzeszutek Wilk konrad.w...@oracle.com
  Cc: xen-de...@lists.xenproject.org
  Reviewed-by: Josh Triplett j...@joshtriplett.org
  Signed-off-by: Luis R. Rodriguez mcg...@suse.com
  ---
   arch/x86/configs/xen.config |  7 +++
   kernel/configs/xen.config   | 30 ++
   scripts/kconfig/Makefile|  5 +
   3 files changed, 42 insertions(+)
   create mode 100644 arch/x86/configs/xen.config
   create mode 100644 kernel/configs/xen.config
  
  diff --git a/arch/x86/configs/xen.config b/arch/x86/configs/xen.config
  new file mode 100644
  index 000..92b8587f
  --- /dev/null
  +++ b/arch/x86/configs/xen.config
  @@ -0,0 +1,7 @@
  +# x86 xen specific config options
  +CONFIG_XEN_PVHVM=y
  +CONFIG_XEN_MAX_DOMAIN_MEMORY=500
  +CONFIG_XEN_SAVE_RESTORE=y
  +# CONFIG_XEN_DEBUG_FS is not set
  +CONFIG_XEN_PVH=y
  +CONFIG_XEN_MCE_LOG=y
  diff --git a/kernel/configs/xen.config b/kernel/configs/xen.config
  new file mode 100644
  index 000..d2ec010
  --- /dev/null
  +++ b/kernel/configs/xen.config
  @@ -0,0 +1,30 @@
  +# generic config
  +CONFIG_XEN=y
  +CONFIG_XEN_DOM0=y
  +CONFIG_PCI_XEN=y
 
 This shouldn't be here

If PCI is not supported on the arch this won't be selected as kconfig would not
allow for it, what would be the issue of keeping it here? What xen instances
would we not want to have this enabled for and can we instead manage that
through Kconfig magic by negating PCI_XEN for it?

  +CONFIG_XEN_PCIDEV_FRONTEND=m
  +CONFIG_XEN_BLKDEV_FRONTEND=m
  +CONFIG_XEN_BLKDEV_BACKEND=m
  +CONFIG_XEN_NETDEV_FRONTEND=m
  +CONFIG_XEN_NETDEV_BACKEND=m
  +CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
  +CONFIG_HVC_XEN=y
  +CONFIG_HVC_XEN_FRONTEND=y
  +CONFIG_TCG_XEN=m
 
 neither should this

OK!

  +CONFIG_XEN_WDT=m
  +CONFIG_XEN_FBDEV_FRONTEND=y
  +CONFIG_XEN_BALLOON=y
  +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
  +CONFIG_XEN_SCRUB_PAGES=y
  +CONFIG_XEN_DEV_EVTCHN=m
  +CONFIG_XEN_BACKEND=y
  +CONFIG_XENFS=m
  +CONFIG_XEN_COMPAT_XENFS=y
  +CONFIG_XEN_SYS_HYPERVISOR=y
  +CONFIG_XEN_XENBUS_FRONTEND=y
  +CONFIG_XEN_GNTDEV=m
  +CONFIG_XEN_GRANT_DEV_ALLOC=m
  +CONFIG_SWIOTLB_XEN=y
  +CONFIG_XEN_PCIDEV_BACKEND=m
  +CONFIG_XEN_PRIVCMD=m
  +CONFIG_XEN_ACPI_PROCESSOR=m
 
 and this

OK!

  Luis

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH v2 2/2] x86, arm, platform, xen, kconfig: add xen defconfig helper

2015-01-13 Thread Julien Grall
Hello Luis,

On 13/01/15 19:03, Luis R. Rodriguez wrote:
 diff --git a/kernel/configs/xen.config b/kernel/configs/xen.config
 new file mode 100644
 index 000..d2ec010
 --- /dev/null
 +++ b/kernel/configs/xen.config
 @@ -0,0 +1,30 @@
 +# generic config
 +CONFIG_XEN=y
 +CONFIG_XEN_DOM0=y
 +CONFIG_PCI_XEN=y
 +CONFIG_XEN_PCIDEV_FRONTEND=m
 +CONFIG_XEN_BLKDEV_FRONTEND=m
 +CONFIG_XEN_BLKDEV_BACKEND=m
 +CONFIG_XEN_NETDEV_FRONTEND=m
 +CONFIG_XEN_NETDEV_BACKEND=m
 +CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
 +CONFIG_HVC_XEN=y
 +CONFIG_HVC_XEN_FRONTEND=y
 +CONFIG_TCG_XEN=m
 +CONFIG_XEN_WDT=m
 +CONFIG_XEN_FBDEV_FRONTEND=y
 +CONFIG_XEN_BALLOON=y
 +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
 +CONFIG_XEN_SCRUB_PAGES=y
 +CONFIG_XEN_DEV_EVTCHN=m
 +CONFIG_XEN_BACKEND=y
 +CONFIG_XENFS=m
 +CONFIG_XEN_COMPAT_XENFS=y
 +CONFIG_XEN_SYS_HYPERVISOR=y
 +CONFIG_XEN_XENBUS_FRONTEND=y
 +CONFIG_XEN_GNTDEV=m
 +CONFIG_XEN_GRANT_DEV_ALLOC=m
 +CONFIG_SWIOTLB_XEN=y
 +CONFIG_XEN_PCIDEV_BACKEND=m
 +CONFIG_XEN_PRIVCMD=m
 +CONFIG_XEN_ACPI_PROCESSOR=m

 The common fragment config looks good for both ARM32 and ARM64:

 Acked-by: Julien Grall julien.gr...@linaro.org
 
 Can someone apply this? Who should this go through?

Stefano had some comments on this patch. See:

http://lists.xenproject.org/archives/html/xen-devel/2014-12/msg01531.html

Regards,

-- 
Julien Grall

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH v2 2/2] x86, arm, platform, xen, kconfig: add xen defconfig helper

2015-01-13 Thread Luis R. Rodriguez
On Tue, Jan 13, 2015 at 11:13 AM, Julien Grall julien.gr...@linaro.org wrote:
 Stefano had some comments on this patch. See:

 http://lists.xenproject.org/archives/html/xen-devel/2014-12/msg01531.html

I see now sorry about that, will address and respin.

 Luis

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] [PATCH v2 2/2] x86, arm, platform, xen, kconfig: add xen defconfig helper

2014-12-09 Thread Luis R. Rodriguez
From: Luis R. Rodriguez mcg...@suse.com

This lets you build a kernel which can support xen dom0
or xen guests by just using:

   make xenconfig

on both x86 and arm64 kernels. This also splits out the
options which are available currently to be built with x86
and 'make ARCH=arm64' under a shared config.

Technically xen supports a dom0 kernel and also a guest
kernel configuration but upon review with the xen team
since we don't have many dom0 options its best to just
combine these two into one.

Cc: Josh Triplett j...@joshtriplett.org
Cc: Borislav Petkov b...@suse.de
Cc: Pekka Enberg penb...@kernel.org
Cc: David Rientjes rient...@google.com
Cc: Michal Marek mma...@suse.cz
Cc: Randy Dunlap rdun...@infradead.org
Cc: penb...@kernel.org
Cc: levinsasha...@gmail.com
Cc: mtosa...@redhat.com
Cc: fengguang...@intel.com
Cc: David Vrabel david.vra...@citrix.com
Cc: Ian Campbell ian.campb...@citrix.com
Cc: Konrad Rzeszutek Wilk konrad.w...@oracle.com
Cc: xen-de...@lists.xenproject.org
Reviewed-by: Josh Triplett j...@joshtriplett.org
Signed-off-by: Luis R. Rodriguez mcg...@suse.com
---
 arch/x86/configs/xen.config |  7 +++
 kernel/configs/xen.config   | 30 ++
 scripts/kconfig/Makefile|  5 +
 3 files changed, 42 insertions(+)
 create mode 100644 arch/x86/configs/xen.config
 create mode 100644 kernel/configs/xen.config

diff --git a/arch/x86/configs/xen.config b/arch/x86/configs/xen.config
new file mode 100644
index 000..92b8587f
--- /dev/null
+++ b/arch/x86/configs/xen.config
@@ -0,0 +1,7 @@
+# x86 xen specific config options
+CONFIG_XEN_PVHVM=y
+CONFIG_XEN_MAX_DOMAIN_MEMORY=500
+CONFIG_XEN_SAVE_RESTORE=y
+# CONFIG_XEN_DEBUG_FS is not set
+CONFIG_XEN_PVH=y
+CONFIG_XEN_MCE_LOG=y
diff --git a/kernel/configs/xen.config b/kernel/configs/xen.config
new file mode 100644
index 000..d2ec010
--- /dev/null
+++ b/kernel/configs/xen.config
@@ -0,0 +1,30 @@
+# generic config
+CONFIG_XEN=y
+CONFIG_XEN_DOM0=y
+CONFIG_PCI_XEN=y
+CONFIG_XEN_PCIDEV_FRONTEND=m
+CONFIG_XEN_BLKDEV_FRONTEND=m
+CONFIG_XEN_BLKDEV_BACKEND=m
+CONFIG_XEN_NETDEV_FRONTEND=m
+CONFIG_XEN_NETDEV_BACKEND=m
+CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
+CONFIG_HVC_XEN=y
+CONFIG_HVC_XEN_FRONTEND=y
+CONFIG_TCG_XEN=m
+CONFIG_XEN_WDT=m
+CONFIG_XEN_FBDEV_FRONTEND=y
+CONFIG_XEN_BALLOON=y
+CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
+CONFIG_XEN_SCRUB_PAGES=y
+CONFIG_XEN_DEV_EVTCHN=m
+CONFIG_XEN_BACKEND=y
+CONFIG_XENFS=m
+CONFIG_XEN_COMPAT_XENFS=y
+CONFIG_XEN_SYS_HYPERVISOR=y
+CONFIG_XEN_XENBUS_FRONTEND=y
+CONFIG_XEN_GNTDEV=m
+CONFIG_XEN_GRANT_DEV_ALLOC=m
+CONFIG_SWIOTLB_XEN=y
+CONFIG_XEN_PCIDEV_BACKEND=m
+CONFIG_XEN_PRIVCMD=m
+CONFIG_XEN_ACPI_PROCESSOR=m
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index ff612b0..f4a8f89 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -117,6 +117,10 @@ PHONY += kvmconfig
 kvmconfig:
$(call mergeconfig,kvm_guest)
 
+PHONY += xenconfig
+xenconfig:
+   $(call mergeconfig,xen)
+
 PHONY += tinyconfig
 tinyconfig: allnoconfig
$(call mergeconfig,tiny)
@@ -142,6 +146,7 @@ help:
@echo  '  listnewconfig   - List new options'
@echo  '  olddefconfig- Same as silentoldconfig but sets new 
symbols to their default value'
@echo  '  kvmconfig   - Enable additional options for kvm guest 
kernel support'
+   @echo  '  xenconfig   - Enable additional options for xen dom0 and 
guest kernel support'
@echo  '  tinyconfig  - Configure the tiniest possible kernel'
 
 # lxdialog stuff
-- 
2.1.1


___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel