Commit a8569bf7 authored by Alexandre Julliard's avatar Alexandre Julliard

libwine: Added a couple of missing memory constraints in LDT syscalls.

parent 470e987d
...@@ -80,7 +80,8 @@ static inline int modify_ldt( int func, struct modify_ldt_s *ptr, unsigned long ...@@ -80,7 +80,8 @@ static inline int modify_ldt( int func, struct modify_ldt_s *ptr, unsigned long
: "0" (SYS_modify_ldt), : "0" (SYS_modify_ldt),
"r" (func), "r" (func),
"c" (ptr), "c" (ptr),
"d" (count) ); "d" (count),
"m" (*ptr) );
if (res >= 0) return res; if (res >= 0) return res;
errno = -res; errno = -res;
return -1; return -1;
...@@ -90,11 +91,11 @@ static inline int set_thread_area( struct modify_ldt_s *ptr ) ...@@ -90,11 +91,11 @@ static inline int set_thread_area( struct modify_ldt_s *ptr )
{ {
int res; int res;
__asm__ __volatile__( "pushl %%ebx\n\t" __asm__ __volatile__( "pushl %%ebx\n\t"
"movl %2,%%ebx\n\t" "movl %3,%%ebx\n\t"
"int $0x80\n\t" "int $0x80\n\t"
"popl %%ebx" "popl %%ebx"
: "=a" (res) : "=a" (res), "=m" (*ptr)
: "0" (243) /* SYS_set_thread_area */, "q" (ptr) ); : "0" (243) /* SYS_set_thread_area */, "q" (ptr), "m" (*ptr) );
if (res >= 0) return res; if (res >= 0) return res;
errno = -res; errno = -res;
return -1; return -1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment