<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pm24.git/include/asm-parisc, branch v2.6.15</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.kobert.dev/pm24.git/atom?h=v2.6.15</id>
<link rel='self' href='https://git.kobert.dev/pm24.git/atom?h=v2.6.15'/>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/'/>
<updated>2005-11-17T21:44:14Z</updated>
<entry>
<title>[PARISC] Always spinlock tlb flush operations to ensure preempt safety</title>
<updated>2005-11-17T21:44:14Z</updated>
<author>
<name>Matthew Wilcox</name>
<email>willy@parisc-linux.org</email>
</author>
<published>2005-11-17T21:44:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=29a622dd2b577d98731d325954f328b810826cfa'/>
<id>urn:sha1:29a622dd2b577d98731d325954f328b810826cfa</id>
<content type='text'>
Since taking a spinlock disables preempt, and we need to spinlock tlb flush
on SMP for N class, we might as well just spinlock on uniprocessor machines
too.

Signed-off-by: Matthew Wilcox &lt;willy@parisc-linux.org&gt;
Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
<entry>
<title>[PARISC] Fix our spinlock implementation</title>
<updated>2005-11-17T21:35:09Z</updated>
<author>
<name>James Bottomley</name>
<email>jejb@parisc-linux.org</email>
</author>
<published>2005-11-17T21:35:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=08dc2ca61e683e9119ff534dfcd0fd555401fcf7'/>
<id>urn:sha1:08dc2ca61e683e9119ff534dfcd0fd555401fcf7</id>
<content type='text'>
We actually have two separate bad bugs

1. The read_lock implementation spins with disabled interrupts.  This is
completely wrong
2. Our spin_lock_irqsave should check to see if interrupts were enabled
before the call and re-enable interrupts around the inner spin loop.

The problem is that if we spin with interrupts off, we can't receive
IPIs. This has resulted in a bug where SMP machines suddenly spit
smp_call_function timeout messages and hang.

The scenario I've caught is

CPU0 does a flush_tlb_all holding the vmlist_lock for write.
CPU1 tries a cat of /proc/meminfo which tries to acquire vmlist_lock for
     read
CPU1 is now spinning with interrupts disabled
CPU0 tries to execute a smp_call_function to flush the local tlb caches

This is now a deadlock because CPU1 is spinning with interrupts disabled
and can never receive the IPI

Signed-off-by: James Bottomley &lt;jejb@parisc-linux.org&gt;
Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
<entry>
<title>[PARISC] Add IRQ affinities</title>
<updated>2005-11-17T21:28:37Z</updated>
<author>
<name>James Bottomley</name>
<email>jejb@parisc-linux.org</email>
</author>
<published>2005-11-17T21:28:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=c2ab64d09815cc4d48347ee3679658f197455a2a'/>
<id>urn:sha1:c2ab64d09815cc4d48347ee3679658f197455a2a</id>
<content type='text'>
This really only adds them for the machines I can check SMP on, which
is CPU interrupts and IOSAPIC (so not any of the GSC based machines).

With this patch, irqbalanced can be used to maintain irq balancing.
Unfortunately, irqbalanced is a bit x86 centric, so it doesn't do an
incredibly good job, but it does work.

Signed-off-by: James Bottomley &lt;jejb@parisc-linux.org&gt;
Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
<entry>
<title>[PARISC] Fix uniprocessor build by dummying smp_send_all_nop()</title>
<updated>2005-11-17T21:27:44Z</updated>
<author>
<name>Kyle McMartin</name>
<email>kyle@parisc-linux.org</email>
</author>
<published>2005-11-17T21:27:44Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=1d4c452a85503cdb4bca5925cf698b61d3aa43a0'/>
<id>urn:sha1:1d4c452a85503cdb4bca5925cf698b61d3aa43a0</id>
<content type='text'>
Since irq.c uses smp_send_all_nop, we must define it for UP builds
as well. Make it a static inline so it gets optimized away. This forces
irq.c to include &lt;asm/smp.h&gt; though.

Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
<entry>
<title>[PARISC] Fix our interrupts not to use smp_call_function</title>
<updated>2005-11-17T21:27:02Z</updated>
<author>
<name>James Bottomley</name>
<email>jejb@parisc-linux.org</email>
</author>
<published>2005-11-17T21:27:02Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=d911aed8adf74e1fae88d082b8474b2175b7f1da'/>
<id>urn:sha1:d911aed8adf74e1fae88d082b8474b2175b7f1da</id>
<content type='text'>
Fix our interrupts not to use smp_call_function

On K and D class smp, the generic code calls this under an irq
spinlock, which causes the WARN_ON() message in smp_call_function()
(and is also illegal because it could deadlock).

The fix is to use a new scheme based on the IPI_NOP.

Signed-off-by: James Bottomley &lt;jejb@parisc-linux.org&gt;
Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] atomic: inc_not_zero</title>
<updated>2005-11-14T02:14:16Z</updated>
<author>
<name>Nick Piggin</name>
<email>nickpiggin@yahoo.com.au</email>
</author>
<published>2005-11-14T00:07:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=8426e1f6af0fd7f44d040af7263750c5a52f3cc3'/>
<id>urn:sha1:8426e1f6af0fd7f44d040af7263750c5a52f3cc3</id>
<content type='text'>
Introduce an atomic_inc_not_zero operation.  Make this a special case of
atomic_add_unless because lockless pagecache actually wants
atomic_inc_not_negativeone due to its offset refcount.

Signed-off-by: Nick Piggin &lt;npiggin@suse.de&gt;
Cc: "Paul E. McKenney" &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] atomic: cmpxchg</title>
<updated>2005-11-14T02:14:16Z</updated>
<author>
<name>Nick Piggin</name>
<email>nickpiggin@yahoo.com.au</email>
</author>
<published>2005-11-14T00:07:24Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=4a6dae6d382e9edf3ff440b819e554ed706359bc'/>
<id>urn:sha1:4a6dae6d382e9edf3ff440b819e554ed706359bc</id>
<content type='text'>
Introduce an atomic_cmpxchg operation.

Signed-off-by: Nick Piggin &lt;npiggin@suse.de&gt;
Cc: "Paul E. McKenney" &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fix remaining missing includes</title>
<updated>2005-11-07T15:53:41Z</updated>
<author>
<name>Tim Schmielau</name>
<email>tim@physik3.uni-rostock.de</email>
</author>
<published>2005-11-07T08:59:43Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=8c65b4a60450590e79a28e9717ceffa9e4debb3f'/>
<id>urn:sha1:8c65b4a60450590e79a28e9717ceffa9e4debb3f</id>
<content type='text'>
Fix more include file problems that surfaced since I submitted the previous
fix-missing-includes.patch.  This should now allow not to include sched.h
from module.h, which is done by a followup patch.

Signed-off-by: Tim Schmielau &lt;tim@physik3.uni-rostock.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] semaphore: Remove __MUTEX_INITIALIZER()</title>
<updated>2005-10-31T01:37:27Z</updated>
<author>
<name>Arthur Othieno</name>
<email>a.othieno@bluewin.ch</email>
</author>
<published>2005-10-30T23:03:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=727a53bd535fe3bde644ac346db27456ad964083'/>
<id>urn:sha1:727a53bd535fe3bde644ac346db27456ad964083</id>
<content type='text'>
__MUTEX_INITIALIZER() has no users, and equates to the more commonly used
DECLARE_MUTEX(), thus making it pretty much redundant.  Remove it for good.

Signed-off-by: Arthur Othieno &lt;a.othieno@bluewin.ch&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] adjust parisc sys_ptrace prototype</title>
<updated>2005-10-31T01:37:20Z</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2005-10-30T23:02:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=7024a9b884ed7657fb873e655cd124d85ae792a4'/>
<id>urn:sha1:7024a9b884ed7657fb873e655cd124d85ae792a4</id>
<content type='text'>
Make the pid argument a long as on every other arcihtecture.  Despite pid_t
beeing a 32bit type even on 64bit parisc this is not an ABI change due to
the parisc calling conventions.  And even if it did it wouldn't matter too
much because 64bit userspace on parisc is in an embrionic stage.

Acked-by: Matthew Wilcox &lt;matthew@wil.cx&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
