On Tue, 9 Apr 2019, Bollinger, Seth wrote: > > Seth, you can try adding: > > > > blk_queue_virt_boundary(sdev->request_queue, 1024 - 1) > > > > in drivers/usb/storage/scsiglue.c:slave_alloc(), just after the call to > > blk_queue_update_dma_alignment(). Perhaps that will help > > > > I will do that as a test. However, I’m concerned that we’re solving only a specific case. Won’t it fail in a similar way if a different subsystem does the same thing (USB modem or video drivers, etc.)? Those other drivers don't use the block device interface, as far as I know. So they would have to use other methods for addressing the potential problems in any case. usb-storage is perhaps distinct in that it doesn't generate the scatter-gather lists that it uses, but instead has to work with whatever the block layer provides. Alan Stern