Re: [Nouveau] [PATCH] drm/nouveau/fb/gf100-: Fix 32 bit wraparound in new ram detection

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

 



good catch

Reviewed-by: Karol Herbst <karolherbst@xxxxxxxxx>

2017-04-29 6:11 GMT+02:00 Mario Kleiner <mario.kleiner.de@xxxxxxxxx>:
> A missing u64 cast causes a 32-Bit wraparound from
> 4096 MiB to 0 MiB and therefore total 0 MiB VRAM detected
> if card has 4096 Mib per FBP.
>
> Signed-off-by: Mario Kleiner <mario.kleiner.de@xxxxxxxxx>
> ---
>  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c
> index 53c32fc..c639759 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c
> @@ -589,7 +589,7 @@ gf100_ram_ctor(const struct nvkm_ram_func *func, struct nvkm_fb *fb,
>                         nvkm_debug(subdev, "FBP %d: %4d MiB, %d LTC(s)\n",
>                                    fbp, size, ltcs);
>                         lcomm  = min(lcomm, (u64)(size / ltcs) << 20);
> -                       total += size << 20;
> +                       total += (u64) size << 20;
>                         ltcn  += ltcs;
>                 } else {
>                         nvkm_debug(subdev, "FBP %d: disabled\n", fbp);
> --
> 2.7.4
>
> _______________________________________________
> Nouveau mailing list
> Nouveau@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/nouveau
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux