From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Dilger, Andreas" Subject: Re: [PATCH 5/6] treewide: use kv[mz]alloc* rather than opencoded variants Date: Fri, 13 Jan 2017 01:11:51 +0000 Message-ID: <0B164192-F549-4D5E-BB07-B51886D936B0@intel.com> References: <20170112153717.28943-1-mhocko@kernel.org> <20170112153717.28943-6-mhocko@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: Andrew Morton , Vlastimil Babka , David Rientjes , Mel Gorman , Johannes Weiner , Al Viro , "linux-mm@kvack.org" , LKML , Michal Hocko , "Martin Schwidefsky" , Heiko Carstens , Herbert Xu , Anton Vorontsov , Colin Cross , "Kees Cook" , "Luck, Tony" , "Rafael J. Wysocki" , Ben Skeggs , "Kent Overstreet" , Santosh Raspatur , Hariprasad S , Tariq Toukan , Yishai Hadas , "Will To: Michal Hocko Return-path: In-Reply-To: <20170112153717.28943-6-mhocko@kernel.org> Content-Language: en-US Content-ID: Sender: owner-linux-mm@kvack.org List-Id: netdev.vger.kernel.org > On Jan 12, 2017, at 08:37, Michal Hocko wrote: >=20 > From: Michal Hocko >=20 > There are many code paths opencoding kvmalloc. Let's use the helper > instead. The main difference to kvmalloc is that those users are usually > not considering all the aspects of the memory allocator. E.g. allocation > requests < 64kB are basically never failing and invoke OOM killer to > satisfy the allocation. This sounds too disruptive for something that > has a reasonable fallback - the vmalloc. On the other hand those > requests might fallback to vmalloc even when the memory allocator would > succeed after several more reclaim/compaction attempts previously. There > is no guarantee something like that happens though. >=20 > This patch converts many of those places to kv[mz]alloc* helpers because > they are more conservative. >=20 > Signed-off-by: Michal Hocko Lustre part can be Acked-by: Andreas Dilger [snip] > diff --git a/drivers/staging/lustre/lnet/libcfs/linux/linux-mem.c b/drive= rs/staging/lustre/lnet/libcfs/linux/linux-mem.c > index a6a76a681ea9..8f638267e704 100644 > --- a/drivers/staging/lustre/lnet/libcfs/linux/linux-mem.c > +++ b/drivers/staging/lustre/lnet/libcfs/linux/linux-mem.c > @@ -45,15 +45,6 @@ EXPORT_SYMBOL(libcfs_kvzalloc); > void *libcfs_kvzalloc_cpt(struct cfs_cpt_table *cptab, int cpt, size_t si= ze, > gfp_t flags) > { > - void *ret; > - > - ret =3D kzalloc_node(size, flags | __GFP_NOWARN, > - cfs_cpt_spread_node(cptab, cpt)); > - if (!ret) { > - WARN_ON(!(flags & (__GFP_FS | __GFP_HIGH))); > - ret =3D vmalloc_node(size, cfs_cpt_spread_node(cptab, cpt)); > - } > - > - return ret; > + return kvzalloc_node(size, flags, cfs_cpt_spread_node(cptab, cpt)); > } > EXPORT_SYMBOL(libcfs_kvzalloc_cpt); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org