Re: [head tinderbox] failure on sparc64/sun4v

From: Kip Macy <kip.macy_at_gmail.com>
Date: Fri, 3 Nov 2006 23:46:27 -0800
Sparc64 only supports CAS on 4 and 8 byte quantities. The only
operation it support on 16 bytes is load.

     -Kip

On 11/3/06, John Birrell <jb_at_what-creek.com> wrote:
> On Sat, Nov 04, 2006 at 01:04:21AM -0500, FreeBSD Tinderbox wrote:
> > [...]
> > /src/sys/netinet/sctp_pcb.c:3394: warning: previous implicit declaration
> of 'atomic_add_16' was here
> > /src/sys/netinet/sctp_pcb.c:3470: warning: nested extern declaration of
> `atomic_add_16'
> > /src/sys/netinet/sctp_pcb.c:3394: warning: redundant redeclaration of
> 'atomic_add_16'
> > /src/sys/netinet/sctp_pcb.c:3394: warning: previous implicit declaration
> of 'atomic_add_16' was here
> > /src/sys/netinet/sctp_pcb.c: In function `sctp_load_addresses_from_init':
> > /src/sys/netinet/sctp_pcb.c:4382: warning: nested extern declaration of
> `atomic_add_16'
> > /src/sys/netinet/sctp_pcb.c:3394: warning: redundant redeclaration of
> 'atomic_add_16'
> > /src/sys/netinet/sctp_pcb.c:3394: warning: previous implicit declaration
> of 'atomic_add_16' was here
> > *** Error code 1
>
> This is a problem on sparc64 and sun4v because we don't have an
> atomic_add_16.
>
> I looked at the code in Solaris to see what asm is required to implement
> it and it takes 22 statements compared to 2 for a 64 bit variable and 4 for
> a 32 bit variable.
>
> Can't the code be changed to use a more typical variable size of the
> arches we have? 32 bits would be a better choice.
>
> --
> John Birrell
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>
Received on Sat Nov 04 2006 - 06:46:33 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:02 UTC