Messages in this thread | | | Date | Tue, 24 Nov 2015 16:10:46 +0900 | From | Minchan Kim <> | Subject | Re: [PATCH 1/3] zram/zcomp: use GFP_NOIO to allocate streams |
| |
On Tue, Nov 24, 2015 at 03:00:37PM +0900, Sergey Senozhatsky wrote: > [..] > > static struct zcomp_strm *zcomp_strm_alloc(struct zcomp *comp) > > { > > - struct zcomp_strm *zstrm = kmalloc(sizeof(*zstrm), GFP_KERNEL); > > + struct zcomp_strm *zstrm = kmalloc(sizeof(*zstrm), GFP_NOIO); > > if (!zstrm) > > return NULL; > > > > @@ -85,7 +85,7 @@ static struct zcomp_strm *zcomp_strm_alloc(struct zcomp *comp) > > * allocate 2 pages. 1 for compressed data, plus 1 extra for the > > * case when compressed size is larger than the original one > > */ > > - zstrm->buffer = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO, 1); > > + zstrm->buffer = (void *)__get_free_pages(GFP_NOIO | __GFP_ZERO, 1); > > if (!zstrm->private || !zstrm->buffer) { > > zcomp_strm_free(comp, zstrm); > > zstrm = NULL; > > hm... this is not enough. > we allocate > > stream GFP_NOIO > stream private GFP_KERNEL <<<< still old flags > stream buffer > > so my patch was something like this:
Oops, I missed that. Sorry. I will include it in next spin.
Thanks! -- Kind regards, Minchan Kim
| |