On 8/28/19 3:49 AM, Sergey Senozhatsky wrote:
On (08/28/19 02:31), Brendan Higgins wrote:
[..]
Previously KUnit assumed that printk would always be present, which is
not a valid assumption to make. Fix that by removing call to
vprintk_emit, and calling printk directly.
Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
Link: https://lore.kernel.org/linux-kselftest/0352fae9-564f-4a97-715a-fabe016259df@xxxxxxxxxx/T/#t
Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
Signed-off-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx>
[..]
-static void kunit_vprintk(const struct kunit *test,
- const char *level,
- struct va_format *vaf)
-{
- kunit_printk_emit(level[1] - '0', "\t# %s: %pV", test->name, vaf);
-}
This patch looks good to me. I like the removal of recursive
vsprintf() (%pV).
-ss
Hi Sergey,
What are the guidelines for using printk(). I recall some discussion
about not using printk(). I am seeing the following from checkpatch
script:
WARNING: Prefer [subsystem eg: netdev]_level([subsystem]dev, ... then
dev_level(dev, ... then pr_level(... to printk(KERN_LEVEL ...
#105: FILE: include/kunit/test.h:343:
+ printk(KERN_LEVEL "\t# %s: " fmt, (test)->name, ##__VA_ARGS__)
Is there supposed to be pr_level() - I can find dev_level()
cc'ing Joe Perches for his feedback on this message recommending
pr_level() which isn't in 5.3.
thanks,
-- Shuah
thanks,
-- Shuah