In pre5 the sg driver tries to set up both address
and page+offset in scatterlist entries. Unfortunately
asm-i386/pci.h's pci_map_sg() contains this check:
if (sg[i].address && sg[i].page)
BUG();
which kills that strategy with the sym53c8xx driver.
The sooner we get rid of address in struct scatterlist
the better ... the address,page+offset duality is a mess.
Strange that Andi Kleen had problems compiling ide-scsi,
it compiled and worked on my UP and SMP machines (AMD and
dual Celeron respectively).
Sg patch (which has been already sent to Jens) follows.
Doug Gilbert
--- linux/drivers/scsi/sg.c Thu Jan 24 18:45:01 2002
+++ linux/drivers/scsi/sg.c3523 Thu Jan 24 20:53:28 2002
@@ -19,7 +19,7 @@
*/
#include <linux/config.h>
#ifdef CONFIG_PROC_FS
- static char sg_version_str[] = "Version: 3.5.23 (20020103)";
+ static char sg_version_str[] = "Version: 3.5.23 (20020124)";
#endif
static int sg_version_num = 30523; /* 2 digits for each component */
/*
@@ -76,7 +76,7 @@
#include <linux/version.h>
#endif /* LINUX_VERSION_CODE */
-#define SG_STILL_HAVE_ADDRESS_IN_SCATTERLIST
+/* #define SG_STILL_HAVE_ADDRESS_IN_SCATTERLIST */
#define SG_ALLOW_DIO_DEF 0
#define SG_ALLOW_DIO_CODE /* compile out be commenting this define */
On Sat, Jan 26, 2002 at 09:21:50PM -0500, Douglas Gilbert wrote:
> Strange that Andi Kleen had problems compiling ide-scsi,
> it compiled and worked on my UP and SMP machines (AMD and
> dual Celeron respectively).
I must apologize. It seems the removal of scatterlist->address
was a vger tree only change (I tested with vger). Mainline
2.5 still seems to have it. Nevertheless the patch probably
won't hurt to apply.
-Andi
On Sun, Jan 27 2002, Andi Kleen wrote:
> On Sat, Jan 26, 2002 at 09:21:50PM -0500, Douglas Gilbert wrote:
> > Strange that Andi Kleen had problems compiling ide-scsi,
> > it compiled and worked on my UP and SMP machines (AMD and
> > dual Celeron respectively).
>
> I must apologize. It seems the removal of scatterlist->address
> was a vger tree only change (I tested with vger). Mainline
> 2.5 still seems to have it. Nevertheless the patch probably
> won't hurt to apply.
Ah makes sense. Yes the ->address change is pending still. I still don't
think it's worth it to complicate ide-scsi with kmap, just have it
bounced. ide-scsi will not live too much longer anyways.
--
Jens Axboe