[dm-devel] howto sent scsi failover commands from dm

Patrick Mansfield patmans at us.ibm.com
Thu Aug 12 21:56:21 UTC 2004


On Thu, Aug 12, 2004 at 11:02:51AM -0700, Mike Christie wrote:
> around through remapper drivers like we do with bios, or should we avoid 
> the mess and goto userspace (with userspace there would have to be a way 
> to properly traverse mappers too though)?

Are there issues with issuing an SG_IO from user space when we are out of
memory? 

That is we have:

sg_io -> blk_rq_map_user -> if aligned bio_map_user, else bio_copy_user

Both bio_*_user do a bio_alloc GFP_KERNEL, and bio_copy_user also has an
alloc_page GFP_KERNEL.

So when trying to reclaim memory or such, if we are writing to a
multipathed device, and it fails and requires a failover command to be
sent, the user space SG_IO kernel allocation could sleep, and the system
would hang.

Could we somehow avoid those?

We might still have issues with requiring a user process in memory for
each path that might need to failover (just that there might be a good
number of them with a large number of disks), but that does not seem bad.

-- Patrick Mansfield



More information about the dm-devel mailing list