<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/include/linux/interrupt.h, branch linux-2.6.31.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.31.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.31.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2009-07-22T17:12:18Z</updated>
<entry>
<title>Merge branch 'core-fixes-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip</title>
<updated>2009-07-22T17:12:18Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2009-07-22T17:12:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=612e900c286a9535cc17da5171b0d8dcf8f3a12f'/>
<id>urn:sha1:612e900c286a9535cc17da5171b0d8dcf8f3a12f</id>
<content type='text'>
* 'core-fixes-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  softirq: introduce tasklet_hrtimer infrastructure
</content>
</entry>
<entry>
<title>softirq: introduce tasklet_hrtimer infrastructure</title>
<updated>2009-07-22T15:01:17Z</updated>
<author>
<name>Peter Zijlstra</name>
</author>
<published>2009-07-22T12:18:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9ba5f005c994ad28e266a0cd14ef29354be382c9'/>
<id>urn:sha1:9ba5f005c994ad28e266a0cd14ef29354be382c9</id>
<content type='text'>
commit ca109491f (hrtimer: removing all ur callback modes) moved all
hrtimer callbacks into hard interrupt context when high resolution
timers are active. That breaks code which relied on the assumption
that the callback happens in softirq context.

Provide a generic infrastructure which combines tasklets and hrtimers
together to provide an in-softirq hrtimer experience.

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: torvalds@linux-foundation.org
Cc: kaber@trash.net
Cc: David Miller &lt;davem@davemloft.net&gt;
LKML-Reference: &lt;1248265724.27058.1366.camel@twins&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>genirq: Delegate irq affinity setting to the irq thread</title>
<updated>2009-07-21T12:35:07Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2009-07-21T09:09:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=591d2fb02ea80472d846c0b8507007806bdd69cc'/>
<id>urn:sha1:591d2fb02ea80472d846c0b8507007806bdd69cc</id>
<content type='text'>
irq_set_thread_affinity() calls set_cpus_allowed_ptr() which might
sleep, but irq_set_thread_affinity() is called with desc-&gt;lock held
and can be called from hard interrupt context as well. The code has
another bug as it does not hold a ref on the task struct as required
by set_cpus_allowed_ptr().

Just set the IRQTF_AFFINITY bit in action-&gt;thread_flags. The next time
the thread runs it migrates itself. Solves all of the above problems
nicely.

Add kerneldoc to irq_set_thread_affinity() while at it.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
LKML-Reference: &lt;new-submission&gt;

</content>
</entry>
<entry>
<title>Merge commit 'linus/master' into HEAD</title>
<updated>2009-06-15T13:50:49Z</updated>
<author>
<name>Vegard Nossum</name>
</author>
<published>2009-06-15T13:50:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=722f2a6c87f34ee0fd0130a8cf45f81e0705594a'/>
<id>urn:sha1:722f2a6c87f34ee0fd0130a8cf45f81e0705594a</id>
<content type='text'>
Conflicts:
	MAINTAINERS

Signed-off-by: Vegard Nossum &lt;vegard.nossum@gmail.com&gt;
</content>
</entry>
<entry>
<title>tasklets: new tasklet scheduling function</title>
<updated>2009-06-13T08:02:24Z</updated>
<author>
<name>Vegard Nossum</name>
</author>
<published>2008-05-21T20:53:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7c692cbade8b8884f1c20500393bcc7cd6d24ef8'/>
<id>urn:sha1:7c692cbade8b8884f1c20500393bcc7cd6d24ef8</id>
<content type='text'>
Rationale: kmemcheck needs to be able to schedule a tasklet without
touching any dynamically allocated memory _at_ _all_ (since that would
lead to a recursive page fault). This tasklet is used for writing the
error reports to the kernel log.

The new scheduling function avoids touching any other tasklets by
inserting the new tasklist as the head of the "tasklet_hi" list instead
of on the tail.

Also don't wake up the softirq thread lest the scheduler access some
tracked memory and we go down with a recursive page fault.

In this case, we'd better just wait for the maximum time of 1/HZ for the
message to appear.

Signed-off-by: Vegard Nossum &lt;vegard.nossum@gmail.com&gt;
</content>
</entry>
<entry>
<title>PM: Add empty suspend/resume device irq functions</title>
<updated>2009-06-12T19:32:33Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2009-06-11T19:59:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5818a6e2519b34cd6d0220d89f5729ab2725e1bf'/>
<id>urn:sha1:5818a6e2519b34cd6d0220d89f5729ab2725e1bf</id>
<content type='text'>
git commit 0a0c5168 "PM: Introduce functions for suspending and resuming
device interrupts" introduced some helper functions. However these
functions are only available for architectures which support
GENERIC_HARDIRQS.

Other architectures will see this build error:

drivers/built-in.o: In function `sysdev_suspend':
(.text+0x15138): undefined reference to `check_wakeup_irqs'
drivers/built-in.o: In function `device_power_up':
(.text+0x1cb66): undefined reference to `resume_device_irqs'
drivers/built-in.o: In function `device_power_down':
(.text+0x1cb92): undefined reference to `suspend_device_irqs'

To fix this add some empty inline functions for !GENERIC_HARDIRQS.

Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
</content>
</entry>
<entry>
<title>x86/irq: change irq_desc_alloc() to take node instead of cpu</title>
<updated>2009-04-28T10:21:17Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2009-04-28T01:00:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=85ac16d033370caf6f48d743c8dc8103700f5cc5'/>
<id>urn:sha1:85ac16d033370caf6f48d743c8dc8103700f5cc5</id>
<content type='text'>
This simplifies the node awareness of the code. All our allocators
only deal with a NUMA node ID locality not with CPU ids anyway - so
there's no need to maintain (and transform) a CPU id all across the
IRq layer.

v2: keep move_irq_desc related

[ Impact: cleanup, prepare IRQ code to be NUMA-aware ]

Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Cc: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Cc: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
Cc: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Cc: Jeremy Fitzhardinge &lt;jeremy@goop.org&gt;
LKML-Reference: &lt;49F65536.2020300@kernel.org&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>Merge branch 'irq/threaded' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip</title>
<updated>2009-04-07T21:07:52Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2009-04-07T21:07:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c61b79b6ef266890954213a701d8f6021d8c1289'/>
<id>urn:sha1:c61b79b6ef266890954213a701d8f6021d8c1289</id>
<content type='text'>
* 'irq/threaded' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  genirq: fix devres.o build for GENERIC_HARDIRQS=n
  genirq: provide old request_irq() for CONFIG_GENERIC_HARDIRQ=n
  genirq: threaded irq handlers review fixups
  genirq: add support for threaded interrupts to devres
  genirq: add threaded interrupt handler support
</content>
</entry>
<entry>
<title>Merge branch 'locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip</title>
<updated>2009-04-06T20:37:30Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2009-04-06T20:37:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=609862be074cc20e007c640fd936ffe798b41abc'/>
<id>urn:sha1:609862be074cc20e007c640fd936ffe798b41abc</id>
<content type='text'>
* 'locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  lockdep: add stack dumps to asserts
  hrtimer: fix rq-&gt;lock inversion (again)
</content>
</entry>
<entry>
<title>Merge branch 'linus' into irq/threaded</title>
<updated>2009-04-05T23:41:22Z</updated>
<author>
<name>Ingo Molnar</name>
</author>
<published>2009-04-05T23:41:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95'/>
<id>urn:sha1:9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95</id>
<content type='text'>
Conflicts:
	include/linux/irq.h
	kernel/irq/handle.c
</content>
</entry>
</feed>
