]> git.proxmox.com Git - mirror_spl.git/blobdiff - include/sys/sysmacros.h
Breaking the world for a little bit. If anyone is going to continue
[mirror_spl.git] / include / sys / sysmacros.h
index c55b070ac3e81e893a18c9563ecb4070af324e56..95f7f8a3b39e9bcbcd41cb5f6db99d09a785ef4d 100644 (file)
@@ -197,6 +197,18 @@ extern int ddi_strtoul(const char *str, char **nptr,
 #define offsetof(s, m)  ((size_t)(&(((s *)0)->m)))
 #endif
 
+#ifdef HAVE_3ARGS_INIT_WORK
+
+#define spl_init_work(wq,cb,d) INIT_WORK((wq), (void *)(cb), (void *)(d))
+#define spl_get_work_data(type,field,data)     (data)
+
+#else
+
+#define spl_init_work(wq,cb,d) INIT_WORK((wq), (void *)(cb));
+#define spl_get_work_data(type,field,data)     container_of(data,type,field)
+
+#endif
+
 #ifdef  __cplusplus
 }
 #endif