lkml.org 
[lkml]   [2007]   [Sep]   [29]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateFri, 28 Sep 2007 23:09:35 -0700
FromJeremy Fitzhardinge <>
SubjectRe: vm86.c audit_syscall_exit() call trashes registers
Jeremy Fitzhardinge wrote:
> @@ -306,19 +334,18 @@ static void do_sys_vm86(struct kernel_vm
>         tsk->thread.screen_bitmap = info->screen_bitmap;
>         if (info->flags & VM86_SCREEN_BITMAP)
>                 mark_screen_rdonly(tsk->mm);
>         __asm__ __volatile__("xorl %eax,%eax; movl %eax,%fs; movl %eax,%gs\n\t");
> 

Oh, this line is also clearly bogus, since it clobbers %eax without
telling the compiler.  The minimal change would be something like:

	asm volatile("mov %0, %%fs; mov %0, %%gs" : : "r" (0));


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

\
 
 \ /
  Last update: 2007-09-29 08:13    [from the cache]
©2003-2008