Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp903521ybl; Fri, 30 Aug 2019 08:48:30 -0700 (PDT) X-Google-Smtp-Source: APXvYqzVacrqpHStc0pOzH69k1KMOedqLgfsbTp8entetR3sfBgrR9sYLOmf+Cio+CQiwVkpjhEY X-Received: by 2002:a17:902:9686:: with SMTP id n6mr15975233plp.113.1567180110689; Fri, 30 Aug 2019 08:48:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1567180110; cv=none; d=google.com; s=arc-20160816; b=MN1bewhHoE/PFFKM4gJVpTPUHKRDRO0hInW83+mBQ4P1g5+11LQFHHk+yN3pvTy+hp PkSe2gX0Y+bPam62fxfwL9dDvJsPMUxywFo5DkfB0qOIxqvzOpVxJKtybnsEG1jR1uue 7n993PwdawVhs1NpehgbcxQMXsToPvKWj+sgu7TM3cCL2qQ2wxzfG+qj/QaZhvXLcOSt BnMlvkZ8R7FcqtighU2fiDD17/PpLFcAWIFpM6U2eENvTA2GiTuCDNgCstzDNc0cl++U cjwLTumV8Dcngfoeqc7ub5i5Lt9z6H0oGNMPYYZXUpn2CX5Nx3qBYc6i5wXCdPOBKtk0 Pe7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:mime-version:user-agent:date :message-id:subject:autocrypt:openpgp:from:references:cc:to; bh=wCDOHpz6VZ+D9TyQ/GWEAZ4NwdN0JEaN3vxtkp7hQ/M=; b=Fp6HvSxRhjAlfxBetcenY+GkwwwrcU84V4yY1qfYhRSYjMNOcWSu4WJKSpFYFDl0q/ 4YeVheOMmYOXqcJAwoN0Lbhmv7zU+ARBlDBF0jw3X7k81MeDzSjfM94LGLENu+hjasCS DGSOwhOLOu5yyNRaC5BX5S3o49rcwsZsatYxYBgt07AKfrOvBN5p6tDVMSRjVj8c0zVz P4vLnthm9IzU4YNuXQDBcsNmPRPh26nD4/WWJ7M1CLFHWVMDIf+HpdN3ju4mNnvmRvzp MZK0LMv77aErcmi3XX775uI5oGA/g2+URR5wxfUa0osS0xIZxCOCcovSsoTKA88e2BNe 8g1g== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d10si5040517pla.351.2019.08.30.08.48.15; Fri, 30 Aug 2019 08:48:30 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728410AbfH3PrZ (ORCPT + 99 others); Fri, 30 Aug 2019 11:47:25 -0400 Received: from antares.kleine-koenig.org ([94.130.110.236]:45536 "EHLO antares.kleine-koenig.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727820AbfH3PrZ (ORCPT ); Fri, 30 Aug 2019 11:47:25 -0400 Received: from localhost (localhost [127.0.0.1]) by antares.kleine-koenig.org (Postfix) with ESMTP id 59B5E78C4D8; Fri, 30 Aug 2019 17:47:21 +0200 (CEST) Received: from antares.kleine-koenig.org ([127.0.0.1]) by localhost (antares.kleine-koenig.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zlE0DWgc_0C2; Fri, 30 Aug 2019 17:47:20 +0200 (CEST) Received: from [IPv6:2a02:8071:b5c2:53f8:3192:99d7:1d59:986] (unknown [IPv6:2a02:8071:b5c2:53f8:3192:99d7:1d59:986]) by antares.kleine-koenig.org (Postfix) with ESMTPSA; Fri, 30 Aug 2019 17:47:20 +0200 (CEST) To: Petr Mladek Cc: Rasmus Villemoes , Juergen Gross , Sergey Senozhatsky , Steven Rostedt , Andrew Morton , Jani Nikula , Jonathan Corbet , metux IT consult Enrico Weigelt , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org References: <20190827211244.7210-1-uwe@kleine-koenig.org> <20190828113216.p2yiha4xyupkbcbs@pathway.suse.cz> <74303921-aa95-9962-2254-27e556af54f4@kleine-koenig.org> <20190829081249.3zvvsa4ggb5pfozl@pathway.suse.cz> <45cd5b50-9854-fce7-5f08-f7660abb8691@suse.com> <002dc2a7-40a3-f52a-c8fa-5dbb42e6dd7b@kleine-koenig.org> <20190830090624.tb2tmhbt3wzwz6rp@pathway.suse.cz> From: =?UTF-8?Q?Uwe_Kleine-K=c3=b6nig?= Openpgp: preference=signencrypt Autocrypt: addr=uwe@kleine-koenig.org; prefer-encrypt=mutual; keydata= mQINBEwXmCYBEACoJSJcKIlkQcTYia0ymmMOBk2veFoy/a0LlqGUEjQ4WECBL19F2BYX1dSp 5/ZdfKuV605usI6oq4x6k/LKmqZDl6YnqW/YmN/iZVCRunBRfvpTlL4lcNUu5Va/4GBRzBRr rrIhCIVL5zMV6hKywhHKTdOHVSZRftf+eRSBwENKXahmfOMDmekyf585etDPdzkFrLHNVFOC sFOU0gCK0uVPyY0LH13eo4qEEMi88RCOfwYCFQqKXDdo41DWoDPB5OGCMaphIx9wC/nvtdcv MowsGde5iGgmHWK6sdC/O/xaV7fnz1sJzoJB1eT91LkGbdGxsLAT6nqlaNJiJtiBoRhscguV xVbn/I9mnUu7bLmTFBEAlaQGU/J7uQ4w94FXfosNGROt/otqltetMZlPbNvNhKnXv8U6eRyA P3ZMKTJa4hGr3UdYdt4+MIiHcsANWp8T7oLYVxRbHPXPG49IURnhXUoGbscZmpptWcl29ebo qCxL9n3KIyUT3ZB1xHbW3Sk/Dqzf52tQOxZubzrpUJ8zaGIwYVUjfcPFwf3R3zrQvJq7mI4S ddNIE8w3WJOPXDOYx7GjOa+IubhSpCrr74NbN8q9oS3hnsqWw16i3HSUuPuYeZo1t6D5p/mX EVyZ2QrS1kGgGi7bmlQMSFkb6g1T8aWSYuX3PBYq2VntnWAXPwARAQABtClVd2UgS2xlaW5l LUvDtm5pZyA8dXdlQGtsZWluZS1rb2VuaWcub3JnPokCVwQTAQoAQQIbAwULCQgHAwUVCgkI CwUWAgMBAAIeAQIXgAIZARYhBA0lEfMiv6scFYAma+Lc3ZEyZpvWBQJdD2/6BQkaXdlUAAoJ EOLc3ZEyZpvWXJIQAItguVGhM5bXhr+T5Dq8tUPUzfEE2agVUhtwNUG1HEqF9Ex5PRRauCN5 YW318C3MRWgQepr8q2xgQ+Ih1Irl8GCVLh0vIIZRd8DbDSKBiPC0orKkHU4WgX48xl0WVnLS hUOt2bk1Vv5twB1a19f6W5ww1x0roxrNtAbDpPB/z0siynnqdQSeiJe+TbPwGT5eginTRiC6 hf+QGOz2jl0HQBmzabI+IWUuyZqb1kG78U1Si33N8GXCGrHzAKOtGI/7vzqlLGulMcWIRxkP U0Yg9FeH033ko16d8g2R2VPaP3ntm0KYaJngrbiTKGj7OXxUSASC7lBY7zf1UzJQYSU9TRrz 3XZ/4GEDkfQL0M9rPjWBj3HbwtQzURhL4QjC77Zi1OKT8TXrDGOoO8q6Th1y8ipaKOhAakUb ywZMCZi1RqOf53RnAquRApHfpu1I+W/iDtI51wZsuolqRlYd/nAbvzKt7SFG6V+ZeV9df6/x V3kS2NkNawy/dDqwJWA3gTHX1SEu2y04/qOyH/CR6sLEozQnqxVS343TJxyfJYW7TCwrDz0i jEFcy+xyyqvPn0Yc5zp2CnLKiB5JyV3mnz8qJVP0QfWUKKI6740m/1U9nDQYttGlklxgayLJ KoEG/FYxEe1m93U8anvxb4IULSHTgfCHpSJjLeVJVXUffH2g3CYAuQINBEwXmCYBEACy0K1x eE1wybOmpgwyw4c/W4KY25CjfXucBt00neNb24pVKNGUWScnsUsqDfA+7iOJ+CAahRhDGmba O0hZ/NZbEKbhXYCVsc2OOVrmT2+FgnYiWLntMGKGOLqGO8QprLpaXSy5tJP2/UWQix+tgKHa DENz7nJVff5WF0zdlKeMOIJYmraWLelsrEFlw/OUfKWjm30pnivNUacVIC/dIXiwz9mykYdk spEQhU2aSBr99oE87UUyf4BIgvB4Vy316i0o+WdEWCY361Yu02AWvHlUhjj/kDyiY8WxYGKQ JWAw6K+CVDtefLMVQ+l+A4V/3YgC+aHCw8ab2ZhXXSobcHv0K9plOrGR/3J6fIybf5RYgiZ6 6qh7WErPhVuXx3+btYehuPnf2eNHIBb6wrLJo/yWP3lWaUFag7cshMvw5CkoN948+dJWQed8 HM0fDb2hNMtBn52Sb3Q8ZZTrNYJXfyFq5W1+W2W5Z9aJT+4A5Fyecpzmc7dy97yA7Q4FB8z5 WOu+g03vGtrA29dvFdxM9pJJzKz4FOS/I8rkjfmXxBxUdDAbg8NHN56Cw1aBJktup3W1Pa0u 2FgbgpFUZVDZ+RqtjwlFLyMmDaO7K1zhxEu9kg02SBImtrVSJZKQMOWwZJPUNBEcidU8yQeT +J+7AnI/Y1X7RzcwTRP6JRc4vw4Z4QARAQABiQI9BCgBCgAnBQJUsvI/IB0Dc3VwZXJzZWVk ZWQgYnkgc3Via2V5IDU3QzkxQkM3AAoJEOLc3ZEyZpvWD8sQAJ3kMYdHHqIXYvL6ogIv3HzC E3nba4tPv+z/zj8s31G0VlEXdqc54nCQbvsWO1jYkDV+eqGhT3zr8V/55GyDkMEqw8Q6D00w q4BLVj4W64ciUUb+uQT19JCoL6uvewdBP7W86UMH2OhnSX4J1Asm1xjOTIszsUlYD0+ztt9O gXyUxQ26mOnpTSuc7LSdLqK94QB34IS8keVNxZGdPnh9LxpZFFdZTK1jbvCA0gESsAsQ90sJ zbnF0E0m3HFYFiY+E66ntz0Nbo68IKw9jY0zvR56Qi5s/uBFfcZeBAWesG8xKMy4zZanLMwy euZWor+X3pbH5FtpobGr0oyiH4XBGlMNWnXAo69rdig+ah4SOl9WFKn33PJTTlWXyaE+FxOg whT7bJpPns8i2u8jmbxlC5jpP8+8cSfDkdBhBxsecpsMLF5bIAqhoxfRxETL+xtuPdOEgH6K j/Ia3geiBfUPrLka93TE3EECn89WcD6XvcyRW95otrjK+Svnro4Xzi0zd0mP1Wwq4dA4Zfb4 j3YDAOjhGzDeSUqbhVttgsHc99fPvuMrjQUk3x9Lc0/ZbbCZfCa5Xk8lopi/oT6mJoj9Hj05 78Aktvt+0Ayqo7DmXUNZZq1Jpt3CCUCzj1E8ICHdHh3NG6HGbhbTQ96WfpBwXOOPZiWLWZzT 4FzrwLLox8wTiQIfBBgBAgAJBQJMF5gmAhsMAAoJEOLc3ZEyZpvW0oAP/inNe6AHKjSobhqB kvUmue4p/XtuIvt2yxmcKBgPSASNsL3TD2OFGJaJVtfnGem2YnKkVQseP90S1FqABG5LarDQ eOdYSLdFYsGGLJ9PwXlvze3reEDoPLVu4c+W2dRPKWXa3aaX6Szjech3MD2bdAoTHb3vo+zR LykVSqUuNI450ddsR6/ffTuHBJRM4SicC9fQZN6po/yZT937FH0igZKcNrqgJWfUp6+EQUov RhZoloGLuancqg1ALGem0VRfmlhAQaNBGunyihHOFHXfEbchJseP6x9GY1rxHH85p49crTNx MOWaDFL33iN8kDkcAuuyz87uWU0fiM3LpezU8x9Oby+M3dYYpDkcKzkNA2y5OCHsCMU9w7f8 kF2tFCjEpd+YV9rNaab8Kp9WRCAnEWJrtPkGuKU1HvWFc0qdsQZndZwiup3a9L2EAIbkPPwX QN2PlYsFF1qYs88WxuB9/bs8UtxYTnYKUBNlpm9q1olWn9J8GReUpAnULaZQKbhaxbYq5s2N 5vYKsOh0zWegOiTuOTdL2N8XsGlCFXhxG45+8JvpLyNiphyxvqoz/z9FKu3pxZKWeiumGvdJ 17GTDy7w0q0oPdh7WzKwqKQIBeP+YNLcrZoIUdhxBArYPRRhlRMTCAC+Yt4ZVf9TAC3NLNWM Dod7CGaNlDcIRwM0Rk0EuQENBFSy4J0BCAChpWdVkN0BTfe/zV6WhbbAasnFPvnOwT6j8y5B leuz+6XACLG63ogBu/4bfQdZgdHIC1ebI9XazMSovCfBTSn7qlu2R/yYrJ2UxwvDkiS2LuLA GEWfTwyimFr8/4QeTfy/Y0dWLCSqNlGg9r+GFxS8Ybnrur4Vrfw+4QoQs51MoKGTkR4BMdeJ SlL04cByBAEA6Hra88kr13ApWOSHcRkKRvj7ZCmBH2+GnnbdNm3AlrEtLvepHSODvngfePMX NHjtp4iw0Vkbv+s9XEhtC6bryD8AJahoaV94w2cQz48fSjPD8JfZjgrN+J7PyUDPTugmQC0m oPi7HtHxloHtbX5BABEBAAGJA0QEGAEKAA8FAlSy4J0CGwIFCQlmAYABKQkQ4tzdkTJmm9bA XSAEGQEKAAYFAlSy4J0ACgkQwfwUeK3K7AlrIgf+JLyPvo17xE6Jn6OOOTh9+t/QAJq3VV0/ xIyctFqK6v/gnFG/7f5zQKex5ThCesfZ3+zBk98wyVVmG5ToIYn67Egkv/rGDxnOdT5ABWcW QcjSCanfD6qFELDwsiLVKmoBLGCu+WcQkL5+LeUwU4oxor7aQlgrIIogJRBA4YdFlSV+JMYn Czww4GpFA11RktykHCW3QuX+iOrJuvFtG1AKHiFzv4asivhFCWfrxiujkLpX/3e4iFN5lyD1 2C7JsFDI5GM6uDOFaQKiYyqGZ6mnHQuqX7EioYuEJVR7jmkezLqlI26Hb/5quZADFhbnyGe2 0FLQR3oSPVy24wRFq8U+sdqUD/9dN10/SNSFyAnJp6CJo55G4zeAallIwfvh+5i1yVd/8Kh6 Rvuq/KO2uUB+bxNXgsmdmQt3nWBcJAs3r78kf8UFsnvLxTP673EEcakVAx1S1nieTrh8bzAz XkBYDKEPRXKzXjgidVPWLBQVbGZ66lCfpW2t/T8fxlZG4dq5zTU2j8cvA2RS4K8j/xiedA4P 6lnpV1DjTqnDfATAmJXX4oWleO2cvvao9BhqstktBjz79PMQqRD+L56q6t0X08y8WIDLdtRk mmVWGq2I6gR7y3CjTFmuO3sFcqVh+TwWEaqrrJ/MN/yyrNgJsFWozxdqAf55z8IJg5boi1ZY cdeKPFRKj5t5B1DwbobQIgZSAoUiQzy9g6MrKYpv/2tDMONK5mdPS43JZ0+Z7keID6r8Hj86 Byrrn/UaxEAg0Hn2NmG6sRs2fIJ3ehpThw1+ed9YwoasoPk5fLAgxsDXgRgJY07+J4QdwAtj Dh8N26hPPYyx+9O2qAzUVtfoiWsib7AXCbKd+34pn67DDYWGCJgtjsTrNh2da5loEd+8TuD0 y1xvczPXkaJmQ8mIo2ENO5btEpLXSZGZJHLRFI5tGj4ZWThjyVZb777VH5EFfUJQiZfJ/Aav 64qcY4NspxGZpdYuZOWmWU780nKx6kpqPx+10HZgqWcJZRlgfMk+pnwhhhd2r7kBDQRUsuKV AQgAwDnqedPDXwF03G61x3u5yJfPITSe4LRjxroxk7XZ3k2SO37DPaJA7J0BZG/Kyoc82Ymi wcYAGqHm7HeqqAhLzVfl++XK8/fCpwfHdnnQqlRxLrG+y3gDkEWYyZd/+YSbmGFxh1rou8Em e4tsHhqmINRA0wDuHr4Yx3rduYpW2VYjnCvdPJL3osLPjjs+NZN9oVn6Q4fhLoP2h60cAQ4r Q+3/a/gAC3It3SF4UKCl3TWydTdEzNh43rxIMIyjrD+Wm/F0NA9TLwS4sOhZTBUCJT2fKNBh KCWhO720RZF6HSmwQqfJza+Z4zN7NGtnDTX9su0ufQkwr34dsy76CDEqNQARAQABiQIlBBgB CgAPBQJUsuKVAhsMBQkJZgGAAAoJEOLc3ZEyZpvWuOQQAJSvLehOMf21aC2RPVhWmCFibOnR qRM4iGypKEERWxagNwjqx8YrL+dsu7o/aWwjG1CvfaHDFQ78CBj/xBGw8XheODpvS3Z/ERGv NivQ8HK0MWIIQZ85U5gj1h0Ls0LBeRkTOPRe6jUmjyzeWnMa/5wXaXsxZKE2n49ai5m+gL9/ 3sBXsBCsWxhVqn+lq7c5GEhxGJHvCDX5TcXdOC63Mcek4hKRbSYGkj1QYJV/WF9cLwvU3XI8 nrGDGX8IWaJr6GxTWCeYs5uWU70cg2TRKHM4SCveZyeizz4YRXYjvZTIent6TUKmxdMLBAC2 gI3H+75QRrflG5po1F+Uhbmd5BHLcAgvMUc58YaXYCwI6fY1/Q9zIpM1CHUPe4lZN5XUIA4S VBYi6Yvx82qA97KZfHsyvLwR56NMl/1b5dbQwl6eoM/JH4GgXDEh0NmPdE/MnQM7svxsB7xp 8kNRLpvtXNxp6SZUcf7u6vIwvlcrYMeDIaxf4dZSAuFwurOQtVP0gERKFSh1oMI+I0wXeMbO pN3/t3AK3zD7ZykqMstza/jYFEK1gNj7UhnvazBhMaMhCEt8rNqr5/dbgvAD/biSZO6wZrn7 hCaye/ulWpSqZSdx+G9GkTn05lsuHu9zfTwY6B0A6nlrqQSR/yWPvSq1Ud6IOZY1alq7ZSag kC8vBDJg Subject: Re: [PATCH v2] vsprintf: introduce %dE for error constants Message-ID: Date: Fri, 30 Aug 2019 17:47:16 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.2 MIME-Version: 1.0 In-Reply-To: <20190830090624.tb2tmhbt3wzwz6rp@pathway.suse.cz> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="C6EZnzSBketa4Jbvz8hG0hQgbF9HT5QvZ" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --C6EZnzSBketa4Jbvz8hG0hQgbF9HT5QvZ Content-Type: multipart/mixed; boundary="Jv1B4TPbxy2kcppz9RVwAgGTZjl5SEqgj"; protected-headers="v1" From: =?UTF-8?Q?Uwe_Kleine-K=c3=b6nig?= To: Petr Mladek Cc: Rasmus Villemoes , Juergen Gross , Sergey Senozhatsky , Steven Rostedt , Andrew Morton , Jani Nikula , Jonathan Corbet , metux IT consult Enrico Weigelt , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org Message-ID: Subject: Re: [PATCH v2] vsprintf: introduce %dE for error constants References: <20190827211244.7210-1-uwe@kleine-koenig.org> <20190828113216.p2yiha4xyupkbcbs@pathway.suse.cz> <74303921-aa95-9962-2254-27e556af54f4@kleine-koenig.org> <20190829081249.3zvvsa4ggb5pfozl@pathway.suse.cz> <45cd5b50-9854-fce7-5f08-f7660abb8691@suse.com> <002dc2a7-40a3-f52a-c8fa-5dbb42e6dd7b@kleine-koenig.org> <20190830090624.tb2tmhbt3wzwz6rp@pathway.suse.cz> In-Reply-To: <20190830090624.tb2tmhbt3wzwz6rp@pathway.suse.cz> --Jv1B4TPbxy2kcppz9RVwAgGTZjl5SEqgj Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable Hello Petr, On 8/30/19 11:06 AM, Petr Mladek wrote: > On Thu 2019-08-29 19:39:45, Uwe Kleine-K=C3=B6nig wrote: >> On 8/29/19 11:09 AM, Rasmus Villemoes wrote: >>> On 29/08/2019 10.27, Juergen Gross wrote: >>>> Hmm, what about already existing format strings conatining "%dE"? >>>> >>>> Yes, I could find only one (drivers/staging/speakup/speakup_bns.c), = but >>>> nevertheless... >>> >>> Indeed, Uwe still needs to respond to how he wants to handle that. I >> >> This is indeed bad and I didn't expect that. I just took a quick look >> and this string is indeed used as sprintf format string. >=20 > Hmm, it seems that solving this might be pretty tricky. I thought about this and we could make it possible by some syntax. Such t= hat someint =3D 42 pr_info("%d}E\n", someint) emits 42E (I'm open to use a different "end-of-fmt-specifier" char, a } might confuse source editors when highlighting matching braces. Maybe '#'? This idea could be transferred to %p, too, which then lift the limitation that some strings cannot easily be produced by printk et al. (Of course this makes the format string parsing still more complicated which I expect you won't like.) This would make it possible then to adapt drivers/staging/speakup/speakup_bns.c before introducing the format for error ints. > I see this as a warning that we should not play with fire. > There might be a reason why all format modifiers are put > between % and the format identifier. AFAIK they are put after the format specifier in the kernel to still be able to benefit from the compiler's printf attribute. >>> still prefer making it %pE, both because it's easier to convert integ= ers >>> to ERR_PTRs than having to worry about the type of PTR_ERR() being lo= ng >>> and not int, and because alphanumerics after %p have been ignored for= a >>> long time (10 years?) whether or not those characters have been >>> recognized as a %p extension, so nobody relies on %pE putting an E af= ter >>> the %p output. It also keeps the non-standard extensions in the same >>> "namespace", so to speak. >> >>> Oh, 'E' is taken, well, make it 'e' then. >> >> I like having %pe to print error valued pointers. Then maybe we could >> have both %de for ints and %pe for pointers. :-) >=20 > I would prefer to avoid %pe. It would make sense only when the value > really contains error id. The same holds true for %dE. Something has to happen if an int is passed that isn't an error code. I'm emitting it as is in my patch, the same could be done for a pointer. > It means that it has to be used as: >=20 > if (IS_ERR(p)) { > pr_warn(...); >=20 > The error path might handle the error using PTR_ERR() also > on other locations. Also PTR_ERR() will make it clear that we > are trying to print the error code. I suggest to postpone this until we have %dE. (But I consider using %de instead as then if we later chose that %pe is a nice idea they can use the same modifier.) Best regards Uwe --Jv1B4TPbxy2kcppz9RVwAgGTZjl5SEqgj-- --C6EZnzSBketa4Jbvz8hG0hQgbF9HT5QvZ Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEfnIqFpAYrP8+dKQLwfwUeK3K7AkFAl1pRQQACgkQwfwUeK3K 7Anu4wf+N/bwc1vIflzNFCRkQKsK1x2C0GHcW0oaggDeGcKbXo0+9KOw6hpGgHAg Ch3p3Gz1VCseH+mWn4UJgcaGWv++hWc+exuqmLlHUagmOnpVneJDITSYZ12q18ea yvbXTZNNsYDfpLv3no1QDx/LKE0kZSPX90XkWWF6aUg1koe3DnrrkAvPMX45z/jK 59vDprsJLDarlusIrzpWxdaAtG246I2c7I5gTpgp8TytUJKCc9KTQP5Ja0xlCFuq TqF+ZWKT4Iz3xEJCInzUsVpk5vco9QXyaHkCen/Bzwy4VI2rivWLXCnR97jwyfgu P4+GBKUD29CGe/iOx7MDQj7W7oPgyw== =YrpT -----END PGP SIGNATURE----- --C6EZnzSBketa4Jbvz8hG0hQgbF9HT5QvZ--