I read the source code of 'dm_suspend' in the kernel, find it will call this function:
__filemap_fdatawrite(mapping, WB_SYNC_ALL);
so I understand
"I don't think it is possible to suspend new IO requests from user land
while allowing it from the buffer cache"
while allowing it from the buffer cache"
you said.
Thank you very much, :)
Best regards,
Busby
2010/4/30 Phillip Susi <psusi@xxxxxxxxxx>
On 4/29/2010 9:09 PM, Busby wrote:I don't think it is possible to suspend new IO requests from user land
> Hi, Phillip Susi,
> Why not suspend the origin's IO first, then create the
> snapshot lv, resume the origin lv 's IO waiting Q last. the 'dd' cmd is
> eariler than the snapshot's creating, if suspend the IO, the filesystem
> on the snapshot will be corrupt, I get it, but I think the snapshot is
> in block layer, should suspend the user layer's data coming first, then
> flush the data in the dirty buffer and create the snapshot. like the dd
> cmd on the origin, will make the snapshot's creating take a very long
> time, for waiting for the dm suspend 's return, I think flush the data
> in the dirty buffer (data from dd ), suspend the next data of the dd,
> create the snapshot, then let the data into dirty buffer to the block
> layer. the dd cmd will put the data into dirty buffer continually, can
> not be suspended?
while allowing it from the buffer cache.
-- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel