2.1.97 system.h fix (more clear)

Brian Weiss (fudd@cruzio.com)
Sat, 18 Apr 1998 14:07:27 -0700 (PDT)


in 2.1.97 you need to make a very small change in
/usr/src/linux/include/asmi386/system.h to get it to compile.

There have been other posts about this (including an actual patch) but
they've all been somewhat confusing and vague (except the patch itself of
course). So here is the actual code you need to fix.

ORIGINAL CODE:
#define _set_tssldt_desc(n,addr,limit,type) \
__asm__ __volatile__ ("movw %3,0(%2)\n\t" \
"movw %%ax,2(%2)\n\t" \
"rorl $16,%%eax\n\t" \
"movb %%al,4(%2)\n\t" \
"movb %4,5(%2)\n\t" \
"movb $0,6(%2)\n\t" \
"movb %%ah,7(%2)\n\t" \
"rorl $16,%%eax" \
: "=m"(*(n)) : "a" (addr), "r"(n), "g"(limit), "i"(type))

That last line is the problem line. you need to change the "g"(limit) to
"r"(limit). Very small and easy change. It should look like this when
finished:

: "=m"(*(n)) : "a" (addr), "r"(n), "r"(limit), "i"(type))

I hope this helps some people who missed the post with the actual patch in
it.

-Brian

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu