IB/srp: Remove target from list before freeing scsi_host memory

Lock the srp_host and remove target from target_list
before the last scsi_host_put(scsi_host) which will
free scsi_host hostdata memory holding the target

Signed-off-by: Vu Pham <vuhuong@mellanox.com>
IB/srp: Change default value of reconnect_delay from 10s into 20s

This avoids that I/O is blocked forever if reconnecting succeeds
but RDMA communication fails immediately after having reconnected.
IB/srp: Export sgid to sysfs
Makefile: Embed version and release date from spec file in ib_srp kernel module
v2.0.7
IB/SRP: Avoid blocking commands for dev_loss_tmo seconds if reconnecting fails

This patch is a slightly reworked version of a patch from Vu Pham.
IB/srp: Reduce failover time

The default value for tl_retry_count is changed from 7 into 3.
Hence with a qp->timedout value of 19 this patch reduces the
default transport layer timeout from about 60s to about 25s. The
purpose of this patch is to reduce the time needed for SCSI error
handling significantly and at the same time to avoid activating
the SCSI error handler on an IB path with a regular BER or due to
brief IB network congestion.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
v2.0.8
scsi_transport_srp: Avoid that failback can fail

Avoid that if reconnecting succeeds and the SCSI error handler later
on invokes eh_host_reset_handler that paths remain in the fail-fast
state and hence that failback fails.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
v2.0.9
Makefile: Add "uninstall" target
Makefile: Remove a bashishm
README: Document how to uninstall on Debian systems