Thread (28 messages) 28 messages, 4 authors, 2021-03-22

Re: [PATCH v4] mm: cma: support sysfs

From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2021-03-20 11:44:17
Also in: linux-tegra, lkml

On Fri, Mar 19, 2021 at 10:24:03PM +0300, Dmitry Osipenko wrote:
19.03.2021 22:03, Minchan Kim пишет:
quoted
On Fri, Mar 19, 2021 at 09:48:11PM +0300, Dmitry Osipenko wrote:
quoted
19.03.2021 21:21, Minchan Kim пишет:
quoted
On Fri, Mar 19, 2021 at 08:56:06PM +0300, Dmitry Osipenko wrote:
quoted
19.03.2021 19:30, Minchan Kim пишет:
quoted
+static void cma_kobj_release(struct kobject *kobj)
+{
+	struct cma_kobject *cma_kobj = container_of(kobj, struct cma_kobject, kobj);
+
+	kfree(cma_kobj);
+}
Oh, wait.. I think this kfree wrong since cma_kobj belongs to the array.
Oh, good spot. Let me use kzalloc.
Thinking a bit more about this.. it looks like actually it should be
better to get back to the older variant of cma_stat, but allocate at the
time of CMA initialization, rather than at the time of sysfs
initialization. Then the cma_stat will be decoupled from the cma struct
IIRC, the problem was slab was not initiaized at CMA init point.
That's why I liked your suggestion.
Alright, if CMA init time is a problem, then the recent variant should
be okay.
quoted
quoted
and cma_stat will be a self-contained object.
Yeah, self-contained is better but it's already weird to
have differnt lifetime for one object since CMA object
never die, technically.
Indeed.

I found the Greg's original argument and not sure that it's really
worthwhile to worry about the copycats since this is not a driver's code..

Maybe we could just add a clarifying comment for the kobj, telling why
it's okay for CMA. Greg, doesn't it sound like a good compromise to you?
Please no.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help