diff -urN libibverbs-1.1.6/examples/rc_pingpong.c libibverbs-1.1.6-test/examples/rc_pingpong.c --- libibverbs-1.1.6/examples/rc_pingpong.c 2011-07-28 07:36:13.000000000 +0900 +++ libibverbs-1.1.6-test/examples/rc_pingpong.c 2013-09-24 15:48:30.855599885 +0900 @@ -473,14 +473,15 @@ { struct ibv_sge list = { .addr = (uintptr_t) ctx->buf, - .length = ctx->size, + .length = 0, /* ctx->size, */ .lkey = ctx->mr->lkey }; struct ibv_send_wr wr = { .wr_id = PINGPONG_SEND_WRID, .sg_list = &list, .num_sge = 1, - .opcode = IBV_WR_SEND, + .opcode = IBV_WR_SEND_WITH_IMM, + .imm_data = 0, .send_flags = IBV_SEND_SIGNALED, }; struct ibv_send_wr *bad_wr; diff -urN libibverbs-1.1.6/examples/uc_pingpong.c libibverbs-1.1.6-test/examples/uc_pingpong.c --- libibverbs-1.1.6/examples/uc_pingpong.c 2011-07-28 07:36:13.000000000 +0900 +++ libibverbs-1.1.6-test/examples/uc_pingpong.c 2013-09-24 15:47:06.339599197 +0900 @@ -461,14 +461,15 @@ { struct ibv_sge list = { .addr = (uintptr_t) ctx->buf, - .length = ctx->size, + .length = 0, /* ctx->size, */ .lkey = ctx->mr->lkey }; struct ibv_send_wr wr = { .wr_id = PINGPONG_SEND_WRID, .sg_list = &list, .num_sge = 1, - .opcode = IBV_WR_SEND, + .opcode = IBV_WR_SEND_WITH_IMM, + .imm_data = 0, .send_flags = IBV_SEND_SIGNALED, }; struct ibv_send_wr *bad_wr; diff -urN libibverbs-1.1.6/examples/ud_pingpong.c libibverbs-1.1.6-test/examples/ud_pingpong.c --- libibverbs-1.1.6/examples/ud_pingpong.c 2011-07-28 07:36:13.000000000 +0900 +++ libibverbs-1.1.6-test/examples/ud_pingpong.c 2013-09-24 16:08:58.435598452 +0900 @@ -464,14 +464,15 @@ { struct ibv_sge list = { .addr = (uintptr_t) ctx->buf + 40, - .length = ctx->size, + .length = 0, /* ctx->size, */ .lkey = ctx->mr->lkey }; struct ibv_send_wr wr = { .wr_id = PINGPONG_SEND_WRID, .sg_list = &list, .num_sge = 1, - .opcode = IBV_WR_SEND, + .opcode = IBV_WR_SEND_WITH_IMM, + .imm_data = 0, .send_flags = IBV_SEND_SIGNALED, .wr = { .ud = {