Thread (22 messages) 22 messages, 7 authors, 2014-11-25

Re: [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice

flat view

From: Rik van Riel <hidden>
Date: 2014-11-25 15:30:07
Also in: lkml

On 11/25/2014 09:52 AM, Khalid Aziz wrote:
On 11/24/2014 07:03 PM, Rik van Riel wrote:
quoted
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 11/24/2014 03:56 PM, Khalid Aziz wrote:
quoted
sched/fair: Add advisory flag for borrowing a timeslice

This patch adds a way for a task to request to borrow one
timeslice from future if it is about to be preempted, so it could
delay preemption and complete any critical task it is in the middle
of.

This feature helps with performance on databases and has been used
for many years on other OSs by the databases. This feature helps in
situation where a task acquires a lock before performing a critical
operation on the database and happens to get preempted
Why don't the other tasks that want the lock sleep on the
lock?

I can see this "solution" help mostly with userspace spinlocks,
which are relics of a past era that need to die. There is no
way userspace spinlocks will not fail miserably on virtual
machines, and it is time to get rid of them.
This solution indeed is for userspace spinlocks. Database code has been
written with all critical locking implemented in userspace (as I have
been told by database folks. I am not a database guy).
They should fix that.

The scheme you propose can really only work on bare metal,
and not on virtual machines. That improves the problem for,
what, 60% of new installs (and dropping)?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help