On Fri, 16 Sep 2022 22:15:11 +0800, Jason Yan wrote: > This function is maybe the longest function I have seen in the kernel. > It has more than one thousand lines. This makes us not easy to read and > understand the code. So I made some refactors. The first two patches did > some preparation to the goto labels so that we can factor out some > functions easily. > > After this refactor this function is about 500 lines shorter. I did not > go further because I'm not sure if people like this kind of change. If > there is any bad side effects, please let me know. If you strongly > dislike it, I am ok to stop this refactor. > > [...] Applied, thanks! [01/16] ext4: goto right label 'failed_mount3a' commit: 98f3969c5b85fd27229e37b97c112ee732f62d3a [02/16] ext4: remove cantfind_ext4 error handler commit: 5cf7f37e18c56dc282ea3abf5fa0937584e91818 [03/16] ext4: factor out ext4_set_def_opts() commit: a8266de7242e9cdb3fe2f100b5073a164036bd24 [04/16] ext4: factor out ext4_handle_clustersize() commit: 47c95214fa8e716f51e4f2a28a46ad0b0f11f354 [05/16] ext4: factor out ext4_fast_commit_init() commit: 5d5f6bbb2c862451099e97800eb6a52a130d9dba [06/16] ext4: factor out ext4_inode_info_init() commit: f3c31f5ef8aa829e26a4a66ed27878dbc4847da7 [07/16] ext4: factor out ext4_encoding_init() commit: b97ca755477a914613eb62a716d982f894d59c10 [08/16] ext4: factor out ext4_init_metadata_csum() commit: db77f42df8d9c5e5b8a5224fdcf13d526adcfbda [09/16] ext4: factor out ext4_check_feature_compatibility() commit: 2549b575adfacd8dab97e161c6d889a4b13e2cd7 [10/16] ext4: factor out ext4_geometry_check() commit: 86081e376696a62811d31cb9ecacdd1243c3e5a0 [11/16] ext4: factor out ext4_group_desc_init() and ext4_group_desc_free() commit: 40eccabfecc75dac98a498e2c00792aeb0ee12f4 [12/16] ext4: factor out ext4_load_and_init_journal() commit: c06b378db2baf68e2621a9aca6ff2d4f080baae2 [13/16] ext4: factor out ext4_journal_data_mode_check() commit: 74e328480987b97c12152e465a208edbf421c8cd [14/16] ext4: unify the ext4 super block loading operation commit: 6853983d170ec54fca63c5cc25435f1b5fccee7d [15/16] ext4: remove useless local variable 'blocksize' commit: eadbef67b08653a90770a0402ba0b679735e4583 [16/16] ext4: move DIOREAD_NOLOCK setting to ext4_set_def_opts() commit: 697cc59edc6052795b10e63f2f6c27e33615d59b Best regards, -- Theodore Ts'o <tytso@xxxxxxx>