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 161