Messages in this thread | | | From | Borislav Petkov <> | Subject | [PATCH -v5 0/2] printk.devkmsg: Ratelimit it by default | Date | Sat, 16 Jul 2016 08:17:43 +0200 |
| |
From: Borislav Petkov <bp@suse.de>
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
| |