Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Nov 2006 23:46:27 -0800
From:      "Kip Macy" <kip.macy@gmail.com>
To:        "John Birrell" <jb@what-creek.com>,  "FreeBSD Tinderbox" <tinderbox@freebsd.org>, current@freebsd.org,  sparc64@freebsd.org
Subject:   Re: [head tinderbox] failure on sparc64/sun4v
Message-ID:  <b1fa29170611032346x5803847esad273b1965cbddcd@mail.gmail.com>
In-Reply-To: <20061104070047.GA98215@what-creek.com>
References:  <20061104060421.6145773068@freebsd-current.sentex.ca> <20061104070047.GA98215@what-creek.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
>



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