if (buf->sent + size != buf->sg.length) 
if (buf->sent + size != buf->sg.length || *count != size) 
iscsi_sendpage(struct iscsi_conn *conn, struct iscsi_buf *buf,	       int *count, int *sent){	struct socket *sk = conn->sock;	int flags = 0; /* MSG_DONTWAIT; */	int res, size;	size = buf->sg.length - buf->sent;	BUG_ON(buf->sent + size > buf->sg.length);	if (size > *count)		size = *count;	if (buf->sent + size != buf->sg.length)		flags |= MSG_MORE;	res = iscsi_send(sk, buf, size, flags);	debug_tcp("sendpage: %d bytes, sent %d left %d sent %d res %d\n",		  size, buf->sent, *count, *sent, res);	if (res >= 0) {		conn->txdata_octets += res;		buf->sent += res;		*count -= res;		*sent += res;		if (size != res)			return -EAGAIN;		return 0;	} else if (res == -EAGAIN) {		conn->sendpage_failures_cnt++;		set_bit(SUSPEND_BIT, &conn->suspend_tx);	} else if (res == -EPIPE)		iscsi_conn_failure(conn, ISCSI_ERR_CONN_FAILED);	return res;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b13941f635c3119eb02dc29b5248066f934f76be/iscsi_tcp.c/buggy/drivers/scsi/iscsi_tcp.c