From owner-freebsd-current@FreeBSD.ORG Wed Oct 18 22:18:30 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2456416A4C8 for ; Wed, 18 Oct 2006 22:18:30 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from wx-out-0506.google.com (wx-out-0506.google.com [66.249.82.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id 85E9A43D92 for ; Wed, 18 Oct 2006 22:18:16 +0000 (GMT) (envelope-from asmrookie@gmail.com) Received: by wx-out-0506.google.com with SMTP id t4so416872wxc for ; Wed, 18 Oct 2006 15:18:16 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:sender:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition:x-google-sender-auth; b=PS3WRQYP2GcPDLDxg41P0t+psEo/JDHRyryhl4z/3ab1hYBNeHiGR/3exz+RsxhNA3XNCpOEXzYHGd1gOFttPGrOoGiOA0YTGzZybuQvXnn2Yt0+LiJadKtSdSS95pk4LrCZGBEdXldYJ4kitg9b9PlhkhiJdqOXszUBCJKDWU8= Received: by 10.70.89.1 with SMTP id m1mr16963453wxb; Wed, 18 Oct 2006 15:18:16 -0700 (PDT) Received: by 10.70.12.2 with HTTP; Wed, 18 Oct 2006 15:18:16 -0700 (PDT) Message-ID: <3bbf2fe10610181518k68356528i154267c0bd1b1a77@mail.gmail.com> Date: Thu, 19 Oct 2006 00:18:16 +0200 From: "Attilio Rao" Sender: asmrookie@gmail.com To: freebsd-current@freebsd.org, freebsd-arch@freebsd.org, "John Baldwin" , pho@freebsd.org, kris@freebsd.org, "Robert Watson" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Google-Sender-Auth: 955ea3392b7e5dcc Cc: Subject: sx locks rewriting - needs testers X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Oct 2006 22:18:30 -0000 In my P4 branch: //depot/user/attilio/attilio_smpng/... you can find a sx locks rewriting using the optimized semantic of rwlocks; in the end this might result in a valuable performance improvement. Some hints about it: - new sx locks alredy support inlined s*lock operations and try* operations; (they have a fully functional support) - new sx locks doesn't have support for adaptive spinning yet; this is beacause the code is under revision even for mutex/rwlock. - we could allow a sharers tracking in debugging mode, at least, in order to detect eventual recursion in slock operation - currently, sx locks mantain the exclusive holder tracking even if this is not really necessary (we can get rid of it). In this moment a strong phase of test is *very* welcome, so please, for every people having a p4 account, dowload the kernel and try to put it under stress (at this purpose I cc'ed, in particular, kris@, pho@ and jhb@ in order to have tests, revisions, etc. etc.) Note1: the branch contains other diffs respect CURRENT. Note2: due to same strange struct sx members accesses, I had to disable XFS locking primitives in order to not hurt the current work. This is possibly buggy... Thanks, Attilio -- Peace can only be achieved by understanding - A. Einstein