Received: by 10.192.165.156 with SMTP id m28csp685306imm; Fri, 13 Apr 2018 06:11:15 -0700 (PDT) X-Google-Smtp-Source: AIpwx49D3EqDK2Xat1Li2MAnj8v2Kj0yktYlsBfeDVllFwcjLBrH489pgqQzg8UxQe2LRnxlK9Mm X-Received: by 10.99.114.80 with SMTP id c16mr399936pgn.385.1523625075036; Fri, 13 Apr 2018 06:11:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523625075; cv=none; d=google.com; s=arc-20160816; b=YWUgodDgFlkzd4GT/OX/QV9yA6TOFIS2oUAi2l0uTAArIlG1acLUdHG61StqIYHwwq sYhIIUHo7QNMG+/vbyeUMKDdol9qZAAqDo2mbGE3JqKmz469MLUvE5IkD0NVOYW4baOT C1KsQlmmS1i9T5m+KMbiWPEKWN3C3KTxBI5cb3pAswN+ICWtQSdCjpESX+GXn9x2mnX7 UBnzOYZej0sxn6DCZpu5/qbWcxEj4qjVUBTXyVaOp6g549vrnndaafcsfKt1/Y0zn79P Fv5V+VVrAR3A0CGC37a38xARxEI4jjaH3zOp63/qPs+eUEvD0q0nCEvd7oovOFWgSwk2 fvaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:references:in-reply-to:date :subject:cc:to:from:arc-authentication-results; bh=/Xlp0dSKYL31UAA+zQ2pP7XxsImooCp0UQZjGJZK9VU=; b=H1+btm/7v6BQI6G9laBvnZkjfkR+YsZ4CIyaIPkXgPIVykT4XQNl/VInErIIc3+2Iq ev5VXUcMRKdavHCVL6+3HiaWpDCkVVoWM7rRFl2E0hQtfyhea3hWNNnrPcQXVYWdKrfy ETrbUWWxrHqJwGjSEJb+S26oOSHyhOTMMOfRdqw9v2QyC8Bxx0REKlKuYtusvPCFpC+f d9hbBhP3sij9iVvoccMFSF6Ts+ro5QCiFxlt4FO5U/q6VPPAtoZCjEbtfFpiOVCc7oz4 2KRbM2Hjk2+VNqzWZ2nO0+ikl9S8AXk3ROJzOl1RaWtY4P8hKTFXJbLrI+WaLLjlNGRf XnvQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t83si4500922pfj.167.2018.04.13.06.11.00; Fri, 13 Apr 2018 06:11:14 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754192AbeDMNIa (ORCPT + 99 others); Fri, 13 Apr 2018 09:08:30 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:36218 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754169AbeDMNI2 (ORCPT ); Fri, 13 Apr 2018 09:08:28 -0400 Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w3DD51KF111997 for ; Fri, 13 Apr 2018 09:08:28 -0400 Received: from e06smtp14.uk.ibm.com (e06smtp14.uk.ibm.com [195.75.94.110]) by mx0a-001b2d01.pphosted.com with ESMTP id 2has4v321w-1 (version=TLSv1.2 cipher=AES256-SHA256 bits=256 verify=NOT) for ; Fri, 13 Apr 2018 09:08:27 -0400 Received: from localhost by e06smtp14.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 13 Apr 2018 14:08:24 +0100 Received: from b06cxnps3075.portsmouth.uk.ibm.com (9.149.109.195) by e06smtp14.uk.ibm.com (192.168.101.144) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Fri, 13 Apr 2018 14:08:20 +0100 Received: from d06av21.portsmouth.uk.ibm.com (d06av21.portsmouth.uk.ibm.com [9.149.105.232]) by b06cxnps3075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w3DD8Kds8323472; Fri, 13 Apr 2018 13:08:20 GMT Received: from d06av21.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3E65F52043; Fri, 13 Apr 2018 12:59:15 +0100 (BST) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by d06av21.portsmouth.uk.ibm.com (Postfix) with ESMTPS id F3E9D52041; Fri, 13 Apr 2018 12:59:14 +0100 (BST) From: Steffen Maier To: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org Cc: Steven Rostedt , Ingo Molnar , Jens Axboe , Li Zefan , Greg Kroah-Hartman , Steffen Maier Subject: [RFC] tracing/events: block: also try to get dev_t via driver core for some events Date: Fri, 13 Apr 2018 15:07:19 +0200 X-Mailer: git-send-email 2.13.5 In-Reply-To: <20180413130719.22921-1-maier@linux.ibm.com> References: <20180413130719.22921-1-maier@linux.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18041313-0044-0000-0000-00000546EEAA X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18041313-0045-0000-0000-000028872E79 Message-Id: <20180413130719.22921-4-maier@linux.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-04-13_05:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000 definitions=main-1804130122 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Complements v2.6.31 commit 55782138e47d ("tracing/events: convert block trace points to TRACE_EVENT()") for cases where rq->rq_disk == NULL: block_rq_requeue, block_rq_insert, block_rq_issue; and for cases where bio == NULL: block_getrq, block_sleeprq. NB: The NULL pointer check for q->kobj.parent is certainly racy and I don't have enough experience if it's good enough for a trace event. Since I don't know when above cases would occur, I'm not sure this is worth it. Signed-off-by: Steffen Maier --- include/trace/events/block.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/include/trace/events/block.h b/include/trace/events/block.h index cffedc26e8a3..c476b7af404b 100644 --- a/include/trace/events/block.h +++ b/include/trace/events/block.h @@ -86,7 +86,9 @@ TRACE_EVENT(block_rq_requeue, ), TP_fast_assign( - __entry->dev = rq->rq_disk ? disk_devt(rq->rq_disk) : 0; + __entry->dev = rq->rq_disk ? disk_devt(rq->rq_disk) : + (q->kobj.parent ? + container_of(q->kobj.parent, struct device, kobj)->devt : 0); __entry->sector = blk_rq_trace_sector(rq); __entry->nr_sector = blk_rq_trace_nr_sectors(rq); @@ -162,7 +164,9 @@ DECLARE_EVENT_CLASS(block_rq, ), TP_fast_assign( - __entry->dev = rq->rq_disk ? disk_devt(rq->rq_disk) : 0; + __entry->dev = rq->rq_disk ? disk_devt(rq->rq_disk) : + (q->kobj.parent ? + container_of(q->kobj.parent, struct device, kobj)->devt : 0); __entry->sector = blk_rq_trace_sector(rq); __entry->nr_sector = blk_rq_trace_nr_sectors(rq); __entry->bytes = blk_rq_bytes(rq); @@ -397,7 +401,9 @@ DECLARE_EVENT_CLASS(block_get_rq, ), TP_fast_assign( - __entry->dev = bio ? bio_dev(bio) : 0; + __entry->dev = bio ? bio_dev(bio) : + (q->kobj.parent ? + container_of(q->kobj.parent, struct device, kobj)->devt : 0); __entry->sector = bio ? bio->bi_iter.bi_sector : 0; __entry->nr_sector = bio ? bio_sectors(bio) : 0; blk_fill_rwbs(__entry->rwbs, -- 2.13.5