Re: [patch] CIFS: cleanup min_t() cast in cifs_read()

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

 



I prefer the change to unsigned int rather than u32 so it is clearer
that you are not casting the value from 64 bit to 32 bit on some
architectures.  To avoid reformatting can't you can use "uint" if you
want the shorter form see:

include/linux/types.h:typedef unsigned int		uint;

On Mon, Oct 17, 2011 at 2:30 AM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
> Smatch complains that the cast to "int" in min_t() changes very large
> values of current_read_size into negative values and so min_t()
> could return the wrong value.
>
> Also casting the "const" here doesn't make sense.
>
> I've changed it to u32 ("unsigned int" take puts us past the 80
> character limit).
>
> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
>
> diff --git a/fs/cifs/file.c b/fs/cifs/file.c
> index 9f41a10..a61f581 100644
> --- a/fs/cifs/file.c
> +++ b/fs/cifs/file.c
> @@ -1861,13 +1861,13 @@ static ssize_t cifs_read(struct file *file, char *read_data, size_t read_size,
>        for (total_read = 0, current_offset = read_data;
>             read_size > total_read;
>             total_read += bytes_read, current_offset += bytes_read) {
> -               current_read_size = min_t(const int, read_size - total_read,
> +               current_read_size = min_t(u32, read_size - total_read,
>                                          cifs_sb->rsize);
>                /* For windows me and 9x we do not want to request more
>                than it negotiated since it will refuse the read then */
>                if ((pTcon->ses) &&
>                        !(pTcon->ses->capabilities & CAP_LARGE_FILES)) {
> -                       current_read_size = min_t(const int, current_read_size,
> +                       current_read_size = min_t(u32, current_read_size,
>                                        pTcon->ses->server->maxBuf - 128);
>                }
>                rc = -EAGAIN;
>



-- 
Thanks,

Steve
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux