Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/common/lib/libc



On Thu, Nov 29, 2007 at 10:37:43AM +0000, Tom Spindler wrote:

> > Log Message:
> > Hook the atomic ops in. Right now they are only built into libkern, and
> > only if available.
> 
> It appears that not all the atomic ops are getting linked in properly;
> in i386/ALL, the NDIS stuff gets linked in, which has (in part) an
> [incompatible] compatability header. Nuke that and change the extant
> references from <machine/atomic.h> to <sys/atomic.h>, however, and you
> _still_ get
> /home/dogcow/work/nbsrc/sys/compat/ndis/subr_ndis.c:2597: undefined reference 
> to `atomic_add_long'
> 
> And indeed - when I nm atomic.o in my libkern directory, atomic_add_long
> ain't there. atomic_add_32, yeah; atomic_add_long, no. For that matter,
> _no_ atomic_*_long symbols appear - only the _ulong versions.
> 
> Note sure how to fix this, or even what I'm seeing. halp?

Turns out they are 32-bit integers and not longs - what with all the strange
Windows typing it's not surprising. I've changed it to use the correct ones.

Thanks.
Andrew



Home | Main Index | Thread Index | Old Index