/* PAKET( name, TYPE ( pn, pr, member ) ... ) You may never reissue one of the pn arguments */ #if !defined(NL_PACKET) || !defined(NL_STRING) || !defined(NL_INTEGER) || !defined(NL_BIT) || !defined(NL_INT64) #error "The macros NL_PACKET, NL_STRING, NL_INTEGER, NL_INT64 and NL_BIT needs to be defined" #endif NL_PACKET(primary, 1, NL_BIT( 1, T_MAY_IGNORE, primary_force) ) NL_PACKET(secondary, 2, ) NL_PACKET(disk_conf, 3, NL_INT64( 2, T_MAY_IGNORE, disk_size) NL_STRING( 3, T_MANDATORY, backing_dev, 128) NL_STRING( 4, T_MANDATORY, meta_dev, 128) NL_INTEGER( 5, T_MANDATORY, meta_dev_idx) NL_INTEGER( 6, T_MAY_IGNORE, on_io_error) NL_INTEGER( 7, T_MAY_IGNORE, fencing) NL_BIT( 37, T_MAY_IGNORE, use_bmbv) NL_BIT( 53, T_MAY_IGNORE, no_disk_flush) NL_BIT( 54, T_MAY_IGNORE, no_md_flush) /* 55 max_bio_size was available in 8.2.6rc2 */ NL_INTEGER( 56, T_MAY_IGNORE, max_bio_bvecs) NL_BIT( 57, T_MAY_IGNORE, no_disk_barrier) NL_BIT( 58, T_MAY_IGNORE, no_disk_drain) ) NL_PACKET(detach, 4, ) NL_PACKET(net_conf, 5, NL_STRING( 8, T_MANDATORY, my_addr, 128) NL_STRING( 9, T_MANDATORY, peer_addr, 128) NL_STRING( 10, T_MAY_IGNORE, shared_secret, SHARED_SECRET_MAX) NL_STRING( 11, T_MAY_IGNORE, cram_hmac_alg, SHARED_SECRET_MAX) NL_STRING( 44, T_MAY_IGNORE, integrity_alg, SHARED_SECRET_MAX) NL_INTEGER( 14, T_MAY_IGNORE, timeout) NL_INTEGER( 15, T_MANDATORY, wire_protocol) NL_INTEGER( 16, T_MAY_IGNORE, try_connect_int) NL_INTEGER( 17, T_MAY_IGNORE, ping_int) NL_INTEGER( 18, T_MAY_IGNORE, max_epoch_size) NL_INTEGER( 19, T_MAY_IGNORE, max_buffers) NL_INTEGER( 20, T_MAY_IGNORE, unplug_watermark) NL_INTEGER( 21, T_MAY_IGNORE, sndbuf_size) NL_INTEGER( 22, T_MAY_IGNORE, ko_count) NL_INTEGER( 24, T_MAY_IGNORE, after_sb_0p) NL_INTEGER( 25, T_MAY_IGNORE, after_sb_1p) NL_INTEGER( 26, T_MAY_IGNORE, after_sb_2p) NL_INTEGER( 39, T_MAY_IGNORE, rr_conflict) NL_INTEGER( 40, T_MAY_IGNORE, ping_timeo) NL_INTEGER( 67, T_MAY_IGNORE, rcvbuf_size) NL_INTEGER( 81, T_MAY_IGNORE, on_congestion) NL_INTEGER( 82, T_MAY_IGNORE, cong_fill) NL_INTEGER( 83, T_MAY_IGNORE, cong_extents) /* 59 addr_family was available in GIT, never released */ NL_BIT( 60, T_MANDATORY, mind_af) NL_BIT( 27, T_MAY_IGNORE, want_lose) NL_BIT( 28, T_MAY_IGNORE, two_primaries) NL_BIT( 41, T_MAY_IGNORE, always_asbp) NL_BIT( 61, T_MAY_IGNORE, no_cork) NL_BIT( 62, T_MANDATORY, auto_sndbuf_size) NL_BIT( 70, T_MANDATORY, dry_run) ) NL_PACKET(disconnect, 6, NL_BIT( 84, T_MAY_IGNORE, force) ) NL_PACKET(resize, 7, NL_INT64( 29, T_MAY_IGNORE, resize_size) NL_BIT( 68, T_MAY_IGNORE, resize_force) NL_BIT( 69, T_MANDATORY, no_resync) ) NL_PACKET(syncer_conf, 8, NL_INTEGER( 30, T_MAY_IGNORE, rate) NL_INTEGER( 31, T_MAY_IGNORE, after) NL_INTEGER( 32, T_MAY_IGNORE, al_extents) /* NL_INTEGER( 71, T_MAY_IGNORE, dp_volume) * NL_INTEGER( 72, T_MAY_IGNORE, dp_interval) * NL_INTEGER( 73, T_MAY_IGNORE, throttle_th) * NL_INTEGER( 74, T_MAY_IGNORE, hold_off_th) * feature will be reimplemented differently with 8.3.9 */ NL_STRING( 52, T_MAY_IGNORE, verify_alg, SHARED_SECRET_MAX) NL_STRING( 51, T_MAY_IGNORE, cpu_mask, 32) NL_STRING( 64, T_MAY_IGNORE, csums_alg, SHARED_SECRET_MAX) NL_BIT( 65, T_MAY_IGNORE, use_rle) NL_INTEGER( 75, T_MAY_IGNORE, on_no_data) NL_INTEGER( 76, T_MAY_IGNORE, c_plan_ahead) NL_INTEGER( 77, T_MAY_IGNORE, c_delay_target) NL_INTEGER( 78, T_MAY_IGNORE, c_fill_target) NL_INTEGER( 79, T_MAY_IGNORE, c_max_rate) NL_INTEGER( 80, T_MAY_IGNORE, c_min_rate) ) NL_PACKET(invalidate, 9, ) NL_PACKET(invalidate_peer, 10, ) NL_PACKET(pause_sync, 11, ) NL_PACKET(resume_sync, 12, ) NL_PACKET(suspend_io, 13, ) NL_PACKET(resume_io, 14, ) NL_PACKET(outdate, 15, ) NL_PACKET(get_config, 16, ) NL_PACKET(get_state, 17, NL_INTEGER( 33, T_MAY_IGNORE, state_i) ) NL_PACKET(get_uuids, 18, NL_STRING( 34, T_MAY_IGNORE, uuids, (UI_SIZE*sizeof(__u64))) NL_INTEGER( 35, T_MAY_IGNORE, uuids_flags) ) NL_PACKET(get_timeout_flag, 19, NL_BIT( 36, T_MAY_IGNORE, use_degraded) ) NL_PACKET(call_helper, 20, NL_STRING( 38, T_MAY_IGNORE, helper, 32) ) /* Tag nr 42 already allocated in drbd-8.1 development. */ NL_PACKET(sync_progress, 23, NL_INTEGER( 43, T_MAY_IGNORE, sync_progress) ) NL_PACKET(dump_ee, 24, NL_STRING( 45, T_MAY_IGNORE, dump_ee_reason, 32) NL_STRING( 46, T_MAY_IGNORE, seen_digest, SHARED_SECRET_MAX) NL_STRING( 47, T_MAY_IGNORE, calc_digest, SHARED_SECRET_MAX) NL_INT64( 48, T_MAY_IGNORE, ee_sector) NL_INT64( 49, T_MAY_IGNORE, ee_block_id) NL_STRING( 50, T_MAY_IGNORE, ee_data, 32 << 10) ) NL_PACKET(start_ov, 25, NL_INT64( 66, T_MAY_IGNORE, start_sector) ) NL_PACKET(new_c_uuid, 26, NL_BIT( 63, T_MANDATORY, clear_bm) ) #ifdef NL_RESPONSE NL_RESPONSE(return_code_only, 27) #endif #undef NL_PACKET #undef NL_INTEGER #undef NL_INT64 #undef NL_BIT #undef NL_STRING #undef NL_RESPONSE