On 09/02/2010 04:55, Rob Farmer wrote:
> 
> I tried applying the patch to r212087 to rule out recent changes to
> dtrace, but it made no difference. I used patch -E -p0 < patch.
> 

Hi Rob,

I see that in your build error are a bunch of things to do with atomic.h
and I recalled a patch from pjd@ on current@ that he sent in the same
thread. I attached the downloaded patch. Maybe you can write back and
site if it helped at all so people have a reference.


Regards,

-- 

 jhell,v
--- sys/cddl/compat/opensolaris/sys/atomic.h
+++ sys/cddl/compat/opensolaris/sys/atomic.h
@@ -39,10 +39,9 @@
 #ifndef __LP64__
 extern void atomic_add_64(volatile uint64_t *target, int64_t delta);
 extern void atomic_dec_64(volatile uint64_t *target);
-extern void *atomic_cas_ptr(volatile void *target, void *cmp,  void *newval);
 #endif
 #ifndef __sparc64__
-extern uint64_t atomic_cas_32(volatile uint32_t *target, uint32_t cmp,
+extern uint32_t atomic_cas_32(volatile uint32_t *target, uint32_t cmp,
     uint32_t newval);
 extern uint64_t atomic_cas_64(volatile uint64_t *target, uint64_t cmp,
     uint64_t newval);
@@ -119,21 +118,19 @@
 }
 
 #ifndef COMPAT_32BIT
-#if defined(__LP64__)
+#ifdef __LP64__
 static __inline void *
 atomic_cas_ptr(volatile void *target, void *cmp,  void *newval)
 {
-       return ((void *)atomic_cas_64((volatile uint64_t *)target, 
(uint64_t)cmp,
-           (uint64_t)newval));
+       return ((void *)atomic_cas_64(target, (uint64_t)cmp, (uint64_t)newval));
 }
 #else
 static __inline void *
 atomic_cas_ptr(volatile void *target, void *cmp,  void *newval)
 {
-       return ((void *)atomic_cas_32((volatile uint64_t *)target, 
(uint64_t)cmp,
-           (uint64_t)newval));
+       return ((void *)atomic_cas_32(target, (uint32_t)cmp, (uint32_t)newval));
 }
 #endif
-#endif
+#endif /* !COMPAT_32BIT */
 
 #endif /* !_OPENSOLARIS_SYS_ATOMIC_H_ */

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to