<dec f='src/src/sys/sys/buf.h' l='279' type='void biodone(buf_t * )'/>
<doc f='src/src/sys/sys/buf.h' l='276'>/*
 * bufferio(9) ops
 */</doc>
<use f='src/src/sys/arch/xen/xen/xbd_xenbus.c' l='761' u='c' c='xbdstrategy'/>
<use f='src/src/sys/arch/xen/xen/xbd_xenbus.c' l='767' u='c' c='xbdstrategy'/>
<use f='src/src/sys/dev/ccd.c' l='786' u='c' c='ccdstrategy'/>
<use f='src/src/sys/dev/ccd.c' l='873' u='c' c='ccdstart'/>
<use f='src/src/sys/dev/ccd.c' l='1039' u='c' c='ccdiodone'/>
<use f='src/src/sys/dev/cgd.c' l='332' u='c' c='cgdstrategy'/>
<use f='src/src/sys/dev/dksubr.c' l='291' u='c' c='dk_strategy1'/>
<use f='src/src/sys/dev/dksubr.c' l='297' u='c' c='dk_strategy1'/>
<use f='src/src/sys/dev/dksubr.c' l='439' u='c' c='dk_done1'/>
<use f='src/src/sys/dev/dksubr.c' l='459' u='c' c='dk_drain'/>
<use f='src/src/sys/dev/dkwedge/dk.c' l='1246' u='c' c='dkstrategy'/>
<use f='src/src/sys/dev/dkwedge/dk.c' l='1272' u='c' c='dkstart'/>
<use f='src/src/sys/dev/dkwedge/dk.c' l='1340' u='c' c='dkiodone'/>
<use f='src/src/sys/dev/dm/device-mapper.c' l='549' u='c' c='dmstrategy'/>
<use f='src/src/sys/dev/dm/device-mapper.c' l='557' u='c' c='dmstrategy'/>
<use f='src/src/sys/dev/fss.c' l='289' u='c' c='fss_strategy'/>
<use f='src/src/sys/dev/fss.c' l='1130' u='c' c='fss_bs_thread'/>
<use f='src/src/sys/dev/fss.c' l='1180' u='c' c='fss_bs_thread'/>
<use f='src/src/sys/dev/fss.c' l='1222' u='c' c='fss_bs_thread'/>
<use f='src/src/sys/dev/fss.c' l='1282' u='c' c='fss_bs_thread'/>
<use f='src/src/sys/dev/md.c' l='470' u='c' c='mdstrategy'/>
<use f='src/src/sys/dev/md.c' l='707' u='c' c='md_server_loop'/>
<use f='src/src/sys/dev/raidframe/rf_netbsdkintf.c' l='918' u='c' c='raidstrategy'/>
<use f='src/src/sys/dev/vnd.c' l='566' u='c' c='vndstrategy'/>
<use f='src/src/sys/dev/vnd.c' l='747' u='c' c='vndthread'/>
<use f='src/src/sys/dev/vnd.c' l='827' u='c' c='handle_with_rdwr'/>
<use f='src/src/sys/dev/vnd.c' l='975' u='c' c='vndiodone'/>
<use f='src/src/sys/fs/cd9660/cd9660_vnops.c' l='716' u='c' c='cd9660_strategy'/>
<use f='src/src/sys/fs/cd9660/cd9660_vnops.c' l='723' u='c' c='cd9660_strategy'/>
<use f='src/src/sys/fs/msdosfs/msdosfs_vnops.c' l='1726' u='c' c='msdosfs_strategy'/>
<use f='src/src/sys/fs/ntfs/ntfs_vnops.c' l='359' u='c' c='ntfs_strategy'/>
<use f='src/src/sys/fs/puffs/puffs_subr.c' l='113' u='c' c='puffs_parkdone_asyncbioread'/>
<use f='src/src/sys/fs/puffs/puffs_subr.c' l='136' u='c' c='puffs_parkdone_asyncbiowrite'/>
<use f='src/src/sys/fs/puffs/puffs_vnops.c' l='2945' u='c' c='puffs_vnop_strategy'/>
<use f='src/src/sys/fs/smbfs/smbfs_io.c' l='404' u='c' c='smbfs_doio'/>
<use f='src/src/sys/kern/subr_bufq.c' l='258' u='c' c='bufq_drain'/>
<use f='src/src/sys/kern/vfs_bio.c' l='450' u='r' c='bufinit'/>
<def f='src/src/sys/kern/vfs_bio.c' l='1531' ll='1548' type='void biodone(buf_t * bp)'/>
<use f='src/src/sys/kern/vfs_bio.c' l='2020' u='c' c='nestiobuf_done'/>
<doc f='src/src/sys/kern/vfs_bio.c' l='1515'>/*
 * Mark I/O complete on a buffer.
 *
 * If a callback has been requested, e.g. the pageout
 * daemon, do so. Otherwise, awaken waiting processes.
 *
 * [ Leffler, et al., says on p.247:
 *	&quot;This routine wakes up the blocked process, frees the buffer
 *	for an asynchronous write, or, for a request by the pagedaemon
 *	process, invokes a procedure specified in the buffer structure&quot; ]
 *
 * In real life, the pagedaemon (or other system processes) wants
 * to do async stuff to, and doesn&apos;t want the buffer brelse()&apos;d.
 * (for swap pager, that puts swap buffers on the free lists (!!!),
 * for the vn device, that puts allocated buffers on the free lists!)
 */</doc>
<use f='src/src/sys/miscfs/deadfs/dead_vnops.c' l='327' u='c' c='dead_strategy'/>
<use f='src/src/sys/miscfs/specfs/spec_vnops.c' l='1067' u='c' c='spec_strategy'/>
<use f='src/src/sys/nfs/nfs_bio.c' l='1230' u='c' c='nfs_doio'/>
<use f='src/src/sys/ufs/lfs/lfs_segment.c' l='319' u='c' c='lfs_vflush'/>
<use f='src/src/sys/ufs/lfs/lfs_segment.c' l='2193' u='c' c='lfs_writeseg'/>
<use f='src/src/sys/ufs/lfs/lfs_segment.c' l='2647' u='c' c='lfs_cluster_aiodone'/>
<use f='src/src/sys/ufs/lfs/lfs_vnops.c' l='1492' u='c' c='lfs_strategy'/>
<use f='src/src/sys/ufs/lfs/lfs_vnops.c' l='1500' u='c' c='lfs_strategy'/>
<use f='src/src/sys/ufs/mfs/mfs_vnops.c' l='156' u='c' c='mfs_strategy'/>
<use f='src/src/sys/ufs/mfs/mfs_vnops.c' l='167' u='c' c='mfs_strategy'/>
<use f='src/src/sys/ufs/mfs/mfs_vnops.c' l='191' u='c' c='mfs_doio'/>
<use f='src/src/sys/ufs/ufs/ufs_vnops.c' l='1454' u='c' c='ufs_strategy'/>
<use f='src/src/sys/ufs/ufs/ufs_vnops.c' l='1461' u='c' c='ufs_strategy'/>
<use f='src/src/sys/uvm/uvm_swap.c' l='1200' u='c' c='swstrategy'/>
<use f='src/src/sys/uvm/uvm_swap.c' l='1465' u='c' c='sw_reg_strategy'/>
<use f='src/src/sys/uvm/uvm_swap.c' l='1570' u='c' c='sw_reg_iodone'/>
<use f='src/src/sys/uvm/uvm_swap.c' l='1578' u='c' c='sw_reg_iodone'/>
