+/* Stolen From Linux list implementation */
+/* Modifications by Jack Lange <jarusl@cs.northwestern.edu> */
+/* (c) 2008, Jack Lange <jarusl@cs.northwestern.edu> */
+/* (c) 2008, The V3VEE Project <http://www.v3vee.org> */
+
#ifndef _VMM_LIST_H
#define _VMM_LIST_H
+// JRL FIXME
+// #ifdef __V3VEE__
+
#include <palacios/vmm_string.h>
#undef offsetof
#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
+
+#define container_of(ptr, type, member) ({ \
+ const typeof( ((type *)0)->member ) *__mptr = (ptr); \
+ (type *)( (char *)__mptr - offsetof(type,member) );})
+
+
static inline void prefetch(const void *x) {;}
/*
pos = n)
+// JRL FIXME
+//#endif // ! __V3VEE__
+
#endif