From patchwork Tue May 15 13:18:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Steve Wise X-Patchwork-Id: 10401083 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id C6CA4601F9 for ; Tue, 15 May 2018 13:18:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B554C28801 for ; Tue, 15 May 2018 13:18:56 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A8CA628817; Tue, 15 May 2018 13:18:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4D2D0287F8 for ; Tue, 15 May 2018 13:18:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752810AbeEONSx convert rfc822-to-8bit (ORCPT ); Tue, 15 May 2018 09:18:53 -0400 Received: from linode.aoot.com ([69.164.194.13]:37462 "EHLO linode.aoot.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752318AbeEONSx (ORCPT ); Tue, 15 May 2018 09:18:53 -0400 X-Greylist: delayed 880 seconds by postgrey-1.27 at vger.kernel.org; Tue, 15 May 2018 09:18:53 EDT Received: from stevoacer (47-221-140-100.gtwncmta03.res.dyn.suddenlink.net [47.221.140.100]) by linode.aoot.com (Postfix) with ESMTP id AAE76837D; Tue, 15 May 2018 08:18:52 -0500 (CDT) From: "Steve Wise" To: "'Leon Romanovsky'" Cc: "'Jason Gunthorpe'" , , , , References: <1a0d146dffb17449aa6d8a6b6d06e865e69226de.1525709213.git.swise@opengridcomputing.com> <20180514204125.GM21531@ziepe.ca> <20180515085411.GT10381@mtr-leonro.mtl.com> In-Reply-To: Subject: RE: [PATCH v1 iproute2-next 2/3] rdma: print driver resource attributes Date: Tue, 15 May 2018 08:18:51 -0500 Message-ID: <00fe01d3ec4f$44a6f400$cdf4dc00$@opengridcomputing.com> MIME-Version: 1.0 X-Mailer: Microsoft Outlook 16.0 Thread-Index: AQIKT/MnWMjglcpOs+Iiw+UJIoW+8wL0ZLlVAbYQ/R0B4E58KgLhEiAHAj2QZy2jZrMtoA== Content-Language: en-us Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP > > On Mon, May 14, 2018 at 05:04:26PM -0500, Steve Wise wrote: > > > > > > > > > On 5/14/2018 3:41 PM, Jason Gunthorpe wrote: > > > > On Mon, May 07, 2018 at 08:53:16AM -0700, Steve Wise wrote: > > > >> This enhancement allows printing rdma device-specific state, if > provided > > > >> by the kernel. This is done in a generic manner, so rdma tool doesn't > > > >> need to know about the details of every type of rdma device. > > > >> > > > >> Driver attributes for a rdma resource are in the form of > > >> [print_type], value> tuples, where the key is a string and the value can > > > >> be any supported driver attribute. The print_type attribute, if present, > > > >> provides a print format to use vs the standard print format for the > type. > > > >> For example, the default print type for a PROVIDER_S32 value is "%d ", > > > >> but "0x%x " if the print_type of PRINT_TYPE_HEX is included inthe > tuple. > > > >> > > > >> Driver resources are only printed when the -dd flag is present. > > > >> If -p is present, then the output is formatted to not exceed 80 > columns, > > > >> otherwise it is printed as a single row to be grep/awk friendly. > > > >> > > > >> Example output: > > > >> > > > >> # rdma resource show qp lqpn 1028 -dd -p > > > >> link cxgb4_0/- lqpn 1028 rqpn 0 type RC state RTS rq-psn 0 sq-psn 0 > > path-mig-state MIGRATED pid 0 comm [nvme_rdma] > > > >> sqid 1028 flushed 0 memsize 123968 cidx 85 pidx 85 wq_pidx 106 > > flush_cidx 85 in_use 0 > > > >> size 386 flags 0x0 rqid 1029 memsize 16768 cidx 43 pidx 41 wq_pidx > > 171 msn 44 rqt_hwaddr 0x2a8a5d00 > > > >> rqt_size 256 in_use 128 size 130 idx 43 wr_id 0xffff881057c03408 idx > > 40 wr_id 0xffff881057c033f0 > > > > Hey some of these look like kernel pointers.. That is a no-no.. What > > > > is up there? > > > > > > Nothing is defined as a kernel pointer.  But wr_id is often a pointer to > > > the kernel rdma application's context... > > > > > > > The wr_id often contains a pointer, right? So we cannot just pass it > > > > to user space.. > > > > > > Hmm.  It is useful for debugging kernel rdma applications.  Perhaps > > > these attrs can be only be sent up by the kernel if the capabilities > > > allow.  But previous review comments of the kernel series, which is now > > > merged, forced me to remove passing the capabilities information to the > > > driver resource fill functions. > > > > > > So what's the right way to do this? > > > > The reviewer asked do not pass to drivers whole CAP_.. bits, because > > they anyway don't need such granularity. > > > > Ok thanks. How's this? the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/include/rdma/restrack.h b/include/rdma/restrack.h index 6379685..2cf9c5c 100644 --- a/include/rdma/restrack.h +++ b/include/rdma/restrack.h @@ -66,7 +66,8 @@ struct rdma_restrack_root { * Allows rdma drivers to add their own restrack attributes. */ int (*fill_res_entry)(struct sk_buff *msg, - struct rdma_restrack_entry *entry); + struct rdma_restrack_entry *entry, + bool net_admin_capable); }; -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in