patch-2.4.21 linux-2.4.21/drivers/scsi/sg.c
Next file: linux-2.4.21/drivers/scsi/sim710.h
Previous file: linux-2.4.21/drivers/scsi/sd.c
Back to the patch index
Back to the overall index
- Lines: 67
- Date:
2003-06-13 07:51:36.000000000 -0700
- Orig file:
linux-2.4.20/drivers/scsi/sg.c
- Orig date:
2002-08-02 17:39:44.000000000 -0700
diff -urN linux-2.4.20/drivers/scsi/sg.c linux-2.4.21/drivers/scsi/sg.c
@@ -7,7 +7,7 @@
* Original driver (sg.c):
* Copyright (C) 1992 Lawrence Foard
* Version 2 and 3 extensions to driver:
- * Copyright (C) 1998 - 2002 Douglas Gilbert
+ * Copyright (C) 1998 - 2003 Douglas Gilbert
*
* Modified 19-JAN-1998 Richard Gooch <rgooch@atnf.csiro.au> Devfs support
*
@@ -19,9 +19,9 @@
*/
#include <linux/config.h>
#ifdef CONFIG_PROC_FS
- static char * sg_version_str = "Version: 3.1.24 (20020505)";
+ static char * sg_version_str = "Version: 3.1.25 (20030529)";
#endif
- static int sg_version_num = 30124; /* 2 digits for each component */
+ static int sg_version_num = 30125; /* 2 digits for each component */
/*
* D. P. Gilbert (dgilbert@interlog.com, dougg@triode.net.au), notes:
* - scsi logging is available via SCSI_LOG_TIMEOUT macros. First
@@ -1884,11 +1884,7 @@
res = sg_u_iovec(hp, iovec_count, j, 1, &usglen, &up);
if (res) return res;
- for (; k < schp->k_use_sg; ++k, ++sclp) {
- ksglen = (int)sclp->length;
- p = sclp->address;
- if (NULL == p)
- break;
+ for ( ; p; ++sclp, ksglen = (int)sclp->length, p = sclp->address) {
ok = (SG_USER_MEM != mem_src_arr[k]);
if (usglen <= 0)
break;
@@ -1911,6 +1907,9 @@
up += ksglen;
usglen -= ksglen;
}
+ ++k;
+ if (k >= schp->k_use_sg)
+ return 0;
}
}
}
@@ -2040,11 +2039,7 @@
res = sg_u_iovec(hp, iovec_count, j, 0, &usglen, &up);
if (res) return res;
- for (; k < schp->k_use_sg; ++k, ++sclp) {
- ksglen = (int)sclp->length;
- p = sclp->address;
- if (NULL == p)
- break;
+ for ( ; p; ++sclp, ksglen = (int)sclp->length, p = sclp->address) {
ok = (SG_USER_MEM != mem_src_arr[k]);
if (usglen <= 0)
break;
@@ -2067,6 +2062,9 @@
up += ksglen;
usglen -= ksglen;
}
+ ++k;
+ if (k >= schp->k_use_sg)
+ return 0;
}
}
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)