From: Mykyta Yatsenko <mykyta.yatsenko5@gmail.com>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: bot+bpf-ci@kernel.org, bpf@vger.kernel.org, ast@kernel.org,
andrii@kernel.org, daniel@iogearbox.net, kafai@meta.com,
kernel-team@meta.com, eddyz87@gmail.com, memxor@gmail.com,
yatsenko@meta.com, martin.lau@kernel.org,
yonghong.song@linux.dev, clm@meta.com, ihor.solodrai@linux.dev,
Tejun Heo <tj@kernel.org>,
Linux Crypto Mailing List <linux-crypto@vger.kernel.org>
Subject: Re: [PATCH] rhashtable: Use irq work for shrinking
Date: Thu, 4 Jun 2026 11:47:44 +0100 [thread overview]
Message-ID: <a56c9f94-e694-44cf-85ac-c4bcc8d18f70@gmail.com> (raw)
In-Reply-To: <aiDgUPXZUi-jnTdo@gondor.apana.org.au>
On 6/4/26 3:17 AM, Herbert Xu wrote:
> On Wed, Jun 03, 2026 at 02:08:25PM +0100, Mykyta Yatsenko wrote:
>>
>> For v7 I'm dropping automatic_shrinking, because it adds a risk of
>> calling schedule_work() on element deletion path (__rhashtable_remove_fast_one())
>> when hashtable size drops below 30% of the capacity.
>
> Now that expansion uses irq work I think shrinking should switch
> to that as well.
>
Makes sense, thanks, I'll include your patch below in this series then.
> ---8<---
> Use irq work for automatic shrinking so that this may be called
> in NMI context.
>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
>
> diff --git a/include/linux/rhashtable.h b/include/linux/rhashtable.h
> index ef5230cece36..0693bce6f890 100644
> --- a/include/linux/rhashtable.h
> +++ b/include/linux/rhashtable.h
> @@ -1117,7 +1117,7 @@ static __always_inline int __rhashtable_remove_fast_one(
> atomic_dec(&ht->nelems);
> if (unlikely(ht->p.automatic_shrinking &&
> rht_shrink_below_30(ht, tbl)))
> - schedule_work(&ht->run_work);
> + irq_work_queue(&ht->run_irq_work);
> err = 0;
> }
>
> Cheers,
next prev parent reply other threads:[~2026-06-04 10:47 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260602-rhash-v6-3-1bfd35a4184f@meta.com>
[not found] ` <4d811506109736528d816b6a1f613becd9460079ee7bfc67c509e67e7d2f44af@mail.kernel.org>
[not found] ` <3960ffc3-78f3-46da-baaf-ce72b6495698@gmail.com>
2026-06-04 2:17 ` [PATCH] rhashtable: Use irq work for shrinking Herbert Xu
2026-06-04 10:47 ` Mykyta Yatsenko [this message]
2026-06-05 15:10 ` patchwork-bot+netdevbpf
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=a56c9f94-e694-44cf-85ac-c4bcc8d18f70@gmail.com \
--to=mykyta.yatsenko5@gmail.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bot+bpf-ci@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=clm@meta.com \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=herbert@gondor.apana.org.au \
--cc=ihor.solodrai@linux.dev \
--cc=kafai@meta.com \
--cc=kernel-team@meta.com \
--cc=linux-crypto@vger.kernel.org \
--cc=martin.lau@kernel.org \
--cc=memxor@gmail.com \
--cc=tj@kernel.org \
--cc=yatsenko@meta.com \
--cc=yonghong.song@linux.dev \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox