Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ msgphysreq(D3) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought






       msgphysreq(D3)                                        msgphysreq(D3)


       NAME
             msgphysreq - ensure that a message meets physical requirements

       SYNOPSIS
             #include <sys/stream.h>
             #include <sys/kmem.h>
             #include <sys/ddi.h>
             mblk_t *msgphysreq(mblk_t *mp, physreq_t *preqp);

          Arguments
             mp        Pointer to the message whose physical properties
                       should be checked.

             preqp     Physical requirements for the data buffer.

       DESCRIPTION
             msgphysreq ensures that data blocks for a message satisfy a
             set of physical requirements.

             If the memory for the data pointed to by b_rptr up to b_wptr
             (see msgb(D4)) of the message block(s) in mp satisfy the
             constraints specified by the physreq(D4) structure pointed to
             by preqp, this message is simply returned unaltered.

             Otherwise, the data are copied as necessary into buffers which
             do meet the constraints.  If copied, the data will always be
             in the front of the new buffer; that is, b_rptr will equal
             db_base (see datab(D4)).  In this case, some or all of the
             original message will be freed, and a new message pointer may
             be returned.

             The original message pointer must not be used after calling
             msgphysreq.

          Return Values
             On success, msgphysreq returns a pointer to the new message.
             On failure (due to inability to allocate new buffers),
             msgphysreq returns NULL and the original message pointer is
             still valid.

       USAGE
             msgphysreq should be used when a message of (initially)
             unknown physical properties must be made accessible to a
             hardware device via DMA.




                           Copyright 1994 Novell, Inc.               Page 1













      msgphysreq(D3)                                        msgphysreq(D3)


         Level
            Base or Interrupt.

         Synchronization Constraints
            Does not sleep.

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

      REFERENCES
            allocb_physreq(D3), kmem_alloc_physreq(D3),
            msgpullup_physreq(D3), datab(D4), msgb(D4), physreq(D4)

      NOTICES
         Portability
            All processors

         Applicability
            ddi: 6, 6mp, 7, 7mp





























                          Copyright 1994 Novell, Inc.               Page 2








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