[06/12] cifs: Pass a pointer to virt_to_page() in cifsglob

Message ID 20230503-virt-to-pfn-v6-4-rc1-v1-6-6c4698dcf9c8@linaro.org
State New
Headers
Series arch: Make virt_to_pfn into a static inline |

Commit Message

Linus Walleij May 11, 2023, 11:59 a.m. UTC
  Like the other calls in this function virt_to_page() expects
a pointer, not an integer.

However since many architectures implement virt_to_pfn() as
a macro, this function becomes polymorphic and accepts both a
(unsigned long) and a (void *).

Fix this up with an explicit cast.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
 fs/cifs/cifsglob.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Tom Talpey May 17, 2023, 2:01 p.m. UTC | #1
On 5/11/2023 7:59 AM, Linus Walleij wrote:
> Like the other calls in this function virt_to_page() expects
> a pointer, not an integer.
> 
> However since many architectures implement virt_to_pfn() as
> a macro, this function becomes polymorphic and accepts both a
> (unsigned long) and a (void *).
> 
> Fix this up with an explicit cast.
> 
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>


For fs/cifs:

Acked-by: Tom Talpey <tom@talpey.com>

> ---
>   fs/cifs/cifsglob.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
> index 414685c5d530..3d29a4bbbc40 100644
> --- a/fs/cifs/cifsglob.h
> +++ b/fs/cifs/cifsglob.h
> @@ -2218,7 +2218,7 @@ static inline void cifs_sg_set_buf(struct sg_table *sgtable,
>   		} while (buflen);
>   	} else {
>   		sg_set_page(&sgtable->sgl[sgtable->nents++],
> -			    virt_to_page(addr), buflen, off);
> +			    virt_to_page((void *)addr), buflen, off);
>   	}
>   }
>   
>
  

Patch

diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
index 414685c5d530..3d29a4bbbc40 100644
--- a/fs/cifs/cifsglob.h
+++ b/fs/cifs/cifsglob.h
@@ -2218,7 +2218,7 @@  static inline void cifs_sg_set_buf(struct sg_table *sgtable,
 		} while (buflen);
 	} else {
 		sg_set_page(&sgtable->sgl[sgtable->nents++],
-			    virt_to_page(addr), buflen, off);
+			    virt_to_page((void *)addr), buflen, off);
 	}
 }