From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751434AbcGPGRo (ORCPT ); Sat, 16 Jul 2016 02:17:44 -0400 Received: from mail.skyhub.de ([78.46.96.112]:45180 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751312AbcGPGRn (ORCPT ); Sat, 16 Jul 2016 02:17:43 -0400 From: Borislav Petkov To: Andrew Morton Cc: LKML , Borislav Petkov , Dave Young , Franck Bui , Greg Kroah-Hartman , Ingo Molnar , Linus Torvalds , Peter Zijlstra , Steven Rostedt , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Subject: [PATCH -v5 0/2] printk.devkmsg: Ratelimit it by default Date: Sat, 16 Jul 2016 08:17:43 +0200 Message-Id: <20160716061745.15795-1-bp@alien8.de> X-Mailer: git-send-email 2.8.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Borislav Petkov Hi guys, here's v5 with Andrew's review comments addressed (I hope all). I've unified the setting names for both sysctl(2) and the kernel cmdline to "on", "off" and "ratelimit" so that there's no confusion anymore as to which sysctl number corresponds to what string. This should make dealing with that option straight-forward. Also, requested textual expansion regarding the reasoning for the current design has been added in comments and commit messages. Thanks. Changelog: ---------- v4: sorry for spamming so quickly again and not waiting for a week before resubmitting but I believe the stuff is ready for 4.8. So here's v4 with all the minor review comments addressed. v3: here's v3 integrating Ingo's comments. The thing is called printk.devkmsg= or printk_devkmsg now, depending on cmdline option or sysctl. v2: here's v2 with the requested sysctl option kernel.printk_kmsg and locking of the setting when printk.kmsg= is supplied on the command line. Patch 1 is unchanged. Patch 2 has grown the sysctl addition. v1: Rostedt is busy so I took Linus' old patch and Steven's last v2 and split and extended them with the comments people had on the last thread: https://lkml.kernel.org/r/20160425145606.598329f2@gandalf.local.home I hope, at least. So it is ratelimiting by default, with "on" and "off" cmdline options. I called the option somewhat a bit shorter too: "printk.kmsg" The current use cases of this and of which I'm aware are: * debug the kernel and thus shut up all interfering input from userspace, i.e. boot with "printk.kmsg=off" * debug userspace (and by that I mean systemd) by booting with "printk.kmsg=on" so that the ratelimiting is disabled and the kernel log gets all the spew. Thoughts? Please queue, thanks. Borislav Petkov (2): ratelimit: Extend to print suppressed messages on release printk: Add kernel parameter to control writes to /dev/kmsg Documentation/kernel-parameters.txt | 7 ++ Documentation/sysctl/kernel.txt | 14 ++++ include/linux/printk.h | 9 +++ include/linux/ratelimit.h | 38 ++++++++-- kernel/printk/printk.c | 143 ++++++++++++++++++++++++++++++++++-- kernel/sysctl.c | 7 ++ lib/ratelimit.c | 10 ++- 7 files changed, 211 insertions(+), 17 deletions(-) -- 2.8.4