1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-26 16:18:31 +00:00

No man page currently exists so comment the two uncommented

non-trivial functions
This commit is contained in:
Kip Macy 2009-05-07 19:57:14 +00:00
parent e03d223bd4
commit 3982c69953
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=191899

View File

@ -1,6 +1,6 @@
/**************************************************************************
*
* Copyright (c) 2007,2008 Kip Macy kmacy@freebsd.org
* Copyright (c) 2007-2009 Kip Macy kmacy@freebsd.org
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@ -69,7 +69,10 @@ struct buf_ring {
void *br_ring[0];
};
/*
* multi-producer safe lock-free ring buffer enqueue
*
*/
static __inline int
buf_ring_enqueue(struct buf_ring *br, void *buf)
{
@ -169,8 +172,9 @@ buf_ring_dequeue_mc(struct buf_ring *br)
}
/*
* Single-Consumer dequeue for uses where dequeue
* is protected by a lock
* single-consumer dequeue
* use where dequeue is protected by a lock
* e.g. a network driver's tx queue lock
*/
static __inline void *
buf_ring_dequeue_sc(struct buf_ring *br)
@ -208,6 +212,11 @@ buf_ring_dequeue_sc(struct buf_ring *br)
return (buf);
}
/*
* return a pointer to the first entry in the ring
* without modifying it, or NULL if the ring is empty
* race-prone if not protected by a lock
*/
static __inline void *
buf_ring_peek(struct buf_ring *br)
{