[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHUa44Hh2Q06zu0TwvCejcc_0cqXeTVNA8fyt=1VH9uT7++1vg@mail.gmail.com>
Date: Fri, 11 Jun 2021 11:08:48 +0200
From: Jens Wiklander <jens.wiklander@...aro.org>
To: Tyler Hicks <tyhicks@...ux.microsoft.com>
Cc: Allen Pais <apais@...ux.microsoft.com>,
Sumit Garg <sumit.garg@...aro.org>,
Peter Huewe <peterhuewe@....de>,
Jarkko Sakkinen <jarkko@...nel.org>,
Jason Gunthorpe <jgg@...pe.ca>,
Vikas Gupta <vikas.gupta@...adcom.com>,
Thirupathaiah Annapureddy <thiruan@...rosoft.com>,
Pavel Tatashin <pasha.tatashin@...een.com>,
Rafał Miłecki <zajec5@...il.com>,
OP-TEE TrustedFirmware <op-tee@...ts.trustedfirmware.org>,
linux-integrity <linux-integrity@...r.kernel.org>,
bcm-kernel-feedback-list@...adcom.com, linux-mips@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v4 2/8] optee: Refuse to load the driver under the kdump kernel
On Thu, Jun 10, 2021 at 11:09 PM Tyler Hicks
<tyhicks@...ux.microsoft.com> wrote:
>
> Fix a hung task issue, seen when booting the kdump kernel, that is
> caused by all of the secure world threads being in a permanent suspended
> state:
>
> INFO: task swapper/0:1 blocked for more than 120 seconds.
> Not tainted 5.4.83 #1
> "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> swapper/0 D 0 1 0 0x00000028
> Call trace:
> __switch_to+0xc8/0x118
> __schedule+0x2e0/0x700
> schedule+0x38/0xb8
> schedule_timeout+0x258/0x388
> wait_for_completion+0x16c/0x4b8
> optee_cq_wait_for_completion+0x28/0xa8
> optee_disable_shm_cache+0xb8/0xf8
> optee_probe+0x560/0x61c
> platform_drv_probe+0x58/0xa8
> really_probe+0xe0/0x338
> driver_probe_device+0x5c/0xf0
> device_driver_attach+0x74/0x80
> __driver_attach+0x64/0xe0
> bus_for_each_dev+0x84/0xd8
> driver_attach+0x30/0x40
> bus_add_driver+0x188/0x1e8
> driver_register+0x64/0x110
> __platform_driver_register+0x54/0x60
> optee_driver_init+0x20/0x28
> do_one_initcall+0x54/0x24c
> kernel_init_freeable+0x1e8/0x2c0
> kernel_init+0x18/0x118
> ret_from_fork+0x10/0x18
>
> The invoke_fn hook returned OPTEE_SMC_RETURN_ETHREAD_LIMIT, indicating
> that the secure world threads were all in a suspended state at the time
> of the kernel crash. This intermittently prevented the kdump kernel from
> booting, resulting in a failure to collect the kernel dump.
>
> Make kernel dump collection more reliable on systems utilizing OP-TEE by
> refusing to load the driver under the kdump kernel.
>
> Signed-off-by: Tyler Hicks <tyhicks@...ux.microsoft.com>
> ---
> drivers/tee/optee/core.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
Looks good
Reviewed-by: Jens Wiklander <jens.wiklander@...aro.org>
Powered by blists - more mailing lists