* [Qemu-devel] stacking the block layer
@ 2009-08-05 1:37 Alexander Graf
2009-08-12 12:43 ` Kevin Wolf
0 siblings, 1 reply; 2+ messages in thread
From: Alexander Graf @ 2009-08-05 1:37 UTC (permalink / raw)
To: qemu-devel
Hi list,
I just implemented dzip (seekable gzip) support and stumbled across a
major bummer in the block layer:
Formats can't be stacked.
So why do we have this restriction? From what I could tell, the
current code would just run into an endless loop, because the probe
function of the format we're trying to open triggers when trying to
open the underlying file.
Now that is a valid problem, but can't we just match that when opening
a file from say "qcow2" that we simply don't open backing files as
"qcow2" as well?
That way we could have qcow2 in dzip served via HTTP. At the end of
the day I also want to bring tar into the game, so we'd have qcow2
(format) in tar (format) in dzip (format) on HTTP (protocol).
I'd like to hear your thoughts on that - are there any reasons not to
go down this road?
Alex
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] stacking the block layer
2009-08-05 1:37 [Qemu-devel] stacking the block layer Alexander Graf
@ 2009-08-12 12:43 ` Kevin Wolf
0 siblings, 0 replies; 2+ messages in thread
From: Kevin Wolf @ 2009-08-12 12:43 UTC (permalink / raw)
To: Alexander Graf; +Cc: qemu-devel
Alexander Graf schrieb:
> Hi list,
>
> I just implemented dzip (seekable gzip) support and stumbled across a
> major bummer in the block layer:
>
> Formats can't be stacked.
>
> So why do we have this restriction? From what I could tell, the
> current code would just run into an endless loop, because the probe
> function of the format we're trying to open triggers when trying to
> open the underlying file.
>
> Now that is a valid problem, but can't we just match that when opening
> a file from say "qcow2" that we simply don't open backing files as
> "qcow2" as well?
>
> That way we could have qcow2 in dzip served via HTTP. At the end of
> the day I also want to bring tar into the game, so we'd have qcow2
> (format) in tar (format) in dzip (format) on HTTP (protocol).
No, this should actually be qcow2 (format) on tar (protocol) on dzip
(protocol) on http (protocol). I'm not sure though if you can specify
things like tar:dzip:http://... with the current block code but I don't
think you would run into the problem you described above with protocols.
Kevin
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-08-12 12:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-05 1:37 [Qemu-devel] stacking the block layer Alexander Graf
2009-08-12 12:43 ` Kevin Wolf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).