From: "Dixit, Ashutosh" <ashutosh.dixit@intel.com>
To: Anshuman Gupta <anshuman.gupta@intel.com>
Cc: igt-dev@lists.freedesktop.org, badal.nilawar@intel.com
Subject: Re: [igt-dev] [PATCH i-g-t 1/2] lib/igt_aux: Disable console suspend for suspend test
Date: Wed, 21 Jun 2023 12:32:03 -0700 [thread overview]
Message-ID: <87ttv0sjbg.wl-ashutosh.dixit@intel.com> (raw)
In-Reply-To: <20230615083216.1861288-2-anshuman.gupta@intel.com>
On Thu, 15 Jun 2023 01:32:15 -0700, Anshuman Gupta wrote:
>
> We need no_console_suspend to be enable in order to dump the suspend
> logs over serial console before attempting the suspend during
> CI Execution.
> Therefore disable the console_suspend using printk module parameters
> while executing suspend test.
>
> v2:
> - Keep console_suspend restore only in exit handler. [Ashutosh]
> - Don't skip the test on open error, while opening printk parameters,
> instead print warning. [Kmail]
>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
> ---
> lib/igt_aux.c | 34 ++++++++++++++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
>
> diff --git a/lib/igt_aux.c b/lib/igt_aux.c
> index 672d7d4b0..425a1f911 100644
> --- a/lib/igt_aux.c
> +++ b/lib/igt_aux.c
> @@ -694,6 +694,10 @@ void igt_print_activity(void)
> }
>
> static int autoresume_delay;
> +bool __console_suspend_saved_state;
> +
> +#define SYSFS_MODULE_PRINTK "/sys/module/printk/parameters/"
> +#define CONSOLE_SUSPEND_DISABLE false
>
> static const char *suspend_state_name[] = {
> [SUSPEND_STATE_FREEZE] = "freeze",
> @@ -899,6 +903,35 @@ static bool is_mem_sleep_state_supported(int power_dir, enum igt_mem_sleep state
> return str;
> }
>
> +static void igt_aux_pm_suspend_dbg_restore_exit_handler(int sig)
> +{
> + int sysfs_fd;
> +
> + sysfs_fd = open(SYSFS_MODULE_PRINTK, O_RDONLY);
> +
> + if (sysfs_fd < 0)
^
Remove extra space ___|
> + return;
> +
> + igt_sysfs_set_boolean(sysfs_fd, "console_suspend", __console_suspend_saved_state);
> + close(sysfs_fd);
> +}
> +
> +static void igt_aux_enable_pm_suspend_dbg(void)
> +{
> + int sysfs_fd;
> +
> + sysfs_fd = open(SYSFS_MODULE_PRINTK, O_RDONLY);
> + if (sysfs_fd > 0) {
> + __console_suspend_saved_state = igt_sysfs_get_boolean(sysfs_fd, "console_suspend");
> + igt_sysfs_set_boolean(sysfs_fd, "console_suspend", CONSOLE_SUSPEND_DISABLE);
Check the return here too and igt_warn?
> + igt_install_exit_handler(igt_aux_pm_suspend_dbg_restore_exit_handler);
> + } else {
> + igt_warn("Unable to open printk parameters Err:%d\n", errno);
> + }
> +
> + close(sysfs_fd);
> +}
> +
> /**
> * igt_system_suspend_autoresume:
> * @state: an #igt_suspend_state, the target suspend state
> @@ -937,6 +970,7 @@ void igt_system_suspend_autoresume(enum igt_suspend_state state,
> "Suspend to disk requires swap space.\n");
>
> orig_test = get_suspend_test(power_dir);
> + igt_aux_enable_pm_suspend_dbg();
Another idea is to call this during IGT initialization itself, but since
IGT tests always suspend/resume via igt_system_suspend_autoresume, this is
fine. Therefore, after taking care of the couple of nits above this is:
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
>
> if (state == SUSPEND_STATE_S3) {
> orig_mem_sleep = get_mem_sleep();
> --
> 2.25.1
>
next prev parent reply other threads:[~2023-06-21 19:32 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-15 8:32 [igt-dev] [PATCH i-g-t 0/2] PM Suspend debug Anshuman Gupta
2023-06-15 8:32 ` [igt-dev] [PATCH i-g-t 1/2] lib/igt_aux: Disable console suspend for suspend test Anshuman Gupta
2023-06-21 11:40 ` Nilawar, Badal
2023-06-21 19:32 ` Dixit, Ashutosh [this message]
2023-06-15 8:32 ` [igt-dev] [PATCH i-g-t 2/2] lib/igt_aux: Enable PM Suspend dbg messages Anshuman Gupta
2023-06-15 14:20 ` Nilawar, Badal
2023-06-21 9:48 ` [igt-dev] [PATCH i-g-t v2 " Anshuman Gupta
2023-06-21 11:30 ` Nilawar, Badal
2023-06-15 9:36 ` [igt-dev] ✓ Fi.CI.BAT: success for PM Suspend debug Patchwork
2023-06-15 10:41 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-06-21 13:23 ` [igt-dev] ✓ Fi.CI.BAT: success for PM Suspend debug (rev2) Patchwork
2023-06-22 0:55 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ttv0sjbg.wl-ashutosh.dixit@intel.com \
--to=ashutosh.dixit@intel.com \
--cc=anshuman.gupta@intel.com \
--cc=badal.nilawar@intel.com \
--cc=igt-dev@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.