Re: [PATCH v2] ext4: fix macro definition error of EXT4_DIRENT_HASH and EXT4_DIRENT_MINOR_HASH

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu 06-06-24 13:43:16, carrion bent wrote:
>     the macro parameter 'entry' of EXT4_DIRENT_HASH and
>     EXT4_DIRENT_MINOR_HASH was not used, but rather the
>     variable 'de' was directly used, which may be a local
>     variable inside a function that calls the macros.
>     Fortunately, all callers have passed in 'de' so far,
>     so this bug didn't have an effect.
> 
> Signed-off-by: carrion bent <carrionbent@xxxxxxxxxxxxxxxxx>

Ted, this seems to have fallen through the cracks. The bug in the macro is
really nasty trap...

								Honza

> ---
>  fs/ext4/ext4.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
> index 983dad8..04bdd27 100644
> --- a/fs/ext4/ext4.h
> +++ b/fs/ext4/ext4.h
> @@ -2338,9 +2338,9 @@ struct ext4_dir_entry_2 {
>  	((struct ext4_dir_entry_hash *) \
>  		(((void *)(entry)) + \
>  		((8 + (entry)->name_len + EXT4_DIR_ROUND) & ~EXT4_DIR_ROUND)))
> -#define EXT4_DIRENT_HASH(entry) le32_to_cpu(EXT4_DIRENT_HASHES(de)->hash)
> +#define EXT4_DIRENT_HASH(entry) le32_to_cpu(EXT4_DIRENT_HASHES(entry)->hash)
>  #define EXT4_DIRENT_MINOR_HASH(entry) \
> -		le32_to_cpu(EXT4_DIRENT_HASHES(de)->minor_hash)
> +		le32_to_cpu(EXT4_DIRENT_HASHES(entry)->minor_hash)
>  
>  static inline bool ext4_hash_in_dirent(const struct inode *inode)
>  {
> -- 
> 2.7.4
> 
> 
-- 
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR




[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux