Print this page
4841 - lockf(3c): Minor formatting issues in man page

Split Close
Expand all
Collapse all
          --- old/usr/src/man/man3c/lockf.3c
          +++ new/usr/src/man/man3c/lockf.3c
↓ open down ↓ 27 lines elided ↑ open up ↑
  28   28  until the resource becomes unlocked. All the locks for a process are removed
  29   29  when the process terminates. See \fBfcntl\fR(2) for more information about
  30   30  record locking.
  31   31  .sp
  32   32  .LP
  33   33  The \fIfildes\fR argument is an open file descriptor. The file descriptor must
  34   34  have \fBO_WRONLY\fR or \fBO_RDWR\fR permission in order to establish locks with
  35   35  this function call.
  36   36  .sp
  37   37  .LP
  38      -The \fBfunction\fR argument is a control value that specifies the action to be
  39      -taken. The permissible values for \fBfunction\fR are defined in
       38 +The \fIfunction\fR argument is a control value that specifies the action to be
       39 +taken. The permissible values for \fIfunction\fR are defined in
  40   40  <\fBunistd.h\fR> as follows:
  41   41  .sp
  42   42  .in +2
  43   43  .nf
  44   44  #define   F_ULOCK   0   /* unlock previously locked section */
  45   45  #define   F_LOCK    1   /* lock section for exclusive use */
  46   46  #define   F_TLOCK   2   /* test & lock section for exclusive use */
  47   47  #define   F_TEST    3   /* test section for other locks */
  48   48  .fi
  49   49  .in -2
  50   50  
  51   51  .sp
  52   52  .LP
  53      -All other values of \fBfunction\fR are reserved for future extensions and will
       53 +All other values of \fIfunction\fR are reserved for future extensions and will
  54   54  result in an error if not implemented.
  55   55  .sp
  56   56  .LP
  57   57  \fBF_TEST\fR is used to detect if a lock by another process is present on the
  58   58  specified section. \fBF_LOCK\fR and \fBF_TLOCK\fR both lock a section of a file
  59   59  if the section is available. \fBF_ULOCK\fR removes locks from a section of the
  60   60  file.
  61   61  .sp
  62   62  .LP
  63      -The \fBsize\fR argument is the number of contiguous bytes to be locked or
       63 +The \fIsize\fR argument is the number of contiguous bytes to be locked or
  64   64  unlocked. The resource to be locked or unlocked starts at the current offset in
  65      -the file and extends forward for a positive size and backward for a negative
  66      -size (the preceding bytes up to but not including the current offset). If
  67      -\fBsize\fR is zero, the section from the current offset through the largest
       65 +the file and extends forward for a positive \fIsize\fR and backward for a negative
       66 +\fIsize\fR (the preceding bytes up to but not including the current offset). If
       67 +\fIsize\fR is zero, the section from the current offset through the largest
  68   68  file offset is locked (that is, from the current offset through the present or
  69   69  any future end-of-file). An area need not be allocated to the file in order to
  70   70  be locked as such locks may exist past the end-of-file.
  71   71  .sp
  72   72  .LP
  73   73  The sections locked with \fBF_LOCK\fR or \fBF_TLOCK\fR may, in whole or in
  74   74  part, contain or be contained by a previously locked section for the same
  75   75  process.  Locked sections will be unlocked starting at the point of the offset
  76      -through \fBsize\fR bytes or to the end of file if \fBsize\fR is (\fBoff_t\fR)
       76 +through \fIsize\fR bytes or to the end of file if \fIsize\fR is (\fBoff_t\fR)
  77   77  0. When this situation occurs, or if this situation occurs in adjacent
  78   78  sections, the sections are combined into a single section. If the request
  79   79  requires that a new element be added to the table of active locks and this
  80   80  table is already full, an error is returned, and the new section is not locked.
  81   81  .sp
  82   82  .LP
  83   83  \fBF_LOCK\fR and \fBF_TLOCK\fR requests differ only by the action taken if the
  84   84  resource is not available. \fBF_LOCK\fR blocks the calling thread until the
  85   85  resource is available. \fBF_TLOCK\fR causes the function to return \(mi1 and
  86   86  set \fBerrno\fR to \fBEAGAIN\fR if the section is already locked by another
↓ open down ↓ 5 lines elided ↑ open up ↑
  92   92  .sp
  93   93  .LP
  94   94  \fBF_ULOCK\fR requests may, in whole or in part, release one or more locked
  95   95  sections controlled by the process. When sections are not fully released, the
  96   96  remaining sections are still locked by the process. Releasing the center
  97   97  section of a locked section requires an additional element in the table of
  98   98  active locks. If this table is full, an \fBerrno\fR is set to \fBEDEADLK\fR and
  99   99  the requested section is not released.
 100  100  .sp
 101  101  .LP
 102      -An \fBF_ULOCK\fR request in which \fBsize\fR is non-zero and the offset of the
      102 +An \fBF_ULOCK\fR request in which \fIsize\fR is non-zero and the offset of the
 103  103  last byte of the requested section is the maximum value for an object of type
 104      -\fBoff_t\fR, when the process has an existing lock in which \fBsize\fR is 0 and
      104 +\fBoff_t\fR, when the process has an existing lock in which \fIsize\fR is 0 and
 105  105  which includes the last byte of the requested section, will be treated as a
 106      -request to unlock from the start of the requested section with a size equal to
      106 +request to unlock from the start of the requested section with a \fIsize\fR equal to
 107  107  0. Otherwise, an \fBF_ULOCK\fR request will attempt to unlock only the
 108  108  requested section.
 109  109  .sp
 110  110  .LP
 111  111  A potential for deadlock occurs if the threads of a process controlling a
 112  112  locked resource is put to sleep by requesting another process's locked
 113  113  resource. Thus calls to \fBlockf()\fR or \fBfcntl\fR(2) scan for a deadlock
 114  114  prior to sleeping on a locked resource. An error return is made if sleeping on
 115  115  the locked resource would cause a deadlock.
 116  116  .sp
↓ open down ↓ 10 lines elided ↑ open up ↑
 127  127  .sp
 128  128  .LP
 129  129  The \fBlockf()\fR function will fail if:
 130  130  .sp
 131  131  .ne 2
 132  132  .na
 133  133  \fB\fBEBADF\fR\fR
 134  134  .ad
 135  135  .RS 20n
 136  136  The \fIfildes\fR argument is not a valid open file descriptor; or
 137      -\fBfunction\fR is \fBF_LOCK\fR or \fBF_TLOCK\fR and \fIfildes\fR is not a valid
      137 +\fIfunction\fR is \fBF_LOCK\fR or \fBF_TLOCK\fR and \fIfildes\fR is not a valid
 138  138  file descriptor open for writing.
 139  139  .RE
 140  140  
 141  141  .sp
 142  142  .ne 2
 143  143  .na
 144  144  \fB\fBEACCES\fR or \fBEAGAIN\fR\fR
 145  145  .ad
 146  146  .RS 20n
 147      -The \fBfunction\fR argument is \fBF_TLOCK\fR or \fBF_TEST\fR and the section is
      147 +The \fIfunction\fR argument is \fBF_TLOCK\fR or \fBF_TEST\fR and the section is
 148  148  already locked by another process.
 149  149  .RE
 150  150  
 151  151  .sp
 152  152  .ne 2
 153  153  .na
 154  154  \fB\fBEDEADLK\fR\fR
 155  155  .ad
 156  156  .RS 20n
 157      -The \fBfunction\fR argument is \fBF_LOCK\fR and a deadlock is detected.
      157 +The \fIfunction\fR argument is \fBF_LOCK\fR and a deadlock is detected.
 158  158  .RE
 159  159  
 160  160  .sp
 161  161  .ne 2
 162  162  .na
 163  163  \fB\fBEINTR\fR\fR
 164  164  .ad
 165  165  .RS 20n
 166  166  A signal was caught during execution of the function.
 167  167  .RE
↓ open down ↓ 7 lines elided ↑ open up ↑
 175  175  The \fIfildes\fR argument is on a remote machine and the link to that machine
 176  176  is no longer active.
 177  177  .RE
 178  178  
 179  179  .sp
 180  180  .ne 2
 181  181  .na
 182  182  \fB\fBEINVAL\fR\fR
 183  183  .ad
 184  184  .RS 20n
 185      -The \fBfunction\fR argument is not one of \fBF_LOCK\fR, \fBF_TLOCK\fR,
 186      -\fBF_TEST\fR, or \fBF_ULOCK\fR; or \fBsize\fR plus the current file offset is
      185 +The \fIfunction\fR argument is not one of \fBF_LOCK\fR, \fBF_TLOCK\fR,
      186 +\fBF_TEST\fR, or \fBF_ULOCK\fR; or \fIsize\fR plus the current file offset is
 187  187  less than 0.
 188  188  .RE
 189  189  
 190  190  .sp
 191  191  .ne 2
 192  192  .na
 193  193  \fB\fBEOVERFLOW\fR\fR
 194  194  .ad
 195  195  .RS 20n
 196      -The offset of the first, or if \fBsize\fR is not 0 then the last, byte in the
      196 +The offset of the first, or if \fIsize\fR is not 0 then the last, byte in the
 197  197  requested section cannot be represented correctly in an object of type
 198  198  \fBoff_t\fR.
 199  199  .RE
 200  200  
 201  201  .sp
 202  202  .LP
 203  203  The \fBlockf()\fR function may fail if:
 204  204  .sp
 205  205  .ne 2
 206  206  .na
 207  207  \fB\fBEAGAIN\fR\fR
 208  208  .ad
 209  209  .RS 24n
 210      -The \fBfunction\fR argument is \fBF_LOCK\fR or \fBF_TLOCK\fR and the file is
      210 +The \fIfunction\fR argument is \fBF_LOCK\fR or \fBF_TLOCK\fR and the file is
 211  211  mapped with \fBmmap\fR(2).
 212  212  .RE
 213  213  
 214  214  .sp
 215  215  .ne 2
 216  216  .na
 217  217  \fB\fBEDEADLK\fR or \fBENOLCK\fR\fR
 218  218  .ad
 219  219  .RS 24n
 220      -The \fBfunction\fR argument is \fBF_LOCK\fR, \fBF_TLOCK\fR, or \fBF_ULOCK\fR
      220 +The \fIfunction\fR argument is \fBF_LOCK\fR, \fBF_TLOCK\fR, or \fBF_ULOCK\fR
 221  221  and the request would cause the number of locks to exceed a system-imposed
 222  222  limit.
 223  223  .RE
 224  224  
 225  225  .sp
 226  226  .ne 2
 227  227  .na
 228  228  \fB\fBEOPNOTSUPP\fR or \fBEINVAL\fR\fR
 229  229  .ad
 230  230  .RS 24n
↓ open down ↓ 45 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX