1
0
Files
irix-657m-src/eoe/man/manD/bp_mapin.d3
2022-09-29 17:59:04 +03:00

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