Re: [ELISA Development Process WG] [PATCH] mm: vmscan: provide a change to the development-process group

"Paoloni, Gabriele" <[email protected]> Thu, 17 Sep 2020 12:59:14 +0000
Newsgroups tech.elisa.lists.linux-safety
Message-ID <BY5PR11MB419520C95C248EFDB49A3DEA883E0@BY5PR11MB4195.namprd11.prod.outlook.com>
> -----Original Message-----
> From: [email protected] <development-
> [email protected]> On Behalf Of Lukas Bulwahn
> Sent: Thursday, September 17, 2020 10:44 AM
> To: [email protected]
> Cc: [email protected]; Lukas Bulwahn
> <[email protected]>
> Subject: [ELISA Development Process WG] [PATCH] mm: vmscan: provide a
> change to the development-process group
> 
> I think this change is needed for safety, whatever that might mean to you.
> 
> I am unqualified to really make a change here, as I have no clue what this
> code does, nor what my change does, but sure, the testing and verification
> reference process can now point out the required next steps in the
> reference process to test this code and code change.
> 
> Good luck :)
> 
> Not intended for distribution to the general kernel mailing lists.
> 
> Signed-off-by: Lukas Bulwahn <[email protected]>
> ---
> I would like to submit such a patch, what do I need to do according to
> the expected testing and verification recommendations for safety-related
> systems?

Probably the problem is not just limited to submitting patches, but I think it
is a good starting point.

> 
> Please help me. What do I need to compile, what test do I need to run,
> which verification tool do I need to employ for this change?

Right. I have tried to reformulate the problem as "ok I am looking at or I am
trying to change one or more code lines, so I would like to understand if such
code lines are tested today and how".
Right now if we had a s maintained structural coverage report we could tell
if the impacted code lines are covered and by which tests...I could not find it
so I guess that so far we are missing it....am I wrong?

As next step I went to look at the function wrapping the impacted code line
that in this case is kswapd. I could not find it tested in the Kunit framework.

As next steps then I would run the available tests in
https://elixir.bootlin.com/linux/latest/source/tools/testing/selftests
in conjunction with GCOV trying to figure out if that line is covered already
somehow.

There are probably smarter, better, faster ways to elaborate on this...so
here I just put down what I would do in order to figure this out...

Gab


> 
> Or even more basic: where would I even find that information?
> 
>  mm/vmscan.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/mm/vmscan.c b/mm/vmscan.c
> index 980155e257bf..aef8060efa8f 100644
> --- a/mm/vmscan.c
> +++ b/mm/vmscan.c
> @@ -3893,7 +3893,7 @@ static int kswapd(void *p)
>  					highest_zoneidx);
> 
>  		/* Read the new order and highest_zoneidx */
> -		alloc_order = reclaim_order = READ_ONCE(pgdat-
> >kswapd_order);
> +		alloc_order = READ_ONCE(pgdat->kswapd_order);
>  		highest_zoneidx = kswapd_highest_zoneidx(pgdat,
>  							highest_zoneidx);
>  		WRITE_ONCE(pgdat->kswapd_order, 0);
> --
> 2.17.1
> 
> 
> 
> 
> 

---------------------------------------------------------------------
INTEL CORPORATION ITALIA S.p.A. con unico socio
Sede: Milanofiori Palazzo E 4 
CAP 20094 Assago (MI)
Capitale Sociale Euro 104.000,00 interamente versato
Partita I.V.A. e Codice Fiscale  04236760155
Repertorio Economico Amministrativo n. 997124 
Registro delle Imprese di Milano nr. 183983/5281/33
Soggetta ad attivita' di direzione e coordinamento di 
INTEL CORPORATION, USA

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.