⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 misc.h

📁 iscsi企业级target.很好用
💻 H
字号:
/* * Released under the terms of the GNU GPL v2.0. */#ifndef MISC_H#define MISC_Hstruct qelem {	struct qelem *q_forw;	struct qelem *q_back;};/* stolen list stuff from Linux kernel */#undef offsetof#ifdef __compiler_offsetof#define offsetof(TYPE,MEMBER) __compiler_offsetof(TYPE,MEMBER)#else#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)#endif#define LIST_HEAD_INIT(name) { &(name), &(name) }#define INIT_LIST_HEAD(ptr) do { \	(ptr)->q_forw = (ptr); (ptr)->q_back = (ptr); \} while (0)static inline int list_empty(const struct qelem *head){	return head->q_forw == head;}#define container_of(ptr, type, member) ({			\        const typeof( ((type *)0)->member ) *__mptr = (ptr);	\        (type *)( (char *)__mptr - offsetof(type,member) );})#define list_entry(ptr, type, member) \	container_of(ptr, type, member)#define list_for_each_entry(pos, head, member)				\	for (pos = list_entry((head)->q_forw, typeof(*pos), member);	\	     &pos->member != (head); 	\	     pos = list_entry(pos->member.q_forw, typeof(*pos), member))#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -