On Thu, Jun 12, 2025 at 08:54:59PM +0800, Julian Sun wrote: > Hi, > > Recently, I observed a significant difference in the number of > blk_mq_get_tag() calls when executing mkfs.ext4 -F -q /dev/$nvme > versus mkfs.ext4 -F -q -E lazy_itable_init=1,lazy_journal_init=1 > /dev/$nvme. The former has over 2,000 more calls than the latter, > which is confusing because the mkfs.ext4 man page states both features > should be enabled by default. This implies the commands should be > equivalent, with no I/O difference. > > lazy_journal_init[= <0 to disable, 1 to enable>] > If enabled, the journal inode will not be > fully zeroed out by mke2fs. This speeds up file system initialization > noticeably, but carries some small risk if the system crashes before > the journal has been overwritten entirely one time. If the option > value is omitted, it defaults to 1 to enable lazy journal inode > ^^^^^^^^^^^ > zeroing. I agree that this might be a bit misleading, but what was meant was that: mke2fs -E lazy_journal_init and mke2fs -E lazy_journal_init=1 are identical. The key words here is "If the option value is omitted". Note that there is a distinct difference between the extended option using -E command-line option and specifying the default in mke2fs.conf. That is documented in the mke2fs.conf(5) man page. So the bottom line is that it is possible to change the default of lazy_journal_init (and lazy_itable_init, etc.) in /etc/mke2fs.conf. So specifying exactly what the default should be is tricky, because the system administrator could have changed what is in /etc/mke2fs.conf. So there is the default if there is no mention of the option in /etc/mke2fs.conf; the default that is used if the extended option -E lazy_itable_init=N is not specified (which is the value in /etc/mke2fs.conf, or the default if it is not mentioned in /etc/mke2fs.conf); and then there is the default value if "=N" is not specified. 'm not sure what's the best way of making this more explicit, short of doubling or tripling the paragraphs in man pages for mke2fs(8) and mke2fs.conf(5). Which would not be ideal.... I'm happy to receive any suggestions for how to make things a bit more clear but hopefully in a succint way. Fortunately, it's super rare that users would ever need to change the default, and most of the time, it's best not to mess with these knobs at all.... Cheers, - Ted