Re: [GIT PULL] x86/paravirt for v2.6.33

From: Linus Torvalds
Date: Tue Dec 08 2009 - 16:34:53 EST




On Thu, 3 Dec 2009, Ingo Molnar wrote:
>
> Please pull the latest x86-paravirt-for-linus git tree from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git x86-paravirt-for-linus

I _really_ don't like this:

> -long sys_iopl(struct pt_regs *regs)
> +asmlinkage long sys_iopl(unsigned int level)
> {
> - unsigned int level = regs->bx;
> struct thread_struct *t = &current->thread;
> + struct pt_regs *regs = task_pt_regs(current);

I do _not_ want to add any more task_pt_regs() crap, please.

Why? It's wrong for at least vm86 mode (and from kernel system calls).
Maybe we can't get into system calls from vm86 mode, and the kernel
hopefully doesn't do those things anyway, but the point is, you chose the
wrong way to go.

The old version that actually passed the stack frame was better. Why pick
the inferior version?

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/