lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 11 Oct 2013 08:45:07 -0400
From:	Steven Rostedt <rostedt@...dmis.org>
To:	"George Spelvin" <linux@...izon.com>
Cc:	linux-kernel@...r.kernel.org, paulmck@...ux.vnet.ibm.com,
	peterz@...radead.org, srivatsa.bhat@...ux.vnet.ibm.com,
	torvalds@...ux-foundation.org
Subject: Re: [PATCH 0/6] Optimize the cpu hotplug locking -v2

On 11 Oct 2013 08:14:57 -0400
"George Spelvin" <linux@...izon.com> wrote:

> > There's places in the kernel that does for_each_cpu() that I'm sure you
> > don't want to disable preemption for. Especially when you start having
> > 4096 CPU machines!
> 
> Er... why not?
> 
> Seriously.  If I have 4096 processors, and preemption is disabled on
> *one* of them for a long time, can't an urgent task just find a different
> processor to preempt?

The problem is that the scheduler doesn't see that the current task has
preemption disabled. It only looks at the priorities of the current
task, and if it can preempt it, it will. It sets the NEED_RESCHED to the
current task and waits for the preemption to schedule it out.

If an RT task is woken on a CPU that's running a SCHED_OTHER task
that's doing this loop. It will have to wait for the loop to finish
before it can schedule in. After doing the wake up, the scheduling
algorithm is happy that it got an RT task on a CPU quickly, when in
reality it has to wait a long time till preemption is enabled again.

-- Steve



> 
> This seems like a non-problem.  Or am I misunderstanding something about
> processor affinity?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ