Messages in this thread | | | Date | Tue, 19 Sep 2017 19:15:11 +0900 | From | Sergey Senozhatsky <> | Subject | Re: [PATCH] zram: fix null dereference of handle |
| |
Hi Minchan,
On (09/19/17 15:59), Minchan Kim wrote: [..] > > another question, "!handle == value & ZRAM_SAME"? if so, then why not > > just check for `flags & ZRAM_SAME'? if not then: > > > > - for `value & ZRAM_SAME' you fill the page with zram_get_element(zram, index) > > and return 0. ok. > > > > - for !handle.... you also fill the page with zram_get_element(zram, index) > > and return 0. is this ok? shouldn't !handle return error in this case? > > We discussed it before that we shouldn't return error. > Userspace can ask reading unallocated buffer freely.
ok, so this is intentional behaviour.
> And in this case, it fills the buffer zero because handle and element is unified. > However, if your concern is readability, I will make it more explict.
correct. ... but I thought that we would also return an error.
> > I really suspect that there are some paths that can lead to !handle > > entry, that will not be ZRAM_SAME. e.g. error return from compression > > path. > > Could you be more specific?
I just meant that there are error paths in zram write, which will leave us both with !handle entries and !ZRAM_SAME. but it seems that this is the intentional behaviour.
-ss
| |