From owner-freebsd-hackers@FreeBSD.ORG Thu Jul 22 21:15:24 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 61294106564A for ; Thu, 22 Jul 2010 21:15:24 +0000 (UTC) (envelope-from jrytoung@gmail.com) Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by mx1.freebsd.org (Postfix) with ESMTP id EEEA78FC08 for ; Thu, 22 Jul 2010 21:15:23 +0000 (UTC) Received: by wyj26 with SMTP id 26so1221267wyj.13 for ; Thu, 22 Jul 2010 14:15:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=PYOwz8C/4XTAAAEqn73mRv5tDKyeYM0gAullHprRi5Y=; b=dh97cku/NL055b4ou+rpPVRk7bhTrBAeuD/rmzdB2uCBQs/0oA4k9N1YpUD69ZWBSh LGBE9NQ+ovYQ1S1AmecgDUom/8E05tKoTCRUXqlrBHhxZ3AfhcGn+h7Jdl+yfwD0ejoc kW0xLVxCFLI+cYvH/r/xI+wnl/5L8akOQlNIw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=A8sPXDlFeff5zhMiweYcSdyLfuJ7fVsQbsTqgiRWnAq7GI2iZ3AdvPAJ2ggysqDaJS TdajSmQBrJrofBlOThzIVxjYkc2DRpYPROFkOyzpuYvB7ACqYHyz+LuM8S4xEJEEb7YD T6uwiJWS8d5DKQ2ohPaTai+07+p/mdXDV8kIE= MIME-Version: 1.0 Received: by 10.216.170.200 with SMTP id p50mr2486277wel.96.1279833322175; Thu, 22 Jul 2010 14:15:22 -0700 (PDT) Received: by 10.216.63.131 with HTTP; Thu, 22 Jul 2010 14:15:22 -0700 (PDT) Date: Thu, 22 Jul 2010 14:15:22 -0700 Message-ID: From: Jerry Toung To: freebsd-hackers@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Giant free GEOM/CAM XPT X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jul 2010 21:15:24 -0000 Hello List, while going through the xpt code (8.0 RELEASE), it seems to me that some gains can be had in src/sys/geom/geom_disk.c where dp->d_strategy(bp2) is surrounded by Giant lock. Especially in the case where one has 2+ controllers on the system with /dev/daXX attached to them during heavy I/O. I am currently trying to get rid of giant there, but it branches in sys/cam and sys/dev/twa. Definitely not a trivial exercise. The dependency on Giant seems to come from the XPT code. would be neat if I could just use the SIM lock, which is per controller. Question: do you think it's worth the effort? right now I always get a crash (race condition most likely) in xpt_run_dev_allocq->camq_remove Jerry