On Mon, 17 Mar 2008, FUJITA Tomonori wrote: > For me, it would be much better to fix USB drivers since LLDs should > not rely on a scatterlist about how much data they transfer, as I > said. If LLDs do that, they are broken. It's not good to add such a > workaround to the common API for broken LLDs. > > USB drivers should do something like this if they definitely need to > call this API multiple times: > > done = sg_copy_buffer(buffer, scsi_bufflen(sc) - us->done_length, > us->done_length += done; The USB drivers don't need to be fixed; they are already correct. But if you are going to export a library routine for general use then it should be written to fail gracefully -- it should not be able to cause an invalid memory access. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html