lkml.org 
[lkml]   [2014]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/8] mm/swap: fix race on swap_info reuse between swapoff and swapon
On Mon, 3 Feb 2014, Andrew Morton wrote:
> On Mon, 3 Feb 2014 15:23:40 -0800 Andrew Morton <akpm@linux-foundation.org> wrote:
> > On Mon, 27 Jan 2014 18:03:04 +0800 Weijie Yang <weijie.yang@samsung.com> wrote:
> >
> > > swapoff clear swap_info's SWP_USED flag prematurely and free its resources
> > > after that. A concurrent swapon will reuse this swap_info while its previous
> > > resources are not cleared completely.
> > >
> > > These late freed resources are:
> > > - p->percpu_cluster
> > > - swap_cgroup_ctrl[type]
> > > - block_device setting
> > > - inode->i_flags &= ~S_SWAPFILE
> > >
> > > This patch clear SWP_USED flag after all its resources freed, so that swapon
> > > can reuse this swap_info by alloc_swap_info() safely.
> > >
> > > This patch is just for a rare scenario, aim to correct of code.
> >
> > I believe that
> > http://ozlabs.org/~akpm/mmots/broken-out/mm-swap-fix-race-on-swap_info-reuse-between-swapoff-and-swapon.patch
> > makes this patch redundant?
> >
>
> oop, hang on. This patch *is* a stealth-updated version of
> http://ozlabs.org/~akpm/mmots/broken-out/mm-swap-fix-race-on-swap_info-reuse-between-swapoff-and-swapon.patch.
>
> Undocumented removals of si->swap_map have been added. What's going on
> there?
>
> I think I'll stick with the original patch for now. If you see
> additional optimisations or changes, let's address that separately?

Correct decision, thanks: I explained in an answer when Acking the
previous version why I dislike this version (it would prevent you
from watching the slow progress of swapoff).

Hugh


\
 
 \ /
  Last update: 2014-02-04 05:41    [W:0.034 / U:0.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site