From owner-cvs-all Tue Dec 12 21:13: 7 2000 From owner-cvs-all@FreeBSD.ORG Tue Dec 12 21:13:04 2000 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 13E0F37B400; Tue, 12 Dec 2000 21:13:04 -0800 (PST) Received: (from bmilekic@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id eBD5D4s83055; Tue, 12 Dec 2000 21:13:04 -0800 (PST) (envelope-from bmilekic) Message-Id: <200012130513.eBD5D4s83055@freefall.freebsd.org> From: Bosko Milekic Date: Tue, 12 Dec 2000 21:13:03 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/sys mbuf.h X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG bmilekic 2000/12/12 21:13:03 PST Modified files: sys/sys mbuf.h Log: Eliminate a race in MEXTFREE(). The reference counter decrement and test was not atomic. We now make sure that we free the ext buf if the reference count is about to reach 0 but also make sure that nobody else has done it before us. While I'm here, change refcnt to u_int (from long). This fixes a compiler warning regarding use of atomic_cmpset_long on i386. Submitted by: jasone Reviewed by: jlemon, jake Revision Changes Path 1.65 +17 -12 src/sys/sys/mbuf.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message