ddi_ffs(9F)
NAME
ddi_ffs, ddi_fls − find first (last) bit set in a long integer
SYNOPSIS
#include <sys/conf.h>
#include <sys/ddi.h>
#include <sys/sunddi.h>
int ddi_ffs(long mask);
int ddi_fls(long mask);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI).
ARGUMENTS
mask A 32-bit argument value to search through.
DESCRIPTION
The function ddi_ffs() takes its argument and returns the shift count that the first (least significant) bit set in the argument corresponds to. The function ddi_fls() does the same, only it returns the shift count for the last (most significant) bit set in the argument.
RETURN VALUES
0 No bits are set in mask.
N Bit N is the least significant (ddi_ffs) or most significant (ddi_fls) bit set in mask. Bits are numbered from 1 to 32, with bit 1 being the least significant bit position and bit 32 the most significant position.
CONTEXT
This function can be called from user or interrupt context.
SEE ALSO
Writing Device Drivers
SunOS 5.5.1 — Last change: 20 Dec 1995