Re: [PATCH] Re: [bug] ata subsystem related crash with latest -git
From: Jeff Garzik
Date: Thu Oct 18 2007 - 07:03:21 EST
Ingo Molnar wrote:
* Jeff Garzik <jeff@xxxxxxxxxx> wrote:
Tomo and I agreed to kill sg_last() a few days ago anyways, so this
is perfectly fine with me.
Yep, the [attached] patch that kills ata_sg_is_last() is working here
on both machines that were previously croaking.
It would be nice to get pdc_adma, sata_sil24 and ipr it-works test
done, but IMO the patch is pretty straightforward and should be OK.
just a quick question: i have Jens's workarounds applied right now (see
patch below). Am i now crash/corruption-safe, or do i need your patch
too? And once your patch [and the other sg_*() patches] are upstream i
dont need the workaround anymore, correct?
You need my patch if and only if you use one of the drivers touched by
the patch. ata_sg_is_last() was a driver helper function, so my fix
never really touched core code.
I never had to apply the changes you included, to fix problems here.
And looking at those changes...
- q->max_phys_segments = max_segments;
+ q->max_phys_segments = max_segments - 1;
...
-#define SCSI_MAX_SG_SEGMENTS 128
+#define SCSI_MAX_SG_SEGMENTS 129
I wonder if libata should be doing
blk_queue_max_phys_segments(q, q->max_phys_segments - 1)
to account for the pad entry that libata owns.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/