On Wed, Mar 03, 2021 at 10:09:57PM -0800, Andrew Morton wrote: > On Wed, 3 Mar 2021 17:38:12 -0800 Minchan Kim <minchan@xxxxxxxxxx> wrote: > > > > > #endif > > > > char name[CMA_MAX_NAME]; > > > > +#ifdef CONFIG_CMA_SYSFS > > > > + struct cma_stat *stat; > > > > +#endif > > > > }; > > > > > > Why aren't the stat fields simply placed directly into struct cma_stat? > > > > It have a related long discussion. > > https://lore.kernel.org/linux-mm/YCIoHBGELFWAyfMi@xxxxxxxxx/ > > https://lore.kernel.org/linux-mm/YCLLKDEQ4NYqb5Y5@xxxxxxxxx/ > > > > TLDR - Greg really want to see kobject stuff working as dynamic > > property. > > Please add to changelog? Sure. > > > > > > > ? > > > > > > > + if (!cma_stats) { > > > > + pr_err("failed to create cma_stats\n"); > > > > > > Probably unneeded - the ENOMEM stack backtrace will point straight here. > > > > I failed to find the point you mentioned to print backtrace. > > Where code do you mean to dump the backtrace? > > The thing which __GFP_NOWARN disables. Got the point.