From owner-svn-src-all@FreeBSD.ORG Fri Jan 28 06:12:59 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 79E62106564A; Fri, 28 Jan 2011 06:12:59 +0000 (UTC) (envelope-from jchandra@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 68D378FC13; Fri, 28 Jan 2011 06:12:59 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p0S6Cxcl059864; Fri, 28 Jan 2011 06:12:59 GMT (envelope-from jchandra@svn.freebsd.org) Received: (from jchandra@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p0S6CxVW059861; Fri, 28 Jan 2011 06:12:59 GMT (envelope-from jchandra@svn.freebsd.org) Message-Id: <201101280612.p0S6CxVW059861@svn.freebsd.org> From: "Jayachandran C." Date: Fri, 28 Jan 2011 06:12:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r218007 - in head/sys/cddl/compat/opensolaris: kern sys X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Jan 2011 06:12:59 -0000 Author: jchandra Date: Fri Jan 28 06:12:59 2011 New Revision: 218007 URL: http://svn.freebsd.org/changeset/base/218007 Log: CDDL fixes for MIPS n32. Provide 64 bit atomic ops, and use 32 bit pointer. Modified: head/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c head/sys/cddl/compat/opensolaris/sys/atomic.h Modified: head/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c ============================================================================== --- head/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c Fri Jan 28 05:52:02 2011 (r218006) +++ head/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c Fri Jan 28 06:12:59 2011 (r218007) @@ -52,7 +52,7 @@ atomic_init(void) } #endif -#ifndef __LP64__ +#if !defined(__LP64__) && !defined(__mips_n32) void atomic_add_64(volatile uint64_t *target, int64_t delta) { Modified: head/sys/cddl/compat/opensolaris/sys/atomic.h ============================================================================== --- head/sys/cddl/compat/opensolaris/sys/atomic.h Fri Jan 28 05:52:02 2011 (r218006) +++ head/sys/cddl/compat/opensolaris/sys/atomic.h Fri Jan 28 06:12:59 2011 (r218007) @@ -36,9 +36,11 @@ atomic_cmpset_ptr((volatile uintptr_t *)(_a), (uintptr_t)(_b), (uintptr_t) (_c)) #define cas32 atomic_cmpset_32 -#ifndef __LP64__ +#if !defined(__LP64__) && !defined(__mips_n32) extern void atomic_add_64(volatile uint64_t *target, int64_t delta); extern void atomic_dec_64(volatile uint64_t *target); +#endif +#ifndef __LP64__ extern void *atomic_cas_ptr(volatile void *target, void *cmp, void *newval); #endif #ifndef __sparc64__ @@ -84,7 +86,7 @@ atomic_dec_32_nv(volatile uint32_t *targ return (atomic_fetchadd_32(target, -1) - 1); } -#ifdef __LP64__ +#if defined(__LP64__) || defined(__mips_n32) static __inline void atomic_dec_64(volatile uint64_t *target) {