[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v6 2/2] kconfig: add xenconfig defconfig helper
Hi Luis, 2015-05-22 3:47 GMT+09:00 Luis R. Rodriguez <mcgrof@xxxxxxxx>: > On Thu, May 21, 2015 at 11:49:17PM +0900, Masahiro Yamada wrote: >> Hi, >> >> I am not familiar with xen at all, just some comments >> from the build system side. >> >> >> >> 2015-05-21 3:53 GMT+09:00 Luis R. Rodriguez <mcgrof@xxxxxxxxxxxxxxxx>: >> > From: "Luis R. Rodriguez" <mcgrof@xxxxxxxx> >> > >> > This lets you build a kernel which can support xen dom0 >> > or xen guests on i386, x86-64 and arm64 by just using: >> > >> > make xenconfig >> > >> > You can start from an allnoconfig and then switch to xenconfig. >> > 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. >> > >> > A few generic notes: we enable both of these: >> > >> > CONFIG_INET=y >> > CONFIG_BINFMT_ELF=y >> > >> > although technically not required given you likely will >> > end up with a pretty useless system otherwise. >> > >> > A few architectural differences worth noting: >> > >> > $ make allnoconfig; make xenconfig > /dev/null ; \ >> > grep XEN .config > 64-bit-config >> > $ make ARCH=i386 allnoconfig; make ARCH=i386 xenconfig > /dev/null; \ >> > grep XEN .config > 32-bit-config >> > $ make ARCH=arm64 allnoconfig; make ARCH=arm64 xenconfig > /dev/null; \ >> > grep XEN .config > arm64-config >> > >> > Since the options are already split up with a generic config and >> > architecture specific configs you anything on the x86 configs >> > are known to only work right now on x86. For instance arm64 doesn't >> > support MEMORY_HOTPLUG yet as such although we try to enabe it >> > generically arm64 doesn't have it yet, so we leave the xen >> > specific kconfig option XEN_BALLOON_MEMORY_HOTPLUG on x86's config >> > file to set expecations correctly. >> > >> > Then on x86 we have differences between i386 and x86-64. The difference >> > between 64-bit-config and 32-bit-config is you don't get XEN_MCE_LOG as >> > this is only supported on 64-bit. You also do not get on i386 >> > XEN_BALLOON_MEMORY_HOTPLUG, there does not seem to be any technical >> > reasons to not allow this but I gave up after a few attempts. >> > >> > Cc: Josh Triplett <josh@xxxxxxxxxxxxxxxx> >> > Cc: Borislav Petkov <bp@xxxxxxx> >> > Cc: Pekka Enberg <penberg@xxxxxxxxxx> >> > Cc: David Rientjes <rientjes@xxxxxxxxxx> >> > Cc: Michal Marek <mmarek@xxxxxxx> >> > Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >> > Cc: penberg@xxxxxxxxxx >> > Cc: levinsasha928@xxxxxxxxx >> > Cc: mtosatti@xxxxxxxxxx >> > Cc: fengguang.wu@xxxxxxxxx >> > Cc: David Vrabel <david.vrabel@xxxxxxxxxx> >> > Cc: Ian Campbell <Ian.Campbell@xxxxxxxxxx> >> > Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> >> > Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx >> > Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> >> > Acked-by: Julien Grall <julien.grall@xxxxxxxxxx> >> > Acked-by: Michal Marek <mmarek@xxxxxxx> >> > Acked-by: David Rientjes <rientjes@xxxxxxxxxx> >> > Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx> >> > Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx> >> > --- >> >> > diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile >> > index 6950032..f52abae 100644 >> > --- a/scripts/kconfig/Makefile >> > +++ b/scripts/kconfig/Makefile >> > @@ -115,6 +115,10 @@ PHONY += kvmconfig >> > kvmconfig: kvm_guest.config >> > @: >> > >> > +PHONY += xenconfig >> > +xenconfig: xen.config >> > + @: >> > + >> > PHONY += tinyconfig >> > tinyconfig: >> > $(Q)$(MAKE) -f $(srctree)/Makefile allnoconfig tiny.config >> >> >> "make xenconfig" is equivalent to "make xen.config" >> and only saves one character. >> >> Now we have only three targets for mergeconfig (tiny, kvm, xen), >> so it is OK to add this as an alias. >> But if we have more such targets, we might have >> to consider to use generic targets (*.config) at some point. > > I'm frankly terrified of all these config target options growing more and > the possible large collateral of patches to Kconfig files in the future. Since > this is a small specialized group now, I think we should treat it as such but > I think what you say has good merit long run. > > For now I'm more of a fan we limit what we stuff in here and if this explodes > then only have new options use the subject.config target. Thoughts? Sounds good to me. >> I do not intend to block this. >> Just take my comment with a grain of salt.. >> >> >> > @@ -140,6 +144,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 >> >> >> If kvmconfig and xenconfig are only available for x86, >> is it better to enclose those helps with >> ifeq ($(ARCH),x86) >> ... >> endif > > That's true if kvm was only for x86 but it is not, and likewise for xen. > OK, then. Thanks for explaining this. -- Best Regards Masahiro Yamada _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |