From owner-freebsd-scsi@freebsd.org Tue Oct 27 02:52:26 2015 Return-Path: Delivered-To: freebsd-scsi@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2737BA1D637; Tue, 27 Oct 2015 02:52:26 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-ig0-x230.google.com (mail-ig0-x230.google.com [IPv6:2607:f8b0:4001:c05::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E750D1ED1; Tue, 27 Oct 2015 02:52:25 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by igbdj2 with SMTP id dj2so69954862igb.1; Mon, 26 Oct 2015 19:52:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=p0N04urbmjDcKXag4ODP61wNFTI9J0m9FSkmzdfrVxE=; b=th4YS+SukWTb9+Pl+hATNh020/GWHaKkl8C7mS+b7gdtjIXX3MA3JTthh54sTkiTI9 xhzG5Mev06XJOvVpDMi7tNPYdm9QXd9s1PYprZYScCl0+L1H9eMIbvo6v/TsREW5pu5i /sIPOd2/0UCVT4PyU85wusBhJbyr6pcVgaq1u4UIm2t9q/S6EISH2oWXRJKjiMGMasKH 1qEURqDYIrOyBAiziqEndhJ3Azhea/n+vOkMtF+mVW8jtd34Jf6E/1+LDOUUCRKErqKy nKdASewgkyG+0Z+pNdJ9SQlCtjG7lYVM2NdNiy0XL1mACn+BnTHbuuS9RdJYhAlBQLJ6 UUqA== MIME-Version: 1.0 X-Received: by 10.50.111.226 with SMTP id il2mr21220057igb.61.1445914345393; Mon, 26 Oct 2015 19:52:25 -0700 (PDT) Received: by 10.36.46.66 with HTTP; Mon, 26 Oct 2015 19:52:25 -0700 (PDT) In-Reply-To: References: Date: Mon, 26 Oct 2015 21:52:25 -0500 Message-ID: Subject: Re: Low-level trace-buffers in CAM From: Adrian Chadd To: "Pokala, Ravi" Cc: "freebsd-geom@freebsd.org" , "freebsd-scsi@freebsd.org" , "freebsd-hackers@freebsd.org" , "ken@freebsd.org" , "imp@freebsd.org" , "scottl@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Oct 2015 02:52:26 -0000 Hi, ok. So this is where I create work for people. :-) Something I've been tossing up for quite some time is a generic version of this that exposes a ring-buffer of entries back to userland. For things like this, things like ALQ/KTR, etc, it's all just a producer-consumer ring based thing. You don't even care about multiple readers; that's a userland thing. So, I'm a big fan of this. I did this for the ath driver to debug descriptors and register accesses and it was a big help. I'd really like to see a more generic way we can expose this data in an efficient manner! -a