GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  NEW_UNRHDR (9)

NAME

new_unrhdr, delete_unrhdr, alloc_unr, alloc_unr_specific, free_unr - kernel unit number allocator

CONTENTS

Synopsis
Description
Code References
History
Authors

SYNOPSIS


.In sys/systm.h struct unrhdr * new_unrhdr int low int high struct mtx *mutex void delete_unrhdr struct unrhdr *uh int alloc_unr struct unrhdr *uh int alloc_unrl struct unrhdr *uh int alloc_unr_specific struct unrhdr *uh u_int item void free_unr struct unrhdr *uh u_int item

DESCRIPTION

The kernel unit number allocator is a generic facility, which allows to allocate unit numbers within a specified range.
new_unrhdr low high mutex
  Initialize a new unit number allocator entity. The low and high arguments specify minimum and maximum number of unit numbers. There is no cost associated with the range of unit numbers, so unless the resource really is finite, INT_MAX can be used. If mutex is not NULL, it is used for locking when allocating and freeing units. Otherwise, internal mutex is used.
delete_unrhdr uh
  Destroy specified unit number allocator entity.
alloc_unr uh
  Return a new unit number. The lowest free number is always allocated. This function does not allocate memory and never sleeps, however it may block on a mutex. If no free unit numbers are left, -1 is returned.
alloc_unrl uh
  Same as alloc_unr except that mutex is assumed to be already locked and thus is not used.
alloc_unr_specific uh item
  Allocate a specific unit number. This function allocates memory and thus may sleep. The allocated unit number is returned on success. If the specified number is already allocated or out of the range, -1 is returned.
free_unr uh item
  Free a previously allocated unit number. This function may require allocating memory, and thus it can sleep. There is no pre-locked variant.

CODE REFERENCES

The above functions are implemented in sys/kern/subr_unit.c.

HISTORY

Kernel unit number allocator first appeared in
.Fx 6.0 .

AUTHORS


.An -nosplit Kernel unit number allocator was written by
.An Poul-Henning Kamp . This manpage was written by
.An Gleb Smirnoff .
Search for    or go to Top of page |  Section 9 |  Main Index


Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.