On Mon, 2021-04-05 at 22:02 +0800, Coly Li wrote: > On 4/5/21 6:14 PM, Zheng Yongjun wrote: > > mutex lock can be initialized automatically with DEFINE_MUTEX() > > rather than explicitly calling mutex_init(). > > > > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> > > Signed-off-by: Zheng Yongjun <zhengyongjun3@xxxxxxxxxx> > > NACK. This is not the first time people try to "fix" this location... > > Using DEFINE_MUTEX() does not gain anything for us, it will generate > unnecessary extra size for the bcache.ko. > ines. How can the final binary have larger size by just static declaration? By using DEFINE_MUTEX, the mutex is initialized at compile time. It'll save initialization at run time and one line of code will be less also from text section. #### with no change (dynamic initialization) size drivers/md/bcache/bcache.ko text data bss dec hex filename 187792 25310 152 213254 34106 drivers/md/bcache/bcache.ko #### with patch applied (static initialization) text data bss dec hex filename 187751 25342 120 213213 340dd drivers/md/bcache/bcache.ko Module's binary size has decreased by 41 bytes with the path applied (x86_64 arch).