Re: [PATCH v7 0/6] solve deadlock caused by memory allocation with I/O

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 17 Jan 2013 09:28:14 +0800
Ming Lei <ming.lei@xxxxxxxxxxxxx> wrote:

> > If so, I wonder if we could avoid the whole problem by appropriately
> > syncing all dirty memory back to storage before starting to turn devices
> > off?
> 
> The patchset is to address the probable deadlock problem by GFP_KERNEL
> during runtime suspend/resume which is per block/network device. I am
> wondering if syncing all dirty memory is suitable or necessary during
> per-storage/network device runtime resume/suspend:
> 
>       - sys_sync is very slow and runtime pm operation is frequent
> 
>       - it is not efficient because only sync dirty memory against the affected
>         device is needed in theory and not necessary to sync all
> 
>      - we still need some synchronization to avoid accessing the storage
>        between sys_sync and device suspend, just like system sleep case,
>        pm_restrict_gfp_mask is needed even sys_sync has been done
>        inside enter_state().
> 
> So looks the approach in the patch is simpler and more efficient, :-)
> 
> Also, with the patchset, we can avoid many GFP_NOIO allocation
> which is fragile and not easy to use.

Fair enough, thanks.

I grabbed the patches for 3.9-rc1.  It is good that the page
allocator's newly-added test of current->flags is not on the fastpath.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]