media: cx88-alsa: number of pages should be unsigned long
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 1 Sep 2020 14:41:15 +0000 (16:41 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Thu, 3 Sep 2020 09:13:26 +0000 (11:13 +0200)
As reported by smatch:

drivers/media/pci/cx88/cx88-alsa.c:286 cx88_alsa_dma_init() warn: should 'nr_pages << 12' be a 64 bit type?

the number of patches should be unsigned long.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/pci/cx88/cx88-alsa.c

index 7d7acee..aec60eb 100644 (file)
  */
 
 struct cx88_audio_buffer {
-       unsigned int               bpl;
-       struct cx88_riscmem        risc;
+       unsigned int            bpl;
+       struct cx88_riscmem     risc;
        void                    *vaddr;
        struct scatterlist      *sglist;
        int                     sglen;
-       int                     nr_pages;
+       unsigned long           nr_pages;
 };
 
 struct cx88_audio_dev {
@@ -271,7 +271,8 @@ static irqreturn_t cx8801_irq(int irq, void *dev_id)
        return IRQ_RETVAL(handled);
 }
 
-static int cx88_alsa_dma_init(struct cx88_audio_dev *chip, int nr_pages)
+static int cx88_alsa_dma_init(struct cx88_audio_dev *chip,
+                             unsigned long nr_pages)
 {
        struct cx88_audio_buffer *buf = chip->buf;
        struct page *pg;
@@ -279,11 +280,11 @@ static int cx88_alsa_dma_init(struct cx88_audio_dev *chip, int nr_pages)
 
        buf->vaddr = vmalloc_32(nr_pages << PAGE_SHIFT);
        if (!buf->vaddr) {
-               dprintk(1, "vmalloc_32(%d pages) failed\n", nr_pages);
+               dprintk(1, "vmalloc_32(%lu pages) failed\n", nr_pages);
                return -ENOMEM;
        }
 
-       dprintk(1, "vmalloc is at addr %p, size=%d\n",
+       dprintk(1, "vmalloc is at addr %p, size=%lu\n",
                buf->vaddr, nr_pages << PAGE_SHIFT);
 
        memset(buf->vaddr, 0, nr_pages << PAGE_SHIFT);