> That's as close as it gets without redoing everything from scratch.
> I'll give Alan's and James' patches a go within the next 13 hours.
>
> (Alan: what *else* would you name a variable associated with a bounce
> buffer besides Zebedee? Thanks for the occasion to smile...)
The one I sent has a memory leak but it won't matter for basic testing.
Or you can change the final bit to
scsi_normalize_sense((char *)sense, sizeof(*sense), &sshdr);
if (zebedee != cgc->buffer) {
if (cgc->data_direction == DMA_FROM_DEVICE)
memcpy(cgc->buffer, zebedee, cgc->buflen);
kfree(zebedee); /* Time for bed */
}
Alan
--
`I can hear you.` ,said Florence. `It s not true. Noddy and I are just
good friends.`
Alan Cox wrote:
> The one I sent has a memory leak but it won't matter for basic testing.
> Or you can change the final bit to
>
>
> scsi_normalize_sense((char *)sense, sizeof(*sense), &sshdr);
>
> if (zebedee != cgc->buffer) {
> if (cgc->data_direction == DMA_FROM_DEVICE)
> memcpy(cgc->buffer, zebedee, cgc->buflen);
> kfree(zebedee); /* Time for bed */
> }
I changed it, because I'll be living with this for a while I'd bet...
Works fine. No more BAD_SG_DMA() calls. Thanks!
--
-----------------------------------------------------------------------
Bob Tracy WTO + WIPO = DMCA? http://www.anti-dmca.org
[email protected]
-----------------------------------------------------------------------