IMVHO, I've always thought Linux would do better with such a beast. The
current boot messages, while useful (phat bzImage to identify hardware),
it's cluttered and not uniform.
I have thought that an API as you said would be a great idea. Imagine each
driver in the kernel registering itself in a standard way so that at will
we could add/remove/modify what the output looks like.
struct driver_info {
char name[..];
char author[..];
char copyright[..];
...;
};
(which, btw, we could also keep for each patch the user has installed[1])
Then we could define a set of levels ala syslog that the driver can use
for reporting identification of hardware, successful initialization,
unsuccessful, etc...
// shows the appropriate name/copyright info
kmsg_register(&driver_info);
...
if (success)
// implies a success?
kmsg_printk(KMSG_HW_ID,"eth0: found at IRQ 5, IO 0x240");
else
kmsg_printk(KMSG_FAILURE,"eth0: not found");
The kmsg functions could use this to format the output messages anyway we
want.
LILO: linux kmsglevel=luser
...
3c505: FAIL
3c509: FAIL
3c59x: OK
LILO: linux kmsglevel=verbose
...
3c505: Copyright Donald Becker
eth0: not found
3c509: Copyright Donald Becker
eth0: not found
3x59x: Copyright Donald Becker
eth0: found at IRQ 5, IO 0x240
(yeah, a too simplistic example, but you get the idea. Apologies to
Donald :)).
All of this of course is purely cosmetic. But its the cosmetic stuff that
sells (Microsoft has proved this).
[1] I've always thought a list of installed patches should be shown at
boot time.
#
# -Martynas
#
# -
# To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
# the body of a message to majordomo@vger.rutgers.edu
# Please read the FAQ at http://www.tux.org/lkml/
#
G'day!
-- n i c h o l a s j l e o n
/ elegance through simplicity /
/ good fortune through truth / http://mrnick.binary9.net
/ not all questions have answers / mailto:nicholas@binary9.net
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/