On Tue, 28 Jun 2016 14:49:15 -0700, Joe Perches said: > Another potentially useful plugin, especially for embedded systems, > would be to compress any string literal marked with > > __attribute__((format(printf, string-index,))) > > and decompress the compressed format on the stack in lib/vsprintf.c > vsnprintf just before use. Are there enough such strings in the kernel to make it worth the effort? I'm assuming that the string literals in printk("some string here") are automatically so marked? Is there a minimum length under which the compression overhead actually makes it larger? For instance, "a" can't be compressed, because you need to indicate there's 1 "a" and 1 \0, while "aaaaaa" can, because you can express it as '6*"a" 1 \0 in only 4 bytes not 7. But exactly where the cutoff is, I have no idea (and is probably *very* text-dependent, as "aaaaaa" and "abcdef" will compress differently....)
Attachment:
pgpOJls8ukTGO.pgp
Description: PGP signature