From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754232AbbHaTYi (ORCPT ); Mon, 31 Aug 2015 15:24:38 -0400 Received: from mail-bl2on0105.outbound.protection.outlook.com ([65.55.169.105]:19251 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752290AbbHaTYh (ORCPT ); Mon, 31 Aug 2015 15:24:37 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=scottwood@freescale.com; Message-ID: <1441049065.4966.38.camel@freescale.com> Subject: Re: [PATCH 21/22] xfs: %pF is only for function pointers From: Scott Wood To: Dave Chinner CC: , , , Steven Rostedt Date: Mon, 31 Aug 2015 14:24:25 -0500 In-Reply-To: <20150831080657.GF26895@dastard> References: <1426130037-17956-1-git-send-email-scottwood@freescale.com> <1426130037-17956-21-git-send-email-scottwood@freescale.com> <20150831080657.GF26895@dastard> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.0-fta1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Originating-IP: [2601:448:8100:f9f:12bf:48ff:fe84:c9a0] X-ClientProxiedBy: BLUPR11CA0067.namprd11.prod.outlook.com (10.141.30.35) To BY1PR03MB1483.namprd03.prod.outlook.com (25.162.210.141) X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1483;2:vs7on0SyChk2jmj/p93Iohqiti8yWpNsvPGvhX9On4dXm7H7zugAy6IXGai/uQqyA9otRVIYnB2AqH7v7J9vJJPeKhyDmAT/hU2RyX/j9ds7yMsKwqBjrOfXdEeqRe8f9UTtwxEbh2GRhbWzPeDzBE0BIxGVd4rLNyxjgsEJthY=;3:SGLzJ+rSwfEId9MMi000OtM0mOvRF5KedB+/6MUKhNAzm0O9+qxvwkezLs+2w+StP1EvizkBo0n7IheA8ZCr9mAxhyDdiB6i/4OWmO8cIgTzB7Ss8LVTCnzAyig1kL+T0seu+LNcYa+uQox5MESr3Q==;25:3qoh3qLaguzyg9lKVcS425M7xd3e/obk5lve700FD2AYzSp8DgQVW/r619+Cj9bVoKx/+XteXmT9kIvx8eH3qS6lbQfGeKc0aSR880inAvfJLRtMt8V5ZTH0pEf9OB/1feTfjEmUAhQecPjNN8qyahp9o6r7/DycJ0NsbSqFWywizDDadA4YoZBAvasgTjoUBodXajzv2PLFSIweu8FJmfbMUETcm/crBr/+MzHc9oMkiGfsRXpZRKJaSgkbOxNybGq3PGwq5JCxTdAz7uF16w== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1483; X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1483;20:kxHBEzsZftFw+08AatvAAgRPWclm0F9FVWvh3LvxM/JWXe43E6yMDk2zp/u0dOLKSuoJGbJHQlK3xgmx4T25kcWNGTN57s/tndf1xOhz1HoZyZydD1NhQw/j4E5FC/5XI1ixD9lvnKxcLElO9oe6z8dBDgC/iCGbdpFbSENdwSHZVIsGMLSqqfxeSWXgdhJ2n2KVmO+E21E425E68UF/QXXwpdOB0kYbnWzvyY0v8BWgImcJdwE1aDbVSnWpP60FO64VTL0LaVMDGSMyQFW8XBfzej5/q1Cm621v2GobsV5pSy19Hw8pGqs4yOE+LLAF5l8dlLUEPDCi5kPZhyeKDa44cAlD71DM7/JCOU5aqjLy8kdRUGsvwrxR+Xjfsg6xLFEnOASfJRYM19bRK06QhJr4uEMnun9nHLt5dsQ9G7Rx7cqG5NgfC6wNUijN5kEd+pke4iaH/wI6GtdGDyvX5F2XAc2z9ma5mPdBsppZoBCiHKzbGFWnbSlZxjSVxbz2;4:seyocwJAtB8mSesXiw8xyKEpo6NjbS/lmmh0VkPtTHVT3BHIM6K/5+Mz78FAenZrrr0tgDUGKL+PXh3jhVZ8sOc+Bk2qtT33CWDw6kq1xC1fMTMwfB5RT8GF2HglCWbx+pM3BCakB9t+VZutRAh5q2nLSjWIweUk6fvNv6X3dvGWMIgwhKAg9k6DDHKrGJH7K5e4rQmrRj0Db8PUP5wfvg99paehLeXUkX6r9f2fau241nJjeB9eYyLffk6R6bLnLKIt3jjsOwFfG7clpVhNSVZxacpoaakuDIdMVooeJ+Yw2R8R7vQgMeNlnEXQICRk X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(8121501046)(3002001);SRVR:BY1PR03MB1483;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1483; X-Forefront-PRVS: 0685122203 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(199003)(377424004)(189002)(24454002)(4001540100001)(122386002)(92566002)(110136002)(40100003)(33646002)(103116003)(77096005)(189998001)(5001960100002)(36756003)(77156002)(50226001)(76176999)(105586002)(64706001)(68736005)(97736004)(86362001)(42186005)(87976001)(5001860100001)(5001830100001)(62966003)(5004730100002)(50986999)(106356001)(5007970100001)(2950100001)(19580405001)(47776003)(101416001)(19580395003)(23676002)(81156007)(5820100001)(50466002)(46102003)(99106002)(3826002)(5001840100002);DIR:OUT;SFP:1102;SCL:1;SRVR:BY1PR03MB1483;H:[IPv6:2601:448:8100:f9f:12bf:48ff:fe84:c9a0];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTFQUjAzTUIxNDgzOzIzOnBUcUlQVXJrd0ZNWWRPTERNUGZtcVNMeWVs?= =?utf-8?B?M3FOakNtY2kyNmhLOU9qVG9NMUxPTVI4dmlKWVd3WDdrVTEvZktUUVUvWE0w?= =?utf-8?B?RnkrMjFqc2sweUxLMnY1ejd0b0RtOTVtaHVZQm5BVDRqby9FR0E3eWVqelc2?= =?utf-8?B?RFVnUGo0bG1aeHJIWDBsNkZqMGUzNkFDa1lWTVFvdnp3SkNHcjNSaHlOQngx?= =?utf-8?B?a2pEMTNQaEZpS3V0TVNiMWNteGk2QzNrU1FTZThRdndKSHBJRHZ5UmIzL3Jq?= =?utf-8?B?UmhlcGZMWW9lck5CQlJPdUZjNzlJSk1sVnNZWE14K0tSZVg2U25STFI0ZEdw?= =?utf-8?B?dWxyUm9kRm8rMXRUNEdBSWZMQkxMakJvVTFZL1NXcUtMSkg0R21BZ2Y5TEJV?= =?utf-8?B?aFBTeVNRY0cyVU9OeFhXajc0U0xRbVl6OXRoMHcvY3grYVZKLzJvQ3FaZWph?= =?utf-8?B?QXMyS1kwYjY5b0pkc1JlY0g2dWpZVnl2ZTg3TjRZaVFlcWdnU2pqMWZQdG53?= =?utf-8?B?TVp4cmpHMVBQYzNQcGViOW12QWRGa21LTFlEVi9NcjYzSkVZN1NwZkpMeW8y?= =?utf-8?B?TGJOWWpMWnF1YXZadDAvbktVUG1BRERSb0NqTkhlNFg3T3BxRDdGdWFFT0Jy?= =?utf-8?B?ZURrTUFnMFhhQWVPSFRjVGphV05sT0hBc3JTM3lyYy9MeUlyVUlSb0MwV2Vn?= =?utf-8?B?QnBKMkd6TnpYOE43NE9aclRtN2ZoaHNsc09Vb0cwemJrRGhtcUFoUmc2LzBV?= =?utf-8?B?aEtOVE1uWEtxVUdtb1NTVy8xVHhxY0Jrd0xXck9mbGxFNmxzeG9GR2hlajMy?= =?utf-8?B?SEt4RC9JSVl5ei81QzVLeVlkcnZ0blplVVhEV2tOWjNyai9uRWU5M01QTjBI?= =?utf-8?B?aERGOUw0VlNVSHVlWCtlek53UjFlVTlobUVlR01UWWNMakRveGk2QWlrandW?= =?utf-8?B?bTRKK0RsdUIwSjNXYWp6dTBiaVBIVThhSXZVWStOWjU3T0pPMUVJdWlSVUoz?= =?utf-8?B?UGRhbE0rOUlvZ3pJU2dSbFRWc0JYandLYkhUelVWZGJKaTBWajJKK3F0NGZQ?= =?utf-8?B?ZGxrMlJpOVphNzNoalVPM2hOREU1cVZmVU11ZFYyWWx2aEtBUVZjTExIMUUx?= =?utf-8?B?c0Fmc1dOMVVWMmpRb1Y2aGt0Rkhkb2pnOVl1UURybGg5RzluZXVQWTFuK3A0?= =?utf-8?B?UmduSEtveHdaYmgzWjRNY0t2NUh0L0R1eGlQTW1tZFFHa3BCN3AyblAxc2FZ?= =?utf-8?B?TWVWcUNMZkxkRS91WldSVHZHOWNDc2laMUhXcjBsV0ZheXNnYlcwWWxidnhl?= =?utf-8?B?aCs0c1JSNlJQTDJYbmhqNythZ1VOZmFicERWM1YrRFFWblVnSHZXNUdYd1JW?= =?utf-8?B?UEhzSkZMSnlNK1hVNzFRbTNNQkt5ZjRDRzdUVXRaZEREWDlOT2svMkx6aUtT?= =?utf-8?B?Z01oTHdFK1hZQjFxQkxNVXptTkZBSHlpanlzU0t1VGJsREpVK0JTR3RnU0R5?= =?utf-8?B?V2RZTWdwM3dBcmdqU0tZSlpwR3hzTnBpekUrZ2wwVVFxcE9sS09EWHlWMTNl?= =?utf-8?B?Z1h4WHlFWHR6MmpFNGhQZEs5R2Q1eGNqNFd3RVR2b3ZuUHhPbER4dU1Ta2oz?= =?utf-8?B?Tzk1SWU4UmpJSTBQemdwcUgwcnNMdWFSLzdSODhocnJ0ZTlOQnR2UnM3ZUE2?= =?utf-8?Q?O4qQzDVbzBU1crT6Kk=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1483;5:E/TR7n/zs8M7kTXP4JoD57DoXkAfL6y3ziXPKcAnO756fwd36/06O0pU4/ajLflOwPpR317Yw4jkiPOjokYzJEBJcZkInhYr/PyZMUptS57OOOvYky7B096oSsE68GUNw8Q/VDGvf96eYp0hB2McOw==;24:JYo4gI2SWZWkEctFFVVarXsLB61ZK+b9nZLmbYQ+nAaZcrjD9xp6ySaKPD1tMJ7BOkHycTZmYdC1iGs5zASNKiRXQHIdXXZSugL3Q7C0AT8=;20:siAqYdHDJNi/FGlzqdKvsqmXhqlrBa8D7KZ4Fzj4kh8dUBIxjK8BbKunexzm1yR9etDZwj4orVFM9eUaOHqZWA== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Aug 2015 19:24:32.9503 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB1483 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2015-08-31 at 18:06 +1000, Dave Chinner wrote: > On Wed, Mar 11, 2015 at 10:13:56PM -0500, Scott Wood wrote: > > Use %pS for actual addresses, otherwise you'll get bad output > > on arches like ppc64 where %pF expects a function descriptor. > > > > Signed-off-by: Scott Wood > > Cc: xfs@oss.sgi.com > > Scott, I've just found that this change (commit 65dd297 "xfs: %pF is > only for function pointers") breaks the symbolic printing in XFS > trace events on x86_64. eg. > > > diff --git a/fs/xfs/xfs_trace.h b/fs/xfs/xfs_trace.h > > index 51372e3..b5ac81e 100644 > > --- a/fs/xfs/xfs_trace.h > > +++ b/fs/xfs/xfs_trace.h > > @@ -115,7 +115,7 @@ DECLARE_EVENT_CLASS(xfs_perag_class, > > __entry->refcount = refcount; > > __entry->caller_ip = caller_ip; > > ), > > - TP_printk("dev %d:%d agno %u refcount %d caller %pf", > > + TP_printk("dev %d:%d agno %u refcount %d caller %ps", > > MAJOR(__entry->dev), MINOR(__entry->dev), > > __entry->agno, > > __entry->refcount, > > This results in output like this: > > 760.828474: xfs_perag_get: dev 253:32 agno 13 refcount 10 caller > 0xffffffff814eef02s > 760.828476: xfs_perag_put: dev 253:32 agno 13 refcount 9 caller > 0xffffffff814eefe8s > > When I revert this commit, I get: > > 71.911265: xfs_perag_get: dev 253:32 agno 0 refcount 11 caller > xfs_extent_busy_insert > 71.911266: xfs_perag_put: dev 253:32 agno 0 refcount 10 caller > xfs_extent_busy_insert > > Which is exactly what we should be getting from the tracing. I'm > using trace-cmd to gather and print the events, and it breaks > both old and current versions of trace-cmd. > > Can you please look into why this change broke the tracing output > on x86-64 - if there is no obvious/easy fix for it, then I'm simply > going to revert it because having the tracing work correctly on > x86-64 is far more important to us than ppc64 or ia64.... It looks like the cause is that TP_printk() is not really printk() -- it actually passes the format to userspace which has its own, not 100% compatible implementation pretty_print() in tools/lib/traceevent/event- parse.c. %pf in that function behaves like %ps in the kernel, and %ps is absent. -Scott