Make fio include the git version in the version output
[fio.git] / fifo.h
diff --git a/fifo.h b/fifo.h
index 6a9115d48e4561702325b1921da191444b95f9eb..749136530a2c5410867f10caf672c155949daa2f 100644 (file)
--- a/fifo.h
+++ b/fifo.h
@@ -28,21 +28,31 @@ struct fifo {
 struct fifo *fifo_alloc(unsigned int);
 unsigned int fifo_put(struct fifo *, void *, unsigned int);
 unsigned int fifo_get(struct fifo *, void *, unsigned int);
+void fifo_free(struct fifo *);
 
 static inline unsigned int fifo_len(struct fifo *fifo)
 {
        return fifo->in - fifo->out;
 }
 
+static inline unsigned int fifo_room(struct fifo *fifo)
+{
+       return fifo->size - fifo->in + fifo->out;
+}
+
+#ifndef min
 #define min(x,y) ({ \
        typeof(x) _x = (x);     \
        typeof(y) _y = (y);     \
        (void) (&_x == &_y);            \
        _x < _y ? _x : _y; })
+#endif
 
+#ifndef max
 #define max(x,y) ({ \
        typeof(x) _x = (x);     \
        typeof(y) _y = (y);     \
        (void) (&_x == &_y);            \
        _x > _y ? _x : _y; })
 
+#endif