mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-20 13:41:30 +00:00
ext2: avoid rec_len overflow with 64KB block size
With 64KB blocksize, a directory entry can have size 64KB which does not fit into 16 bits we have for entry length. So we store 0xffff instead and convert the value when read from / written to disk. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Jan Kara <jack@suse.cz> Cc: <linux-ext4@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
321bcf9216
commit
89910cccb8
2 changed files with 33 additions and 12 deletions
|
@ -561,6 +561,7 @@ enum {
|
|||
#define EXT2_DIR_ROUND (EXT2_DIR_PAD - 1)
|
||||
#define EXT2_DIR_REC_LEN(name_len) (((name_len) + 8 + EXT2_DIR_ROUND) & \
|
||||
~EXT2_DIR_ROUND)
|
||||
#define EXT2_MAX_REC_LEN ((1<<16)-1)
|
||||
|
||||
static inline ext2_fsblk_t
|
||||
ext2_group_first_block_no(struct super_block *sb, unsigned long group_no)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue