ALSA: Force a cast to silence a warning from "sparse"
authorAntonio Ospite <ao2@amarulasolutions.com>
Tue, 29 Jan 2013 11:56:26 +0000 (12:56 +0100)
committerTakashi Iwai <tiwai@suse.de>
Tue, 29 Jan 2013 14:08:43 +0000 (15:08 +0100)
Some audio drivers are calling snd_dma_continuous_data(GFP_KERNEL)
which makes "sparse" give a warning:

  $ make C=2 M=sound/usb modules
    ...
  sound/usb/6fire/pcm.c:625:25: warning: cast from restricted gfp_t
  sound/usb/caiaq/audio.c:845:41: warning: cast from restricted gfp_t
  sound/usb/usx2y/usbusx2yaudio.c:997:54: warning: cast from restricted gfp_t
  sound/usb/usx2y/usbusx2yaudio.c:1001:54: warning: cast from restricted gfp_t
  sound/usb/usx2y/usx2yhwdeppcm.c:774:54: warning: cast from restricted gfp_t
  sound/usb/usx2y/usx2yhwdeppcm.c:778:54: warning: cast from restricted gfp_t

Add __force to the cast to silence the warning.

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/sound/memalloc.h

index 844af65af6261a73ad4502ecb98188a6280a3f8d..cf15b8213df7e0bd7e25e6d003f23ffd1d375674 100644 (file)
@@ -37,7 +37,7 @@ struct snd_dma_device {
 #ifndef snd_dma_pci_data
 #define snd_dma_pci_data(pci)  (&(pci)->dev)
 #define snd_dma_isa_data()     NULL
-#define snd_dma_continuous_data(x)     ((struct device *)(unsigned long)(x))
+#define snd_dma_continuous_data(x)     ((struct device *)(__force unsigned long)(x))
 #endif