sysenter cause a segmentation fault.

From: Ying Chu
Date: Sun Mar 18 2007 - 04:09:06 EST


A simple code running on PIII 800,kernel 2.6.20 with SEP enabled
causes a segmentation fault.
The slice is as following.

#include <stdio.h>
#include <sys/syacall.h>

int main()
{
unsigned long ret=0;
__asm__ __volatile__ ("movl %1,%%eax\n\tpushl %%ecx\n\t"
"pushl %%edx\n\tpush %%ebp\n\t"
"movl %%esp,%%ebp\n\t" "sysenter\n\t"
"movl %%eax,%0"
:"=m"(ret)
:"b"(SYS_getuid));
printf("%d\n",ret);
return 0;
}

More, when i enabled Kdb and set "bp sysenter_entry",it went with a
catastrophic error errupted.
-
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/