Messages in this thread | | | From | Rasmus Villemoes <> | Subject | [PATCH 00/14] printf stuff for 4.5 | Date | Mon, 23 Nov 2015 22:29:17 +0100 |
| |
I was too late for 4.4, so here's hoping to get this into 4.5.
1-3 fix a theoretical race in printing strings via %s - since we're reusing existing code from the dentry printer, we actually also win on code size. Ingo, can I perhaps get you to turn your "looks good to" into an ack?
4 fixes a problem introduced by converting all bitmap formatting to go via %pb[l] - it turns out that bitmaps with >= 1<<15 bits are actually printed sometimes. This isn't necessarily the best fix, but the discussion died out, so I'm proposing this for now.
5 is just a minor optimization (maybe not so much on register-challenged arches).
6 I'm not too sure about, but maybe the bitmap problem had been discovered sooner (it took a little over half a year to be reported) if these had been in place.
7 is another microoptimization.
Paranoid-me wanted me to include patch 8, but I don't have strong feelings for it.
9-14 are minor additions to the test module (some with acks from Kees).
Rasmus Villemoes (14): lib/vsprintf.c: pull out padding code from dentry_name() lib/vsprintf.c: move string() below widen_string() lib/vsprintf.c: eliminate potential race in string() lib/vsprintf.c: expand field_width to 24 bits lib/vsprintf.c: help gcc make number() smaller lib/vsprintf.c: warn about too large precisions and field widths lib/vsprintf.c: slightly refactor vscnprintf() lib/kasprintf.c: add sanity check to kvasprintf lib/test_printf.c: don't BUG lib/test_printf.c: check for out-of-bound writes lib/test_printf.c: test precision quirks lib/test_printf.c: account for kvasprintf tests lib/test_printf.c: add test for large bitmaps lib/test_printf.c: test dentry printing
lib/kasprintf.c | 10 +-- lib/test_printf.c | 96 ++++++++++++++++++++++---- lib/vsprintf.c | 196 +++++++++++++++++++++++++++++++----------------------- 3 files changed, 203 insertions(+), 99 deletions(-)
-- 2.6.1
| |