From owner-cvs-src-old@FreeBSD.ORG Mon Nov 9 20:30:01 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9826F106568F for ; Mon, 9 Nov 2009 20:30:01 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 850B78FC1B for ; Mon, 9 Nov 2009 20:30:01 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id nA9KU1ZY037090 for ; Mon, 9 Nov 2009 20:30:01 GMT (envelope-from rdivacky@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id nA9KU1ov037089 for cvs-src-old@freebsd.org; Mon, 9 Nov 2009 20:30:01 GMT (envelope-from rdivacky@repoman.freebsd.org) Message-Id: <200911092030.nA9KU1ov037089@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to rdivacky@repoman.freebsd.org using -f From: Roman Divacky Date: Mon, 9 Nov 2009 20:29:10 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/amd64/isa isa_dma.c src/sys/dev/fdc fdc.c src/sys/dev/ieee488 ibfoo.c src/sys/i386/isa isa_dma.c X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Nov 2009 20:30:01 -0000 rdivacky 2009-11-09 20:29:10 UTC FreeBSD src repository Modified files: sys/amd64/isa isa_dma.c sys/dev/fdc fdc.c sys/dev/ieee488 ibfoo.c sys/i386/isa isa_dma.c Log: SVN rev 199104 on 2009-11-09 20:29:10Z by rdivacky Make isa_dma functions MPSAFE by introducing its own private lock. These functions are selfcontained (ie. they touch only isa_dma.c static variables and hardware) so a private lock is sufficient to prevent races. This changes only i386/amd64 while there are also isa_dma functions for ia64/sparc64. Sparc64 are ones empty stubs and ia64 ones are unused as ia64 does not have isa (says marcel). This patch removes explicit locking of Giant from a few drivers (there are some that requires this but lack ones - this patch fixes this) and also removes the need for implicit locking of Giant from attach routines where it's provided by newbus. Approved by: ed (mentor, implicit) Reviewed by: jhb, attilio (glanced by) Tested by: Giovanni Trematerra IA64 clue: marcel Revision Changes Path 1.23 +83 -27 src/sys/amd64/isa/isa_dma.c 1.326 +0 -6 src/sys/dev/fdc/fdc.c 1.7 +0 -8 src/sys/dev/ieee488/ibfoo.c 1.20 +83 -27 src/sys/i386/isa/isa_dma.c