All of lore.kernel.org
 help / color / mirror / Atom feed
From: Changwoo Min <changwoo@igalia.com>
To: Andrea Righi <arighi@nvidia.com>
Cc: tj@kernel.org, void@manifault.com, kernel-dev@igalia.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] sched_ext: Replace rq_lock() to raw_spin_rq_lock() in scx_ops_bypass()
Date: Wed, 8 Jan 2025 17:10:36 +0900	[thread overview]
Message-ID: <ef2f2766-ffed-4a35-a5e7-366483d48167@igalia.com> (raw)
In-Reply-To: <Z34mVYyvwY5ipyiA@gpd3>

Hi Andrea,

Thank you for the review and suggestion!

On 25. 1. 8. 16:16, Andrea Righi wrote:
> Can we include the warning here? In this way people that are hitting the
> same warning can search for it and find this fix.
Sure. I will add the warning message.

> 
> Moreover, we can also add:
> 
> Fixes: 0e7ffff1b811 ("scx: Fix raciness in scx_ops_bypass()")
Will add this in the next version.

> Maybe we can also do this here since we're already holding the rq lock and
> irqs are disabled:
> 
> 		/* resched to restore ticks and idle state */
> 		if (cpu == smp_processor_id() || cpu_online(cpu))
> 			resched_curr(rq);
> 
>>   
>> -		rq_unlock(rq, &rf);
>> +		raw_spin_rq_unlock(rq);
>>   
> 
> And remove the following:
> 
>>   		/* resched to restore ticks and idle state */
>>   		resched_cpu(cpu);


This optimization makes sense. I will change it as suggested with
one minor change: I will flip the order in the if condition as
follows since cpu_online() is more commonly true:

  		/* resched to restore ticks and idle state */
  		if (cpu_online(cpu) || cpu == smp_processor_id())
  			resched_curr(rq);

Regards,
Changwoo Min


      reply	other threads:[~2025-01-08  8:10 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-08  2:55 [PATCH] sched_ext: Replace rq_lock() to raw_spin_rq_lock() in scx_ops_bypass() Changwoo Min
2025-01-08  7:16 ` Andrea Righi
2025-01-08  8:10   ` Changwoo Min [this message]

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=ef2f2766-ffed-4a35-a5e7-366483d48167@igalia.com \
    --to=changwoo@igalia.com \
    --cc=arighi@nvidia.com \
    --cc=kernel-dev@igalia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tj@kernel.org \
    --cc=void@manifault.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.