--- rtnet-0.9.3/stack/include/rtskb_fifo.h.orig	Mon Apr 24 02:17:22 2006
+++ rtnet-0.9.3/stack/include/rtskb_fifo.h	Fri Aug  4 10:32:18 2006
@@ -90,11 +90,12 @@
 static inline struct rtskb *__rtskb_fifo_remove(struct rtskb_fifo *fifo)
 {
     unsigned long pos = fifo->read_pos;
-    struct rtskb *result = fifo->buffer[pos];
+    struct rtskb *result;
 
     if (unlikely(pos == fifo->write_pos))
         return NULL;
 
+    result = fifo->buffer[pos];
     /* result must have been read before read_pos update */
     smp_rmb();
 
