Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ bp_mapin(D3) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought






       bp_mapin(D3)                                            bp_mapin(D3)


       NAME
             bp_mapin - allocate virtual address space for buffer page list

       SYNOPSIS
             #include <sys/types.h>
             #include <sys/buf.h>
             #include <sys/ddi.h>
             void bp_mapin(struct buf_t *bp);

          Arguments
             bp        Pointer to the buffer header structure.

       DESCRIPTION
             The bp_mapin function is used to map virtual address space to
             a page list maintained by the buffer header [see buf(D4)]
             during a paged-I/O request.

          Return Values
             None

       USAGE
             A paged-I/O request is identified by the B_PAGEIO flag being
             set in the b_flags field of the buffer header passed to a
             driver's strategy(D2) routine.  Before calling bp_mapin, the
             offset of the location in the first page where the I/O is to
             begin is stored in the b_un.b_addr field of the buf structure
             referenced by bp (for strategy routines, this is done for the
             driver by the system).

             bp_mapin allocates system virtual address space, maps that
             space to the page list, and returns the new virtual address in
             the b_un.b_addr field of the buf structure.  This address is
             the virtual address of the start of the page mappings, plus
             the offset given by the original value of bp->b_un.b_addr.
             After the I/O completes, the virtual address space can be
             deallocated using the bp_mapout(D3) function.

             B_PAGEIO won't be set unless the driver has the D_NOBRKUP flag
             set [see devflag(D1)].

          Level
             Base only.

          Synchronization Constraints
             This routine may sleep if virtual space is not immediately
             available.


                           Copyright 1994 Novell, Inc.               Page 1













      bp_mapin(D3)                                            bp_mapin(D3)


            Driver-defined basic locks and read/write locks may not be
            held across calls to this function.

            Driver-defined sleep locks may be held across calls to this
            function.

      REFERENCES
            bp_mapout(D3), buf(D4), devflag(D1), strategy(D2)

      NOTICES
         Portability
            All processors

         Applicability
            ddi: 1, 2, 3, 4, 5, 5mp, 6, 6mp, 7, 7mp

































                          Copyright 1994 Novell, Inc.               Page 2








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026