[drm:drm-legacy-cleanup 13/24] drivers/gpu/drm/drm_vm.c:483:10: error: implicit declaration of function 'pte_wrprotect'
kbuild test robot
lkp at intel.com
Tue Apr 23 06:25:50 UTC 2019
tree: git://people.freedesktop.org/~airlied/linux.git drm-legacy-cleanup
head: 7b7678e3949f22d2442179f27d219b4b09ef1730
commit: 739d8489bcb277a1a27e56d0ef529f41c46425b4 [13/24] drm/nouveau: add kconfig option to turn off nouveau legacy contexts. (v2)
config: c6x-allyesconfig (attached as .config)
compiler: c6x-elf-gcc (GCC) 8.1.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 739d8489bcb277a1a27e56d0ef529f41c46425b4
# save the attached .config to linux build tree
GCC_VERSION=8.1.0 make.cross ARCH=c6x
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp at intel.com>
All errors (new ones prefixed by >>):
In file included from arch/c6x/include/asm/page.h:10,
from arch/c6x/include/asm/thread_info.h:18,
from include/linux/thread_info.h:38,
from include/asm-generic/current.h:5,
from ./arch/c6x/include/generated/asm/current.h:1,
from include/linux/mutex.h:14,
from include/linux/kernfs.h:13,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/cdev.h:5,
from include/drm/drmP.h:36,
from drivers/gpu/drm/drm_vm.c:36:
drivers/gpu/drm/drm_vm.c: In function 'drm_mmap_dma':
>> drivers/gpu/drm/drm_vm.c:483:10: error: implicit declaration of function 'pte_wrprotect' [-Werror=implicit-function-declaration]
(pte_wrprotect
^~~~~~~~~~~~~
include/asm-generic/page.h:59:36: note: in definition of macro '__pgprot'
#define __pgprot(x) ((pgprot_t) { (x) } )
^
drivers/gpu/drm/drm_vm.c:482:16: note: in expansion of macro 'pte_val'
__pgprot(pte_val
^~~~~~~
>> include/asm-generic/page.h:51:24: error: request for member 'pte' in something not a structure or union
#define pte_val(x) ((x).pte)
^
include/asm-generic/page.h:59:36: note: in definition of macro '__pgprot'
#define __pgprot(x) ((pgprot_t) { (x) } )
^
drivers/gpu/drm/drm_vm.c:482:16: note: in expansion of macro 'pte_val'
__pgprot(pte_val
^~~~~~~
drivers/gpu/drm/drm_vm.c: In function 'drm_mmap_locked':
>> include/asm-generic/page.h:51:24: error: request for member 'pte' in something not a structure or union
#define pte_val(x) ((x).pte)
^
include/asm-generic/page.h:59:36: note: in definition of macro '__pgprot'
#define __pgprot(x) ((pgprot_t) { (x) } )
^
drivers/gpu/drm/drm_vm.c:566:16: note: in expansion of macro 'pte_val'
__pgprot(pte_val
^~~~~~~
cc1: some warnings being treated as errors
--
In file included from arch/c6x/include/asm/page.h:10,
from arch/c6x/include/asm/thread_info.h:18,
from include/linux/thread_info.h:38,
from include/asm-generic/current.h:5,
from ./arch/c6x/include/generated/asm/current.h:1,
from include/linux/mutex.h:14,
from include/linux/kernfs.h:13,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/cdev.h:5,
from include/drm/drmP.h:36,
from drivers/gpu//drm/drm_vm.c:36:
drivers/gpu//drm/drm_vm.c: In function 'drm_mmap_dma':
drivers/gpu//drm/drm_vm.c:483:10: error: implicit declaration of function 'pte_wrprotect' [-Werror=implicit-function-declaration]
(pte_wrprotect
^~~~~~~~~~~~~
include/asm-generic/page.h:59:36: note: in definition of macro '__pgprot'
#define __pgprot(x) ((pgprot_t) { (x) } )
^
drivers/gpu//drm/drm_vm.c:482:16: note: in expansion of macro 'pte_val'
__pgprot(pte_val
^~~~~~~
>> include/asm-generic/page.h:51:24: error: request for member 'pte' in something not a structure or union
#define pte_val(x) ((x).pte)
^
include/asm-generic/page.h:59:36: note: in definition of macro '__pgprot'
#define __pgprot(x) ((pgprot_t) { (x) } )
^
drivers/gpu//drm/drm_vm.c:482:16: note: in expansion of macro 'pte_val'
__pgprot(pte_val
^~~~~~~
drivers/gpu//drm/drm_vm.c: In function 'drm_mmap_locked':
>> include/asm-generic/page.h:51:24: error: request for member 'pte' in something not a structure or union
#define pte_val(x) ((x).pte)
^
include/asm-generic/page.h:59:36: note: in definition of macro '__pgprot'
#define __pgprot(x) ((pgprot_t) { (x) } )
^
drivers/gpu//drm/drm_vm.c:566:16: note: in expansion of macro 'pte_val'
__pgprot(pte_val
^~~~~~~
cc1: some warnings being treated as errors
vim +/pte_wrprotect +483 drivers/gpu/drm/drm_vm.c
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 444
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 445 /**
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 446 * mmap DMA memory.
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 447 *
6c340eac drivers/char/drm/drm_vm.c Eric Anholt 2007-08-25 448 * \param file_priv DRM file private.
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 449 * \param vma virtual memory area.
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 450 * \return zero on success or a negative number on failure.
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 451 *
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 452 * Sets the virtual memory area operations structure to vm_dma_ops, the file
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 453 * pointer, and calls vm_open().
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 454 */
c94f7029 drivers/char/drm/drm_vm.c Dave Airlie 2005-07-07 455 static int drm_mmap_dma(struct file *filp, struct vm_area_struct *vma)
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 456 {
84b1fd10 drivers/char/drm/drm_vm.c Dave Airlie 2007-07-11 457 struct drm_file *priv = filp->private_data;
84b1fd10 drivers/char/drm/drm_vm.c Dave Airlie 2007-07-11 458 struct drm_device *dev;
cdd55a29 drivers/char/drm/drm_vm.c Dave Airlie 2007-07-11 459 struct drm_device_dma *dma;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 460 unsigned long length = vma->vm_end - vma->vm_start;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 461
2c14f28b drivers/char/drm/drm_vm.c Dave Airlie 2008-04-21 462 dev = priv->minor->dev;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 463 dma = dev->dma;
1545085a drivers/char/drm/drm_vm.c Thomas Hellstrom 2007-02-08 464 DRM_DEBUG("start = 0x%lx, end = 0x%lx, page offset = 0x%lx\n",
1545085a drivers/char/drm/drm_vm.c Thomas Hellstrom 2007-02-08 465 vma->vm_start, vma->vm_end, vma->vm_pgoff);
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 466
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 467 /* Length must match exact page count */
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 468 if (!dma || (length >> PAGE_SHIFT) != dma->page_count) {
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 469 return -EINVAL;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 470 }
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 471
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 472 if (!capable(CAP_SYS_ADMIN) &&
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 473 (dma->flags & _DRM_DMA_USE_PCI_RO)) {
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 474 vma->vm_flags &= ~(VM_WRITE | VM_MAYWRITE);
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 475 #if defined(__i386__) || defined(__x86_64__)
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 476 pgprot_val(vma->vm_page_prot) &= ~_PAGE_RW;
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 477 #else
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 478 /* Ye gads this is ugly. With more thought
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 479 we could move this up higher and use
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 480 `protection_map' instead. */
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 481 vma->vm_page_prot =
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 482 __pgprot(pte_val
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 @483 (pte_wrprotect
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 484 (__pte(pgprot_val(vma->vm_page_prot)))));
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 485 #endif
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 486 }
3417f33e drivers/char/drm/drm_vm.c George Sapountzis 2006-10-24 487
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 488 vma->vm_ops = &drm_vm_dma_ops;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 489
314e51b9 drivers/gpu/drm/drm_vm.c Konstantin Khlebnikov 2012-10-08 490 vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 491
b06d66be drivers/gpu/drm/drm_vm.c Rob Clark 2012-05-01 492 drm_vm_open_locked(dev, vma);
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 493 return 0;
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 494 }
^1da177e drivers/char/drm/drm_vm.c Linus Torvalds 2005-04-16 495
:::::: The code at line 483 was first introduced by commit
:::::: 3417f33e762bf7d4277031a655e3ad07e73ce0be drm: add flag for mapping PCI DMA buffers read-only.
:::::: TO: George Sapountzis <gsap7 at yahoo.gr>
:::::: CC: airlied <airlied at linux.ie>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 47279 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20190423/4068755a/attachment-0001.gz>
More information about the dri-devel
mailing list