Messages in this thread | | | Date | Thu, 11 Mar 2021 10:34:46 +0100 | From | Petr Mladek <> | Subject | Re: [PATCH v5] printk: Userspace format enumeration support |
| |
On Wed 2021-03-10 13:16:43, Greg Kroah-Hartman wrote: > On Wed, Mar 10, 2021 at 12:12:57PM +0000, Chris Down wrote: > > Greg Kroah-Hartman writes: > > > On Wed, Mar 10, 2021 at 02:30:31AM +0000, Chris Down wrote: > > > > + ps->file = debugfs_create_file(pi_get_module_name(mod), 0444, dfs_index, > > > > + ps, &dfs_index_fops); > > > > + > > > > + if (IS_ERR(ps->file)) { > > > > + pi_sec_remove(mod); > > > > + return; > > > > + } > > > > > > No need to check this and try to clean up if there is a problem, just > > > save the pointer off and call debugfs_remove() when you want to clean > > > up. > > > > Petr, what are your thoughts on this, since you requested the cleanup on > > debugfs failure? :-) > > There is nothing to "clean up" if there is a debugfs failure here so I > don't see the need.
My main concern is that the allocated struct pi_sec must not be leaked when debugfs file was not created.
I still have to check if it would be freed even without the file when the module is going out.
> > > Or better yet, no need to save anything, you can always look it up when > > > you want to remove it, that will save you one pointer per module. > > > > That's a good point, and with that maybe we can even do away with the pi_sec > > entirely then since that only leaves start/end pointers which we can > > calculate on demand from existing data. > > Please do, that makes the code simpler overall.
Yup, that might make things even easier. Well, I still have to go and try to better understand the new patch.
Best Regards, Petr
| |