VOP_BMAP — Logical to physical block number conversion
Contents
Description
This vnode call is used to lookup the physical block number of the file system's underlying device where
a given logical block of a file is stored. Its arguments are:
vp The vnode of the file.
bn Logical block number within the file identified by vp.
bop Return storage for the buffer object associated with the file system's underlying device.
bnp Return storage for the physical block number.
runp Return storage for the number of succeeding logical blocks that may be efficiently read at the same
time as the requested block. This will usually be the number of logical blocks whose physical
blocks are contiguously allocated. However a file system is free to define "efficient" as it see
fit.
runb Like runp but for preceding rather than succeeding blocks.
Any of the return arguments may be NULL to indicate that the caller does not care about that information.
History
A bmap() function first appeared in 4.2BSD.
Locks
The vnode will be locked on entry and should remain locked on return.
Name
VOP_BMAP — Logical to physical block number conversion
Return Values
Zero is returned on success, otherwise an error code is returned.
See Also
vnode(9),
Synopsis
#include<sys/param.h>#include<sys/vnode.h>intVOP_BMAP(structvnode*vp, daddr_tbn, structbufobj**bop, daddr_t*bnp, int*runp, int*runb);
