All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: "Uladzislau Rezki (Sony)" <urezki@gmail.com>
Cc: LKML <linux-kernel@vger.kernel.org>, RCU <rcu@vger.kernel.org>,
	"Paul E . McKenney" <paulmck@kernel.org>,
	Michal Hocko <mhocko@suse.com>, Daniel Axtens <dja@axtens.net>,
	Frederic Weisbecker <frederic@kernel.org>,
	Neeraj Upadhyay <neeraju@codeaurora.org>,
	Joel Fernandes <joel@joelfernandes.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	"Theodore Y . Ts'o" <tytso@mit.edu>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Oleksiy Avramchenko <oleksiy.avramchenko@sonymobile.com>
Subject: Re: [PATCH v1 4/5] kvfree_rcu: Refactor kfree_rcu_monitor() function
Date: Sun, 9 May 2021 16:59:54 -0700	[thread overview]
Message-ID: <20210509165954.347dd3cd8e8815b9dce67cfb@linux-foundation.org> (raw)
In-Reply-To: <20210428134422.1894-4-urezki@gmail.com>

On Wed, 28 Apr 2021 15:44:21 +0200 "Uladzislau Rezki (Sony)" <urezki@gmail.com> wrote:

> Rearm the monitor work directly from its own function that
> is kfree_rcu_monitor(). So this patch puts the invocation
> timing control in one place.
>
> ...
>
> --- a/kernel/rcu/tree.c
> +++ b/kernel/rcu/tree.c
> @@ -3415,37 +3415,44 @@ static inline bool queue_kfree_rcu_work(struct kfree_rcu_cpu *krcp)
>  	return !repeat;
>  }
>  
> -static inline void kfree_rcu_drain_unlock(struct kfree_rcu_cpu *krcp,
> -					  unsigned long flags)
> +/*
> + * This function queues a new batch. If success or nothing to
> + * drain it returns 1. Otherwise 0 is returned indicating that
> + * a reclaim kthread has not processed a previous batch.
> + */
> +static inline int kfree_rcu_drain(struct kfree_rcu_cpu *krcp)
>  {
> +	unsigned long flags;
> +	int ret;
> +
> +	raw_spin_lock_irqsave(&krcp->lock, flags);
> +
>  	// Attempt to start a new batch.
> -	if (queue_kfree_rcu_work(krcp)) {
> +	ret = queue_kfree_rcu_work(krcp);

This code has changed slightly in mainline.  Can you please redo,
retest and resend?

> +	if (ret)
>  		// Success! Our job is done here.
>  		krcp->monitor_todo = false;
> -		raw_spin_unlock_irqrestore(&krcp->lock, flags);
> -		return;
> -	}

It's conventional to retain the braces here, otherwise the code looks
weird.  Unless you're a python programmer ;)



  parent reply	other threads:[~2021-05-09 23:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-28 13:44 [PATCH v1 1/5] mm/vmalloc.c: Introduce vfree_bulk() interface Uladzislau Rezki (Sony)
2021-04-28 13:44 ` [PATCH v1 2/5] kvfree_rcu: Switch to vfree_bulk() in kfree_rcu_work() Uladzislau Rezki (Sony)
2021-04-28 13:44 ` [PATCH v1 3/5] kvfree_rcu: Rename rcu_invoke_kfree_bulk_callback Uladzislau Rezki (Sony)
2021-04-28 13:44 ` [PATCH v1 4/5] kvfree_rcu: Refactor kfree_rcu_monitor() function Uladzislau Rezki (Sony)
2021-05-03 18:12   ` Uladzislau Rezki
2021-05-03 22:52     ` Paul E. McKenney
2021-05-04 13:46       ` Uladzislau Rezki
2021-05-09 23:59   ` Andrew Morton [this message]
2021-05-10 10:09     ` Uladzislau Rezki
2021-05-10 14:01       ` Paul E. McKenney
2021-05-10 14:20         ` Uladzislau Rezki
2021-04-28 13:44 ` [PATCH v1 5/5] kvfree_rcu: Fix comments according to current code Uladzislau Rezki (Sony)
2021-05-03 16:47   ` Paul E. McKenney
2021-05-03 19:34     ` Uladzislau Rezki

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=20210509165954.347dd3cd8e8815b9dce67cfb@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=bigeasy@linutronix.de \
    --cc=dja@axtens.net \
    --cc=frederic@kernel.org \
    --cc=joel@joelfernandes.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhocko@suse.com \
    --cc=neeraju@codeaurora.org \
    --cc=oleksiy.avramchenko@sonymobile.com \
    --cc=paulmck@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rcu@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=tytso@mit.edu \
    --cc=urezki@gmail.com \
    /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.