Hello Christian,

Am Wed, Nov 08, 2023 at 01:12:38PM +0100 schrieb 
christian.taedcke-...@weidmueller.com:
> From: Christian Taedcke <christian.taed...@weidmueller.com>
> 
> This reduces code duplications.
> 
> Signed-off-by: Christian Taedcke <christian.taed...@weidmueller.com>
> ---
> 
>  fs/fat/fat.c | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/fs/fat/fat.c b/fs/fat/fat.c
> index 8ff1fd0ec8..8a0f4e4e6c 100644
> --- a/fs/fat/fat.c
> +++ b/fs/fat/fat.c
> @@ -25,6 +25,8 @@
>  #include <linux/compiler.h>
>  #include <linux/ctype.h>
>  
> +#define FATU8ARRAY2CPU16(x) (((x)[1] << 8) + (x)[0])

This does the same as the generic `get_unaligned_le16()` … why not use
that?

Greets
Alex

> +
>  /*
>   * Convert a string to lowercase.  Converts at most 'len' characters,
>   * 'len' may be larger than the length of 'str' if 'str' is NULL
> @@ -571,7 +573,7 @@ static int get_fs_info(fsdata *mydata)
>               mydata->total_sect = bs.total_sect;
>       } else {
>               mydata->fatlength = bs.fat_length;
> -             mydata->total_sect = (bs.sectors[1] << 8) + bs.sectors[0];
> +             mydata->total_sect = FATU8ARRAY2CPU16(bs.sectors);
>               if (!mydata->total_sect)
>                       mydata->total_sect = bs.total_sect;
>       }
> @@ -583,7 +585,7 @@ static int get_fs_info(fsdata *mydata)
>  
>       mydata->rootdir_sect = mydata->fat_sect + mydata->fatlength * bs.fats;
>  
> -     mydata->sect_size = (bs.sector_size[1] << 8) + bs.sector_size[0];
> +     mydata->sect_size = FATU8ARRAY2CPU16(bs.sector_size);
>       mydata->clust_size = bs.cluster_size;
>       if (mydata->sect_size != cur_part_info.blksz) {
>               log_err("FAT sector size mismatch (fs=%u, dev=%lu)\n",
> @@ -607,8 +609,7 @@ static int get_fs_info(fsdata *mydata)
>                                       (mydata->clust_size * 2);
>               mydata->root_cluster = bs.root_cluster;
>       } else {
> -             mydata->rootdir_size = ((bs.dir_entries[1]  * (int)256 +
> -                                      bs.dir_entries[0]) *
> +             mydata->rootdir_size = (FATU8ARRAY2CPU16(bs.dir_entries) *
>                                        sizeof(dir_entry)) /
>                                        mydata->sect_size;
>               mydata->data_begin = mydata->rootdir_sect +
> -- 
> 2.34.1
> 

Reply via email to