On 2011-10-10 11:10, Daniel P. Berrange wrote: > On Mon, Oct 10, 2011 at 10:08:26AM +0100, Daniel P. Berrange wrote: >> On Mon, Oct 10, 2011 at 10:21:02AM +0800, Wen Congyang wrote: >>> At 10/09/2011 06:23 PM, Richard W.M. Jones Write: >>>> On Sun, Oct 09, 2011 at 10:49:57AM +0200, Jan Kiszka wrote: >>>>> As explained in the other replies: It is way more future-proof to use an >>>>> interface for this which was designed for it (remote gdb) instead of >>>>> artificially relaxing reasonable constraints of the migration mechanism >>>>> plus having to follow that format with the post-processing tool. >>>> >>>> Any interface that isn't "get this information off my production >>>> server *now*" so that I can get the server restarted, and send it to >>>> an expert to analyse -- is a poor interface, whether it was designed >>>> like that or not. Perhaps we don't have the right interface at all, >>>> but remote gdb is not it. >>> >>> What about the following idea? >>> >>> Introduce a new monitor command named dump, and this command accepts a >>> filename. >>> We can use almost all migration's code. We use this command to dump guest's >>> memory, so there is no need to check whether the guest has a unmigratable >>> device. >> >> I think it would be a good idea of QEMU had a dedicated 'dump' command >> for this purpose, even if it was just an alias for 'migrate' initially. >> I have never really liked the fact that we abuse the 'migrate' command >> to generate a core dump. The resulting data file from this is more >> complex than it really needs to be, causing complexity for post-processing >> it. The needs of migration, are not entirely aligned with the needs of >> core dumping in the long term, so we should allow the possibility of >> their impls diverging without impacting apps using them. >> >> So adding a 'dump' command which wrote out data in a format that was >> optimized for offline processing by tools like 'crash' (or the windows >> equivalent) would be a good improvement, even if it just reuses the >> migrate code for now. > > The other reason why it would be good, is that we would then have a clearly > defined standard "QEMU dump format", instead of "libvirt dump format for QEMU"
A core file would be that format - for direct gdb processing. No proprietary re-inventions please. Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux