<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/lguest, branch linux-2.6.25.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.25.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.25.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-03-30T21:20:23Z</updated>
<entry>
<title>misc __user misannotations (pointless casts to long)</title>
<updated>2008-03-30T21:20:23Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2008-03-29T03:08:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=74dbf719ed3c49687dab507967ebab9189e91ab0'/>
<id>urn:sha1:74dbf719ed3c49687dab507967ebab9189e91ab0</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>lguest: comment documentation update.</title>
<updated>2008-03-28T00:05:54Z</updated>
<author>
<name>Rusty Russell</name>
</author>
<published>2008-03-28T16:05:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a6bd8e13034dd7d60b6f14217096efa192d0adc1'/>
<id>urn:sha1:a6bd8e13034dd7d60b6f14217096efa192d0adc1</id>
<content type='text'>
Took some cycles to re-read the Lguest Journey end-to-end, fix some
rot and tighten some phrases.

Only comments change.  No new jokes, but a couple of recycled old jokes.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>lguest: Add puppies which where previously missing.</title>
<updated>2008-03-28T00:05:52Z</updated>
<author>
<name>Tim Ansell</name>
</author>
<published>2008-02-11T07:43:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b488f22d70f1c2451618b9991b9665d2c6b31e2b'/>
<id>urn:sha1:b488f22d70f1c2451618b9991b9665d2c6b31e2b</id>
<content type='text'>
lguest doesn't have features, it has puppies!

Signed-off-by: Timothy R Ansell &lt;mithro@mithis.com&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>lguest: Revert 1ce70c4fac3c3954bd48c035f448793867592bc0, fix real problem.</title>
<updated>2008-03-10T22:35:58Z</updated>
<author>
<name>Rusty Russell</name>
</author>
<published>2008-03-11T14:35:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4357bd9453b81e0a41db1dec16e06d74256b7560'/>
<id>urn:sha1:4357bd9453b81e0a41db1dec16e06d74256b7560</id>
<content type='text'>
Ahmed managed to crash the Host in release_pgd(), which cannot be a Guest
bug, and indeed it wasn't.

The bug was that handing a 0 as the address of the toplevel page table
being manipulated can cause the lookup code in find_pgdir() to return
an uninitialized cache entry (we shadow up to 4 top level page tables
for each Guest).

Commit 37cc8d7f963ba2deec29c9b68716944516a3244f introduced this
behaviour in the Guest, uncovering the bug.

The patch which he submitted (which removed the /4 from the index
calculation) simply ensured that these high-indexed entries hit the
early exit path of guest_set_pmd().  But you get lots of segfaults in
guest userspace as the PMDs aren't being updated.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>lguest: fix __get_vm_area usage.</title>
<updated>2008-03-10T22:35:56Z</updated>
<author>
<name>Rusty Russell</name>
</author>
<published>2008-03-11T14:35:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f14ae652baa3d72ae378f0c06b89cc2c4ef15ff8'/>
<id>urn:sha1:f14ae652baa3d72ae378f0c06b89cc2c4ef15ff8</id>
<content type='text'>
Robert Bragg's 5dc331852848a38ca00a2817e5b98a1d0561b116 tightened
(ie. fixed) the checking in __get_vm_area, and it broke lguest.

lguest should pass the exact "end" it wants, not some random constant
(it was possible previously that it would actually get an address
different from SWITCHER_ADDR).

Also, Fabio Checconi pointed out that we should make sure we're not
hitting the fixmap area.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Cc: Robert Bragg &lt;robert@sixbynine.org&gt;
</content>
</entry>
<entry>
<title>lguest: make sure cpu is initialized before accessing it</title>
<updated>2008-03-10T22:35:56Z</updated>
<author>
<name>Eugene Teo</name>
</author>
<published>2008-02-09T15:53:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f73d1e6ca6985b43a1871467463cba632fbc624d'/>
<id>urn:sha1:f73d1e6ca6985b43a1871467463cba632fbc624d</id>
<content type='text'>
If req is LHREQ_INITIALIZE, and the guest has been initialized before
(unlikely), it will attempt to access cpu-&gt;tsk even though cpu is not yet
initialized.

Signed-off-by: Eugene Teo &lt;eugeneteo@kernel.sg&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>lguest: accept guest _PAGE_PWT page table entries</title>
<updated>2008-02-09T22:24:09Z</updated>
<author>
<name>Ahmed S. Darwish</name>
</author>
<published>2008-02-09T22:24:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=31f4b46ec6f889533c06537dea96bb0d20fa625b'/>
<id>urn:sha1:31f4b46ec6f889533c06537dea96bb0d20fa625b</id>
<content type='text'>
Beginning from commit 4138cc3418f5, ioremap_nocache() sets the _PAGE_PWT
flag.

Lguest doesn't accept a guest pte with a _PWT flag and reports a "bad
page table entry" in that case.

Accept guest _PAGE_PWT page table entries.

Signed-off-by: Ahmed S. Darwish &lt;darwish.07@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>Fix container_of() usage</title>
<updated>2008-02-08T17:22:32Z</updated>
<author>
<name>Alexey Dobriyan</name>
</author>
<published>2008-02-08T12:20:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=25478445c4a39318acbe08ba8df7945766cbb5b5'/>
<id>urn:sha1:25478445c4a39318acbe08ba8df7945766cbb5b5</id>
<content type='text'>
Using "attr" twice is not OK, because it effectively prohibits such
container_of() on variables not named "attr".

Signed-off-by: Alexey Dobriyan &lt;adobriyan@sw.ru&gt;
Acked-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>virtio: reset function</title>
<updated>2008-02-04T12:50:03Z</updated>
<author>
<name>Rusty Russell</name>
</author>
<published>2008-02-05T04:50:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6e5aa7efb27aec7e55b6463fa2c8db594c4226fa'/>
<id>urn:sha1:6e5aa7efb27aec7e55b6463fa2c8db594c4226fa</id>
<content type='text'>
A reset function solves three problems:

1) It allows us to renegotiate features, eg. if we want to upgrade a
   guest driver without rebooting the guest.

2) It gives us a clean way of shutting down virtqueues: after a reset,
   we know that the buffers won't be used by the host, and

3) It helps the guest recover from messed-up drivers.

So we remove the -&gt;shutdown hook, and the only way we now remove
feature bits is via reset.

We leave it to the driver to do the reset before it deletes queues:
the balloon driver, for example, needs to chat to the host in its
remove function.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>virtio: explicit enable_cb/disable_cb rather than callback return.</title>
<updated>2008-02-04T12:49:58Z</updated>
<author>
<name>Rusty Russell</name>
</author>
<published>2008-02-05T04:49:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=18445c4d501b9ab4336f66ef46b092661ddaf336'/>
<id>urn:sha1:18445c4d501b9ab4336f66ef46b092661ddaf336</id>
<content type='text'>
It seems that virtio_net wants to disable callbacks (interrupts) before
calling netif_rx_schedule(), so we can't use the return value to do so.

Rename "restart" to "cb_enable" and introduce "cb_disable" hook: callback
now returns void, rather than a boolean.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
</feed>
