scheduler: compute time-average nr_running per run-queue
[linux-2.6.git] / include / linux / drbd_nl.h
1 /*
2    PAKET( name,
3           TYPE ( pn, pr, member )
4           ...
5    )
6
7    You may never reissue one of the pn arguments
8 */
9
10 #if !defined(NL_PACKET) || !defined(NL_STRING) || !defined(NL_INTEGER) || !defined(NL_BIT) || !defined(NL_INT64)
11 #error "The macros NL_PACKET, NL_STRING, NL_INTEGER, NL_INT64 and NL_BIT needs to be defined"
12 #endif
13
14 NL_PACKET(primary, 1,
15        NL_BIT(          1,      T_MAY_IGNORE,   primary_force)
16 )
17
18 NL_PACKET(secondary, 2, )
19
20 NL_PACKET(disk_conf, 3,
21         NL_INT64(       2,      T_MAY_IGNORE,   disk_size)
22         NL_STRING(      3,      T_MANDATORY,    backing_dev,    128)
23         NL_STRING(      4,      T_MANDATORY,    meta_dev,       128)
24         NL_INTEGER(     5,      T_MANDATORY,    meta_dev_idx)
25         NL_INTEGER(     6,      T_MAY_IGNORE,   on_io_error)
26         NL_INTEGER(     7,      T_MAY_IGNORE,   fencing)
27         NL_BIT(         37,     T_MAY_IGNORE,   use_bmbv)
28         NL_BIT(         53,     T_MAY_IGNORE,   no_disk_flush)
29         NL_BIT(         54,     T_MAY_IGNORE,   no_md_flush)
30           /*  55 max_bio_size was available in 8.2.6rc2 */
31         NL_INTEGER(     56,     T_MAY_IGNORE,   max_bio_bvecs)
32         NL_BIT(         57,     T_MAY_IGNORE,   no_disk_barrier)
33         NL_BIT(         58,     T_MAY_IGNORE,   no_disk_drain)
34 )
35
36 NL_PACKET(detach, 4, )
37
38 NL_PACKET(net_conf, 5,
39         NL_STRING(      8,      T_MANDATORY,    my_addr,        128)
40         NL_STRING(      9,      T_MANDATORY,    peer_addr,      128)
41         NL_STRING(      10,     T_MAY_IGNORE,   shared_secret,  SHARED_SECRET_MAX)
42         NL_STRING(      11,     T_MAY_IGNORE,   cram_hmac_alg,  SHARED_SECRET_MAX)
43         NL_STRING(      44,     T_MAY_IGNORE,   integrity_alg,  SHARED_SECRET_MAX)
44         NL_INTEGER(     14,     T_MAY_IGNORE,   timeout)
45         NL_INTEGER(     15,     T_MANDATORY,    wire_protocol)
46         NL_INTEGER(     16,     T_MAY_IGNORE,   try_connect_int)
47         NL_INTEGER(     17,     T_MAY_IGNORE,   ping_int)
48         NL_INTEGER(     18,     T_MAY_IGNORE,   max_epoch_size)
49         NL_INTEGER(     19,     T_MAY_IGNORE,   max_buffers)
50         NL_INTEGER(     20,     T_MAY_IGNORE,   unplug_watermark)
51         NL_INTEGER(     21,     T_MAY_IGNORE,   sndbuf_size)
52         NL_INTEGER(     22,     T_MAY_IGNORE,   ko_count)
53         NL_INTEGER(     24,     T_MAY_IGNORE,   after_sb_0p)
54         NL_INTEGER(     25,     T_MAY_IGNORE,   after_sb_1p)
55         NL_INTEGER(     26,     T_MAY_IGNORE,   after_sb_2p)
56         NL_INTEGER(     39,     T_MAY_IGNORE,   rr_conflict)
57         NL_INTEGER(     40,     T_MAY_IGNORE,   ping_timeo)
58         NL_INTEGER(     67,     T_MAY_IGNORE,   rcvbuf_size)
59         NL_INTEGER(     81,     T_MAY_IGNORE,   on_congestion)
60         NL_INTEGER(     82,     T_MAY_IGNORE,   cong_fill)
61         NL_INTEGER(     83,     T_MAY_IGNORE,   cong_extents)
62           /* 59 addr_family was available in GIT, never released */
63         NL_BIT(         60,     T_MANDATORY,    mind_af)
64         NL_BIT(         27,     T_MAY_IGNORE,   want_lose)
65         NL_BIT(         28,     T_MAY_IGNORE,   two_primaries)
66         NL_BIT(         41,     T_MAY_IGNORE,   always_asbp)
67         NL_BIT(         61,     T_MAY_IGNORE,   no_cork)
68         NL_BIT(         62,     T_MANDATORY,    auto_sndbuf_size)
69         NL_BIT(         70,     T_MANDATORY,    dry_run)
70 )
71
72 NL_PACKET(disconnect, 6,
73         NL_BIT(         84,     T_MAY_IGNORE,   force)
74 )
75
76 NL_PACKET(resize, 7,
77         NL_INT64(               29,     T_MAY_IGNORE,   resize_size)
78         NL_BIT(                 68,     T_MAY_IGNORE,   resize_force)
79         NL_BIT(                 69,     T_MANDATORY,    no_resync)
80 )
81
82 NL_PACKET(syncer_conf, 8,
83         NL_INTEGER(     30,     T_MAY_IGNORE,   rate)
84         NL_INTEGER(     31,     T_MAY_IGNORE,   after)
85         NL_INTEGER(     32,     T_MAY_IGNORE,   al_extents)
86 /*      NL_INTEGER(     71,     T_MAY_IGNORE,   dp_volume)
87  *      NL_INTEGER(     72,     T_MAY_IGNORE,   dp_interval)
88  *      NL_INTEGER(     73,     T_MAY_IGNORE,   throttle_th)
89  *      NL_INTEGER(     74,     T_MAY_IGNORE,   hold_off_th)
90  * feature will be reimplemented differently with 8.3.9 */
91         NL_STRING(      52,     T_MAY_IGNORE,   verify_alg,     SHARED_SECRET_MAX)
92         NL_STRING(      51,     T_MAY_IGNORE,   cpu_mask,       32)
93         NL_STRING(      64,     T_MAY_IGNORE,   csums_alg,      SHARED_SECRET_MAX)
94         NL_BIT(         65,     T_MAY_IGNORE,   use_rle)
95         NL_INTEGER(     75,     T_MAY_IGNORE,   on_no_data)
96         NL_INTEGER(     76,     T_MAY_IGNORE,   c_plan_ahead)
97         NL_INTEGER(     77,     T_MAY_IGNORE,   c_delay_target)
98         NL_INTEGER(     78,     T_MAY_IGNORE,   c_fill_target)
99         NL_INTEGER(     79,     T_MAY_IGNORE,   c_max_rate)
100         NL_INTEGER(     80,     T_MAY_IGNORE,   c_min_rate)
101 )
102
103 NL_PACKET(invalidate, 9, )
104 NL_PACKET(invalidate_peer, 10, )
105 NL_PACKET(pause_sync, 11, )
106 NL_PACKET(resume_sync, 12, )
107 NL_PACKET(suspend_io, 13, )
108 NL_PACKET(resume_io, 14, )
109 NL_PACKET(outdate, 15, )
110 NL_PACKET(get_config, 16, )
111 NL_PACKET(get_state, 17,
112         NL_INTEGER(     33,     T_MAY_IGNORE,   state_i)
113 )
114
115 NL_PACKET(get_uuids, 18,
116         NL_STRING(      34,     T_MAY_IGNORE,   uuids,  (UI_SIZE*sizeof(__u64)))
117         NL_INTEGER(     35,     T_MAY_IGNORE,   uuids_flags)
118 )
119
120 NL_PACKET(get_timeout_flag, 19,
121         NL_BIT(         36,     T_MAY_IGNORE,   use_degraded)
122 )
123
124 NL_PACKET(call_helper, 20,
125         NL_STRING(      38,     T_MAY_IGNORE,   helper,         32)
126 )
127
128 /* Tag nr 42 already allocated in drbd-8.1 development. */
129
130 NL_PACKET(sync_progress, 23,
131         NL_INTEGER(     43,     T_MAY_IGNORE,   sync_progress)
132 )
133
134 NL_PACKET(dump_ee, 24,
135         NL_STRING(      45,     T_MAY_IGNORE,   dump_ee_reason, 32)
136         NL_STRING(      46,     T_MAY_IGNORE,   seen_digest, SHARED_SECRET_MAX)
137         NL_STRING(      47,     T_MAY_IGNORE,   calc_digest, SHARED_SECRET_MAX)
138         NL_INT64(       48,     T_MAY_IGNORE,   ee_sector)
139         NL_INT64(       49,     T_MAY_IGNORE,   ee_block_id)
140         NL_STRING(      50,     T_MAY_IGNORE,   ee_data,        32 << 10)
141 )
142
143 NL_PACKET(start_ov, 25,
144         NL_INT64(       66,     T_MAY_IGNORE,   start_sector)
145 )
146
147 NL_PACKET(new_c_uuid, 26,
148        NL_BIT(          63,     T_MANDATORY,    clear_bm)
149 )
150
151 #ifdef NL_RESPONSE
152 NL_RESPONSE(return_code_only, 27)
153 #endif
154
155 #undef NL_PACKET
156 #undef NL_INTEGER
157 #undef NL_INT64
158 #undef NL_BIT
159 #undef NL_STRING
160 #undef NL_RESPONSE