[Libvir] [PATCH] Refactor xend_internal.c block device detection

Daniel P. Berrange berrange at redhat.com
Tue Oct 16 15:30:44 UTC 2007

On Tue, Oct 16, 2007 at 03:16:34PM +0100, Richard W.M. Jones wrote:
> Daniel P. Berrange wrote:
> >On Tue, Oct 16, 2007 at 02:13:04PM +0100, Richard W.M. Jones wrote:
> >>This patch is a little bit esoteric, but I need it for something I'm 
> >>working on at the moment.
> >>
> >>At the moment the code in xend_internal.c: xend_parse_sexp_desc parses 
> >>the domain sexpr directly into XML.  This makes it rather hard to just 
> >>get a list of block devices without repeating the same code.  So here 
> >>I've factored out the common code for parsing block devices into a 
> >>separate function and callback.
> >
> >I agree that its good to separate this code out, however, I'd split it
> >slightly differently. Instead of a function to parse all block devices
> >and a callback to receive each one, I'd have the new function just be 
> >responsible for parsing a single block device. Keep iteration over block
> >devices in the caller & avoid the callback. This is more in keeping with
> >the style of the other functions for parsing XML & related domain info
> >formats
> I'm not sure I understand.  Do you mean the function would parse a block 
> device and return a structure?

Yes, that's what I was thinking, although I forgot this was in the Xen 
driver, not QEMU, and so doesn't have any such struct defined at this time. 
So perhaps its not worth the hassle - go with your original patch if you 

|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 

More information about the libvir-list mailing list