From owner-p4-projects@FreeBSD.ORG Sun Apr 9 04:07:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 221D416A405; Sun, 9 Apr 2006 04:07:09 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D518016A403 for ; Sun, 9 Apr 2006 04:07:08 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A3D3A43D45 for ; Sun, 9 Apr 2006 04:07:08 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k39478KU067211 for ; Sun, 9 Apr 2006 04:07:08 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k394787n067205 for perforce@freebsd.org; Sun, 9 Apr 2006 04:07:08 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 9 Apr 2006 04:07:08 GMT Message-Id: <200604090407.k394787n067205@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 94832 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Apr 2006 04:07:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=94832 Change 94832 by kmacy@kmacy_storage:sun4v_rwbuf on 2006/04/09 04:06:40 add intr_restore_all, intr_disable_all Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/cpufunc.h#7 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/cpufunc.h#7 (text+ko) ==== @@ -207,7 +207,7 @@ } static __inline register_t -intr_disable(void) +intr_disable_all(void) { u_long s; @@ -215,7 +215,19 @@ wrpr(pstate, s & ~PSTATE_IE, 0); return (s); } -#define intr_restore(s) wrpr(pstate, (s), 0) +#define intr_restore_all(s) wrpr(pstate, (s), 0) + +static __inline register_t +intr_disable(void) +{ + u_long s; + + s = rdpr(pil); + wrpr(pil, 14, 0); + return (s); +} +#define intr_restore(s) wrpr(pil, (s), 0) + /* * In some places, it is required that the store is directly followed by a @@ -224,7 +236,7 @@ */ #define stxa_sync(va, asi, val) do { \ u_long s; \ - s = intr_disable(); \ + s = intr_disable_all(); \ __asm __volatile("stxa %0, [%1] %2; membar #Sync" \ : : "r" (val), "r" (va), "n" (asi)); \ intr_restore(s); \