<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/include/linux, branch v2.6.33-rt7</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=v2.6.33-rt7</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=v2.6.33-rt7'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2010-02-25T09:59:56+00:00</updated>
<entry>
<title>Merge branch 'linus' into rt/head</title>
<updated>2010-02-25T09:59:56+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-02-25T09:59:56+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=669d6ece85f7750c01803662c8d8d3db8f726361'/>
<id>urn:sha1:669d6ece85f7750c01803662c8d8d3db8f726361</id>
<content type='text'>
Conflicts:
	Makefile

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>perf_events: defer poll() wakeups to softirq</title>
<updated>2010-02-24T16:35:13+00:00</updated>
<author>
<name>Peter Zijlstra</name>
<email>peterz@infradead.org</email>
</author>
<published>2010-02-24T16:35:13+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=2e5f15f4c51efd5fdb1ea97380c38d3f8c32d3e9'/>
<id>urn:sha1:2e5f15f4c51efd5fdb1ea97380c38d3f8c32d3e9</id>
<content type='text'>
Use timer softirq for wakeups on preempt_rt

Normally pending work is work that cannot be done from NMI context, such
as wakeups and disabling the counter. The pending work is a single
linked list using atomic ops so that it functions from NMI context.

Normally this is called from IRQ context through use of an self-IPI
(x86) or upon enabling hard interrupts (powerpc). Architectures that do
not implement perf_event_set_pending() nor call
perf_event_do_pending() upon leaving NMI context will get a polling
fallback from the timer softirq.

However, in -rt we cannot do the wakeup from IRQ context because its a
wait_queue wakup, which can be O(n), so defer all wakeups to the softirq
fallback by creating a second pending list that's only processed from
there.

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>sched: Fix taskstates in sched_switch and proc</title>
<updated>2010-02-24T11:10:52+00:00</updated>
<author>
<name>Carsten Emde</name>
<email>C.Emde@osadl.org</email>
</author>
<published>2010-02-24T08:51:14+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=d740a0190499992ffc6fca56922b1771bdb77189'/>
<id>urn:sha1:d740a0190499992ffc6fca56922b1771bdb77189</id>
<content type='text'>
The sched_switch trace event displays erroneous character codes of task
states, after a new task state was added in the scheduler code but
omitted to add in the trace event code.

Define character codes of task states individually. In addition, define
task state descriptions needed in /proc at the same place. This will
help to keep the task state bits, characters and descriptions in sync
should they ever need to be changed again.

Signed-off-by: Carsten Emde &lt;C.Emde@osadl.org&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</content>
</entry>
<entry>
<title>tracing: Fix the merge fallout from 31-rt to 33</title>
<updated>2010-02-24T11:10:52+00:00</updated>
<author>
<name>Carsten Emde</name>
<email>C.Emde@osadl.org</email>
</author>
<published>2010-02-24T06:49:31+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=2022ce18f08a62593979bd3875111ee010b57d43'/>
<id>urn:sha1:2022ce18f08a62593979bd3875111ee010b57d43</id>
<content type='text'>
Apply upgrade changes from 2.6.31 to the histograms.

Signed-off-by: Carsten Emde &lt;C.Emde@osadl.org&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</content>
</entry>
<entry>
<title>rwsem: Make inner lock raw</title>
<updated>2010-02-24T11:10:52+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-02-24T08:54:54+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=a359d62fa46b9c41621fec1c3b31730cfc436b40'/>
<id>urn:sha1:a359d62fa46b9c41621fec1c3b31730cfc436b40</id>
<content type='text'>
There is no reason to convert the lock protecting rwsems (the
ownerless variant) to a sleeping spinlock on -rt. Convert it to raw.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>semaphore: Make inner lock raw</title>
<updated>2010-02-24T11:10:52+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-02-24T08:50:22+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=d0ce166dd4c76b1eb484aa68f1cddaafdeef9238'/>
<id>urn:sha1:d0ce166dd4c76b1eb484aa68f1cddaafdeef9238</id>
<content type='text'>
There is no reason to have the spin_lock protecting the semaphore
being converted to a sleeping spinlock in -rt. Convert it to a
raw_spinlock. That also solves lockdep complaining about the
rt_mutex.wait_lock being not initialized.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of ssh://master.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into rt/head</title>
<updated>2010-02-23T16:17:43+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-02-23T16:17:43+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=b704836bc778d69d2236e18aa7c10ae8ad78eb7d'/>
<id>urn:sha1:b704836bc778d69d2236e18aa7c10ae8ad78eb7d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>core: Revert the in_irq() in_softirq() modifications</title>
<updated>2010-02-23T16:16:29+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-02-23T14:03:02+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=db811b97dd11cd1aa6d751e7d02fa73dc7b2ad4b'/>
<id>urn:sha1:db811b97dd11cd1aa6d751e7d02fa73dc7b2ad4b</id>
<content type='text'>
RT added a check check for running in an interrupt handler thread or a
softirq thread to in_irq() and in_softirq().

Most of the users of these checks do not care, but RCU and perf_events
end up making wrong decisions. Especially the check in
rcu_read_unlock_special()

        /* Hardware IRQ handlers cannot block. */
        if (in_irq()) {
                local_irq_restore(flags);
                return;
        }

falls flat on his nose on -RT due to this.

Revert the changes and simply check for hardirq_count()
resp. softirq_count() as mainline does.

I checked all the users and the only dubious one is
dev_kfree_skb_any() but some hysteric research and talking to acme
makes me sure that it has no weird side effects.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>Revert "block: improve queue_should_plug() by looking at IO depths"</title>
<updated>2010-02-23T07:40:43+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2010-02-23T07:40:43+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=79da0644a8e0838522828f106e4049639eea6baf'/>
<id>urn:sha1:79da0644a8e0838522828f106e4049639eea6baf</id>
<content type='text'>
This reverts commit fb1e75389bd06fd5987e9cda1b4e0305c782f854.

"Benjamin S." &lt;sbenni@gmx.de&gt; reports that the patch in question
causes a big drop in sequential throughput for him, dropping from
200MB/sec down to only 70MB/sec.

Needs to be investigated more fully, for now lets just revert the
offending commit.

Conflicts:

	include/linux/blkdev.h

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>sched: Extend enqueue_task to allow head queueing</title>
<updated>2010-02-21T19:20:10+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-01-19T15:09:11+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=6640be50e8a2f9bd526beddafd23b49406a4af07'/>
<id>urn:sha1:6640be50e8a2f9bd526beddafd23b49406a4af07</id>
<content type='text'>
The ability of enqueueing a task to the head of a SCHED_FIFO priority
list is required to fix some violations of POSIX scheduling policy.

Extend the related functions with a "head" argument.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
</feed>
