Re: [PULL] module and param

From: Rusty Russell
Date: Wed Oct 26 2011 - 21:44:03 EST

On Wed, 26 Oct 2011 14:45:48 +0200, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Wed, Oct 26, 2011 at 4:43 AM, Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
> > Â+ 694136c...b1e4d20 master -> master (forced update)
> > Â* [new tag] Â Â Â Â rusty@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -> rusty@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> That tag doesn't have any signature on it at all, it's just a plain
> unsigned tag (ie just points to the commit) and thus useless.

Weird, my script seems to work now. If not please complain and I'll
find a git expert: I have virtio patches after this, and final module

The following changes since commit 138c4ae9cfda8fdcf9e137457853b09ef8cf8f77:

Merge branch 'slab/for-linus' of git:// (2011-10-26 21:46:18 +0200)

are available in the git repository at:

git:// master

Michal Hocko (1):
lguest: move process freezing before pending signals check

Rusty Russell (2):
lguest: Allow running under paravirt-enabled KVM.
lguest: don't allow KVM-detection cpuid.

arch/x86/lguest/boot.c | 10 ++++++++++
drivers/lguest/core.c | 16 ++++++++--------
2 files changed, 18 insertions(+), 8 deletions(-)

rusty@rusty-x201:~/devel/kernel/linux (master)$ git show rusty@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | cat
tag rusty@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Tagger: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
Date: Thu Oct 27 10:56:18 2011 +1030

Autogenerated GPG tag for Rusty D1ADB8F1: 15EE 8D6C AB0E 7F0C F999 BFCB D920 0E6C D1AD B8F1
Version: GnuPG v1.4.11 (GNU/Linux)


commit 0acf00014bcfd71090c3b0d43c98e970108064e4
Author: Michal Hocko <mhocko@xxxxxxx>
Date: Tue Sep 27 08:56:03 2011 +0200

lguest: move process freezing before pending signals check

run_guest tries to freeze the current process after it has handled
pending interrupts and before it calls lguest_arch_run_guest.
This doesn't work nicely if the task has been killed while being frozen
and when we want to handle that signal as soon as possible.
Let's move try_to_freeze before we check for pending signal so that we
can get out of the loop as soon as possible.

Signed-off-by: Michal Hocko <mhocko@xxxxxxx>
Acked-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>

diff --git a/drivers/lguest/core.c b/drivers/lguest/core.c
index 5c13e93..b5fdcb7 100644
--- a/drivers/lguest/core.c
+++ b/drivers/lguest/core.c
@@ -232,6 +232,13 @@ int run_guest(struct lg_cpu *cpu, unsigned long __user *user)

+ /*
+ * All long-lived kernel loops need to check with this horrible
+ * thing called the freezer. If the Host is trying to suspend,
+ * it stops us.
+ */
+ try_to_freeze();
/* Check for signals */
if (signal_pending(current))
@@ -246,13 +253,6 @@ int run_guest(struct lg_cpu *cpu, unsigned long __user *user)
try_deliver_interrupt(cpu, irq, more);

- * All long-lived kernel loops need to check with this horrible
- * thing called the freezer. If the Host is trying to suspend,
- * it stops us.
- */
- try_to_freeze();
- /*
* Just make absolutely sure the Guest is still alive. One of
* those hypercalls could have been fatal, for example.
rusty@rusty-x201:~/devel/kernel/linux (master)$
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at