Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1623729

Re: [PATCH 1/3] zram: fix operator precedence to get offset

From Minchan Kim <minchan@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH 1/3] zram: fix operator precedence to get offset
Date 2017-04-14 17:40 +0200
Message-ID <twbuh-2Mv-19@gated-at.bofh.it> (permalink)
References <tvAEp-3qZ-3@gated-at.bofh.it> <tw1EC-5pR-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Sergey,

On Fri, Apr 14, 2017 at 02:07:47PM +0900, Sergey Senozhatsky wrote:
> Hello,
> 
> On (04/13/17 09:17), Minchan Kim wrote:
> [..]
> > diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
> > index 9e2199060040..83c38a123242 100644
> > --- a/drivers/block/zram/zram_drv.c
> > +++ b/drivers/block/zram/zram_drv.c
> > @@ -930,7 +930,7 @@ static int zram_rw_page(struct block_device *bdev, sector_t sector,
> >  	}
> >  
> >  	index = sector >> SECTORS_PER_PAGE_SHIFT;
> > -	offset = sector & (SECTORS_PER_PAGE - 1) << SECTOR_SHIFT;
> > +	offset = (sector & (SECTORS_PER_PAGE - 1)) << SECTOR_SHIFT;
> 
> sorry, can it actually produce different results?

I got your point. Actually, offset was wrong but rw_page is called
with PAGE_SIZE io while that offset is related to only partial io
(non-PAGEE size io). IOW, although the wrong offset it is never used
in functions.

To find subtle corruption in ppc64, I added some debug code to
catch up wrong buffer overflow and found it with other bugs but
didn't prove the specific case is valid case or not. Good catch, Sergey!

However, it should be *fixed* to prevent confusion in future but surely,
no need to go to the stable. I will send reply to Greg to prevent merging
it to *stable* when he send review asking to merge.

And next week I will send another fix which *maybe* removes code to get the
offset in zram_rw_page.

Thanks.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 1/3] zram: fix operator precedence to get offset Minchan Kim <minchan@kernel.org> - 2017-04-13 02:20 +0200
  [PATCH 3/3] zsmalloc: expand class bit Minchan Kim <minchan@kernel.org> - 2017-04-13 02:20 +0200
  [PATCH 2/3] zram: do not use copy_page with non-page alinged address Minchan Kim <minchan@kernel.org> - 2017-04-13 02:20 +0200
    Re: [PATCH 2/3] zram: do not use copy_page with non-page alinged  address Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-14 07:50 +0200
      Re: [PATCH 2/3] zram: do not use copy_page with non-page alinged  address Minchan Kim <minchan@kernel.org> - 2017-04-14 17:50 +0200
    Re: [PATCH 2/3] zram: do not use copy_page with non-page alinged  address Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-17 03:50 +0200
  Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-14 07:10 +0200
    Re: [PATCH 1/3] zram: fix operator precedence to get offset Minchan Kim <minchan@kernel.org> - 2017-04-14 17:40 +0200
      Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-17 03:30 +0200
        Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-17 04:00 +0200
          Re: [PATCH 1/3] zram: fix operator precedence to get offset Minchan Kim <minchan@kernel.org> - 2017-04-17 04:20 +0200
            Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-17 13:00 +0200
              Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-17 13:00 +0200
              Re: [PATCH 1/3] zram: fix operator precedence to get offset Minchan Kim <minchan@kernel.org> - 2017-04-18 02:00 +0200
                Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-18 04:00 +0200
                Re: [PATCH 1/3] zram: fix operator precedence to get offset Minchan Kim <minchan@kernel.org> - 2017-04-18 04:50 +0200
  Re: [PATCH 1/3] zram: fix operator precedence to get offset Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-04-17 03:30 +0200

csiph-web