On Fri, Sep 20, 2019 at 08:21:53PM +0800, Xiaoming Ni wrote: > > > On 2019/9/20 19:43, Al Viro wrote: > > On Fri, Sep 20, 2019 at 02:54:38PM +0800, Xiaoming Ni wrote: > >> Use kzalloc() to allocate memory in jffs2_fill_super(). > >> Freeing memory when jffs2_parse_options() fails will cause > >> use-after-free and double-free in jffs2_kill_sb() > > > > ... so we are not freeing it there. What's the problem? > > No code logic issues, no memory leaks > > But there is too much code logic between memory allocation and free, > which is difficult to understand. Er? An instance of jffs2 superblock might have a related object attached to it; it is created in jffs2 superblock constructor and freed in destructor. > The modified code is easier to understand. You are making the cleanup logics harder to follow. ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/