projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
datapath: Make 'struct work_struct' consistent with kernel definition.
[openvswitch]
/
datapath
/
linux
/
compat
/
include
/
linux
/
genetlink.h
diff --git
a/datapath/linux/compat/include/linux/genetlink.h
b/datapath/linux/compat/include/linux/genetlink.h
index e45d08546ef66186b68dd407a0aa69a2449489de..8b894be38ceadcbdcc0e88f903b252feea36f8a1 100644
(file)
--- a/
datapath/linux/compat/include/linux/genetlink.h
+++ b/
datapath/linux/compat/include/linux/genetlink.h
@@
-1,15
+1,23
@@
#ifndef __GENETLINK_WRAPPER_H
#define __GENETLINK_WRAPPER_H 1
#ifndef __GENETLINK_WRAPPER_H
#define __GENETLINK_WRAPPER_H 1
+#include <linux/version.h>
#include_next <linux/genetlink.h>
#include_next <linux/genetlink.h>
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
#ifdef CONFIG_PROVE_LOCKING
#ifdef CONFIG_PROVE_LOCKING
-/* No version of the kernel has this function, but our locking scheme depends
- * on genl_mutex so for clarity we use it where appropriate. */
static inline int lockdep_genl_is_held(void)
{
return 1;
}
#endif
static inline int lockdep_genl_is_held(void)
{
return 1;
}
#endif
+#endif
+
+#ifndef genl_dereference
+#include <linux/rcupdate.h>
+
+#define genl_dereference(p) \
+ rcu_dereference_protected(p, lockdep_genl_is_held())
+#endif
#endif /* linux/genetlink.h wrapper */
#endif /* linux/genetlink.h wrapper */