[drm-tip:drm-tip 2191/2285] include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns
by kernel test robot
tree: git://anongit.freedesktop.org/drm/drm-tip drm-tip
head: 147f0d3f7239756494adef31518f87e60a970878
commit: 46bca88bbdd3046db31b8b7e053a909ae79e285b [2191/2285] drm/ttm/amdgpu: consolidate ttm reserve paths
config: i386-randconfig-m021-20200809 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
New smatch warnings:
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/drm/ttm/ttm_bo_driver.h:644 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
Old smatch warnings:
drivers/gpu/drm/ttm/ttm_bo_vm.c:227 ttm_bo_vm_insert_huge() warn: was '== 2048' instead of '='
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c:737 amdgpu_gem_op_ioctl() warn: should 'robj->tbo.mem.page_alignment << 12' be a 64 bit type?
drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c:546 amdgpu_dma_buf_move_notify() error: double unlocked '*resv' (orig line 525)
drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c:166 amdgpu_gfx_parse_disable_cu() warn: potential spectre issue 'mask' [w]
drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c:5062 gfx_v8_0_pre_soft_reset() warn: inconsistent indenting
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:1013 amdgpu_dm_fini() error: we previously assumed 'adev->dm.dc' could be null (see line 1010)
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:1024 amdgpu_dm_fini() warn: variable dereferenced before check 'adev->dm.dc' (see line 1013)
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:4545 create_stream_for_sink() error: we previously assumed 'aconnector->dc_sink' could be null (see line 4436)
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c:266 amdgpu_bo_create_reserved() error: we previously assumed '*bo_ptr' could be null (see line 256)
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c:645 amdgpu_bo_create_shadow() error: we previously assumed 'bo->shadow' could be null (see line 632)
drivers/gpu/drm/nouveau/nouveau_bo.c:430 nouveau_bo_pin() warn: should '1 << bo->mem.mem_type' be a 64 bit type?
drivers/gpu/drm/nouveau/nouveau_bo.c:884 nv50_bo_move_m2mf() warn: should 'new_reg->num_pages << 12' be a 64 bit type?
drivers/gpu/drm/nouveau/nouveau_bo.c:1260 nouveau_bo_move_ntfy() warn: should 'new_reg->start << 12' be a 64 bit type?
drivers/gpu/drm/nouveau/nouveau_bo.c:1274 nouveau_bo_vm_bind() warn: should 'new_reg->start << 12' be a 64 bit type?
drivers/gpu/drm/nouveau/nouveau_gem.c:246 nouveau_gem_info() warn: should 'nvbo->bo.mem.num_pages << 12' be a 64 bit type?
vim +644 include/drm/ttm/ttm_bo_driver.h
eba67093f53532 Thomas Hellstrom 2010-11-11 600
3482032457f50c Maarten Lankhorst 2013-06-27 601 /**
46bca88bbdd304 Dave Airlie 2020-08-04 602 * ttm_bo_reserve:
3482032457f50c Maarten Lankhorst 2013-06-27 603 *
3482032457f50c Maarten Lankhorst 2013-06-27 604 * @bo: A pointer to a struct ttm_buffer_object.
3482032457f50c Maarten Lankhorst 2013-06-27 605 * @interruptible: Sleep interruptible if waiting.
3482032457f50c Maarten Lankhorst 2013-06-27 606 * @no_wait: Don't sleep while trying to reserve, rather return -EBUSY.
dfd5e50ea43ca4 Christian König 2016-04-06 607 * @ticket: ticket used to acquire the ww_mutex.
3482032457f50c Maarten Lankhorst 2013-06-27 608 *
46bca88bbdd304 Dave Airlie 2020-08-04 609 * Locks a buffer object for validation. (Or prevents other processes from
46bca88bbdd304 Dave Airlie 2020-08-04 610 * locking it for validation), while taking a number of measures to prevent
46bca88bbdd304 Dave Airlie 2020-08-04 611 * deadlocks.
3482032457f50c Maarten Lankhorst 2013-06-27 612 *
3482032457f50c Maarten Lankhorst 2013-06-27 613 * Returns:
3482032457f50c Maarten Lankhorst 2013-06-27 614 * -EDEADLK: The reservation may cause a deadlock.
3482032457f50c Maarten Lankhorst 2013-06-27 615 * Release all buffer reservations, wait for @bo to become unreserved and
46bca88bbdd304 Dave Airlie 2020-08-04 616 * try again.
3482032457f50c Maarten Lankhorst 2013-06-27 617 * -ERESTARTSYS: A wait for the buffer to become unreserved was interrupted by
3482032457f50c Maarten Lankhorst 2013-06-27 618 * a signal. Release all buffer reservations and return to user-space.
3482032457f50c Maarten Lankhorst 2013-06-27 619 * -EBUSY: The function needed to sleep, but @no_wait was true
3482032457f50c Maarten Lankhorst 2013-06-27 620 * -EALREADY: Bo already reserved using @ticket. This error code will only
3482032457f50c Maarten Lankhorst 2013-06-27 621 * be returned if @use_ticket is set to true.
3482032457f50c Maarten Lankhorst 2013-06-27 622 */
46bca88bbdd304 Dave Airlie 2020-08-04 623 static inline int ttm_bo_reserve(struct ttm_buffer_object *bo,
dfd5e50ea43ca4 Christian König 2016-04-06 624 bool interruptible, bool no_wait,
3482032457f50c Maarten Lankhorst 2013-06-27 625 struct ww_acquire_ctx *ticket)
3482032457f50c Maarten Lankhorst 2013-06-27 626 {
3482032457f50c Maarten Lankhorst 2013-06-27 627 int ret = 0;
3482032457f50c Maarten Lankhorst 2013-06-27 628
3482032457f50c Maarten Lankhorst 2013-06-27 629 if (no_wait) {
3482032457f50c Maarten Lankhorst 2013-06-27 630 bool success;
3482032457f50c Maarten Lankhorst 2013-06-27 631 if (WARN_ON(ticket))
3482032457f50c Maarten Lankhorst 2013-06-27 632 return -EBUSY;
3482032457f50c Maarten Lankhorst 2013-06-27 633
52791eeec1d9f4 Christian König 2019-08-11 634 success = dma_resv_trylock(bo->base.resv);
3482032457f50c Maarten Lankhorst 2013-06-27 635 return success ? 0 : -EBUSY;
3482032457f50c Maarten Lankhorst 2013-06-27 636 }
3482032457f50c Maarten Lankhorst 2013-06-27 637
3482032457f50c Maarten Lankhorst 2013-06-27 638 if (interruptible)
52791eeec1d9f4 Christian König 2019-08-11 639 ret = dma_resv_lock_interruptible(bo->base.resv, ticket);
3482032457f50c Maarten Lankhorst 2013-06-27 640 else
52791eeec1d9f4 Christian König 2019-08-11 641 ret = dma_resv_lock(bo->base.resv, ticket);
3482032457f50c Maarten Lankhorst 2013-06-27 642 if (ret == -EINTR)
3482032457f50c Maarten Lankhorst 2013-06-27 643 return -ERESTARTSYS;
3482032457f50c Maarten Lankhorst 2013-06-27 @644 return ret;
3482032457f50c Maarten Lankhorst 2013-06-27 645 }
eba67093f53532 Thomas Hellstrom 2010-11-11 646
:::::: The code at line 644 was first introduced by commit
:::::: 3482032457f50cae196f6397ebec7f5f2ad3cf7d drm/ttm: inline ttm_bo_reserve and related calls
:::::: TO: Maarten Lankhorst <m.b.lankhorst(a)gmail.com>
:::::: CC: Dave Airlie <airlied(a)redhat.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[drm-tip:drm-tip 2214/2285] drivers/gpu/drm/vmwgfx/vmwgfx_drv.c:646:2: error: implicit declaration of function 'ttm_bo_man_fini'
by kernel test robot
tree: git://anongit.freedesktop.org/drm/drm-tip drm-tip
head: 147f0d3f7239756494adef31518f87e60a970878
commit: e0830704de7c06c72b1f83a3f67cb160b853812a [2214/2285] drm/vmwgfx: takedown vram manager
config: x86_64-randconfig-r004-20200810 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 3a34228bff6fdf45b50cb57cf5fb85d659eeb672)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout e0830704de7c06c72b1f83a3f67cb160b853812a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/gpu/drm/vmwgfx/vmwgfx_drv.c:646:2: error: implicit declaration of function 'ttm_bo_man_fini' [-Werror,-Wimplicit-function-declaration]
ttm_bo_man_fini(&dev_priv->bdev,
^
drivers/gpu/drm/vmwgfx/vmwgfx_drv.c:646:2: note: did you mean 'ttm_range_man_fini'?
include/drm/ttm/ttm_bo_driver.h:869:5: note: 'ttm_range_man_fini' declared here
int ttm_range_man_fini(struct ttm_bo_device *bdev,
^
1 error generated.
vim +/ttm_bo_man_fini +646 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
640
641 static void vmw_vram_manager_fini(struct vmw_private *dev_priv)
642 {
643 #ifdef CONFIG_TRANSPARENT_HUGEPAGE
644 vmw_thp_fini(dev_priv);
645 #else
> 646 ttm_bo_man_fini(&dev_priv->bdev,
647 &dev_priv->bdev.man[TTM_PL_VRAM]);
648 #endif
649 }
650
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/md/dm-mpath.c:524 multipath_clone_and_map() error: double unlocked 'm->lock' (orig line 516)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 449dc8c97089a6e09fb2dac4d92b1b7ac0eb7c1e
commit: 374117ad4736c5a4f8012cfe59fc07d9d58191d5 dm mpath: use double checked locking in fast path
date: 4 weeks ago
config: arm-randconfig-m031-20200808 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
New smatch warnings:
drivers/md/dm-mpath.c:524 multipath_clone_and_map() error: double unlocked 'm->lock' (orig line 516)
Old smatch warnings:
drivers/md/dm-mpath.c:446 choose_pgpath() error: double unlocked 'm->lock' (orig line 416)
drivers/md/dm-mpath.c:457 choose_pgpath() error: double unlocked 'm->lock' (orig line 403)
drivers/md/dm-mpath.c:525 multipath_clone_and_map() error: double unlocked 'm->lock' (orig line 516)
drivers/md/dm-mpath.c:526 multipath_clone_and_map() error: double unlocked 'm->lock' (orig line 524)
drivers/md/dm-mpath.c:626 __map_bio() error: double unlocked 'm->lock' (orig line 615)
drivers/md/dm-mpath.c:627 __map_bio() error: double unlocked 'm->lock' (orig line 615)
drivers/md/dm-mpath.c:628 __map_bio() error: double unlocked 'm->lock' (orig line 626)
drivers/md/dm-mpath.c:629 __map_bio() error: double unlocked 'm->lock' (orig line 628)
drivers/md/dm-mpath.c:1607 pg_init_done() error: double unlocked 'm->lock' (orig line 1560)
drivers/md/dm-mpath.c:1707 multipath_end_io_bio() error: double unlocked 'm->lock' (orig line 1704)
drivers/md/dm-mpath.c:1988 multipath_prepare_ioctl() error: double unlocked 'm->lock' (orig line 1984)
drivers/md/dm-mpath.c:2012 multipath_prepare_ioctl() error: double unlocked 'm->lock' (orig line 2001)
vim +524 drivers/md/dm-mpath.c
498
499 /*
500 * Map cloned requests (request-based multipath)
501 */
502 static int multipath_clone_and_map(struct dm_target *ti, struct request *rq,
503 union map_info *map_context,
504 struct request **__clone)
505 {
506 struct multipath *m = ti->private;
507 size_t nr_bytes = blk_rq_bytes(rq);
508 struct pgpath *pgpath;
509 struct block_device *bdev;
510 struct dm_mpath_io *mpio = get_mpio(map_context);
511 struct request_queue *q;
512 struct request *clone;
513
514 /* Do we need to select a new pgpath? */
515 pgpath = READ_ONCE(m->current_pgpath);
> 516 if (!pgpath || !mpath_double_check_test_bit(MPATHF_QUEUE_IO, m))
517 pgpath = choose_pgpath(m, nr_bytes);
518
519 if (!pgpath) {
520 if (must_push_back_rq(m))
521 return DM_MAPIO_DELAY_REQUEUE;
522 dm_report_EIO(m); /* Failed */
523 return DM_MAPIO_KILL;
> 524 } else if (mpath_double_check_test_bit(MPATHF_QUEUE_IO, m) ||
525 mpath_double_check_test_bit(MPATHF_PG_INIT_REQUIRED, m)) {
526 pg_init_all_paths(m);
527 return DM_MAPIO_DELAY_REQUEUE;
528 }
529
530 mpio->pgpath = pgpath;
531 mpio->nr_bytes = nr_bytes;
532
533 bdev = pgpath->path.dev->bdev;
534 q = bdev_get_queue(bdev);
535 clone = blk_get_request(q, rq->cmd_flags | REQ_NOMERGE,
536 BLK_MQ_REQ_NOWAIT);
537 if (IS_ERR(clone)) {
538 /* EBUSY, ENODEV or EWOULDBLOCK: requeue */
539 if (blk_queue_dying(q)) {
540 atomic_inc(&m->pg_init_in_progress);
541 activate_or_offline_path(pgpath);
542 return DM_MAPIO_DELAY_REQUEUE;
543 }
544
545 /*
546 * blk-mq's SCHED_RESTART can cover this requeue, so we
547 * needn't deal with it by DELAY_REQUEUE. More importantly,
548 * we have to return DM_MAPIO_REQUEUE so that blk-mq can
549 * get the queue busy feedback (via BLK_STS_RESOURCE),
550 * otherwise I/O merging can suffer.
551 */
552 return DM_MAPIO_REQUEUE;
553 }
554 clone->bio = clone->biotail = NULL;
555 clone->rq_disk = bdev->bd_disk;
556 clone->cmd_flags |= REQ_FAILFAST_TRANSPORT;
557 *__clone = clone;
558
559 if (pgpath->pg->ps.type->start_io)
560 pgpath->pg->ps.type->start_io(&pgpath->pg->ps,
561 &pgpath->path,
562 nr_bytes);
563 return DM_MAPIO_REMAPPED;
564 }
565
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/video/fbdev/grvga.c:151:26: sparse: sparse: incorrect type in argument 2 (different address spaces)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fc80c51fd4b23ec007e88d4c688f2cac1b8648e7
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 7 weeks ago
config: sparc-randconfig-s032-20200810 (attached as .config)
compiler: sparc-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-118-ge1578773-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sparc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/grvga.c:151:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:151:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:151:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:154:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:154:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:154:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:157:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:157:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:157:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:161:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:161:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:161:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:182:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:182:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:182:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:215:34: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:215:34: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:215:34: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:249:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:249:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:249:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:390:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct grvga_regs *regs @@ got void [noderef] __iomem * @@
drivers/video/fbdev/grvga.c:390:19: sparse: expected struct grvga_regs *regs
drivers/video/fbdev/grvga.c:390:19: sparse: got void [noderef] __iomem *
drivers/video/fbdev/grvga.c:485:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:485:42: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:485:42: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:486:38: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:486:38: sparse: expected void const volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:486:38: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:487:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@
drivers/video/fbdev/grvga.c:487:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:487:26: sparse: got unsigned int *
drivers/video/fbdev/grvga.c:493:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/video/fbdev/grvga.c:493:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/video/fbdev/grvga.c:493:26: sparse: got void *
drivers/video/fbdev/grvga.c:499:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *base @@ got struct grvga_regs *regs @@
drivers/video/fbdev/grvga.c:499:42: sparse: expected void [noderef] __iomem *base
drivers/video/fbdev/grvga.c:499:42: sparse: got struct grvga_regs *regs
drivers/video/fbdev/grvga.c:517:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *base @@ got struct grvga_regs *regs @@
drivers/video/fbdev/grvga.c:517:53: sparse: expected void [noderef] __iomem *base
drivers/video/fbdev/grvga.c:517:53: sparse: got struct grvga_regs *regs
drivers/video/fbdev/grvga.c:523:32: sparse: sparse: cast removes address space '__iomem' of expression
vim +151 drivers/video/fbdev/grvga.c
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 146
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 147 u32 func = 0;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 148 struct grvga_par *par = info->par;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 149
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 150 __raw_writel(((info->var.yres - 1) << 16) | (info->var.xres - 1),
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 @151 &par->regs->video_length);
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 152
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 153 __raw_writel((info->var.lower_margin << 16) | (info->var.right_margin),
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 154 &par->regs->front_porch);
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 155
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 156 __raw_writel((info->var.vsync_len << 16) | (info->var.hsync_len),
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 157 &par->regs->sync_length);
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 158
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 159 __raw_writel(((info->var.yres + info->var.lower_margin + info->var.upper_margin + info->var.vsync_len - 1) << 16) |
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 160 (info->var.xres + info->var.right_margin + info->var.left_margin + info->var.hsync_len - 1),
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 161 &par->regs->line_length);
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 162
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 163 switch (info->var.bits_per_pixel) {
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 164 case 8:
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 165 info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 166 func = 1;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 167 break;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 168 case 16:
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 169 info->fix.visual = FB_VISUAL_TRUECOLOR;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 170 func = 2;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 171 break;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 172 case 24:
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 173 case 32:
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 174 info->fix.visual = FB_VISUAL_TRUECOLOR;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 175 func = 3;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 176 break;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 177 default:
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 178 return -EINVAL;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 179 }
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 180
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 181 __raw_writel((par->clk_sel << 6) | (func << 4) | 1,
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 182 &par->regs->status);
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 183
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 184 info->fix.line_length = (info->var.xres_virtual*info->var.bits_per_pixel)/8;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 185 return 0;
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 186 }
a4b8f97a8fdeb9 drivers/video/grvga.c Kristoffer Glembo 2011-07-05 187
:::::: The code at line 151 was first introduced by commit
:::::: a4b8f97a8fdeb94492738c36fddbd2cf822ed138 video: Add Aeroflex Gaisler GRVGA framebuffer device driver
:::::: TO: Kristoffer Glembo <kristoffer(a)gaisler.com>
:::::: CC: Paul Mundt <lethal(a)linux-sh.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
Re: [PATCH v3 5/8] mm: HUGE_VMAP arch support cleanup
by kernel test robot
Hi Nicholas,
I love your patch! Yet something to improve:
[auto build test ERROR on hnaz-linux-mm/master]
[also build test ERROR on arm64/for-next/core powerpc/next tip/x86/mm linus/master v5.8 next-20200807]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Nicholas-Piggin/huge-vmalloc-map...
base: https://github.com/hnaz/linux-mm master
config: i386-randconfig-s002-20200810 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-118-ge1578773-dirty
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> arch/x86/mm/ioremap.c:484:6: error: redefinition of 'arch_vmap_p4d_supported'
484 | bool arch_vmap_p4d_supported(pgprot_t prot)
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from include/asm-generic/io.h:911,
from arch/x86/include/asm/io.h:375,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/mm/ioremap.c:10:
include/linux/vmalloc.h:92:20: note: previous definition of 'arch_vmap_p4d_supported' was here
92 | static inline bool arch_vmap_p4d_supported(pgprot_t prot) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/x86/mm/ioremap.c:489:6: error: redefinition of 'arch_vmap_pud_supported'
489 | bool arch_vmap_pud_supported(pgprot_t prot)
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from include/asm-generic/io.h:911,
from arch/x86/include/asm/io.h:375,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/mm/ioremap.c:10:
include/linux/vmalloc.h:93:20: note: previous definition of 'arch_vmap_pud_supported' was here
93 | static inline bool arch_vmap_pud_supported(pgprot_t prot) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/x86/mm/ioremap.c:498:6: error: redefinition of 'arch_vmap_pmd_supported'
498 | bool arch_vmap_pmd_supported(pgprot_t prot)
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from include/asm-generic/io.h:911,
from arch/x86/include/asm/io.h:375,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/mm/ioremap.c:10:
include/linux/vmalloc.h:94:20: note: previous definition of 'arch_vmap_pmd_supported' was here
94 | static inline bool arch_vmap_pmd_supported(pgprot_t prot) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/x86/mm/ioremap.c:737:17: warning: no previous prototype for 'early_memremap_pgprot_adjust' [-Wmissing-prototypes]
737 | pgprot_t __init early_memremap_pgprot_adjust(resource_size_t phys_addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/arch_vmap_p4d_supported +484 arch/x86/mm/ioremap.c
483
> 484 bool arch_vmap_p4d_supported(pgprot_t prot)
485 {
486 return false;
487 }
488
> 489 bool arch_vmap_pud_supported(pgprot_t prot)
490 {
491 #ifdef CONFIG_X86_64
492 return boot_cpu_has(X86_FEATURE_GBPAGES);
493 #else
494 return false;
495 #endif
496 }
497
> 498 bool arch_vmap_pmd_supported(pgprot_t prot)
499 {
500 return boot_cpu_has(X86_FEATURE_PSE);
501 }
502
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
Re: [RFC PATCH v2 5/5] ext4/jbd2: debugging messages
by kernel test robot
Hi Mauricio,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on ext4/dev]
[also build test ERROR on ext3/for_next linus/master v5.8 next-20200807]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Mauricio-Faria-de-Oliveira/ext4-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
config: x86_64-randconfig-a001-20200810 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 3a34228bff6fdf45b50cb57cf5fb85d659eeb672)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> fs/ext4/inode.c:51:10: fatal error: 'ext4_jbd2_dbg.h' file not found
#include "ext4_jbd2_dbg.h"
^~~~~~~~~~~~~~~~~
1 error generated.
--
>> fs/ext4/super.c:61:10: fatal error: 'ext4_jbd2_dbg.h' file not found
#include "ext4_jbd2_dbg.h"
^~~~~~~~~~~~~~~~~
1 error generated.
--
>> fs/jbd2/transaction.c:33:10: fatal error: '../ext4/ext4_jbd2_dbg.h' file not found
#include "../ext4/ext4_jbd2_dbg.h"
^~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
--
>> fs/jbd2/commit.c:32:10: fatal error: '../ext4/ext4_jbd2_dbg.h' file not found
#include "../ext4/ext4_jbd2_dbg.h"
^~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
--
>> fs/jbd2/journal.c:51:10: fatal error: '../ext4/ext4_jbd2_dbg.h' file not found
#include "../ext4/ext4_jbd2_dbg.h"
^~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
vim +51 fs/ext4/inode.c
50
> 51 #include "ext4_jbd2_dbg.h"
52
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/video/fbdev/pxafb.c:916:24: sparse: sparse: incorrect type in assignment (different address spaces)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 86cfccb66937dd6cbf26ed619958b9e587e6a115
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 7 weeks ago
config: arm-randconfig-s031-20200807 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-118-ge1578773-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/pxafb.c:916:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *video_mem @@ got void * @@
>> drivers/video/fbdev/pxafb.c:916:24: sparse: expected void [noderef] __iomem *video_mem
drivers/video/fbdev/pxafb.c:916:24: sparse: got void *
>> drivers/video/fbdev/pxafb.c:921:47: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile *x @@ got void [noderef] __iomem *video_mem @@
drivers/video/fbdev/pxafb.c:921:47: sparse: expected void const volatile *x
>> drivers/video/fbdev/pxafb.c:921:47: sparse: got void [noderef] __iomem *video_mem
>> drivers/video/fbdev/pxafb.c:977:53: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *virt @@ got void [noderef] __iomem *video_mem @@
drivers/video/fbdev/pxafb.c:977:53: sparse: expected void *virt
drivers/video/fbdev/pxafb.c:977:53: sparse: got void [noderef] __iomem *video_mem
drivers/video/fbdev/pxafb.c:1714:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *video_mem @@ got void * @@
drivers/video/fbdev/pxafb.c:1714:24: sparse: expected void [noderef] __iomem *video_mem
drivers/video/fbdev/pxafb.c:1714:24: sparse: got void *
drivers/video/fbdev/pxafb.c:1718:47: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile *x @@ got void [noderef] __iomem *video_mem @@
drivers/video/fbdev/pxafb.c:1718:47: sparse: expected void const volatile *x
drivers/video/fbdev/pxafb.c:1718:47: sparse: got void [noderef] __iomem *video_mem
drivers/video/fbdev/pxafb.c:2392:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *virt @@ got void [noderef] __iomem *video_mem @@
drivers/video/fbdev/pxafb.c:2392:29: sparse: expected void *virt
drivers/video/fbdev/pxafb.c:2392:29: sparse: got void [noderef] __iomem *video_mem
drivers/video/fbdev/pxafb.c:2418:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *virt @@ got void [noderef] __iomem *video_mem @@
drivers/video/fbdev/pxafb.c:2418:29: sparse: expected void *virt
drivers/video/fbdev/pxafb.c:2418:29: sparse: got void [noderef] __iomem *video_mem
--
>> drivers/firmware/efi/test/efi_test.c:157:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long [noderef] __user *register __p @@ got unsigned long *[addressable] data_size @@
>> drivers/firmware/efi/test/efi_test.c:157:13: sparse: expected unsigned long [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:157:13: sparse: got unsigned long *[addressable] data_size
drivers/firmware/efi/test/efi_test.c:160:61: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct guid_t [usertype] *[addressable] vendor_guid @@
drivers/firmware/efi/test/efi_test.c:160:61: sparse: expected void const [noderef] __user *from
drivers/firmware/efi/test/efi_test.c:160:61: sparse: got struct guid_t [usertype] *[addressable] vendor_guid
drivers/firmware/efi/test/efi_test.c:167:60: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned short [noderef] [usertype] __user *src @@ got unsigned short [usertype] *[addressable] variable_name @@
drivers/firmware/efi/test/efi_test.c:167:60: sparse: expected unsigned short [noderef] [usertype] __user *src
drivers/firmware/efi/test/efi_test.c:167:60: sparse: got unsigned short [usertype] *[addressable] variable_name
>> drivers/firmware/efi/test/efi_test.c:187:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
>> drivers/firmware/efi/test/efi_test.c:187:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:187:13: sparse: got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:194:35: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long *[addressable] data_size @@
drivers/firmware/efi/test/efi_test.c:194:35: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:194:35: sparse: got unsigned long *[addressable] data_size
drivers/firmware/efi/test/efi_test.c:209:45: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *[addressable] data @@
drivers/firmware/efi/test/efi_test.c:209:45: sparse: expected void [noderef] __user *to
drivers/firmware/efi/test/efi_test.c:209:45: sparse: got void *[addressable] data
>> drivers/firmware/efi/test/efi_test.c:215:19: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] *[addressable] attributes @@
>> drivers/firmware/efi/test/efi_test.c:215:19: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:215:19: sparse: got unsigned int [usertype] *[addressable] attributes
drivers/firmware/efi/test/efi_test.c:220:19: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long *[addressable] data_size @@
drivers/firmware/efi/test/efi_test.c:220:19: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:220:19: sparse: got unsigned long *[addressable] data_size
drivers/firmware/efi/test/efi_test.c:243:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct guid_t [usertype] *[addressable] vendor_guid @@
drivers/firmware/efi/test/efi_test.c:243:53: sparse: expected void const [noderef] __user *from
drivers/firmware/efi/test/efi_test.c:243:53: sparse: got struct guid_t [usertype] *[addressable] vendor_guid
drivers/firmware/efi/test/efi_test.c:248:60: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned short [noderef] [usertype] __user *src @@ got unsigned short [usertype] *[addressable] variable_name @@
drivers/firmware/efi/test/efi_test.c:248:60: sparse: expected unsigned short [noderef] [usertype] __user *src
drivers/firmware/efi/test/efi_test.c:248:60: sparse: got unsigned short [usertype] *[addressable] variable_name
drivers/firmware/efi/test/efi_test.c:253:39: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __user * @@ got void *[addressable] data @@
drivers/firmware/efi/test/efi_test.c:253:39: sparse: expected void const [noderef] __user *
drivers/firmware/efi/test/efi_test.c:253:39: sparse: got void *[addressable] data
drivers/firmware/efi/test/efi_test.c:263:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:263:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:263:13: sparse: got unsigned long [usertype] *[addressable] status
drivers/firmware/efi/test/efi_test.c:292:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:292:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:292:13: sparse: got unsigned long [usertype] *[addressable] status
drivers/firmware/efi/test/efi_test.c:301:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct efi_time_cap_t [noderef] [usertype] __user *cap_local @@ got struct efi_time_cap_t [usertype] * @@
drivers/firmware/efi/test/efi_test.c:301:27: sparse: expected struct efi_time_cap_t [noderef] [usertype] __user *cap_local
drivers/firmware/efi/test/efi_test.c:301:27: sparse: got struct efi_time_cap_t [usertype] *
drivers/firmware/efi/test/efi_test.c:308:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got struct efi_time_t [usertype] *[addressable] time @@
drivers/firmware/efi/test/efi_test.c:308:41: sparse: expected void [noderef] __user *to
drivers/firmware/efi/test/efi_test.c:308:41: sparse: got struct efi_time_t [usertype] *[addressable] time
drivers/firmware/efi/test/efi_test.c:325:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct efi_time_t [usertype] *[addressable] time @@
drivers/firmware/efi/test/efi_test.c:325:46: sparse: expected void const [noderef] __user *from
drivers/firmware/efi/test/efi_test.c:325:46: sparse: got struct efi_time_t [usertype] *[addressable] time
drivers/firmware/efi/test/efi_test.c:330:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:330:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:330:13: sparse: got unsigned long [usertype] *[addressable] status
drivers/firmware/efi/test/efi_test.c:354:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:354:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:354:13: sparse: got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:360:38: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned char const [noderef] __user *__pu_ptr @@ got unsigned char [usertype] *[addressable] enabled @@
>> drivers/firmware/efi/test/efi_test.c:360:38: sparse: expected unsigned char const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:360:38: sparse: got unsigned char [usertype] *[addressable] enabled
drivers/firmware/efi/test/efi_test.c:365:47: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got struct efi_time_t [usertype] *[addressable] time @@
drivers/firmware/efi/test/efi_test.c:365:47: sparse: expected void [noderef] __user *to
drivers/firmware/efi/test/efi_test.c:365:47: sparse: got struct efi_time_t [usertype] *[addressable] time
drivers/firmware/efi/test/efi_test.c:389:60: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct efi_time_t [usertype] *[addressable] time @@
drivers/firmware/efi/test/efi_test.c:389:60: sparse: expected void const [noderef] __user *from
drivers/firmware/efi/test/efi_test.c:389:60: sparse: got struct efi_time_t [usertype] *[addressable] time
drivers/firmware/efi/test/efi_test.c:397:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:397:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:397:13: sparse: got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:421:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long [noderef] __user *register __p @@ got unsigned long *[addressable] variable_name_size @@
drivers/firmware/efi/test/efi_test.c:421:21: sparse: expected unsigned long [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:421:21: sparse: got unsigned long *[addressable] variable_name_size
drivers/firmware/efi/test/efi_test.c:429:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct guid_t [usertype] *[addressable] vendor_guid @@
drivers/firmware/efi/test/efi_test.c:429:52: sparse: expected void const [noderef] __user *from
drivers/firmware/efi/test/efi_test.c:429:52: sparse: got struct guid_t [usertype] *[addressable] vendor_guid
drivers/firmware/efi/test/efi_test.c:439:52: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected unsigned short [noderef] [usertype] __user *src @@ got unsigned short [usertype] *[addressable] variable_name @@
drivers/firmware/efi/test/efi_test.c:439:52: sparse: expected unsigned short [noderef] [usertype] __user *src
drivers/firmware/efi/test/efi_test.c:439:52: sparse: got unsigned short [usertype] *[addressable] variable_name
drivers/firmware/efi/test/efi_test.c:452:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned short [noderef] [usertype] __user *src @@ got unsigned short [usertype] *[addressable] variable_name @@
drivers/firmware/efi/test/efi_test.c:452:52: sparse: expected unsigned short [noderef] [usertype] __user *src
drivers/firmware/efi/test/efi_test.c:452:52: sparse: got unsigned short [usertype] *[addressable] variable_name
drivers/firmware/efi/test/efi_test.c:461:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:461:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:461:13: sparse: got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:468:35: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long *[addressable] variable_name_size @@
drivers/firmware/efi/test/efi_test.c:468:35: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:468:35: sparse: got unsigned long *[addressable] variable_name_size
drivers/firmware/efi/test/efi_test.c:479:62: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected unsigned short [noderef] [usertype] __user *dst @@ got unsigned short [usertype] *[addressable] variable_name @@
drivers/firmware/efi/test/efi_test.c:479:62: sparse: expected unsigned short [noderef] [usertype] __user *dst
drivers/firmware/efi/test/efi_test.c:479:62: sparse: got unsigned short [usertype] *[addressable] variable_name
drivers/firmware/efi/test/efi_test.c:487:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long *[addressable] variable_name_size @@
drivers/firmware/efi/test/efi_test.c:487:21: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:487:21: sparse: got unsigned long *[addressable] variable_name_size
drivers/firmware/efi/test/efi_test.c:494:53: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got struct guid_t [usertype] *[addressable] vendor_guid @@
drivers/firmware/efi/test/efi_test.c:494:53: sparse: expected void [noderef] __user *to
drivers/firmware/efi/test/efi_test.c:494:53: sparse: got struct guid_t [usertype] *[addressable] vendor_guid
drivers/firmware/efi/test/efi_test.c:522:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:522:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:522:13: sparse: got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:529:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] *[addressable] high_count @@
drivers/firmware/efi/test/efi_test.c:529:13: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:529:13: sparse: got unsigned int [usertype] *[addressable] high_count
drivers/firmware/efi/test/efi_test.c:546:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __user * @@ got void * @@
drivers/firmware/efi/test/efi_test.c:546:37: sparse: expected void const [noderef] __user *
drivers/firmware/efi/test/efi_test.c:546:37: sparse: got void *
drivers/firmware/efi/test/efi_test.c:575:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] status @@
drivers/firmware/efi/test/efi_test.c:575:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:575:13: sparse: got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:581:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long long const [noderef] __user *__pu_ptr @@ got unsigned long long [usertype] *[addressable] maximum_variable_storage_size @@
>> drivers/firmware/efi/test/efi_test.c:581:13: sparse: expected unsigned long long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:581:13: sparse: got unsigned long long [usertype] *[addressable] maximum_variable_storage_size
drivers/firmware/efi/test/efi_test.c:585:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long long const [noderef] __user *__pu_ptr @@ got unsigned long long [usertype] *[addressable] remaining_variable_storage_size @@
drivers/firmware/efi/test/efi_test.c:585:13: sparse: expected unsigned long long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:585:13: sparse: got unsigned long long [usertype] *[addressable] remaining_variable_storage_size
drivers/firmware/efi/test/efi_test.c:589:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long long const [noderef] __user *__pu_ptr @@ got unsigned long long [usertype] *[addressable] maximum_variable_size @@
drivers/firmware/efi/test/efi_test.c:589:13: sparse: expected unsigned long long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:589:13: sparse: got unsigned long long [usertype] *[addressable] maximum_variable_size
>> drivers/firmware/efi/test/efi_test.c:625:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct efi_capsule_header_t [usertype] *[noderef] __user *register __p @@ got struct efi_capsule_header_t [usertype] ** @@
>> drivers/firmware/efi/test/efi_test.c:625:21: sparse: expected struct efi_capsule_header_t [usertype] *[noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:625:21: sparse: got struct efi_capsule_header_t [usertype] **
drivers/firmware/efi/test/efi_test.c:629:50: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct efi_capsule_header_t [usertype] *[assigned] c @@
drivers/firmware/efi/test/efi_test.c:629:50: sparse: expected void const [noderef] __user *from
drivers/firmware/efi/test/efi_test.c:629:50: sparse: got struct efi_capsule_header_t [usertype] *[assigned] c
drivers/firmware/efi/test/efi_test.c:643:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long const [noderef] __user *__pu_ptr @@ got unsigned long [usertype] *[addressable] [assigned] status @@
drivers/firmware/efi/test/efi_test.c:643:13: sparse: expected unsigned long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:643:13: sparse: got unsigned long [usertype] *[addressable] [assigned] status
drivers/firmware/efi/test/efi_test.c:653:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long long const [noderef] __user *__pu_ptr @@ got unsigned long long [usertype] *[addressable] [assigned] maximum_capsule_size @@
drivers/firmware/efi/test/efi_test.c:653:13: sparse: expected unsigned long long const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:653:13: sparse: got unsigned long long [usertype] *[addressable] [assigned] maximum_capsule_size
>> drivers/firmware/efi/test/efi_test.c:658:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const [noderef] __user *__pu_ptr @@ got int *[addressable] [assigned] reset_type @@
>> drivers/firmware/efi/test/efi_test.c:658:13: sparse: expected int const [noderef] __user *__pu_ptr
drivers/firmware/efi/test/efi_test.c:658:13: sparse: got int *[addressable] [assigned] reset_type
drivers/firmware/efi/test/efi_test.c:35:27: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [usertype] *s @@ got unsigned short [noderef] [usertype] __user *str @@
drivers/firmware/efi/test/efi_test.c:35:27: sparse: expected unsigned short [usertype] *s
drivers/firmware/efi/test/efi_test.c:35:27: sparse: got unsigned short [noderef] [usertype] __user *str
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [noderef] __user *register __p @@ got unsigned short [usertype] * @@
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: expected unsigned short [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:44:13: sparse: got unsigned short [usertype] *
drivers/firmware/efi/test/efi_test.c:50:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [noderef] __user *register __p @@ got unsigned short [usertype] * @@
drivers/firmware/efi/test/efi_test.c:50:21: sparse: expected unsigned short [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:50:21: sparse: got unsigned short [usertype] *
drivers/firmware/efi/test/efi_test.c:35:27: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [usertype] *[assigned] s @@ got unsigned short [noderef] [usertype] __user *str @@
drivers/firmware/efi/test/efi_test.c:35:27: sparse: expected unsigned short [usertype] *[assigned] s
drivers/firmware/efi/test/efi_test.c:35:27: sparse: got unsigned short [noderef] [usertype] __user *str
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [noderef] __user *register __p @@ got unsigned short [usertype] * @@
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: expected unsigned short [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:44:13: sparse: got unsigned short [usertype] *
drivers/firmware/efi/test/efi_test.c:50:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [noderef] __user *register __p @@ got unsigned short [usertype] * @@
drivers/firmware/efi/test/efi_test.c:50:21: sparse: expected unsigned short [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:50:21: sparse: got unsigned short [usertype] *
drivers/firmware/efi/test/efi_test.c:35:27: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [usertype] *[assigned] s @@ got unsigned short [noderef] [usertype] __user *str @@
drivers/firmware/efi/test/efi_test.c:35:27: sparse: expected unsigned short [usertype] *[assigned] s
drivers/firmware/efi/test/efi_test.c:35:27: sparse: got unsigned short [noderef] [usertype] __user *str
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [noderef] __user *register __p @@ got unsigned short [usertype] * @@
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: expected unsigned short [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:44:13: sparse: got unsigned short [usertype] *
drivers/firmware/efi/test/efi_test.c:50:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short [noderef] __user *register __p @@ got unsigned short [usertype] * @@
drivers/firmware/efi/test/efi_test.c:50:21: sparse: expected unsigned short [noderef] __user *register __p
drivers/firmware/efi/test/efi_test.c:50:21: sparse: got unsigned short [usertype] *
vim +916 drivers/video/fbdev/pxafb.c
782385ae176b304 drivers/video/pxafb.c Eric Miao 2009-03-19 909
48c68c4f1b54244 drivers/video/pxafb.c Greg Kroah-Hartman 2012-12-21 910 static int pxafb_overlay_map_video_memory(struct pxafb_info *pxafb,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 911 struct pxafb_layer *ofb)
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 912 {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 913 /* We assume that user will use at most video_mem_size for overlay fb,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 914 * anyway, it's useless to use 16bpp main plane and 24bpp overlay
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 915 */
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 @916 ofb->video_mem = alloc_pages_exact(PAGE_ALIGN(pxafb->video_mem_size),
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 917 GFP_KERNEL | __GFP_ZERO);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 918 if (ofb->video_mem == NULL)
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 919 return -ENOMEM;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 920
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 @921 ofb->video_mem_phys = virt_to_phys(ofb->video_mem);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 922 ofb->video_mem_size = PAGE_ALIGN(pxafb->video_mem_size);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 923
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 924 mutex_lock(&ofb->fb.mm_lock);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 925 ofb->fb.fix.smem_start = ofb->video_mem_phys;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 926 ofb->fb.fix.smem_len = pxafb->video_mem_size;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 927 mutex_unlock(&ofb->fb.mm_lock);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 928
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 929 ofb->fb.screen_base = ofb->video_mem;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 930
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 931 return 0;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 932 }
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 933
48c68c4f1b54244 drivers/video/pxafb.c Greg Kroah-Hartman 2012-12-21 934 static void pxafb_overlay_init(struct pxafb_info *fbi)
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 935 {
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 936 int i, ret;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 937
782385ae176b304 drivers/video/pxafb.c Eric Miao 2009-03-19 938 if (!pxafb_overlay_supported())
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 939 return;
782385ae176b304 drivers/video/pxafb.c Eric Miao 2009-03-19 940
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 941 for (i = 0; i < 2; i++) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 942 struct pxafb_layer *ofb = &fbi->overlay[i];
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 943 init_pxafb_overlay(fbi, ofb, i);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 944 ret = register_framebuffer(&ofb->fb);
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 945 if (ret) {
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 946 dev_err(fbi->dev, "failed to register overlay %d\n", i);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 947 continue;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 948 }
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 949 ret = pxafb_overlay_map_video_memory(fbi, ofb);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 950 if (ret) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 951 dev_err(fbi->dev,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 952 "failed to map video memory for overlay %d\n",
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 953 i);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 954 unregister_framebuffer(&ofb->fb);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 955 continue;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 956 }
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 957 ofb->registered = 1;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 958 }
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 959
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 960 /* mask all IU/BS/EOF/SOF interrupts */
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 961 lcd_writel(fbi, LCCR5, ~0);
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 962
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 963 pr_info("PXA Overlay driver loaded successfully!\n");
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 964 }
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 965
48c68c4f1b54244 drivers/video/pxafb.c Greg Kroah-Hartman 2012-12-21 966 static void pxafb_overlay_exit(struct pxafb_info *fbi)
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 967 {
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 968 int i;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 969
782385ae176b304 drivers/video/pxafb.c Eric Miao 2009-03-19 970 if (!pxafb_overlay_supported())
782385ae176b304 drivers/video/pxafb.c Eric Miao 2009-03-19 971 return;
782385ae176b304 drivers/video/pxafb.c Eric Miao 2009-03-19 972
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 973 for (i = 0; i < 2; i++) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 974 struct pxafb_layer *ofb = &fbi->overlay[i];
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 975 if (ofb->registered) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 976 if (ofb->video_mem)
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 @977 free_pages_exact(ofb->video_mem,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 978 ofb->video_mem_size);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 979 unregister_framebuffer(&ofb->fb);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 980 }
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick 2011-03-11 981 }
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 982 }
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 983 #else
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 984 static inline void pxafb_overlay_init(struct pxafb_info *fbi) {}
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 985 static inline void pxafb_overlay_exit(struct pxafb_info *fbi) {}
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 986 #endif /* CONFIG_FB_PXA_OVERLAY */
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao 2008-12-23 987
:::::: The code at line 916 was first introduced by commit
:::::: 1b98d7c4491e5eaba7c403ec1bc5997e6596e569 ARM: pxafb: rework pxafb overlay memory management
:::::: TO: Vasily Khoruzhick <anarsoul(a)gmail.com>
:::::: CC: Eric Miao <eric.y.miao(a)gmail.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
arch/x86/platform/efi/efi_64.c:857:18: sparse: sparse: context imbalance in 'efi_thunk_set_variable_nonblocking' - wrong count at exit
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fc80c51fd4b23ec007e88d4c688f2cac1b8648e7
commit: ea5e1919b44f09fce72d919fbb87f9611fc700a6 efi/x86: Simplify mixed mode call wrapper
date: 7 months ago
config: x86_64-randconfig-s031-20200810 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-118-ge1578773-dirty
git checkout ea5e1919b44f09fce72d919fbb87f9611fc700a6
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> arch/x86/platform/efi/efi_64.c:857:18: sparse: sparse: context imbalance in 'efi_thunk_set_variable_nonblocking' - wrong count at exit
arch/x86/platform/efi/efi_64.c:960:1: sparse: sparse: context imbalance in 'efi_thunk_query_variable_info_nonblocking' - different lock contexts for basic block
vim +/efi_thunk_set_variable_nonblocking +857 arch/x86/platform/efi/efi_64.c
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 839
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 840 static efi_status_t
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 841 efi_thunk_set_variable_nonblocking(efi_char16_t *name, efi_guid_t *vendor,
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 842 u32 attr, unsigned long data_size,
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 843 void *data)
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 844 {
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 845 u32 phys_name, phys_vendor, phys_data;
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 846 efi_status_t status;
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 847 unsigned long flags;
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 848
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 849 if (!spin_trylock_irqsave(&efi_runtime_lock, flags))
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 850 return EFI_NOT_READY;
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 851
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 852 phys_name = virt_to_phys_or_null_size(name, efi_name_size(name));
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 853 phys_vendor = virt_to_phys_or_null(vendor);
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 854 phys_data = virt_to_phys_or_null_size(data, data_size);
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 855
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 856 /* If data_size is > sizeof(u32) we've got problems */
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 @857 status = efi_thunk(set_variable, phys_name, phys_vendor,
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 858 attr, data_size, phys_data);
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 859
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 860 spin_unlock_irqrestore(&efi_runtime_lock, flags);
83a0a2ea0b9919 Ard Biesheuvel 2018-07-20 861
4f9dbcfc40299d Matt Fleming 2014-01-10 862 return status;
4f9dbcfc40299d Matt Fleming 2014-01-10 863 }
4f9dbcfc40299d Matt Fleming 2014-01-10 864
:::::: The code at line 857 was first introduced by commit
:::::: 83a0a2ea0b991927e42984be220329e776ce7137 efi/x86: Prevent reentrant firmware calls in mixed mode
:::::: TO: Ard Biesheuvel <ard.biesheuvel(a)linaro.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
Re: [RFC PATCH v2 5/5] ext4/jbd2: debugging messages
by kernel test robot
Hi Mauricio,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on ext4/dev]
[also build test ERROR on ext3/for_next linus/master v5.8 next-20200807]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Mauricio-Faria-de-Oliveira/ext4-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
config: arm-bcm2835_defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> fs/ext4/inode.c:51:10: fatal error: ext4_jbd2_dbg.h: No such file or directory
51 | #include "ext4_jbd2_dbg.h"
| ^~~~~~~~~~~~~~~~~
compilation terminated.
--
>> fs/ext4/super.c:61:10: fatal error: ext4_jbd2_dbg.h: No such file or directory
61 | #include "ext4_jbd2_dbg.h"
| ^~~~~~~~~~~~~~~~~
compilation terminated.
--
>> fs/jbd2/transaction.c:33:10: fatal error: ../ext4/ext4_jbd2_dbg.h: No such file or directory
33 | #include "../ext4/ext4_jbd2_dbg.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
>> fs/jbd2/commit.c:32:10: fatal error: ../ext4/ext4_jbd2_dbg.h: No such file or directory
32 | #include "../ext4/ext4_jbd2_dbg.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
>> fs/jbd2/journal.c:51:10: fatal error: ../ext4/ext4_jbd2_dbg.h: No such file or directory
51 | #include "../ext4/ext4_jbd2_dbg.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
vim +51 fs/ext4/inode.c
50
> 51 #include "ext4_jbd2_dbg.h"
52
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month