Messages in this thread | | | Subject | Re: highmem, aic7xxx, and vfat: too few segs for dma mapping | Date | Thu, 13 Dec 2001 13:48:50 -0700 | From | "Justin T. Gibbs" <> |
| |
>So according to this, zero.
Thanks for the info - its the first useful report I've gotten todate. 8-) I believe I've found and fixed the bug. I've changed a few other things in the driver for the 6.2.5 release, so once I've tested them I'll release new patches. In the mean time, you should be able to avoid the problem by moving the initialization of scb->sg_count to 0 in the function:
aic7xxx_linux.c:ahc_linux_run_device_queue()
to before the statement:
if (cmd->use_sg != 0) {
I'd give you diffs, but these other changes in my tree need more testing before I'll feel comfortable releasing them. I also don't have a 2.5 tree downloaded yet to verify that the driver functions there.
In order to reproduce the bug, you need to issue a command that uses all of the segments of a given transaction and then have a command with use_sg == 0 be the next command to use that same SCB. This explains why I was not able to reproduce the problem here.
-- Justin - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |