2020-05-08 22:08:22

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] drm: vmwgfx: include linux/highmem.h

In order to call kmap_atomic() etc, we need to include linux/highmem.h:

drivers/gpu/drm/vmwgfx/vmwgfx_blit.c: In function 'vmw_bo_cpu_blit_line':
drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:377:4: error: implicit declaration of function 'kunmap_atomic'; did you mean 'in_atomic'? [-Werror=implicit-function-declaration]
377 | kunmap_atomic(d->src_addr);
| ^~~~~~~~~~~~~
| in_atomic
drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:391:5: error: implicit declaration of function 'kmap_atomic_prot' [-Werror=implicit-function-declaration]
391 | kmap_atomic_prot(d->dst_pages[dst_page],
| ^~~~~~~~~~~~~~~~
drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:390:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
390 | d->dst_addr =
| ^
drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:403:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
403 | d->src_addr =
| ^

Fixes: 46385a895322 ("drm: remove drm specific kmap_atomic code")
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/gpu/drm/vmwgfx/vmwgfx_blit.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
index 94d456a1d1a9..1629427d5734 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
@@ -27,6 +27,7 @@
**************************************************************************/

#include "vmwgfx_drv.h"
+#include <linux/highmem.h>

/*
* Template that implements find_first_diff() for a generic
--
2.26.0


2020-05-09 03:16:37

by Stephen Rothwell

[permalink] [raw]
Subject: Re: [PATCH] drm: vmwgfx: include linux/highmem.h

Hi Arnd,

On Sat, 9 May 2020 00:01:31 +0200 Arnd Bergmann <[email protected]> wrote:
>
> In order to call kmap_atomic() etc, we need to include linux/highmem.h:
>
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c: In function 'vmw_bo_cpu_blit_line':
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:377:4: error: implicit declaration of function 'kunmap_atomic'; did you mean 'in_atomic'? [-Werror=implicit-function-declaration]
> 377 | kunmap_atomic(d->src_addr);
> | ^~~~~~~~~~~~~
> | in_atomic
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:391:5: error: implicit declaration of function 'kmap_atomic_prot' [-Werror=implicit-function-declaration]
> 391 | kmap_atomic_prot(d->dst_pages[dst_page],
> | ^~~~~~~~~~~~~~~~
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:390:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 390 | d->dst_addr =
> | ^
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:403:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 403 | d->src_addr =
> | ^
>
> Fixes: 46385a895322 ("drm: remove drm specific kmap_atomic code")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
> index 94d456a1d1a9..1629427d5734 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
> @@ -27,6 +27,7 @@
> **************************************************************************/
>
> #include "vmwgfx_drv.h"
> +#include <linux/highmem.h>
>
> /*
> * Template that implements find_first_diff() for a generic
> --
> 2.26.0
>

Added to linux-next for Monday (in case Andrew doesn't get around to it).

--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-05-11 02:59:22

by Ira Weiny

[permalink] [raw]
Subject: Re: [PATCH] drm: vmwgfx: include linux/highmem.h

On Sat, May 09, 2020 at 12:01:31AM +0200, Arnd Bergmann wrote:
> In order to call kmap_atomic() etc, we need to include linux/highmem.h:
>
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c: In function 'vmw_bo_cpu_blit_line':
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:377:4: error: implicit declaration of function 'kunmap_atomic'; did you mean 'in_atomic'? [-Werror=implicit-function-declaration]
> 377 | kunmap_atomic(d->src_addr);
> | ^~~~~~~~~~~~~
> | in_atomic
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:391:5: error: implicit declaration of function 'kmap_atomic_prot' [-Werror=implicit-function-declaration]
> 391 | kmap_atomic_prot(d->dst_pages[dst_page],
> | ^~~~~~~~~~~~~~~~
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:390:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 390 | d->dst_addr =
> | ^
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:403:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 403 | d->src_addr =
> | ^
>
> Fixes: 46385a895322 ("drm: remove drm specific kmap_atomic code")
> Signed-off-by: Arnd Bergmann <[email protected]>

I'm curious about the config which failed... Because this compiled for me.
Regardless it was stupid of me to not include this.

Thanks,

Reviewed-by: Ira Weiny <[email protected]>

> ---
> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
> index 94d456a1d1a9..1629427d5734 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
> @@ -27,6 +27,7 @@
> **************************************************************************/
>
> #include "vmwgfx_drv.h"
> +#include <linux/highmem.h>
>
> /*
> * Template that implements find_first_diff() for a generic
> --
> 2.26.0
>

2020-05-11 07:56:52

by Arnd Bergmann

[permalink] [raw]
Subject: Re: [PATCH] drm: vmwgfx: include linux/highmem.h

On Mon, May 11, 2020 at 4:53 AM Ira Weiny <[email protected]> wrote:
>
> On Sat, May 09, 2020 at 12:01:31AM +0200, Arnd Bergmann wrote:
> > In order to call kmap_atomic() etc, we need to include linux/highmem.h:
> >
> > drivers/gpu/drm/vmwgfx/vmwgfx_blit.c: In function 'vmw_bo_cpu_blit_line':
> > drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:377:4: error: implicit declaration of function 'kunmap_atomic'; did you mean 'in_atomic'? [-Werror=implicit-function-declaration]
> > 377 | kunmap_atomic(d->src_addr);
> > | ^~~~~~~~~~~~~
> > | in_atomic
> > drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:391:5: error: implicit declaration of function 'kmap_atomic_prot' [-Werror=implicit-function-declaration]
> > 391 | kmap_atomic_prot(d->dst_pages[dst_page],
> > | ^~~~~~~~~~~~~~~~
> > drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:390:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> > 390 | d->dst_addr =
> > | ^
> > drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:403:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> > 403 | d->src_addr =
> > | ^
> >
> > Fixes: 46385a895322 ("drm: remove drm specific kmap_atomic code")
> > Signed-off-by: Arnd Bergmann <[email protected]>
>
> I'm curious about the config which failed... Because this compiled for me.
> Regardless it was stupid of me to not include this.
>
> Thanks,
>
> Reviewed-by: Ira Weiny <[email protected]>

I do a lot of randconfig build tests and only one of them had this problem.

See https://pastebin.com/LmX0Jfbg for reference, I did not check further
which of the options caused this.

Arnd

2020-05-12 17:31:23

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH] drm: vmwgfx: include linux/highmem.h

On 5/8/20 8:14 PM, Stephen Rothwell wrote:
> Hi Arnd,
>
> On Sat, 9 May 2020 00:01:31 +0200 Arnd Bergmann <[email protected]> wrote:
>>
>> In order to call kmap_atomic() etc, we need to include linux/highmem.h:
>>
>> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c: In function 'vmw_bo_cpu_blit_line':
>> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:377:4: error: implicit declaration of function 'kunmap_atomic'; did you mean 'in_atomic'? [-Werror=implicit-function-declaration]
>> 377 | kunmap_atomic(d->src_addr);
>> | ^~~~~~~~~~~~~
>> | in_atomic
>> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:391:5: error: implicit declaration of function 'kmap_atomic_prot' [-Werror=implicit-function-declaration]
>> 391 | kmap_atomic_prot(d->dst_pages[dst_page],
>> | ^~~~~~~~~~~~~~~~
>> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:390:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
>> 390 | d->dst_addr =
>> | ^
>> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c:403:16: warning: assignment to 'u8 *' {aka 'unsigned char *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
>> 403 | d->src_addr =
>> | ^
>>
>> Fixes: 46385a895322 ("drm: remove drm specific kmap_atomic code")
>> Signed-off-by: Arnd Bergmann <[email protected]>
>> ---
>> drivers/gpu/drm/vmwgfx/vmwgfx_blit.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
>> index 94d456a1d1a9..1629427d5734 100644
>> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
>> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
>> @@ -27,6 +27,7 @@
>> **************************************************************************/
>>
>> #include "vmwgfx_drv.h"
>> +#include <linux/highmem.h>
>>
>> /*
>> * Template that implements find_first_diff() for a generic
>> --
>> 2.26.0
>>
>
> Added to linux-next for Monday (in case Andrew doesn't get around to it).
>

Hi,

What happened with this patch?
I am seeing the same build problems in linux-next of 20200512.

Acked-by: Randy Dunlap <[email protected]> # build-tested


thanks.
--
~Randy