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

Commit 61b91758 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IB/iser: iSER Kconfig and Makefile
  IB/iser: iSER handling of memory for RDMA
  IB/iser: iSER RDMA CM (CMA) and IB verbs interaction
  IB/iser: iSER initiator iSCSI PDU and TX/RX
  IB/iser: iSCSI iSER transport provider high level code
  IB/iser: iSCSI iSER transport provider header file
  IB/uverbs: Remove unnecessary list_del()s
  IB/uverbs: Don't free wr list when it's known to be empty
parents f36f44de 3f1244a2
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -41,4 +41,6 @@ source "drivers/infiniband/ulp/ipoib/Kconfig"

source "drivers/infiniband/ulp/srp/Kconfig"

source "drivers/infiniband/ulp/iser/Kconfig"

endmenu
+1 −0
Original line number Diff line number Diff line
@@ -3,3 +3,4 @@ obj-$(CONFIG_INFINIBAND_MTHCA) += hw/mthca/
obj-$(CONFIG_IPATH_CORE)		+= hw/ipath/
obj-$(CONFIG_INFINIBAND_IPOIB)		+= ulp/ipoib/
obj-$(CONFIG_INFINIBAND_SRP)		+= ulp/srp/
obj-$(CONFIG_INFINIBAND_ISER)		+= ulp/iser/
+1 −1
Original line number Diff line number Diff line
@@ -1530,7 +1530,6 @@ ssize_t ib_uverbs_post_send(struct ib_uverbs_file *file,
out_put:
	put_qp_read(qp);

out:
	while (wr) {
		if (is_ud && wr->wr.ud.ah)
			put_ah_read(wr->wr.ud.ah);
@@ -1539,6 +1538,7 @@ out:
		wr = next;
	}

out:
	kfree(user_wr);

	return ret ? ret : in_len;
+0 −6
Original line number Diff line number Diff line
@@ -188,7 +188,6 @@ static int ib_uverbs_cleanup_ucontext(struct ib_uverbs_file *file,

		idr_remove_uobj(&ib_uverbs_ah_idr, uobj);
		ib_destroy_ah(ah);
		list_del(&uobj->list);
		kfree(uobj);
	}

@@ -200,7 +199,6 @@ static int ib_uverbs_cleanup_ucontext(struct ib_uverbs_file *file,
		idr_remove_uobj(&ib_uverbs_qp_idr, uobj);
		ib_uverbs_detach_umcast(qp, uqp);
		ib_destroy_qp(qp);
		list_del(&uobj->list);
		ib_uverbs_release_uevent(file, &uqp->uevent);
		kfree(uqp);
	}
@@ -213,7 +211,6 @@ static int ib_uverbs_cleanup_ucontext(struct ib_uverbs_file *file,

		idr_remove_uobj(&ib_uverbs_cq_idr, uobj);
		ib_destroy_cq(cq);
		list_del(&uobj->list);
		ib_uverbs_release_ucq(file, ev_file, ucq);
		kfree(ucq);
	}
@@ -225,7 +222,6 @@ static int ib_uverbs_cleanup_ucontext(struct ib_uverbs_file *file,

		idr_remove_uobj(&ib_uverbs_srq_idr, uobj);
		ib_destroy_srq(srq);
		list_del(&uobj->list);
		ib_uverbs_release_uevent(file, uevent);
		kfree(uevent);
	}
@@ -243,7 +239,6 @@ static int ib_uverbs_cleanup_ucontext(struct ib_uverbs_file *file,
		memobj = container_of(uobj, struct ib_umem_object, uobject);
		ib_umem_release_on_close(mrdev, &memobj->umem);

		list_del(&uobj->list);
		kfree(memobj);
	}

@@ -252,7 +247,6 @@ static int ib_uverbs_cleanup_ucontext(struct ib_uverbs_file *file,

		idr_remove_uobj(&ib_uverbs_pd_idr, uobj);
		ib_dealloc_pd(pd);
		list_del(&uobj->list);
		kfree(uobj);
	}

+11 −0
Original line number Diff line number Diff line
config INFINIBAND_ISER
	tristate "ISCSI RDMA Protocol"
	depends on INFINIBAND && SCSI
	select SCSI_ISCSI_ATTRS
	---help---
	  Support for the ISCSI RDMA Protocol over InfiniBand.  This
	  allows you to access storage devices that speak ISER/ISCSI
	  over InfiniBand.

	  The ISER protocol is defined by IETF.
	  See <http://www.ietf.org/>.
Loading