Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7e85c919 authored by Bart Van Assche's avatar Bart Van Assche Committed by Doug Ledford
Browse files

IB/srp: Use multiple registrations for large memory regions



Instead of using the global rkey for large memory regions, use
multiple registrations. See also the while (dma_len) loop further
down in srp_map_sg_entry().

Signed-off-by: default avatarBart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent 186fbc66
Loading
Loading
Loading
Loading
+0 −10
Original line number Diff line number Diff line
@@ -1393,16 +1393,6 @@ static int srp_map_sg_entry(struct srp_map_state *state,
		return 0;
	}

	if (dma_len > dev->mr_max_size) {
		ret = srp_finish_mapping(state, ch);
		if (ret)
			return ret;

		srp_map_desc(state, dma_addr, dma_len, target->rkey);
		srp_map_update_start(state, NULL, 0, 0);
		return 0;
	}

	/*
	 * If this is the first sg that will be mapped via FMR or via FR, save
	 * our position. We need to know the first unmapped entry, its index,