Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#ifndef ASM_SCHID_H
2#define ASM_SCHID_H
3
4#include <linux/types.h>
5
6struct subchannel_id {
7 __u32 cssid : 8;
8 __u32 : 4;
9 __u32 m : 1;
10 __u32 ssid : 2;
11 __u32 one : 1;
12 __u32 sch_no : 16;
13} __attribute__ ((packed, aligned(4)));
14
15#ifdef __KERNEL__
16#include <linux/string.h>
17
18/* Helper function for sane state of pre-allocated subchannel_id. */
19static inline void
20init_subchannel_id(struct subchannel_id *schid)
21{
22 memset(schid, 0, sizeof(struct subchannel_id));
23 schid->one = 1;
24}
25
26static inline int
27schid_equal(struct subchannel_id *schid1, struct subchannel_id *schid2)
28{
29 return !memcmp(schid1, schid2, sizeof(struct subchannel_id));
30}
31
32#endif /* __KERNEL__ */
33
34#endif /* ASM_SCHID_H */