lkml.org 
[lkml]   [2008]   [Aug]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Help with compiler warning
Benny Halevy wrote:
> On Aug. 24, 2008, 18:29 +0300, Benny Halevy <bhalevy@panasas.com> wrote:
>> On Aug. 22, 2008, 4:36 +0300, Larry Finger <Larry.Finger@lwfinger.net> wrote:
>>> In drivers/pcmcia/cardbus.c, the following statement
>>>
>>> memcpy_fromio(ptr, s->cb_cis_virt + addr, len);
>>>
>>> generates the warning
>>>
>>> CC [M] drivers/pcmcia/cardbus.o
>>> include/asm/io_32.h: In function ‘memcpy_fromio’:
>>> include/asm/io_32.h:151: warning: passing argument 2 of ‘__memcpy’
>>> discards qualifiers from pointer target type
>>>
>>> s->cb_cis_virt is "void __iomem" and addr is uint.
>>>
>>> What cast does argument 2 need to silence the warning?
>> memcpy_fromio takes a (const volatile void __iomem *) for the
>> src address.
>
> So the culprit could be the volatile qualifier...

Changing it to

memcpy_fromio(ptr, (const volatile void __iomem *)(s->cb_cis_virt +
addr), len);

memcpy_fromio(ptr, (const volatile void __iomem *)s->cb_cis_virt +
addr, len);

memcpy_fromio(ptr, (volatile void __iomem *)(s->cb_cis_virt + addr), len);

or

memcpy_fromio(ptr, (volatile void __iomem *)s->cb_cis_virt + addr, len);

makes no difference.

Thanks,

Larry
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2008-08-24 17:53    [W:0.026 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site