Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 May 2000 15:43:20 -0700 (PDT)
From:      Peter Wemm <peter@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/lib/libstand sbrk.c
Message-ID:  <200005122243.PAA35139@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
peter       2000/05/12 15:43:20 PDT

  Modified files:
    lib/libstand         sbrk.c 
  Log:
  Fix the real problem that broke the Alpha loader this last week.  It
  was not the fault of the module code, nor FICL.  The malloc code requires
  sbrk() to return addresses that were at least 16 byte aligned.  If the
  Alpha loader happened to be 8 byte but not 16 byte aligned in length, then
  you would get a zfree() panic at startup.
  
  Incidently, this affected the i386 loader as well, and explains why
  the static heap changed things and why jlemon had trouble when the bss
  was not ending at a multiple of 8 bytes.
  
  My fix is to 16 byte align it on all arches, even though the x86 version
  only required 8 byte alignment (struct MemNode is smaller there).  We could
  page align it if we wanted to be paranoid, but it isn't presently necessary.
  
  Revision  Changes    Path
  1.3       +4 -3      src/lib/libstand/sbrk.c



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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