<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/sh/mm, branch linux-2.6.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2006-10-10T09:33:10Z</updated>
<entry>
<title>sh: Zero-out coherent buffer in consistent_alloc().</title>
<updated>2006-10-10T09:33:10Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-10-10T09:33:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=833abf7fe011c3dfe9bcab405856b73deab17062'/>
<id>urn:sha1:833abf7fe011c3dfe9bcab405856b73deab17062</id>
<content type='text'>
Be sure to zero out the buffer, this was causing occasional problems
under heavier PCI tests.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: build fixes for defconfigs.</title>
<updated>2006-10-03T04:14:04Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-10-03T04:14:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=711fa8096863e4b50bb97f9ebc44606dc2182ac3'/>
<id>urn:sha1:711fa8096863e4b50bb97f9ebc44606dc2182ac3</id>
<content type='text'>
Get all of the defconfigs building again.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] pidspace: is_init()</title>
<updated>2006-09-29T16:18:12Z</updated>
<author>
<name>Sukadev Bhattiprolu</name>
</author>
<published>2006-09-29T09:00:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f400e198b2ed26ce55b22a1412ded0896e7516ac'/>
<id>urn:sha1:f400e198b2ed26ce55b22a1412ded0896e7516ac</id>
<content type='text'>
This is an updated version of Eric Biederman's is_init() patch.
(http://lkml.org/lkml/2006/2/6/280).  It applies cleanly to 2.6.18-rc3 and
replaces a few more instances of -&gt;pid == 1 with is_init().

Further, is_init() checks pid and thus removes dependency on Eric's other
patches for now.

Eric's original description:

	There are a lot of places in the kernel where we test for init
	because we give it special properties.  Most  significantly init
	must not die.  This results in code all over the kernel test
	-&gt;pid == 1.

	Introduce is_init to capture this case.

	With multiple pid spaces for all of the cases affected we are
	looking for only the first process on the system, not some other
	process that has pid == 1.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: Sukadev Bhattiprolu &lt;sukadev@us.ibm.com&gt;
Cc: Dave Hansen &lt;haveblue@us.ibm.com&gt;
Cc: Serge Hallyn &lt;serue@us.ibm.com&gt;
Cc: Cedric Le Goater &lt;clg@fr.ibm.com&gt;
Cc: &lt;lxc-devel@lists.sourceforge.net&gt;
Acked-by: Paul Mackerras &lt;paulus@samba.org&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] make PROT_WRITE imply PROT_READ</title>
<updated>2006-09-29T16:18:05Z</updated>
<author>
<name>Jason Baron</name>
</author>
<published>2006-09-29T08:58:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=df67b3daea602728b51325a4debaeeb912ee51d1'/>
<id>urn:sha1:df67b3daea602728b51325a4debaeeb912ee51d1</id>
<content type='text'>
Make PROT_WRITE imply PROT_READ for a number of architectures which don't
support write only in hardware.

While looking at this, I noticed that some architectures which do not
support write only mappings already take the exact same approach.  For
example, in arch/alpha/mm/fault.c:

"
        if (cause &lt; 0) {
                if (!(vma-&gt;vm_flags &amp; VM_EXEC))
                        goto bad_area;
        } else if (!cause) {
                /* Allow reads even for write-only mappings */
                if (!(vma-&gt;vm_flags &amp; (VM_READ | VM_WRITE)))
                        goto bad_area;
        } else {
                if (!(vma-&gt;vm_flags &amp; VM_WRITE))
                        goto bad_area;
        }
"

Thus, this patch brings other architectures which do not support write only
mappings in-line and consistent with the rest.  I've verified the patch on
ia64, x86_64 and x86.

Additional discussion:

Several architectures, including x86, can not support write-only mappings.
The pte for x86 reserves a single bit for protection and its two states are
read only or read/write.  Thus, write only is not supported in h/w.

Currently, if i 'mmap' a page write-only, the first read attempt on that page
creates a page fault and will SEGV.  That check is enforced in
arch/blah/mm/fault.c.  However, if i first write that page it will fault in
and the pte will be set to read/write.  Thus, any subsequent reads to the page
will succeed.  It is this inconsistency in behavior that this patch is
attempting to address.  Furthermore, if the page is swapped out, and then
brought back the first read will also cause a SEGV.  Thus, any arbitrary read
on a page can potentially result in a SEGV.

According to the SuSv3 spec, "if the application requests only PROT_WRITE, the
implementation may also allow read access." Also as mentioned, some
archtectures, such as alpha, shown above already take the approach that i am
suggesting.

The counter-argument to this raised by Arjan, is that the kernel is enforcing
the write only mapping the best it can given the h/w limitations.  This is
true, however Alan Cox, and myself would argue that the inconsitency in
behavior, that is applications can sometimes work/sometimes fails is highly
undesireable.  If you read through the thread, i think people, came to an
agreement on the last patch i posted, as nobody has objected to it...

Signed-off-by: Jason Baron &lt;jbaron@redhat.com&gt;
Cc: Russell King &lt;rmk@arm.linux.org.uk&gt;
Cc: "Luck, Tony" &lt;tony.luck@intel.com&gt;
Cc: Hugh Dickins &lt;hugh@veritas.com&gt;
Cc: Roman Zippel &lt;zippel@linux-m68k.org&gt;
Cc: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Acked-by: Andi Kleen &lt;ak@muc.de&gt;
Acked-by: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Cc: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Acked-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
Cc: Kazumoto Kojima &lt;kkojima@rr.iij4u.or.jp&gt;
Cc: Ian Molton &lt;spyro@f2s.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>sh: Fix occasional flush_cache_4096() stack corruption.</title>
<updated>2006-09-27T09:37:30Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-09-27T09:37:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=33573c0e3243aaa38b6ad96942de85a1b713c2ff'/>
<id>urn:sha1:33573c0e3243aaa38b6ad96942de85a1b713c2ff</id>
<content type='text'>
IRQs disabling in flush_cache_4096 for cache purge. Under certain
workloads we would get an IRQ in the middle of a purge operation,
and the cachelines would remain in an inconsistent state, leading
to occasional stack corruption.

Signed-off-by: Takeo Takahashi &lt;takahashi.takeo@renesas.com&gt;
Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: Initial vsyscall page support.</title>
<updated>2006-09-27T09:33:49Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-09-27T09:33:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=19f9a34f87c48bbd270d617d1c986d0c23866a1a'/>
<id>urn:sha1:19f9a34f87c48bbd270d617d1c986d0c23866a1a</id>
<content type='text'>
This implements initial support for the vsyscall page on SH.
At the moment we leave it configurable due to having nommu
to support from the same code base. We hook it up for the
signal trampoline return at present, with more to be added
later, once uClibc catches up.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: Selective flush_cache_mm() flushing.</title>
<updated>2006-09-27T09:30:07Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-09-27T09:30:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=28ccf7f91b1ac42ee1f18480a69d2a7486b625ce'/>
<id>urn:sha1:28ccf7f91b1ac42ee1f18480a69d2a7486b625ce</id>
<content type='text'>
flush_cache_mm() wraps in to flush_cache_all(), which is rather
excessive given that the number of PTEs within the specified context
are generally quite low.  Optimize for walking the mm's VMA list and
selectively flushing the VMA ranges from the dcache. Invalidate the
icache only if a VMA sets VM_EXEC.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: Enable /proc/kcore support.</title>
<updated>2006-09-27T09:20:58Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-09-27T09:20:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2cb7ce3bb384f30a377f66336c78546b834604df'/>
<id>urn:sha1:2cb7ce3bb384f30a377f66336c78546b834604df</id>
<content type='text'>
This was previously unimplemented..

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: Add support for cacheline poking through debugfs.</title>
<updated>2006-09-27T08:51:01Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-09-27T08:51:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=15f57a29a19ad0dbb468363cb617b06f71f6de92'/>
<id>urn:sha1:15f57a29a19ad0dbb468363cb617b06f71f6de92</id>
<content type='text'>
A simple debugging aid for easier visibility of the respective
cachelines.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: Add support for SH7706/SH7710/SH7343 CPUs.</title>
<updated>2006-09-27T08:38:11Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2006-09-27T08:38:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e5723e0eeb2dc16629e86d66785024ead9169000'/>
<id>urn:sha1:e5723e0eeb2dc16629e86d66785024ead9169000</id>
<content type='text'>
This adds support for the aforementioned CPU subtypes, and cleans
up some build issues encountered as a result.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
</feed>
