Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Jun 2003 12:45:15 -0700 (PDT)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern kern_thread.c src/sys/sys kse.h
Message-ID:  <200306281945.h5SJjFjF059714@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200306281945.h5SJjFjF059714>