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? > > > > ? > > > > > + 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.