From owner-svn-src-projects@FreeBSD.ORG Fri Aug 16 13:05:13 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 7A331A82; Fri, 16 Aug 2013 13:05:13 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 167F525A1; Fri, 16 Aug 2013 13:05:12 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.7/8.14.7) with ESMTP id r7GD53of033957; Fri, 16 Aug 2013 16:05:03 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.8.3 kib.kiev.ua r7GD53of033957 Received: (from kostik@localhost) by tom.home (8.14.7/8.14.7/Submit) id r7GD53Qv033956; Fri, 16 Aug 2013 16:05:03 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 16 Aug 2013 16:05:03 +0300 From: Konstantin Belousov To: Alexander Motin Subject: Re: svn commit: r254408 - in projects/camlock/sys: cam/ata cam/scsi dev/md geom Message-ID: <20130816130503.GC4972@kib.kiev.ua> References: <201308161225.r7GCP3EW061762@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Dr39avWuu01nZVqZ" Content-Disposition: inline In-Reply-To: <201308161225.r7GCP3EW061762@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Aug 2013 13:05:13 -0000 --Dr39avWuu01nZVqZ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Aug 16, 2013 at 12:25:03PM +0000, Alexander Motin wrote: > Author: mav > Date: Fri Aug 16 12:25:02 2013 > New Revision: 254408 > URL: http://svnweb.freebsd.org/changeset/base/254408 >=20 > Log: > Make first steps toward direct BIO dispatch in GEOM: > - Define flags, declaring that specific consumer/provider is capable of > sending requests/replies (respectively) directly, i,e. doesn't hold any= locks > and so reenterable, and/or able to directly receive replies/requests, i= =2Ee. > doesn't depend on GEOM up/down threads semantics. As result, GEOM will= make > direct calls only if both caller and callee are cpable of it in each ca= se. > - Define disk(9) flag to declare that disk is capable of direct request > completion, and use it for da(4) and ada(4) drivers. Make GEOM DISK to= pass > that flag to its provider and also assume that any disk is capable of > receiveing requests directly. > - Mark GEOM DEV as capable of both direct send and receive. > - Make md(4) declare both direct send and receive after adding mutex to > serialize its statistics update on request path. I do not think it is safe to allow the mdstart_malloc() to execute in parallel with itself. It certainly causes data corruption for the new block allocations on write, and possibly random kernel memory corruption. It seems that vnode and swap backends are safe, though. --Dr39avWuu01nZVqZ Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQIcBAEBAgAGBQJSDiN+AAoJEJDCuSvBvK1BqrQP/3iE/JR2RXScBdZW+jqgbyGR zDagwywGGxB+w9Dc1aouVExhqZVNpzJP55duAnW7vajaKpv9QzZF5c+wW/d9s0BI tms2cPsGWIxVvzXQt3LBBabtth88yOfw9KUpgldPwwwM0WBvjq/fhMJr5/vNC2sR cwQaW3kRCbVJTTRbkaqu0BpoRb1HWyG6OBwdyLLMTVC0sgxM96V3W52IwEmgxSay WZMQGuM0y+Wpuhw2s0KjYiubFEOMnQfHva9NfcG/fIluEtSNtGBGlFqzzqfruEAO vNvRtjHFSPuv2XFR2leuLYUsvvyzuVa3enHa13E3uDergQVRluEaeLWJSbvNgT6h Svnl3X9b8yLPgxpaSLwtqeLVcQXZ2YcaKBKBd46KA9Gxs6RpG/pJWoaP/ov8G9pb bNkv/TmJ1egrFJatRqpFX6MA7fOeCH7e3Y3uNNRtWZVuezNWMaugcIrHwjMHQqhi thOFRu+WUQtsJYCGXOGsBaF7o0WPV4QJvK8NkicQcpSm0yXKZs19bHapiyDRzcSX ndU9PN5Hj0Eo8m6uezJZhbkP6XoyQD7nrTVMDSJ3XaSfysBzdAcSMQkmW66B2Cku UVbRHlcp5EBnoSukmASHxGVWuZlJxT3ZdZqUzSZqBLZNbxVooBLTjBENf0wlieJl QFzpEidryAIuu1YvMsPH =uK9c -----END PGP SIGNATURE----- --Dr39avWuu01nZVqZ--