62 lines
1.7 KiB
Plaintext
62 lines
1.7 KiB
Plaintext
.if n .pH ddi.rm/d3/gen/bp_mapin @(#)bp_mapin 43.13 of 3/25/93
|
|
.\" Copyright 1992, 1991 UNIX System Laboratories, Inc.
|
|
.TH bp_mapin D3
|
|
.IX "\f4bp_mapin\fP(D3)"
|
|
.SH NAME
|
|
\f4bp_mapin\fP \- allocate virtual address space for buffer page list
|
|
.SH SYNOPSIS
|
|
.nf
|
|
.na
|
|
.ft 4
|
|
#include <sys/types.h>
|
|
#include <sys/buf.h>
|
|
#include <sys/ddi.h>
|
|
.sp 0.4
|
|
void bp_mapin(struct buf_t *\f2bp\fP);
|
|
.ft 1
|
|
.ad
|
|
.fi
|
|
.SS Arguments
|
|
.RS 0
|
|
.IP "\f2bp\fP" 10n
|
|
Pointer to the buffer header structure.
|
|
.RE
|
|
.SH DESCRIPTION
|
|
The \f4bp_mapin\fP function is used to map virtual address space to
|
|
a page list maintained by the buffer header
|
|
[see \f4buf\fP(D4)] during a paged-I/O request.
|
|
.ig
|
|
89 For 4.2 maint release and ESMP,
|
|
bp_mapin will also handle \f4B_PHYS\fP buffers from \f4physiock\fP(D3).
|
|
..
|
|
.SS "Return Values"
|
|
None
|
|
.SH USAGE
|
|
A paged-I/O request is identified by the \f4B_PAGEIO\fP flag
|
|
being set in the \f4b_flags\fP field of the buffer header passed
|
|
to a driver's \f4strategy\fP(D2) routine.
|
|
.P
|
|
\f4bp_mapin\fP allocates system virtual address space,
|
|
maps that space to the page list, and returns the
|
|
new virtual address in the \f4b_un.b_addr\fP field of the \f4buf\fP structure.
|
|
This address is the virtual address of the start of the page mappings,
|
|
plus the offset given by the original value of \f4bp->b_un.b_addr\fP.
|
|
After the I/O completes, the
|
|
virtual address space can be deallocated using the \f4bp_mapout\fP(D3) function.
|
|
.SS Level
|
|
Base only.
|
|
.SS "Synchronization Constraints"
|
|
This routine may sleep if virtual space is not immediately available.
|
|
.P
|
|
Driver-defined basic locks and read/write locks
|
|
may not be held across calls to this function.
|
|
.P
|
|
Driver-defined sleep locks
|
|
may be held across calls to this function.
|
|
.SH REFERENCES
|
|
.na
|
|
\f4bp_mapout\fP(D3),
|
|
\f4buf\fP(D4),
|
|
\f4strategy\fP(D2)
|
|
.ad
|