Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
On Tue, 12 Jun 2018, Julien Grall wrote: > > diff --git a/SUPPORT.md b/SUPPORT.md > > index 264b23f..e70f35c 100644 > > --- a/SUPPORT.md > > +++ b/SUPPORT.md > > @@ -16,6 +16,18 @@ for the definitions of the support status levels etc. > > # Feature Support > > +## Kconfig > > + > > +On x86, Kconfig options that depend on CONFIG_EXPERT are not security > > +supported. Other Kconfig options that do not depend on CONFIG_EXPERT are > > +supported, if the related features marked as supported in this document. > > + > > +On ARM, a wider range of Kconfig configurations is available to enable > > +very small lines of code counts in the hypervisor. Not all possible > > +combinations of kconfig options are security supported. Instead, a small > > +set of pre-canned configurations is supported, see xen/arch/arm/configs. > > I think we need to be more specific about CONFIG_EXPERT=y. This is still > something we don't want to security support on Arm. Agreed, I'll clarify. > Furthermore, tiny.config by default will select the platform "ALL" but most of > the user will tailor to a specific platform. That platform will select > drivers. By reading your statement, this new config will not be security > supported. Not sure if it is wanted. It was easier to explain when we actually had one config file per platform under xen/arch/arm/configs. I have rewritten the statement to make it clear that we support the platforms listed under xen/arch/arm/platforms/Kconfig and the precanned configurations under xen/arch/arm/configs. Let's see how it goes. > This also made me realize that in your tiny config you select NULL scheduler > which is still marked as experimental in the Kconfig. It feels strange that > you security support it in the tiny.config but not by default. Damn. The NULL scheduler is definitely required and it has been in the tree long enough. I'll add a separate patch for that. ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
On Wed, 13 Jun 2018, Jan Beulich wrote: > >>> On 12.06.18 at 21:53, wrote: > > On Tue, 12 Jun 2018, Jan Beulich wrote: > >> >> >> As a consequence of these changes, some options will become > >> >> >> user-visible > >> >> >> and not dependent on CONFIG_EXPERT. It does not mean that Xen Project > >> >> >> will security support all possible combinations of kconfig options. > >> >> >> Instead, there will be a small set of pre-canned configurations that > >> >> >> will be supported. See: > >> >> >> https://marc.info/?l=xen-devel=152424389512432 > >> >> > > >> >> > George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig > >> >> > changes? > >> >> > > >> >> > I am mostly thinking about the board support and the fact that more > >> >> > options on Arm are selectable by the users. > >> >> > >> >> I think that would be very desirable, yes. > >> > > >> > Do you want me to add a patch for that to this series, or should I do it > >> > separately? > >> > >> I think such a doc change should be right in a particular patch making > >> things user selectable. > > > > I have added the following to patch #5, the one introducing all the UART > > Kconfigs on ARM. I think it is the one introducing more new options. I > > removed Julien's ACK because of this change. Let me know if you think we > > need more details in SUPPORT.md. > > > > diff --git a/SUPPORT.md b/SUPPORT.md > > index 264b23f..e70f35c 100644 > > --- a/SUPPORT.md > > +++ b/SUPPORT.md > > @@ -16,6 +16,18 @@ for the definitions of the support status levels etc. > > > > # Feature Support > > > > +## Kconfig > > + > > +On x86, Kconfig options that depend on CONFIG_EXPERT are not security > > +supported. Other Kconfig options that do not depend on CONFIG_EXPERT are > > +supported, if the related features marked as supported in this document. > > ..., if the related features are marked ... > > > +On ARM, a wider range of Kconfig configurations is available to enable > > +very small lines of code counts in the hypervisor. Not all possible > > +combinations of kconfig options are security supported. Instead, a small > > +set of pre-canned configurations is supported, see xen/arch/arm/configs. > > Patch 5 does not add any EXPERT dependencies afaics, so this is at least > misleading. I think the EXPERT rule should apply generically, and perhaps be > introduced by (and discussed in the context of) a separate patch. I also > think DEBUG should be mentioned alongside EXPERT. > > The patch relaxing things for ARM would then add a relaxation paragraph > here. I'll do. Actually, for simplicity, I'll modify the SUPPORT statement for ARM in a separate independent patch (so I'll add two patches) for our convenience in reviewing and patch handling. We can easily merge patches at commit time, or in a follow-up patch series. ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
>>> On 12.06.18 at 21:53, wrote: > On Tue, 12 Jun 2018, Jan Beulich wrote: >> >> >> As a consequence of these changes, some options will become >> >> >> user-visible >> >> >> and not dependent on CONFIG_EXPERT. It does not mean that Xen Project >> >> >> will security support all possible combinations of kconfig options. >> >> >> Instead, there will be a small set of pre-canned configurations that >> >> >> will be supported. See: >> >> >> https://marc.info/?l=xen-devel=152424389512432 >> >> > >> >> > George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig >> >> > changes? >> >> > >> >> > I am mostly thinking about the board support and the fact that more >> >> > options on Arm are selectable by the users. >> >> >> >> I think that would be very desirable, yes. >> > >> > Do you want me to add a patch for that to this series, or should I do it >> > separately? >> >> I think such a doc change should be right in a particular patch making >> things user selectable. > > I have added the following to patch #5, the one introducing all the UART > Kconfigs on ARM. I think it is the one introducing more new options. I > removed Julien's ACK because of this change. Let me know if you think we > need more details in SUPPORT.md. > > diff --git a/SUPPORT.md b/SUPPORT.md > index 264b23f..e70f35c 100644 > --- a/SUPPORT.md > +++ b/SUPPORT.md > @@ -16,6 +16,18 @@ for the definitions of the support status levels etc. > > # Feature Support > > +## Kconfig > + > +On x86, Kconfig options that depend on CONFIG_EXPERT are not security > +supported. Other Kconfig options that do not depend on CONFIG_EXPERT are > +supported, if the related features marked as supported in this document. ..., if the related features are marked ... > +On ARM, a wider range of Kconfig configurations is available to enable > +very small lines of code counts in the hypervisor. Not all possible > +combinations of kconfig options are security supported. Instead, a small > +set of pre-canned configurations is supported, see xen/arch/arm/configs. Patch 5 does not add any EXPERT dependencies afaics, so this is at least misleading. I think the EXPERT rule should apply generically, and perhaps be introduced by (and discussed in the context of) a separate patch. I also think DEBUG should be mentioned alongside EXPERT. The patch relaxing things for ARM would then add a relaxation paragraph here. Jan ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
Hi Stefano, On 12/06/2018 20:53, Stefano Stabellini wrote: On Tue, 12 Jun 2018, Jan Beulich wrote: As a consequence of these changes, some options will become user-visible and not dependent on CONFIG_EXPERT. It does not mean that Xen Project will security support all possible combinations of kconfig options. Instead, there will be a small set of pre-canned configurations that will be supported. See: https://marc.info/?l=xen-devel=152424389512432 George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig changes? I am mostly thinking about the board support and the fact that more options on Arm are selectable by the users. I think that would be very desirable, yes. Do you want me to add a patch for that to this series, or should I do it separately? I think such a doc change should be right in a particular patch making things user selectable. I have added the following to patch #5, the one introducing all the UART Kconfigs on ARM. I think it is the one introducing more new options. I removed Julien's ACK because of this change. Let me know if you think we need more details in SUPPORT.md. diff --git a/SUPPORT.md b/SUPPORT.md index 264b23f..e70f35c 100644 --- a/SUPPORT.md +++ b/SUPPORT.md @@ -16,6 +16,18 @@ for the definitions of the support status levels etc. # Feature Support +## Kconfig + +On x86, Kconfig options that depend on CONFIG_EXPERT are not security +supported. Other Kconfig options that do not depend on CONFIG_EXPERT are +supported, if the related features marked as supported in this document. + +On ARM, a wider range of Kconfig configurations is available to enable +very small lines of code counts in the hypervisor. Not all possible +combinations of kconfig options are security supported. Instead, a small +set of pre-canned configurations is supported, see xen/arch/arm/configs. I think we need to be more specific about CONFIG_EXPERT=y. This is still something we don't want to security support on Arm. Furthermore, tiny.config by default will select the platform "ALL" but most of the user will tailor to a specific platform. That platform will select drivers. By reading your statement, this new config will not be security supported. Not sure if it is wanted. This also made me realize that in your tiny config you select NULL scheduler which is still marked as experimental in the Kconfig. It feels strange that you security support it in the tiny.config but not by default. Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
On Tue, 12 Jun 2018, Jan Beulich wrote: > >> >> As a consequence of these changes, some options will become user-visible > >> >> and not dependent on CONFIG_EXPERT. It does not mean that Xen Project > >> >> will security support all possible combinations of kconfig options. > >> >> Instead, there will be a small set of pre-canned configurations that > >> >> will be supported. See: > >> >> https://marc.info/?l=xen-devel=152424389512432 > >> > > >> > George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig > >> > changes? > >> > > >> > I am mostly thinking about the board support and the fact that more > >> > options on Arm are selectable by the users. > >> > >> I think that would be very desirable, yes. > > > > Do you want me to add a patch for that to this series, or should I do it > > separately? > > I think such a doc change should be right in a particular patch making > things user selectable. I have added the following to patch #5, the one introducing all the UART Kconfigs on ARM. I think it is the one introducing more new options. I removed Julien's ACK because of this change. Let me know if you think we need more details in SUPPORT.md. diff --git a/SUPPORT.md b/SUPPORT.md index 264b23f..e70f35c 100644 --- a/SUPPORT.md +++ b/SUPPORT.md @@ -16,6 +16,18 @@ for the definitions of the support status levels etc. # Feature Support +## Kconfig + +On x86, Kconfig options that depend on CONFIG_EXPERT are not security +supported. Other Kconfig options that do not depend on CONFIG_EXPERT are +supported, if the related features marked as supported in this document. + +On ARM, a wider range of Kconfig configurations is available to enable +very small lines of code counts in the hypervisor. Not all possible +combinations of kconfig options are security supported. Instead, a small +set of pre-canned configurations is supported, see xen/arch/arm/configs. + + ## Host Architecture ### x86-64 ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
>>> On 12.06.18 at 02:41, wrote: > On Wed, 6 Jun 2018, Jan Beulich wrote: >> >>> On 05.06.18 at 19:52, wrote: >> >> > >> > On 04/06/18 18:23, Stefano Stabellini wrote: >> >> Hi all, >> >> >> >> This patch series is the first step toward building a small certifiable >> >> Xen hypervisor for ARM boards. >> >> >> >> First, the series makes a few changes to allow disabling more kconfig >> >> options: most of them already exist but cannot be disabled. >> >> >> >> Then, it introduces a reference kconfig for Renesas RCar (due to popular >> >> demand, candidate for certifications), Xilinx MPSoC, and for QEMU >> >> aarch64 (not for certifications, but useful for debugging). >> >> >> >> The last patch in the series adds a convenient cloc target to count the >> >> total lines of code of the source files built. >> >> >> >> As a consequence of these changes, some options will become user-visible >> >> and not dependent on CONFIG_EXPERT. It does not mean that Xen Project >> >> will security support all possible combinations of kconfig options. >> >> Instead, there will be a small set of pre-canned configurations that >> >> will be supported. See: https://marc.info/?l=xen-devel=152424389512432 >> > >> > George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig >> > changes? >> > >> > I am mostly thinking about the board support and the fact that more >> > options on Arm are selectable by the users. >> >> I think that would be very desirable, yes. > > Do you want me to add a patch for that to this series, or should I do it > separately? I think such a doc change should be right in a particular patch making things user selectable. Jan ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
On Wed, 6 Jun 2018, Jan Beulich wrote: > >>> On 05.06.18 at 19:52, wrote: > > > > > On 04/06/18 18:23, Stefano Stabellini wrote: > >> Hi all, > >> > >> This patch series is the first step toward building a small certifiable > >> Xen hypervisor for ARM boards. > >> > >> First, the series makes a few changes to allow disabling more kconfig > >> options: most of them already exist but cannot be disabled. > >> > >> Then, it introduces a reference kconfig for Renesas RCar (due to popular > >> demand, candidate for certifications), Xilinx MPSoC, and for QEMU > >> aarch64 (not for certifications, but useful for debugging). > >> > >> The last patch in the series adds a convenient cloc target to count the > >> total lines of code of the source files built. > >> > >> As a consequence of these changes, some options will become user-visible > >> and not dependent on CONFIG_EXPERT. It does not mean that Xen Project > >> will security support all possible combinations of kconfig options. > >> Instead, there will be a small set of pre-canned configurations that > >> will be supported. See: https://marc.info/?l=xen-devel=152424389512432 > > > > George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig > > changes? > > > > I am mostly thinking about the board support and the fact that more > > options on Arm are selectable by the users. > > I think that would be very desirable, yes. Do you want me to add a patch for that to this series, or should I do it separately? ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
>>> On 05.06.18 at 19:52, wrote: > > On 04/06/18 18:23, Stefano Stabellini wrote: >> Hi all, >> >> This patch series is the first step toward building a small certifiable >> Xen hypervisor for ARM boards. >> >> First, the series makes a few changes to allow disabling more kconfig >> options: most of them already exist but cannot be disabled. >> >> Then, it introduces a reference kconfig for Renesas RCar (due to popular >> demand, candidate for certifications), Xilinx MPSoC, and for QEMU >> aarch64 (not for certifications, but useful for debugging). >> >> The last patch in the series adds a convenient cloc target to count the >> total lines of code of the source files built. >> >> As a consequence of these changes, some options will become user-visible >> and not dependent on CONFIG_EXPERT. It does not mean that Xen Project >> will security support all possible combinations of kconfig options. >> Instead, there will be a small set of pre-canned configurations that >> will be supported. See: https://marc.info/?l=xen-devel=152424389512432 > > George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig > changes? > > I am mostly thinking about the board support and the fact that more > options on Arm are selectable by the users. I think that would be very desirable, yes. Jan ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
On 04/06/18 18:23, Stefano Stabellini wrote: Hi all, Hi, This patch series is the first step toward building a small certifiable Xen hypervisor for ARM boards. First, the series makes a few changes to allow disabling more kconfig options: most of them already exist but cannot be disabled. Then, it introduces a reference kconfig for Renesas RCar (due to popular demand, candidate for certifications), Xilinx MPSoC, and for QEMU aarch64 (not for certifications, but useful for debugging). The last patch in the series adds a convenient cloc target to count the total lines of code of the source files built. As a consequence of these changes, some options will become user-visible and not dependent on CONFIG_EXPERT. It does not mean that Xen Project will security support all possible combinations of kconfig options. Instead, there will be a small set of pre-canned configurations that will be supported. See: https://marc.info/?l=xen-devel=152424389512432 Cheers, Stefano Stefano Stabellini (10): arm: remove the ARM HDLCD driver I have merged this patch in my next branch. I will wait the answer about SUPPORT.MD before merging the other acked patch. Cheers, arm: make it possible to disable HAS_GICV3 arm: rename HAS_GICV3 to GICV3 Make MEM_ACCESS configurable make it possible to enable/disable UART drivers arm: make it possible to disable the SMMU driver arm: add a tiny kconfig configuration arm: add ALL, QEMU, Rcar3 and MPSoC configs xen: add per-platform defaults for NR_CPUS xen: add cloc target tools/firmware/xen-dir/shim.config | 2 +- xen/Makefile | 12 ++ xen/arch/Kconfig | 4 + xen/arch/arm/Kconfig | 17 +- xen/arch/arm/Makefile| 4 +- xen/arch/arm/configs/tiny.conf | 43 + xen/arch/arm/platforms/Kconfig | 54 ++ xen/arch/arm/platforms/Makefile | 2 +- xen/arch/arm/platforms/vexpress.c| 35 xen/arch/arm/vgic.c | 2 +- xen/arch/arm/vgic/vgic.c | 2 +- xen/arch/x86/Kconfig | 2 +- xen/common/Kconfig | 10 +- xen/common/Makefile | 2 +- xen/common/domctl.c | 2 +- xen/drivers/char/Kconfig | 15 +- xen/drivers/passthrough/Kconfig | 12 ++ xen/drivers/passthrough/arm/Makefile | 2 +- xen/drivers/video/Kconfig| 3 - xen/drivers/video/Makefile | 1 - xen/drivers/video/arm_hdlcd.c| 281 --- xen/include/asm-arm/gic.h| 4 +- xen/include/asm-arm/platforms/vexpress.h | 6 - xen/include/asm-arm/vgic.h | 4 +- xen/include/xen/mem_access.h | 4 +- xen/include/xsm/dummy.h | 2 +- xen/include/xsm/xsm.h| 4 +- xen/xsm/dummy.c | 2 +- xen/xsm/flask/hooks.c| 4 +- 29 files changed, 175 insertions(+), 362 deletions(-) create mode 100644 xen/arch/arm/configs/tiny.conf create mode 100644 xen/arch/arm/platforms/Kconfig delete mode 100644 xen/drivers/video/arm_hdlcd.c -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
On 04/06/18 18:23, Stefano Stabellini wrote: Hi all, This patch series is the first step toward building a small certifiable Xen hypervisor for ARM boards. First, the series makes a few changes to allow disabling more kconfig options: most of them already exist but cannot be disabled. Then, it introduces a reference kconfig for Renesas RCar (due to popular demand, candidate for certifications), Xilinx MPSoC, and for QEMU aarch64 (not for certifications, but useful for debugging). The last patch in the series adds a convenient cloc target to count the total lines of code of the source files built. As a consequence of these changes, some options will become user-visible and not dependent on CONFIG_EXPERT. It does not mean that Xen Project will security support all possible combinations of kconfig options. Instead, there will be a small set of pre-canned configurations that will be supported. See: https://marc.info/?l=xen-devel=152424389512432 George, Ian, Jan, shall SUPPORT.MD be updated to reflect the Kconfig changes? I am mostly thinking about the board support and the fact that more options on Arm are selectable by the users. Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH v5 0/10] arm: more kconfig configurability and small default configs
Hi Stefano, On 06/04/2018 10:53 PM, Stefano Stabellini wrote: Hi all, This patch series is the first step toward building a small certifiable Xen hypervisor for ARM boards. How much code size can be reduced ? any ballpark figure First, the series makes a few changes to allow disabling more kconfig options: most of them already exist but cannot be disabled. Then, it introduces a reference kconfig for Renesas RCar (due to popular demand, candidate for certifications), Xilinx MPSoC, and for QEMU aarch64 (not for certifications, but useful for debugging). The last patch in the series adds a convenient cloc target to count the total lines of code of the source files built. As a consequence of these changes, some options will become user-visible and not dependent on CONFIG_EXPERT. It does not mean that Xen Project will security support all possible combinations of kconfig options. Instead, there will be a small set of pre-canned configurations that will be supported. See: https://marc.info/?l=xen-devel=152424389512432 Cheers, Stefano Stefano Stabellini (10): arm: remove the ARM HDLCD driver arm: make it possible to disable HAS_GICV3 arm: rename HAS_GICV3 to GICV3 Make MEM_ACCESS configurable make it possible to enable/disable UART drivers arm: make it possible to disable the SMMU driver arm: add a tiny kconfig configuration arm: add ALL, QEMU, Rcar3 and MPSoC configs xen: add per-platform defaults for NR_CPUS xen: add cloc target tools/firmware/xen-dir/shim.config | 2 +- xen/Makefile | 12 ++ xen/arch/Kconfig | 4 + xen/arch/arm/Kconfig | 17 +- xen/arch/arm/Makefile| 4 +- xen/arch/arm/configs/tiny.conf | 43 + xen/arch/arm/platforms/Kconfig | 54 ++ xen/arch/arm/platforms/Makefile | 2 +- xen/arch/arm/platforms/vexpress.c| 35 xen/arch/arm/vgic.c | 2 +- xen/arch/arm/vgic/vgic.c | 2 +- xen/arch/x86/Kconfig | 2 +- xen/common/Kconfig | 10 +- xen/common/Makefile | 2 +- xen/common/domctl.c | 2 +- xen/drivers/char/Kconfig | 15 +- xen/drivers/passthrough/Kconfig | 12 ++ xen/drivers/passthrough/arm/Makefile | 2 +- xen/drivers/video/Kconfig| 3 - xen/drivers/video/Makefile | 1 - xen/drivers/video/arm_hdlcd.c| 281 --- xen/include/asm-arm/gic.h| 4 +- xen/include/asm-arm/platforms/vexpress.h | 6 - xen/include/asm-arm/vgic.h | 4 +- xen/include/xen/mem_access.h | 4 +- xen/include/xsm/dummy.h | 2 +- xen/include/xsm/xsm.h| 4 +- xen/xsm/dummy.c | 2 +- xen/xsm/flask/hooks.c| 4 +- 29 files changed, 175 insertions(+), 362 deletions(-) create mode 100644 xen/arch/arm/configs/tiny.conf create mode 100644 xen/arch/arm/platforms/Kconfig delete mode 100644 xen/drivers/video/arm_hdlcd.c ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel