Messages in this thread | | | Subject | Re: [PATCH] lib/vsprintf.c: increase the size of the field_width variable | From | Joe Perches <> | Date | Wed, 09 Sep 2015 09:55:11 -0700 |
| |
On Wed, 2015-09-09 at 12:36 -0400, Tejun Heo wrote: > On Wed, Sep 09, 2015 at 09:33:52AM -0700, Joe Perches wrote: > > On Wed, 2015-09-09 at 12:13 +0200, Maurizio Lombardi wrote: > > > When printing a bitmap using the "%*pb[l]" printk format > > > a 16 bit variable (field_width) is used to store the size of the bitmap. > > > In some cases 16 bits are not sufficient, the variable overflows and > > > printk does not work as expected. > > > > If more than 16 bits are necessary, it couldn't work > > as a single printk is limited to 1024 bytes. > > It's weird to fail silently tho. What we can do is just capping it at > 16bit max and append something to indicate that the bitmap has been > truncated if truncation actually happened.
It might be reasonable to output ... after the last comma or dash of the bitmap output when buf >= end.
It also might be better to not reuse spec in bitmap_string and bitmap_list_string.
| |