Re: iSER with policy based routing error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 24, 2017 at 10:41 PM, Robert LeBlanc <robert@xxxxxxxxxxxxx> wrote:
[...]
> I want to get the source address (iface.ipaddress) from the iface
> (eth0iser in this case) and pass that into iser_connect(). I'm just
> not sure how to do that and where the best place to do that is. That
> is what I need some help understanding. Any push in the right
> direction is appreciated. Is the iface info parsed by the base iscsi
> code and then put into a struct that I can query? I sure hope it is
> that easy, but I'm having difficulty locating that code.

If you get the source address into the iscsi initiator UAPI it would
be very simple kernel
code change to get that to iser_connect --> rdma_resolve_address as
you indicated.

Currently only the dst address is passed from user-space, to see it
clone [1] and look

$ vim usr/netlink.c +/ktransport_ep_connect

see  there

memcpy(setparam_buf + sizeof(*ev), dst_addr, addrlen);

for the kernel side of things look here

$ vim drivers/scsi/scsi_transport_iscsi.c +/ep_connect

see there

dst_addr = (struct sockaddr *)((char*)ev + sizeof(*ev));
ep = transport->ep_connect(shost, dst_addr, non_blocking);


Or.


[1] https://github.com/open-iscsi/open-iscsi.git
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux