Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 09 Nov 2002 15:10:04 -0600
From:      "Alan L. Cox" <alc@imimic.com>
To:        Jeff Roberson <jroberson@chesapeake.net>, Matthew Jacob <mjacob@feral.com>, Andrew Gallatin <gallatin@cs.duke.edu>, alpha@FreeBSD.ORG, alc@FreeBSD.ORG, John Baldwin <jhb@FreeBSD.ORG>
Subject:   Re: alpha: top of tree kernel blooie
Message-ID:  <3DCD79AC.AAED8D2A@imimic.com>
References:  <20021109150359.B97372-100000@mail.chesapeake.net> <3DCD7244.DEEA7387@imimic.com>

next in thread | previous in thread | raw e-mail | index | archive | help
"Alan L. Cox" wrote:
> ...
> 2. Don't we compile by default for the older Alphas that lack byte
> manipulation instructions?  Thus, a byte store is implemented by a
> read-modify-write sequence of instructions.  Thus, two simultaneous
> uma_dbg_alloc()s on adjacent locations in us_freelist could cause
> corruption.
> 

Specifically, here's the code sequence for the assignment of 255 to
us_freelist[] in uma_dbg_alloc() when compiling for ev5:

 47c:   0b 00 43 2c     ldq_u   t1,11(t2)
 480:   2b 00 7b 23     lda     t12,43(t12)
 484:   42 00 5b 48     mskbl   t1,t12,t1
 488:   ff ff 3f 20     lda     t0,-1
 48c:   61 01 3b 48     insbl   t0,t12,t0
 490:   01 04 22 44     or      t0,t1,t0
 494:   0b 00 23 3c     stq_u   t0,11(t2)

Regards,
Alan

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




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