0

man ext4 mentions a mount option called journal_async_commit.

Commit block can be written to disk without waiting for descriptor blocks. If enabled older kernels cannot mount the device. This will enable 'journal_checksum' internally.

Caveat: the document is incomplete. 1) The option is also no longer allowed in combination with the default option data=ordered. 2) As of 2012, the option was considered "off the reservation a bit; that's really not tested, and Jan had serious reservations about its safety". I do not know if the option is any more mature in current kernel versions.

Overall this limits its usefulness somewhat. So I don't have a specific practical use for this question. Perhaps someone else is interested in it though.

Q1. What sort of message would appear in the kernel log, if an old kernel is unable to support mounting a filesystem, and the failure reason is that the filesystem had previously been mounted with journal_async_commit? Would it be possible to identify this specific problem?

Q2. I assume that old kernels will still be able to mount the filesystem if the journal is cleaned/empty, for example if you run a new enough version of fsck.ext4 first. (fsck.ext4 is documented as replaying the journal). If I run the current versions of tune2fs or debuge2fs on an unmounted filesystem, will they show a specific incompatible feature flag, that would tell me exactly whether a too-old kernel can or cannot mount it?

Q3. Is it possible to enable journal_async_commit using tune2fs (and mkfs.ext4)? If so, what will tune2fs -l show when it is enabled?

I think the current answer to Q3 is that tune2fs can set default mount options. journal_async_commit is not documented as an option that can be set with tune2fs -o. Therefore you would have to resort to tune2fs -E mount_opts=journal_async_commit. This feature is not "very polished"; it seems that if you want to set more than one option in mount_opts= you must use debuge2fs instead.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.