Re: [PATCH i-g-t] lib/igt_core.c : only disable low mem killer once

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

 



On 24 April 2015 at 14:43,  <tim.gore@xxxxxxxxx> wrote:
> From: Tim Gore <tim.gore@xxxxxxxxx>
>
> The call to low_mem_killer_disable(true) was being done
> from within function oom_adjust_for_doom. However,
> oom_adjust_for_doom gets called from 3 places. We only
> want the call to low_mem_killer_disable(true) to happen
> during common_init, so call it from here instead of from
> oom_adjust_for_doom.

I guess the reason you only want to call it once is because otherwise
restoring the previous values won't work?

I think low_mem_killer_disable needs some more protection against
being called unexpectedly. At the moment, it is always called from
common_exit_handler to restore the previous values, but when listing
subtests the initial call to low_mem_killer_disable is skipped, which
means the uninitialised value of prev_adj_scores will be written to
the sysfs file.


>
> Signed-off-by: Tim Gore <tim.gore@xxxxxxxxx>
> ---
>  lib/igt_core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/igt_core.c b/lib/igt_core.c
> index 7d04f2c..fec4893 100644
> --- a/lib/igt_core.c
> +++ b/lib/igt_core.c
> @@ -490,7 +490,6 @@ static void oom_adjust_for_doom(void)
>         igt_assert(write(fd, always_kill, sizeof(always_kill)) == sizeof(always_kill));
>         close(fd);
>
> -       low_mem_killer_disable(true);
>  }
>
>  static int common_init(int *argc, char **argv,
> @@ -653,6 +652,7 @@ out:
>                 print_version();
>
>                 oom_adjust_for_doom();
> +               low_mem_killer_disable(true);
>         }
>
>         /* install exit handler, to ensure we clean up */
> --
> 2.3.0
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux