2024-04-30 12:14:52

by Wolfram Sang

[permalink] [raw]
Subject: [PATCH 0/1] crypto: use 'time_left' instead of 'timeout' with wait_for_*() functions

There is a confusing pattern in the kernel to use a variable named 'timeout' to
store the result of wait_for_*() functions causing patterns like:

timeout = wait_for_completion_timeout(...)
if (!timeout) return -ETIMEDOUT;

with all kinds of permutations. Use 'time_left' as a variable to make the code
obvious and self explaining.

This is part of a tree-wide series. The rest of the patches can be found here
(some parts may still be WIP):

git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/time_left

Because these patches are generated, I audit them before sending. This is why I
will send series step by step. Build bot is happy with these patches, though.
No functional changes intended.

Wolfram Sang (1):
crypto: api: use 'time_left' variable with
wait_for_completion_killable_timeout()

crypto/api.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

--
2.43.0



2024-04-30 12:14:57

by Wolfram Sang

[permalink] [raw]
Subject: [PATCH 1/1] crypto: api - use 'time_left' variable with wait_for_completion_killable_timeout()

There is a confusing pattern in the kernel to use a variable named 'timeout' to
store the result of wait_for_completion_killable_timeout() causing patterns like:

timeout = wait_for_completion_killable_timeout(...)
if (!timeout) return -ETIMEDOUT;

with all kinds of permutations. Use 'time_left' as a variable to make the code
self explaining.

Signed-off-by: Wolfram Sang <[email protected]>
---
crypto/api.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/crypto/api.c b/crypto/api.c
index 7f402107f0cc..6aa5a3b4ed5e 100644
--- a/crypto/api.c
+++ b/crypto/api.c
@@ -202,18 +202,18 @@ static void crypto_start_test(struct crypto_larval *larval)
static struct crypto_alg *crypto_larval_wait(struct crypto_alg *alg)
{
struct crypto_larval *larval = (void *)alg;
- long timeout;
+ long time_left;

if (!crypto_boot_test_finished())
crypto_start_test(larval);

- timeout = wait_for_completion_killable_timeout(
+ time_left = wait_for_completion_killable_timeout(
&larval->completion, 60 * HZ);

alg = larval->adult;
- if (timeout < 0)
+ if (time_left < 0)
alg = ERR_PTR(-EINTR);
- else if (!timeout)
+ else if (!time_left)
alg = ERR_PTR(-ETIMEDOUT);
else if (!alg)
alg = ERR_PTR(-ENOENT);
--
2.43.0


2024-04-30 17:08:15

by Eric Biggers

[permalink] [raw]
Subject: Re: [PATCH 0/1] crypto: use 'time_left' instead of 'timeout' with wait_for_*() functions

On Tue, Apr 30, 2024 at 02:14:41PM +0200, Wolfram Sang wrote:
> [PATCH 0/1] crypto: use 'time_left' instead of 'timeout' with wait_for_*() functions

1-patch series should not have a cover letter. Just include the details in the
patch itself.

> There is a confusing pattern in the kernel to use a variable named 'timeout' to
> store the result of wait_for_*() functions causing patterns like:
>
> timeout = wait_for_completion_timeout(...)
> if (!timeout) return -ETIMEDOUT;
>
> with all kinds of permutations. Use 'time_left' as a variable to make the code
> obvious and self explaining.

I would understand it to be the remaining timeout, so I'm not sure the existing
name is really that bad. But I agree that time_left is clearer.

- Eric