Subject: vnode semantics
To: None <tech-kern@sun-lamp.cs.berkeley.edu>
From: Wolfgang Solfrank <ws@tools.de>
List: tech-kern
Date: 03/25/1994 16:52:49
Hello,

Can anybody explain to me the exact semantics of the vop_bmap call in the vfs
layer?

This routine isn't used in the normal vfs handling code (should it be called
in vfs_bio?). Instead the strategy routine is obviously expected to call this
routine itself (in which case it is totally superfluous in the vfs layer).

But this routine gets called by the dev/vn driver and by the vnode pager.
Now I'm a bit confused. What exactly is this routine supposed to do? And
how should it interface to the rest of some filesystem?

The reason why I askis this:
The ISO9660 filesystem allows for files to be divided in several extents.
These extents needn't end on a block boundary, but can be any number of
bytes long. To give an extreme example, it is allowed to have a file with
three extents all having one byte. The filesize of this file would be three
bytes. Note that the second and third extent, while starting on a block
boundary on the physical device, don't start on a block boundary in the
file.

Can this situation be conveniently handled by the vfs layer, or am I lost?

Any help greatly appreciated.
--
ws@TooLs.DE     (Wolfgang Solfrank, TooLs GmbH) +49-228-985800

------------------------------------------------------------------------------