Changeset View
Changeset View
Standalone View
Standalone View
sys/compat/linuxkpi/common/include/linux/kref.h
Show All 23 Lines | |||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||
* | * | ||||
* $FreeBSD$ | * $FreeBSD$ | ||||
*/ | */ | ||||
#ifndef _LINUX_KREF_H_ | #ifndef _LINUXKPI_LINUX_KREF_H_ | ||||
#define _LINUX_KREF_H_ | #define _LINUXKPI_LINUX_KREF_H_ | ||||
#include <sys/types.h> | #include <sys/types.h> | ||||
#include <sys/refcount.h> | #include <sys/refcount.h> | ||||
#include <linux/compiler.h> | #include <linux/compiler.h> | ||||
#include <linux/kernel.h> | #include <linux/kernel.h> | ||||
#include <linux/mutex.h> | #include <linux/mutex.h> | ||||
#include <linux/refcount.h> | #include <linux/refcount.h> | ||||
▲ Show 20 Lines • Show All 81 Lines • ▼ Show 20 Lines | if (unlikely(!atomic_dec_and_test(&kref->refcount))) { | ||||
return 0; | return 0; | ||||
} | } | ||||
release(kref); | release(kref); | ||||
return 1; | return 1; | ||||
} | } | ||||
return 0; | return 0; | ||||
} | } | ||||
#endif /* _LINUX_KREF_H_ */ | #endif /* _LINUXKPI_LINUX_KREF_H_ */ |