From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752849AbdK0XlR (ORCPT ); Mon, 27 Nov 2017 18:41:17 -0500 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:49647 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751731AbdK0XlP (ORCPT ); Mon, 27 Nov 2017 18:41:15 -0500 X-ME-Sender: From: "Tobin C. Harding" To: Linus Torvalds Cc: "Tobin C. Harding" , "Jason A. Donenfeld" , "Theodore Ts'o" , Kees Cook , Paolo Bonzini , Tycho Andersen , "Roberts, William C" , Tejun Heo , Jordan Glover , Greg KH , Petr Mladek , Joe Perches , Ian Campbell , Sergey Senozhatsky , Catalin Marinas , Will Deacon , Steven Rostedt , Chris Fries , Dave Weinstein , Daniel Micay , Djalal Harouni , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , linux-kernel@vger.kernel.org, kvm@vger.kernel.org, kernel-hardening@lists.openwall.com Subject: [PATCH 0/5] add printk specifier %px, unique identifier Date: Tue, 28 Nov 2017 10:40:53 +1100 Message-Id: <1511826058-2563-1-git-send-email-me@tobin.cc> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Linus, I know you are bored of this patch set already and this pits your vast experience against my eight months kernel dev experience ;) I humbly maintain that hashing %p and suggesting people use %x _correctly_ isn't a WIN solution. Please don't go easy on me because I'm new, if I'm out of line - say so. This set is based on the following assumptions. 1. We now have leaking_addresses.pl illuminating leaking addresses. 2. We have no _clear_ strategy for fixing leaks once found. 3. We do not have a proposed non opt-in solution. 4. There is a distinct use case for this specifier. Patch 1: Corrects the docs for %pK. Patch 2: Refactors %pK code out of pointer() into helper function. Patch 3: Adds specifier %px, small 'x' was chosen because the hashed hex value is printed in lower case. Patch 4/5: Provides example usage of new specifier. The hashing code is based on the work done hashing %p during 4.14 dev cycle. Finally, with this patch set in place, we have the added benefit that newbies (me) can quietly go around the kernel 'sweeping up' after leaking addresses. This as apposed to using a hammer and hashing all %p. And if this is deemed too little and too slow we can always search and replace '%p' with '%px'. thanks, Tobin. Tobin C. Harding (5): docs: correct documentation for %pK vsprintf: refactor pK code out of pointer() vsprintf: add specifier %px, unique identifier KVM: use %px to print token identifier vfio_pci: use %px to print token identifier Documentation/printk-formats.txt | 2 +- drivers/vfio/pci/vfio_pci_intrs.c | 2 +- lib/test_printf.c | 74 +++++++++++++++++ lib/vsprintf.c | 166 ++++++++++++++++++++++++++++---------- scripts/checkpatch.pl | 2 +- virt/kvm/eventfd.c | 2 +- 6 files changed, 202 insertions(+), 46 deletions(-) -- 2.7.4