Subject: puvnd (pass to userland vnd)?
To: None <tech-kern@NetBSD.org>
From: Dieter Baron <dillo@NetBSD.org>
List: tech-kern
Date: 03/09/2007 00:25:01
hi,

my goal is to enhance vnd(4) to support UDIF (Apple's Universal Disk
Image Format; the format .dmg files use).  This format compresses
chunks (usually 128kb) of the disk, similar to CLOOP2 we already
support.  It can use zlib or bzip2, and has support for AES-128
encryption.

  Should I add support for this inside the kernel, by adding it to
vnd.c?

  Or is it preferable to have the ability to pass block read/write
requests to a vnd to a user land process, similar to what puffs does
for file systems?  That way, we could more easily add support for
various other image formats, like those used by VMware or qemu.  (As a
side note, this is how Mac OS X's support for UDIF works.)

  If I went the user land way, what non-obvious pitfalls should I look
out for (possible deadlocks or starvation, ...)?

					yours,
					dillo