Messages in this thread | | | Subject | Re: [PATCH] lib/vsprintf.c: increase the size of the field_width variable | From | Joe Perches <> | Date | Thu, 10 Sep 2015 08:41:25 -0700 |
| |
On Thu, 2015-09-10 at 10:36 -0400, Tejun Heo wrote: > On Wed, Sep 09, 2015 at 12:26:39PM -0700, Joe Perches wrote: > > > > %*pb is meant for smallish bitmaps, not big ones. [] > The use case isn't from me, but why not?
Imagine the output of the 500k bitmap if every other bit is set.
%*pb isn't capable of multiple line output and seq_printf output would also fail as it uses k.alloc memory not vmalloc.
I think that a more limited mechanism might be to use a multiple line oriented function like print_hex_debug and not try to emit the entire thing in a single go.
> Why are we even copying the struct on invocations? > Only some functions modify the values after all. > We might as well pass around pointer to the struct > and let the callees wihch modify them copy the > fields in local vars like normal functions.
You are of course welcome and able to change it.
btw: the current implementation has a limitation on 32 bit arches as it uses an int argument for the unsigned long count of bits in a bitmap.
That's a bitmap that should not be printed anyway.
| |