[PATCH v4] staging: slicoss: fix different address space warnings

Greg KH gregkh at linuxfoundation.org
Mon Nov 21 10:09:50 UTC 2016


On Sun, Nov 20, 2016 at 09:21:51AM +0100, Sergio Paracuellos wrote:
> On Sat, Nov 19, 2016 at 2:20 PM, Greg KH <gregkh at linuxfoundation.org> wrote:
> > On Fri, Nov 18, 2016 at 06:57:18PM +0100, Sergio Paracuellos wrote:
> >> Remove incorrect __iomem annotation.
> >>
> >> This patch fix the following sparse warnings in slicoss driver:
> >> warning: incorrect type in assignment (different address spaces)
> >>
> >> Signed-off-by: Sergio Paracuellos <sergio.paracuellos at gmail.com>
> >> ---
> >>  drivers/staging/slicoss/slic.h | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h
> >> index 420546d..14d7555 100644
> >> --- a/drivers/staging/slicoss/slic.h
> >> +++ b/drivers/staging/slicoss/slic.h
> >> @@ -380,7 +380,7 @@ struct slic_shmemory {
> >>       dma_addr_t isr_phaddr;
> >>       dma_addr_t lnkstatus_phaddr;
> >>       dma_addr_t stats_phaddr;
> >> -     struct slic_shmem_data __iomem *shmem_data;
> >> +     struct slic_shmem_data *shmem_data;
> >
> > But, is this the correct fix?  It looks like shmem_data is being treated
> > like a pointer to io memory, so we need to use the correct accessors for
> > that memory, and not just a "raw" pointer, right?  Removing this marking
> > seems to be moving backwards...
> 
> That was the intention of v3 of the patch. But after Dan suggestions I
> though that just
> removing this mark would be enough because it was wrong. I am a little
> lost now :)

Ok, I'm lost too, sorry.  I looked at the driver and shmem_data is
created by calling pci_zalloc_consistent, and that's not __iomem space,
but a real pointer.

So your patch is correct here, sorry for the noise, I'll go apply it.

thanks,

greg k-h


More information about the devel mailing list