Re: [merged mm-stable] zram-clear-idle-flag-after-recompression.patch removed from -mm tree

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

 



On Mon, Nov 11, 2024 at 8:42 AM Brian Geffon <bgeffon@xxxxxxxxxx> wrote:
>
> On Mon, Nov 11, 2024 at 3:28 AM Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> >
> >
> > The quilt patch titled
> >      Subject: zram: clear IDLE flag after recompression
> > has been removed from the -mm tree.  Its filename was
> >      zram-clear-idle-flag-after-recompression.patch
> >
> > This patch was dropped because it was merged into the mm-stable branch
> > of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
> >
> > ------------------------------------------------------
> > From: Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx>
> > Subject: zram: clear IDLE flag after recompression
> > Date: Tue, 29 Oct 2024 00:36:14 +0900
> >
> > Patch series "zram: IDLE flag handling fixes", v2.
> >
> > zram can wrongly preserve ZRAM_IDLE flag on its entries which can result
> > in premature post-processing (writeback and recompression) of such
> > entries.
> >
> >
> > This patch (of 2)
> >
> > Recompression should clear ZRAM_IDLE flag on the entries it has accessed,
> > because otherwise some entries, specifically those for which recompression
> > has failed, become immediate candidate entries for another post-processing
> > (e.g.  writeback).
> >
> > Consider the following case:
> > - recompression marks entries IDLE every 4 hours and attempts
> >   to recompress them
> > - some entries are incompressible, so we keep them intact and
> >   hence preserve IDLE flag
> > - writeback marks entries IDLE every 8 hours and writebacks
> >   IDLE entries, however we have IDLE entries left from
> >   recompression, so writeback prematurely writebacks those
> >   entries.
> >
> > The bug was reported by Shin Kawamura.
> >
> > Link: https://lkml.kernel.org/r/20241028153629.1479791-1-senozhatsky@xxxxxxxxxxxx
> > Link: https://lkml.kernel.org/r/20241028153629.1479791-2-senozhatsky@xxxxxxxxxxxx
> > Fixes: 84b33bf78889 ("zram: introduce recompress sysfs knob")
> > Signed-off-by: Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx>
> > Reported-by: Shin Kawamura <kawasin@xxxxxxxxxx>
> > Acked-by: Brian Geffon <bgeffon@xxxxxxxxxx>
> > Cc: Minchan Kim <minchan@xxxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx

> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > ---
> >
> >  drivers/block/zram/zram_drv.c |    7 +++++++
> >  1 file changed, 7 insertions(+)
> >
> > --- a/drivers/block/zram/zram_drv.c~zram-clear-idle-flag-after-recompression
> > +++ a/drivers/block/zram/zram_drv.c
> > @@ -1864,6 +1864,13 @@ static int recompress_slot(struct zram *
> >         if (ret)
> >                 return ret;
> >
> > +       /*
> > +        * We touched this entry so mark it as non-IDLE. This makes sure that
> > +        * we don't preserve IDLE flag and don't incorrectly pick this entry
> > +        * for different post-processing type (e.g. writeback).
> > +        */
> > +       zram_clear_flag(zram, index, ZRAM_IDLE);
> > +
> >         class_index_old = zs_lookup_class_index(zram->mem_pool, comp_len_old);
> >         /*
> >          * Iterate the secondary comp algorithms list (in order of priority)
> > _
> >
> > Patches currently in -mm which might be from senozhatsky@xxxxxxxxxxxx are
> >
> >





[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux