Standardize the journal mode of symlink external block, from the essentially data=journal mode to 'standard mode' like other metadata blocks. (e.g. directory blocks and directory blocks...) Thanks, Yi. v4->v3: - Add a query cache 'no-wait' mode of ext4_getblk() and ext4_map_blocks() to fix potential sleep problem in RCU context. v3->v2: - Retry if it fail in close-to-ENOSPC conditions. - Use ext4_add_nondir() to add dir entry for no-fast symlink. - Fix RCU walking for symlinks. - Ensure nul-terminate when in ext4_get_link(). v2->v1: - Add comment to explain the credits of creating symlink. [v3]: https://lore.kernel.org/linux-ext4/20220418063735.2067766-1-yi.zhang@xxxxxxxxxx/ [v2]: https://lore.kernel.org/linux-ext4/20220412083941.2242143-1-yi.zhang@xxxxxxxxxx/ [v1]: https://lore.kernel.org/linux-ext4/20220406084503.1961686-1-yi.zhang@xxxxxxxxxx/ Zhang Yi (2): ext4: add nowait mode for ext4_getblk() ext4: convert symlink external data block mapping to bdev fs/ext4/ext4.h | 2 + fs/ext4/inode.c | 23 ++++++--- fs/ext4/namei.c | 123 +++++++++++++++++++++------------------------- fs/ext4/symlink.c | 51 ++++++++++++++++--- 4 files changed, 116 insertions(+), 83 deletions(-) -- 2.31.1