Hello community, here is the log from the commit of package open-iscsi checked in at Wed Apr 26 10:59:47 CEST 2006. -------- --- open-iscsi/open-iscsi.changes 2006-04-21 10:00:33.000000000 +0200 +++ STABLE/open-iscsi/open-iscsi.changes 2006-04-26 04:12:05.000000000 +0200 @@ -1,0 +2,8 @@ +Tue Apr 25 17:41:17 MDT 2006 - wrwhitehead@novell.com + +- Fix communication hang (#157463). +- The iscsi-tcp_data_ready callback needs to empty out the + tcp receive queue rather than just rely on the callback to + occur for every message in the receive queue. + +------------------------------------------------------------------- New: ---- open-iscsi-hang.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ open-iscsi.spec ++++++ --- /var/tmp/diff_new_pack.AkHGzS/_old 2006-04-26 10:46:04.000000000 +0200 +++ /var/tmp/diff_new_pack.AkHGzS/_new 2006-04-26 10:46:04.000000000 +0200 @@ -18,7 +18,7 @@ Prereq: %fillup_prereq %insserv_prereq Autoreqprov: on Version: 0.5.545 -Release: 2 +Release: 4 Provides: linux-iscsi Obsoletes: linux-iscsi %define iscsi_release 545 @@ -36,6 +36,7 @@ Patch10: %{name}-git-update.diff Patch11: %{name}-reject-msg.diff Patch12: %{name}-iscsi-iname-Makefile.patch +Patch13: %{name}-hang.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -74,6 +75,7 @@ %patch7 -p1 %patch10 -p1 %patch12 -p1 +%patch13 -p1 cp %{S:12} usr/ %build @@ -134,6 +136,11 @@ %doc %{_mandir}/man8/* %changelog -n open-iscsi +* Tue Apr 25 2006 - wrwhitehead@novell.com +- Fix communication hang (#157463). +- The iscsi-tcp_data_ready callback needs to empty out the + tcp receive queue rather than just rely on the callback to + occur for every message in the receive queue. * Fri Apr 21 2006 - hare@suse.de - update to svn r545 Fixes a crash with Wasabi targets (#157463). ++++++ open-iscsi-hang.patch ++++++ --- b/kernel/iscsi_tcp.c +++ a/kernel/iscsi_tcp.c @@ -1223,7 +1223,7 @@ /* use rd_desc to pass 'conn' to iscsi_tcp_data_recv */ rd_desc.arg.data = conn; - rd_desc.count = 0; + rd_desc.count = 65536; tcp_read_sock(sk, &rd_desc, iscsi_tcp_data_recv); read_unlock(&sk->sk_callback_lock); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun...