On Tue, 11 Dec 2018 15:09:26 +0100 Petr Mladek pmladek@suse.com wrote:
We have liburcu already, which is good. The main sticking points are:
- printk has started adding a lot of %pX enhancements which printf obviously doesn't know about.
I wonder how big problem it is and if it is worth using another approach.
No, please do not change the %pX approach.
An alternative would be to replace them with helper functions the would produce the same string. The meaning would be easier to understand. But concatenating with the surrounding text would be less elegant. People might start using pr_cont() that is problematic (mixed lines).
Also the %pX formats are mostly used to print context of some structures. Even the helper functions would need some maintenance to keep them compatible.
BTW: The printk() feature has been introduced 10 years ago by the commit 4d8a743cdd2690c0bc8 ("vsprintf: add infrastructure support for extended '%p' specifiers").
trace-cmd and perf know about most of the %pX data and how to read it. Perhaps we can extend the libtraceevent library to export a generic way to read data from printk() output for other tools to use.
-- Steve