ucas man page on NetBSD

Man page or keyword search:  
man Server   9087 pages
apropos Keyword Search (all sections)
Output format
NetBSD logo
[printable version]

UCAS(9)			 BSD Kernel Developer's Manual		       UCAS(9)

NAME
     ucas — atomic memory operations on user-space address

SYNOPSIS
     #include <sys/systm.h>

     int
     ucas_ptr(volatile void *uptr, void *old, void *new, void *retp);

     int
     ucas_int(volatile int *uptr, int old, int new, int *retp);

DESCRIPTION
     These functions provide compare-and-swap (CAS) functionality on user-
     space address.

     Except that they can be safely used for the kernel to access user-space
     address, they are semantically equivalents of atomic_cas(3).

     uptr  The pointer to the variable.	 This should be a user-space pointer.

     old   The value to compare with the variable.

     new   The value to store to the variable.

     retp  The pointer to the memory to store the old value of the variable.

RETURN VALUES
     On success, these functions return 0.  In that case, the caller can con‐
     sult the value returned via retp to check the result of the CAS opera‐
     tion.  Otherwise, these functions return an appropriate errno(9) error
     code, typically EFAULT.

SEE ALSO
     atomic_cas(3), intro(9)

BUGS
     Conceptually, the retp argument of ucas_ptr() would be of void **.	 The
     current prototype is a compromise for usability.

BSD			       October 24, 2011				   BSD
[top]
                             _         _         _ 
                            | |       | |       | |     
                            | |       | |       | |     
                         __ | | __ __ | | __ __ | | __  
                         \ \| |/ / \ \| |/ / \ \| |/ /  
                          \ \ / /   \ \ / /   \ \ / /   
                           \   /     \   /     \   /    
                            \_/       \_/       \_/ 
More information is available in HTML format for server NetBSD

List of man pages available for NetBSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net