[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 for-4.19 0.5/13] xen: Introduce CONFIG_SELF_TESTS



On Tue, 2024-05-28 at 15:22 +0100, Andrew Cooper wrote:
> ... and move x86's stub_selftest() under this new option.
> 
> There is value in having these tests included in release builds too.
> 
> It will shortly be used to gate the bitops unit tests on all
> architectures.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Looks good to me.
We can consider it to be merged to 4.19:
Release-Acked-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>

~ Oleksii
> ---
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Roger Pau Monné <roger.pau@xxxxxxxxxx>
> CC: Wei Liu <wl@xxxxxxx>
> CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> CC: Julien Grall <julien@xxxxxxx>
> CC: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
> CC: Bertrand Marquis <bertrand.marquis@xxxxxxx>
> CC: Michal Orzel <michal.orzel@xxxxxxx>
> CC: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
> CC: Shawn Anastasio <sanastasio@xxxxxxxxxxxxxxxxxxxxx>
> CC: consulting@xxxxxxxxxxx <consulting@xxxxxxxxxxx>
> CC: Simone Ballarin <simone.ballarin@xxxxxxxxxxx>
> CC: Federico Serafini <federico.serafini@xxxxxxxxxxx>
> CC: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
> 
> v2.5:
>  * As suggested in "[PATCH v2 05/13] xen/bitops: Implement
> generic_f?sl() in
>  lib/"
> 
> I've gone with SELF_TESTS rather than BOOT_TESTS, because already in
> bitops
> we've got compile time tests (which aren't strictly boot time), and
> the
> livepatching testing wants to be included here and is definitely not
> boot
> time.
> ---
>  xen/Kconfig.debug      | 6 ++++++
>  xen/arch/x86/extable.c | 4 ++--
>  xen/arch/x86/setup.c   | 2 +-
>  3 files changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/Kconfig.debug b/xen/Kconfig.debug
> index 61b24ac552cd..07ff7eb7ba83 100644
> --- a/xen/Kconfig.debug
> +++ b/xen/Kconfig.debug
> @@ -29,6 +29,12 @@ config FRAME_POINTER
>         maybe slower, but it gives very useful debugging
> information
>         in case of any Xen bugs.
>  
> +config SELF_TESTS
> +     bool "Extra self-testing"
> +     default DEBUG
> +     help
> +       Enable extra unit and functional testing.
> +
>  config COVERAGE
>       bool "Code coverage support"
>       depends on !LIVEPATCH
> diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
> index 8415cd1fa249..705cf9eb94ca 100644
> --- a/xen/arch/x86/extable.c
> +++ b/xen/arch/x86/extable.c
> @@ -144,7 +144,7 @@ search_exception_table(const struct cpu_user_regs
> *regs, unsigned long *stub_ra)
>      return 0;
>  }
>  
> -#ifdef CONFIG_DEBUG
> +#ifdef CONFIG_SELF_TESTS
>  #include <asm/setup.h>
>  #include <asm/traps.h>
>  
> @@ -214,7 +214,7 @@ int __init cf_check stub_selftest(void)
>      return 0;
>  }
>  __initcall(stub_selftest);
> -#endif
> +#endif /* CONFIG_SELF_TESTS */
>  
>  unsigned long asmlinkage search_pre_exception_table(struct
> cpu_user_regs *regs)
>  {
> diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
> index b50c9c84af6d..dd51e68dbe5b 100644
> --- a/xen/arch/x86/setup.c
> +++ b/xen/arch/x86/setup.c
> @@ -742,7 +742,7 @@ static void noreturn init_done(void)
>      system_state = SYS_STATE_active;
>  
>      /* Re-run stub recovery self-tests with CET-SS active. */
> -    if ( IS_ENABLED(CONFIG_DEBUG) && cpu_has_xen_shstk )
> +    if ( IS_ENABLED(CONFIG_SELF_TESTS) && cpu_has_xen_shstk )
>          stub_selftest();
>  
>      domain_unpause_by_systemcontroller(dom0);
> 
> base-commit: 2d93f78bfe25f695d8ffb61d110da9df293ed71b




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.