2014-01-27 10:01:31

by Weijie Yang

[permalink] [raw]
Subject: [PATCH 0/8] mm/swap: fix some rare issues in swap subsystem

This patch series focus on some tiny and rare issues in swap subsystem.
These issues happen rarely, so it is just for the correctness of the code.

It firstly add some comments to try to make swap flag/lock usage in
swapfile.c more clear and readable,
and fix some rare issues in swap subsystem that cause race condition among
swapon, swapoff and frontswap_register_ops.
and fix some not race issues.

Please see individual patch for details, any complaint and suggestion
are welcome.

Regards

patch 1/8: add some comments for swap flag/lock usage

patch 2/8: fix race on swap_info reuse between swapoff and swapon
This patch has been in akpm -mm tree, however I improve it according
to Heesub Shin and Mateusz Guzik's suggestion. So, that old patch need
to be dropped.

patch 3/8: prevent concurrent swapon on the same S_ISBLK blockdev

patch 4/8: fix race among frontswap_register_ops, swapoff and swapon

patch 5/8: drop useless and bug frontswap_shrink codes

patch 6/8: remove swap_lock to simplify si_swapinfo()

patch 7/8: check swapfile blocksize greater than PAGE_SIZE

patch 8/8: add missing handle on a dup-store failure

include/linux/blkdev.h | 4 +++-
include/linux/frontswap.h | 2 --
include/linux/swapfile.h | 4 +---
mm/frontswap.c | 127 +++++++------------------------------------------------------------------------------------------------------------------------
mm/page_io.c | 2 ++
mm/rmap.c | 2 +-
mm/swapfile.c | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------
7 files changed, 112 insertions(+), 167 deletions(-)


2014-01-27 13:18:47

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH 0/8] mm/swap: fix some rare issues in swap subsystem

On Mon, Jan 27, 2014 at 06:00:03PM +0800, Weijie Yang wrote:
> This patch series focus on some tiny and rare issues in swap subsystem.
> These issues happen rarely, so it is just for the correctness of the code.
>
> It firstly add some comments to try to make swap flag/lock usage in
> swapfile.c more clear and readable,
> and fix some rare issues in swap subsystem that cause race condition among
> swapon, swapoff and frontswap_register_ops.
> and fix some not race issues.
>
> Please see individual patch for details, any complaint and suggestion
> are welcome.
>
> Regards
>
> patch 1/8: add some comments for swap flag/lock usage
>
> patch 2/8: fix race on swap_info reuse between swapoff and swapon
> This patch has been in akpm -mm tree, however I improve it according
> to Heesub Shin and Mateusz Guzik's suggestion. So, that old patch need
> to be dropped.
>
> patch 3/8: prevent concurrent swapon on the same S_ISBLK blockdev
>
> patch 4/8: fix race among frontswap_register_ops, swapoff and swapon
>
> patch 5/8: drop useless and bug frontswap_shrink codes
>
> patch 6/8: remove swap_lock to simplify si_swapinfo()
>
> patch 7/8: check swapfile blocksize greater than PAGE_SIZE
>
> patch 8/8: add missing handle on a dup-store failure
>
> include/linux/blkdev.h | 4 +++-
> include/linux/frontswap.h | 2 --
> include/linux/swapfile.h | 4 +---
> mm/frontswap.c | 127 +++++++------------------------------------------------------------------------------------------------------------------------
> mm/page_io.c | 2 ++
> mm/rmap.c | 2 +-
> mm/swapfile.c | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------
> 7 files changed, 112 insertions(+), 167 deletions(-)


<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree. Please read Documentation/stable_kernel_rules.txt
for how to do this properly.

</formletter>