cvs commit: src/sys/kern kern_thread.c src/sys/sys kse.h
Marcel Moolenaar
marcel at FreeBSD.org
Sat Jun 28 12:45:16 PDT 2003
marcel 2003/06/28 12:45:15 PDT
FreeBSD src repository
Modified files:
sys/kern kern_thread.c
sys/sys kse.h
Log:
Don't use fuword() and suword() on struct members of type int. This
happens to work on 32-bit platforms as sizeof(long)=sizeof(int), but
wrecks all kinds of havoc (garbage reads, corrupting writes and
misaligned loads/stores) on 64-bit architectures.
The fix for now is to use fuword32() and suword32() and change the
type of the applicable int fields to int32. This is to make it
explicit that we depend on these fields being 32-bit. We may want
to revisit this later.
Reviewed by: deischen
Revision Changes Path
1.147 +4 -4 src/sys/kern/kern_thread.c
1.17 +3 -3 src/sys/sys/kse.h
More information about the cvs-src
mailing list