[head tinderbox] failure on sparc64/sun4v

Marcel Moolenaar xcllnt at mac.com
Thu Jun 4 00:14:41 UTC 2009


On Jun 3, 2009, at 1:06 PM, Robert Watson wrote:
>
> Is there a reason not just to use __aligned(64) or the like on the  
> first entry of the MD PCPU structure for sun4v to avoid future MI  
> pcpu changes from causing similar discomfort for the MD pcpu parts?   
> Also, do we know why these alignment/sizing requirements exist for  
> struct pcpu on sun4v but not other platforms?  If this is about  
> packing pcpu structures into properly aligned cache lines, again  
> __aligned() might be the right approach to take...

Adding __aligned(xx) doesn't make it aligned. For example,
malloc(3) only aligns at 16-byte boundaries, so any
user-space structure that has __aligned(x>16) must manually
make sure that this is actually the case by over-allocating
and then adjusting the pointer to an x>16 aligned address.
Likewise for the kernel, though it's easier in the kernel
to get something that's page-aligned...
FYI,

-- 
Marcel Moolenaar
xcllnt at mac.com





More information about the freebsd-sparc64 mailing list