are you expecting minphys to appear in that backtrace?

On 29 Aug 2014, at 5:07, Stefan Fritsch <s...@sfritsch.de> wrote:

> Hi,
> 
> while debugging some problems on a virtio host that supports only few dma 
> segments per request, I noticed that the minphys function is not called in 
> all code paths. It is only used for physio but not for other (cached) disk 
> operations. An example trace is below.
> 
> Am I missing something or is this as broken as I think it is? I thought 
> the minphys function is a way for a driver to say that it does not support 
> larger transfers and that transfers are split accordingly. What's the 
> purpose of the minphys mechanism if it does not affect all code paths?
> 
> Cheers,
> Stefan
> 
> 
> panic() at 0x1027bcf5 panic+0x1a5/0x1061006f0
> vioblk_scsi_cmd() at 0x103ecccf vioblk_scsi_cmd+0x8ff/0x106100770
> sdstart() at 0x103bc4d6 sdstart+0x176/0x1061007b0
> scsi_ioh_runqueue() at 0x103b3c05 scsi_ioh_runqueue+0x55/0x1061007e0
> scsi_xsh_runqueue() at 0x103b3d72 scsi_xsh_runqueue+0x132/0x106100800
> sdstrategy() at 0x103bc6bf sdstrategy+0x10f/0x106100830
> spec_strategy() at 0x102a8b3b spec_strategy+0x5b/0x106100850
> VOP_STRATEGY() at 0x102a75be VOP_STRATEGY+0x2e/0x106100870
> bio_doread() at 0x102991fc bio_doread+0xbc/0x1061008a0
> bread() at 0x102992c3 bread+0x13/0x1061008c0
> fillinusemap() at 0x102ad6d9 fillinusemap+0xb9/0x106100920
> msdosfs_mountfs() at 0x102af78d msdosfs_mountfs+0x59d/0x106100990
> msdosfs_mount() at 0x102afcf6 msdosfs_mount+0x3e6/0x106100b70
> sys_mount() at 0x102a6a3c sys_mount+0x36c/0x106100d90
> 

Reply via email to