On 20.06.2009 2:57 Uhr, Carl-Daniel Hailfinger wrote:
On 20.06.2009 02:39, ron minnich wrote:
On Fri, Jun 19, 2009 at 4:46 PM, Carl-Daniel Hailfinger wrote
do_printk is defined in src/arch/i386/lib/printk_init.c as almost identical function, but without console_tx_flush and without locking. If only one CPU uses the lockless variant, we lose.
it's very useful. It can be used in the rom/CAR code before consoles really work.
Hm. AFAICS both versions have the same console requirements and just differ in locking (if you ignore the _flush no-op).
This kind of thing is common. Just about all OSes have a "printk before printk" function.
True, but our console requirements for both versions are pretty minimal and I think we showed in v3 that a one-size-fits-all printk can work fine.
It didn't, that's the point.. No locking, and it destroyed output of i.e. a GDB interface by appending (CB) to each line. Plus, the ifdef mess is really not (much?) nicer to look at than the linker sets.
One thing I think v3 does right is to not come with a VGA console. I still think that every line of coreboot output is always a debugging message. If your machine is so b0rked you can't get to the payload (but survive far enough to enable vga, which wis realistic in 0% of the cases, except you're a developer working on the table creation code) you shouldn't be bothered with text messages on vga but instead connect a serial console.
Stefan