[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCHv2 3/4] qxl: add debug_cs and cmdlog_cs
From: |
Alon Levy |
Subject: |
Re: [Qemu-devel] [PATCHv2 3/4] qxl: add debug_cs and cmdlog_cs |
Date: |
Sat, 30 Apr 2011 01:19:44 +0300 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Fri, Apr 29, 2011 at 02:09:54PM +0200, Gerd Hoffmann wrote:
> On 04/28/11 10:29, Alon Levy wrote:
> >With this you can output the command log and/or the guest debug (driver)
> >output to a chardev instead of stderr:
> >
> >-global qxl-vga.cmdlog_chardev=qxl_cmdlog_chardev
> >-global qxl-vga.debug_chardev=qxl_debug_chardev
> >
> >useful for debugging. if no chardev is specified prints to stderr like the
> >old
> >code.
>
> Hmm. That is a bit too much ad-hoc debug hacking IMHO. Also I'm
> not sure I like the idea to send debug stuff through chardev instead
> of just writing them to stderr or some logfile.
>
> I do see why you are doing that though. Unfortunaly qemu has no
> sane debug logging infrastructure. This is long overdue IMHO, so we
> don't need hacks like this one and also don't reinvent stuff over
> and over.
The bigger hack called "qxl_terse" I didn't even send :) ok, so now I get
to either keep this in my closet or think of how to do a minimal acceptable
qemu logging infrastructure that would let me register a logging handle and
use that to redirect to a chardev (they would all default to being muxed over
stdio?)
QemuLogger *qemu_create_logger(const char *logger_id);
- logger_id is used to match to the chardev given on the command line
- need to prevent collision, so probably easier to have a logger_id be an int
and have that looked up to a string in an automatically generated table?
struct QemuLogger {
CharDriverState *chr;
};
And command line would be:
-chardev bla,id=myid -debug qxl,myid
qxl->logger = qemu_create_logger("qxl");
qemu_chr_write(qxl->logger->chr, ..)
logger creation would have to happen before command line parsing, so in the
device initialization.
Sounds right?
>
> cheers,
> Gerd
>