[arc:topic-zol-remove 13/23] arch/arc/kernel/kgdb.c:30:35: error: 'struct pt_regs' has no member named 'lp_count'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc.git topic-zol-remove
head: 79f0a95b85a9af0927252156615ee3a14c2dd8de
commit: 171f761e689641b34c37d1e18ea2cd7905310267 [13/23] ARC: pt_regs: remove ZOL
config: arc-allyesconfig (attached as .config)
compiler: arc-elf-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
git checkout 171f761e689641b34c37d1e18ea2cd7905310267
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=arc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
arch/arc/kernel/kgdb.c: In function 'to_gdb_regs':
>> arch/arc/kernel/kgdb.c:30:35: error: 'struct pt_regs' has no member named 'lp_count'
30 | gdb_regs[_LP_COUNT] = kernel_regs->lp_count;
| ^~
>> arch/arc/kernel/kgdb.c:31:33: error: 'struct pt_regs' has no member named 'lp_end'
31 | gdb_regs[_LP_END] = kernel_regs->lp_end;
| ^~
>> arch/arc/kernel/kgdb.c:32:35: error: 'struct pt_regs' has no member named 'lp_start'
32 | gdb_regs[_LP_START] = kernel_regs->lp_start;
| ^~
arch/arc/kernel/kgdb.c: In function 'from_gdb_regs':
arch/arc/kernel/kgdb.c:50:13: error: 'struct pt_regs' has no member named 'lp_count'
50 | kernel_regs->lp_count = gdb_regs[_LP_COUNT];
| ^~
arch/arc/kernel/kgdb.c:51:13: error: 'struct pt_regs' has no member named 'lp_end'
51 | kernel_regs->lp_end = gdb_regs[_LP_END];
| ^~
arch/arc/kernel/kgdb.c:52:13: error: 'struct pt_regs' has no member named 'lp_start'
52 | kernel_regs->lp_start = gdb_regs[_LP_START];
| ^~
arch/arc/kernel/kgdb.c: In function 'kgdb_arch_handle_exception':
arch/arc/kernel/kgdb.c:141:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
141 | if (kgdb_hex2long(&ptr, &addr))
| ^
arch/arc/kernel/kgdb.c:144:2: note: here
144 | case 'D':
| ^~~~
--
arch/arc/kernel/disasm.c: In function 'disasm_next_pc':
>> arch/arc/kernel/disasm.c:527:57: error: 'struct pt_regs' has no member named 'lp_end'
527 | if (!(regs->status32 & STATUS32_L) && (*next_pc == regs->lp_end)
| ^~
>> arch/arc/kernel/disasm.c:528:11: error: 'struct pt_regs' has no member named 'lp_count'
528 | && (regs->lp_count > 1)) {
| ^~
>> arch/arc/kernel/disasm.c:529:18: error: 'struct pt_regs' has no member named 'lp_start'
529 | *next_pc = regs->lp_start;
| ^~
vim +30 arch/arc/kernel/kgdb.c
f46121bd26d7957 Mischa Jonker 2013-01-18 13
f46121bd26d7957 Mischa Jonker 2013-01-18 14 static void to_gdb_regs(unsigned long *gdb_regs, struct pt_regs *kernel_regs,
f46121bd26d7957 Mischa Jonker 2013-01-18 15 struct callee_regs *cregs)
f46121bd26d7957 Mischa Jonker 2013-01-18 16 {
f46121bd26d7957 Mischa Jonker 2013-01-18 17 int regno;
f46121bd26d7957 Mischa Jonker 2013-01-18 18
f46121bd26d7957 Mischa Jonker 2013-01-18 19 for (regno = 0; regno <= 26; regno++)
f46121bd26d7957 Mischa Jonker 2013-01-18 20 gdb_regs[_R0 + regno] = get_reg(regno, kernel_regs, cregs);
f46121bd26d7957 Mischa Jonker 2013-01-18 21
f46121bd26d7957 Mischa Jonker 2013-01-18 22 for (regno = 27; regno < GDB_MAX_REGS; regno++)
f46121bd26d7957 Mischa Jonker 2013-01-18 23 gdb_regs[regno] = 0;
f46121bd26d7957 Mischa Jonker 2013-01-18 24
f46121bd26d7957 Mischa Jonker 2013-01-18 25 gdb_regs[_FP] = kernel_regs->fp;
f46121bd26d7957 Mischa Jonker 2013-01-18 26 gdb_regs[__SP] = kernel_regs->sp;
f46121bd26d7957 Mischa Jonker 2013-01-18 27 gdb_regs[_BLINK] = kernel_regs->blink;
f46121bd26d7957 Mischa Jonker 2013-01-18 28 gdb_regs[_RET] = kernel_regs->ret;
f46121bd26d7957 Mischa Jonker 2013-01-18 29 gdb_regs[_STATUS32] = kernel_regs->status32;
f46121bd26d7957 Mischa Jonker 2013-01-18 @30 gdb_regs[_LP_COUNT] = kernel_regs->lp_count;
f46121bd26d7957 Mischa Jonker 2013-01-18 @31 gdb_regs[_LP_END] = kernel_regs->lp_end;
f46121bd26d7957 Mischa Jonker 2013-01-18 @32 gdb_regs[_LP_START] = kernel_regs->lp_start;
f46121bd26d7957 Mischa Jonker 2013-01-18 33 gdb_regs[_BTA] = kernel_regs->bta;
f46121bd26d7957 Mischa Jonker 2013-01-18 34 gdb_regs[_STOP_PC] = kernel_regs->ret;
f46121bd26d7957 Mischa Jonker 2013-01-18 35 }
f46121bd26d7957 Mischa Jonker 2013-01-18 36
:::::: The code at line 30 was first introduced by commit
:::::: f46121bd26d7957866739313f1e098a682e8d3e4 ARC: kgdb support
:::::: TO: Mischa Jonker <mjonker(a)synopsys.com>
:::::: CC: Vineet Gupta <vgupta(a)synopsys.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
[weiny2:lm-misc 2/8] fs/cifs/file.c:4883:2: error: unknown field 'swap_activate' specified in initializer
by kbuild test robot
tree: https://github.com/weiny2/linux-kernel.git lm-misc
head: 8c385a87dc5cb4d98fa417d3dd9481f3fbe4c625
commit: 963afc15064156e5fb5cc1568d467b3b1d4178cc [2/8] fs: Move swap_[de]activate to file_operations
config: x86_64-randconfig-s1-20200415 (attached as .config)
compiler: gcc-5 (Ubuntu 5.5.0-12ubuntu1) 5.5.0 20171010
reproduce:
git checkout 963afc15064156e5fb5cc1568d467b3b1d4178cc
# save the attached .config to linux build tree
make ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> fs/cifs/file.c:4883:2: error: unknown field 'swap_activate' specified in initializer
.swap_activate = cifs_swap_activate,
^
fs/cifs/file.c:4883:19: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.swap_activate = cifs_swap_activate,
^
fs/cifs/file.c:4883:19: note: (near initialization for 'cifs_addr_ops.is_partially_uptodate')
>> fs/cifs/file.c:4884:2: error: unknown field 'swap_deactivate' specified in initializer
.swap_deactivate = cifs_swap_deactivate,
^
fs/cifs/file.c:4884:21: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.swap_deactivate = cifs_swap_deactivate,
^
fs/cifs/file.c:4884:21: note: (near initialization for 'cifs_addr_ops.is_dirty_writeback')
cc1: some warnings being treated as errors
vim +/swap_activate +4883 fs/cifs/file.c
dca692880e8877 Steve French 2013-11-11 4865
f5e54d6e53a20c Christoph Hellwig 2006-06-28 4866 const struct address_space_operations cifs_addr_ops = {
^1da177e4c3f41 Linus Torvalds 2005-04-16 4867 .readpage = cifs_readpage,
^1da177e4c3f41 Linus Torvalds 2005-04-16 4868 .readpages = cifs_readpages,
^1da177e4c3f41 Linus Torvalds 2005-04-16 4869 .writepage = cifs_writepage,
37c0eb4677f733 Steve French 2005-10-05 4870 .writepages = cifs_writepages,
d9414774dc0c7b Nick Piggin 2008-09-24 4871 .write_begin = cifs_write_begin,
d9414774dc0c7b Nick Piggin 2008-09-24 4872 .write_end = cifs_write_end,
^1da177e4c3f41 Linus Torvalds 2005-04-16 4873 .set_page_dirty = __set_page_dirty_nobuffers,
85f2d6b44d7e83 Suresh Jayaraman 2010-07-05 4874 .releasepage = cifs_release_page,
dca692880e8877 Steve French 2013-11-11 4875 .direct_IO = cifs_direct_io,
85f2d6b44d7e83 Suresh Jayaraman 2010-07-05 4876 .invalidatepage = cifs_invalidate_page,
9ad1506b42c828 Pavel Shilovsky 2011-04-08 4877 .launder_page = cifs_launder_page,
4e8aea30f7751c Steve French 2020-04-09 4878 /*
4e8aea30f7751c Steve French 2020-04-09 4879 * TODO: investigate and if useful we could add an cifs_migratePage
4e8aea30f7751c Steve French 2020-04-09 4880 * helper (under an CONFIG_MIGRATION) in the future, and also
4e8aea30f7751c Steve French 2020-04-09 4881 * investigate and add an is_dirty_writeback helper if needed
4e8aea30f7751c Steve French 2020-04-09 4882 */
4e8aea30f7751c Steve French 2020-04-09 @4883 .swap_activate = cifs_swap_activate,
4e8aea30f7751c Steve French 2020-04-09 @4884 .swap_deactivate = cifs_swap_deactivate,
^1da177e4c3f41 Linus Torvalds 2005-04-16 4885 };
273d81d6ada951 Dave Kleikamp 2006-06-01 4886
:::::: The code at line 4883 was first introduced by commit
:::::: 4e8aea30f7751ce7c4b158aa0c04e7744d281cc3 smb3: enable swap on SMB3 mounts
:::::: TO: Steve French <stfrench(a)microsoft.com>
:::::: CC: Steve French <stfrench(a)microsoft.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
[weiny2:lm-misc 5/8] include/linux/highmem.h:40:9: warning: return makes pointer from integer without a cast
by kbuild test robot
tree: https://github.com/weiny2/linux-kernel.git lm-misc
head: 8c385a87dc5cb4d98fa417d3dd9481f3fbe4c625
commit: 2cc4682a3d63e481c63fe72c4149b0bf98cc4b65 [5/8] arch/kmap: Remove redundant arch specific kmaps
config: i386-allyesconfig (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
git checkout 2cc4682a3d63e481c63fe72c4149b0bf98cc4b65
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from include/linux/pagemap.h:11:0,
from include/linux/blkdev.h:16,
from include/linux/blk-cgroup.h:23,
from include/linux/writeback.h:14,
from include/linux/memcontrol.h:22,
from include/linux/swap.h:9,
from include/linux/suspend.h:5,
from arch/x86/kernel/asm-offsets.c:13:
include/linux/highmem.h: In function 'kmap':
include/linux/highmem.h:40:9: error: implicit declaration of function '__kmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
return __kmap(page);
^~~~~~
kmap
>> include/linux/highmem.h:40:9: warning: return makes pointer from integer without a cast [-Wint-conversion]
return __kmap(page);
^~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:100: arch/x86/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1141: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:180: sub-make] Error 2
18 real 5 user 8 sys 77.29% cpu make prepare
vim +40 include/linux/highmem.h
36
37 #ifndef ARCH_HAS_KMAP
38 static inline void *kmap(struct page *page)
39 {
> 40 return __kmap(page);
41 }
42 #endif
43
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
[weiny2:lm-misc 7/8] arch/x86/mm/highmem_32.c:17:24: warning: initialization makes integer from pointer without a cast
by kbuild test robot
tree: https://github.com/weiny2/linux-kernel.git lm-misc
head: 8c385a87dc5cb4d98fa417d3dd9481f3fbe4c625
commit: 9bbedda97f815fb2b6478966706968af63c983c2 [7/8] arch/kmap_atomic: Consolidate duplicate code
config: i386-allnoconfig (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
git checkout 9bbedda97f815fb2b6478966706968af63c983c2
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from arch/x86/mm/highmem_32.c:2:0:
include/linux/highmem.h: In function 'kmap':
include/linux/highmem.h:40:9: error: implicit declaration of function '__kmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
return __kmap(page);
^~~~~~
kmap
include/linux/highmem.h:40:9: warning: return makes pointer from integer without a cast [-Wint-conversion]
return __kmap(page);
^~~~~~~~~~~~
include/linux/highmem.h: In function 'kunmap':
include/linux/highmem.h:48:3: warning: 'return' with no value, in function returning non-void [-Wreturn-type]
return;
^~~~~~
include/linux/highmem.h:44:21: note: declared here
static inline void *kunmap(struct page *page)
^~~~~~
arch/x86/mm/highmem_32.c: In function 'kmap_atomic_prot':
>> arch/x86/mm/highmem_32.c:17:24: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
unsigned long vaddr = __kmap_atomic(page);
^~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +17 arch/x86/mm/highmem_32.c
6
7 /*
8 * kmap_atomic/kunmap_atomic is significantly faster than kmap/kunmap because
9 * no global lock is needed and because the kmap code must perform a global TLB
10 * invalidation when the kmap pool wraps.
11 *
12 * However when holding an atomic kmap it is not legal to sleep, so atomic
13 * kmaps are appropriate for short, tight code paths only.
14 */
15 void *kmap_atomic_prot(struct page *page, pgprot_t prot)
16 {
> 17 unsigned long vaddr = __kmap_atomic(page);
18 int idx, type;
19
20 if (vaddr)
21 return (void *)vaddr;
22
23 type = kmap_atomic_idx_push();
24 idx = type + KM_TYPE_NR*smp_processor_id();
25 vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
26 BUG_ON(!pte_none(*(kmap_pte-idx)));
27 set_pte(kmap_pte-idx, mk_pte(page, prot));
28 arch_flush_lazy_mmu_mode();
29
30 return (void *)vaddr;
31 }
32 EXPORT_SYMBOL(kmap_atomic_prot);
33
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
[jwboyer-fedora:f30 26/47] drivers/usb/host/pci-quirks.c:646: undefined reference to `rpi_firmware_get'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jwboyer/fedora.git f30
head: 284cf32818c908c93a68dd6848fe1d3bbaed6712
commit: ff6d3b9e73aad6e48454ce0ff695a3c10e97c186 [26/47] usb: xhci: Raspberry Pi FW loader for VIA VL805
config: arm64-randconfig-a001-20200414 (attached as .config)
compiler: aarch64-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
git checkout ff6d3b9e73aad6e48454ce0ff695a3c10e97c186
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
aarch64-linux-ld: drivers/usb/host/pci-quirks.o: in function `usb_vl805_init':
>> drivers/usb/host/pci-quirks.c:646: undefined reference to `rpi_firmware_get'
>> aarch64-linux-ld: drivers/usb/host/pci-quirks.c:654: undefined reference to `rpi_firmware_property'
vim +646 drivers/usb/host/pci-quirks.c
632
633 /* The VL805 firmware may either be loaded from an EEPROM or by the BIOS into
634 * memory. If run from memory it must be reloaded after a PCI fundmental reset.
635 * The Raspberry Pi firmware acts as the BIOS in this case.
636 */
637 static void usb_vl805_init(struct pci_dev *pdev)
638 {
639 #if IS_ENABLED(CONFIG_RASPBERRYPI_FIRMWARE)
640 struct rpi_firmware *fw;
641 struct {
642 u32 dev_addr;
643 } packet;
644 int ret;
645
> 646 fw = rpi_firmware_get(NULL);
647 if (!fw)
648 return;
649
650 packet.dev_addr = (pdev->bus->number << 20) |
651 (PCI_SLOT(pdev->devfn) << 15) | (PCI_FUNC(pdev->devfn) << 12);
652
653 dev_dbg(&pdev->dev, "RPI_FIRMWARE_NOTIFY_XHCI_RESET %x", packet.dev_addr);
> 654 ret = rpi_firmware_property(fw, RPI_FIRMWARE_NOTIFY_XHCI_RESET,
655 &packet, sizeof(packet));
656 #endif
657 }
658
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
Re: [PATCH] vhost: do not enable VHOST_MENU by default
by kbuild test robot
Hi Jason,
I love your patch! Yet something to improve:
[auto build test ERROR on vhost/linux-next]
[also build test ERROR on next-20200414]
[cannot apply to powerpc/next s390/features v5.7-rc1]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Jason-Wang/vhost-do-not-enable-V...
base: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: ia64-randconfig-a001-20200415 (attached as .config)
compiler: ia64-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
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=ia64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
drivers/vhost/vhost.c: In function 'vhost_vring_ioctl':
>> drivers/vhost/vhost.c:1577:33: error: implicit declaration of function 'eventfd_fget'; did you mean 'eventfd_signal'? [-Werror=implicit-function-declaration]
1577 | eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
| ^~~~~~~~~~~~
| eventfd_signal
>> drivers/vhost/vhost.c:1577:31: warning: pointer/integer type mismatch in conditional expression
1577 | eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
| ^
cc1: some warnings being treated as errors
vim +1577 drivers/vhost/vhost.c
feebcaeac79ad8 Jason Wang 2019-05-24 1493
feebcaeac79ad8 Jason Wang 2019-05-24 1494 static long vhost_vring_set_num_addr(struct vhost_dev *d,
feebcaeac79ad8 Jason Wang 2019-05-24 1495 struct vhost_virtqueue *vq,
feebcaeac79ad8 Jason Wang 2019-05-24 1496 unsigned int ioctl,
feebcaeac79ad8 Jason Wang 2019-05-24 1497 void __user *argp)
feebcaeac79ad8 Jason Wang 2019-05-24 1498 {
feebcaeac79ad8 Jason Wang 2019-05-24 1499 long r;
feebcaeac79ad8 Jason Wang 2019-05-24 1500
feebcaeac79ad8 Jason Wang 2019-05-24 1501 mutex_lock(&vq->mutex);
feebcaeac79ad8 Jason Wang 2019-05-24 1502
feebcaeac79ad8 Jason Wang 2019-05-24 1503 switch (ioctl) {
feebcaeac79ad8 Jason Wang 2019-05-24 1504 case VHOST_SET_VRING_NUM:
feebcaeac79ad8 Jason Wang 2019-05-24 1505 r = vhost_vring_set_num(d, vq, argp);
feebcaeac79ad8 Jason Wang 2019-05-24 1506 break;
feebcaeac79ad8 Jason Wang 2019-05-24 1507 case VHOST_SET_VRING_ADDR:
feebcaeac79ad8 Jason Wang 2019-05-24 1508 r = vhost_vring_set_addr(d, vq, argp);
feebcaeac79ad8 Jason Wang 2019-05-24 1509 break;
feebcaeac79ad8 Jason Wang 2019-05-24 1510 default:
feebcaeac79ad8 Jason Wang 2019-05-24 1511 BUG();
feebcaeac79ad8 Jason Wang 2019-05-24 1512 }
feebcaeac79ad8 Jason Wang 2019-05-24 1513
feebcaeac79ad8 Jason Wang 2019-05-24 1514 mutex_unlock(&vq->mutex);
feebcaeac79ad8 Jason Wang 2019-05-24 1515
feebcaeac79ad8 Jason Wang 2019-05-24 1516 return r;
feebcaeac79ad8 Jason Wang 2019-05-24 1517 }
26b36604523f4a Sonny Rao 2018-03-14 1518 long vhost_vring_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1519 {
cecb46f194460d Al Viro 2012-08-27 1520 struct file *eventfp, *filep = NULL;
cecb46f194460d Al Viro 2012-08-27 1521 bool pollstart = false, pollstop = false;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1522 struct eventfd_ctx *ctx = NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1523 u32 __user *idxp = argp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1524 struct vhost_virtqueue *vq;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1525 struct vhost_vring_state s;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1526 struct vhost_vring_file f;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1527 u32 idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1528 long r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1529
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1530 r = get_user(idx, idxp);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1531 if (r < 0)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1532 return r;
0f3d9a17469d71 Krishna Kumar 2010-05-25 1533 if (idx >= d->nvqs)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1534 return -ENOBUFS;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1535
ff002269a4ee9c Jason Wang 2018-10-30 1536 idx = array_index_nospec(idx, d->nvqs);
3ab2e420ec1caf Asias He 2013-04-27 1537 vq = d->vqs[idx];
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1538
feebcaeac79ad8 Jason Wang 2019-05-24 1539 if (ioctl == VHOST_SET_VRING_NUM ||
feebcaeac79ad8 Jason Wang 2019-05-24 1540 ioctl == VHOST_SET_VRING_ADDR) {
feebcaeac79ad8 Jason Wang 2019-05-24 1541 return vhost_vring_set_num_addr(d, vq, ioctl, argp);
feebcaeac79ad8 Jason Wang 2019-05-24 1542 }
feebcaeac79ad8 Jason Wang 2019-05-24 1543
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1544 mutex_lock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1545
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1546 switch (ioctl) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1547 case VHOST_SET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1548 /* Moving base with an active backend?
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1549 * You don't want to do that. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1550 if (vq->private_data) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1551 r = -EBUSY;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1552 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1553 }
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1554 if (copy_from_user(&s, argp, sizeof s)) {
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1555 r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1556 break;
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1557 }
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1558 if (s.num > 0xffff) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1559 r = -EINVAL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1560 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1561 }
8d65843c44269c Jason Wang 2017-07-27 1562 vq->last_avail_idx = s.num;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1563 /* Forget the cached index value. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1564 vq->avail_idx = vq->last_avail_idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1565 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1566 case VHOST_GET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1567 s.index = idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1568 s.num = vq->last_avail_idx;
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1569 if (copy_to_user(argp, &s, sizeof s))
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1570 r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1571 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1572 case VHOST_SET_VRING_KICK:
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1573 if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1574 r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1575 break;
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1576 }
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 @1577 eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1578 if (IS_ERR(eventfp)) {
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1579 r = PTR_ERR(eventfp);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1580 break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1581 }
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1582 if (eventfp != vq->kick) {
cecb46f194460d Al Viro 2012-08-27 1583 pollstop = (filep = vq->kick) != NULL;
cecb46f194460d Al Viro 2012-08-27 1584 pollstart = (vq->kick = eventfp) != NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1585 } else
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1586 filep = eventfp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1587 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1588 case VHOST_SET_VRING_CALL:
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1589 if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1590 r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1591 break;
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1592 }
e050c7d93f4adb Eric Biggers 2018-01-06 1593 ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
e050c7d93f4adb Eric Biggers 2018-01-06 1594 if (IS_ERR(ctx)) {
e050c7d93f4adb Eric Biggers 2018-01-06 1595 r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1596 break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1597 }
e050c7d93f4adb Eric Biggers 2018-01-06 1598 swap(ctx, vq->call_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1599 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1600 case VHOST_SET_VRING_ERR:
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1601 if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1602 r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1603 break;
7ad9c9d2704854 Takuya Yoshikawa 2010-05-27 1604 }
09f332a589232f Eric Biggers 2018-01-06 1605 ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
09f332a589232f Eric Biggers 2018-01-06 1606 if (IS_ERR(ctx)) {
09f332a589232f Eric Biggers 2018-01-06 1607 r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1608 break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17 1609 }
09f332a589232f Eric Biggers 2018-01-06 1610 swap(ctx, vq->error_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1611 break;
2751c9882b9472 Greg Kurz 2015-04-24 1612 case VHOST_SET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz 2015-04-24 1613 r = vhost_set_vring_endian(vq, argp);
2751c9882b9472 Greg Kurz 2015-04-24 1614 break;
2751c9882b9472 Greg Kurz 2015-04-24 1615 case VHOST_GET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz 2015-04-24 1616 r = vhost_get_vring_endian(vq, idx, argp);
2751c9882b9472 Greg Kurz 2015-04-24 1617 break;
03088137246065 Jason Wang 2016-03-04 1618 case VHOST_SET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang 2016-03-04 1619 if (copy_from_user(&s, argp, sizeof(s))) {
03088137246065 Jason Wang 2016-03-04 1620 r = -EFAULT;
03088137246065 Jason Wang 2016-03-04 1621 break;
03088137246065 Jason Wang 2016-03-04 1622 }
03088137246065 Jason Wang 2016-03-04 1623 vq->busyloop_timeout = s.num;
03088137246065 Jason Wang 2016-03-04 1624 break;
03088137246065 Jason Wang 2016-03-04 1625 case VHOST_GET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang 2016-03-04 1626 s.index = idx;
03088137246065 Jason Wang 2016-03-04 1627 s.num = vq->busyloop_timeout;
03088137246065 Jason Wang 2016-03-04 1628 if (copy_to_user(argp, &s, sizeof(s)))
03088137246065 Jason Wang 2016-03-04 1629 r = -EFAULT;
03088137246065 Jason Wang 2016-03-04 1630 break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1631 default:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1632 r = -ENOIOCTLCMD;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1633 }
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1634
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1635 if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1636 vhost_poll_stop(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1637
e050c7d93f4adb Eric Biggers 2018-01-06 1638 if (!IS_ERR_OR_NULL(ctx))
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1639 eventfd_ctx_put(ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1640 if (filep)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1641 fput(filep);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1642
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1643 if (pollstart && vq->handle_kick)
2b8b328b61c799 Jason Wang 2013-01-28 1644 r = vhost_poll_start(&vq->poll, vq->kick);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1645
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1646 mutex_unlock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1647
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1648 if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1649 vhost_poll_flush(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1650 return r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1651 }
6ac1afbf6132df Asias He 2013-05-06 1652 EXPORT_SYMBOL_GPL(vhost_vring_ioctl);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 1653
:::::: The code at line 1577 was first introduced by commit
:::::: 3a4d5c94e959359ece6d6b55045c3f046677f55c vhost_net: a kernel-level virtio server
:::::: TO: Michael S. Tsirkin <mst(a)redhat.com>
:::::: CC: David S. Miller <davem(a)davemloft.net>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
Re: [PATCH 2/8] fs: extract simple_pin/release_fs to separate files
by kbuild test robot
Hi Emanuele,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on char-misc/char-misc-testing]
[also build test ERROR on driver-core/driver-core-testing linus/master v5.7-rc1 next-20200414]
[cannot apply to security/next-testing]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Emanuele-Giuseppe-Esposito/Simpl...
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 885a64715fd81e6af6d94a038556e0b2e6deb19c
config: arm-mvebu_v7_defconfig (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
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
arm-linux-gnueabi-ld: fs/tracefs/inode.o: in function `remove_one':
>> inode.c:(.text+0x1c): undefined reference to `simple_release_fs'
arm-linux-gnueabi-ld: fs/tracefs/inode.o: in function `start_creating.part.0':
inode.c:(.text+0x454): undefined reference to `simple_release_fs'
arm-linux-gnueabi-ld: fs/tracefs/inode.o: in function `__create_dir':
>> inode.c:(.text+0x55c): undefined reference to `simple_pin_fs'
>> arm-linux-gnueabi-ld: inode.c:(.text+0x640): undefined reference to `simple_release_fs'
arm-linux-gnueabi-ld: fs/tracefs/inode.o: in function `tracefs_create_file':
inode.c:(.text+0x690): undefined reference to `simple_pin_fs'
arm-linux-gnueabi-ld: inode.c:(.text+0x75c): undefined reference to `simple_release_fs'
arm-linux-gnueabi-ld: fs/tracefs/inode.o: in function `tracefs_remove':
inode.c:(.text+0x79c): undefined reference to `simple_pin_fs'
arm-linux-gnueabi-ld: inode.c:(.text+0x7c0): undefined reference to `simple_release_fs'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months
Re: [RFC PATCH 3/3] media: imx378: Add imx378 camera sensor driver
by kbuild test robot
Hi Daniel,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on v5.7-rc1 next-20200414]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Daniel-Gomez/v4l2-api-changes-fo...
base: git://linuxtv.org/media_tree.git master
config: parisc-allyesconfig (attached as .config)
compiler: hppa-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
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=parisc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/media/i2c/imx378.c: In function 'imx378_probe':
>> drivers/media/i2c/imx378.c:1754:8: error: implicit declaration of function 'v4l2_device_register_subdev'; did you mean 'v4l2_async_register_subdev'? [-Werror=implicit-function-declaration]
1754 | ret = v4l2_device_register_subdev(&imx378->v4l2_dev, &imx378->sd);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
| v4l2_async_register_subdev
>> drivers/media/i2c/imx378.c:1754:43: error: 'struct imx378' has no member named 'v4l2_dev'
1754 | ret = v4l2_device_register_subdev(&imx378->v4l2_dev, &imx378->sd);
| ^~
>> drivers/media/i2c/imx378.c:1760:8: error: implicit declaration of function 'v4l2_device_register_subdev_nodes'; did you mean 'v4l2_async_register_subdev'? [-Werror=implicit-function-declaration]
1760 | ret = v4l2_device_register_subdev_nodes(&imx378->v4l2_dev);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| v4l2_async_register_subdev
drivers/media/i2c/imx378.c:1760:49: error: 'struct imx378' has no member named 'v4l2_dev'
1760 | ret = v4l2_device_register_subdev_nodes(&imx378->v4l2_dev);
| ^~
At top level:
drivers/media/i2c/imx378.c:577:12: warning: 'imx378_read_reg16' defined but not used [-Wunused-function]
577 | static int imx378_read_reg16(struct imx378 *imx378, u16 addr, u16 *val)
| ^~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +1754 drivers/media/i2c/imx378.c
1674
1675 static int imx378_probe(struct i2c_client *client)
1676 {
1677 struct device *dev = &client->dev;
1678 struct imx378 *imx378;
1679 int ret;
1680
1681 ret = imx378_parse_fwnode(dev);
1682 if (ret)
1683 return ret;
1684
1685 imx378 = devm_kzalloc(dev, sizeof(*imx378), GFP_KERNEL);
1686 if (!imx378)
1687 return -ENOMEM;
1688
1689 imx378->dev = dev;
1690
1691 imx378->xclk = devm_clk_get(dev, NULL);
1692 if (IS_ERR(imx378->xclk)) {
1693 dev_err(dev, "could not get xclk");
1694 return PTR_ERR(imx378->xclk);
1695 }
1696
1697 ret = clk_set_rate(imx378->xclk, IMX378_DEFAULT_CLK_FREQ);
1698 if (ret) {
1699 dev_err(dev, "could not set xclk frequency\n");
1700 return ret;
1701 }
1702
1703 ret = imx378_get_regulators(dev, imx378);
1704 if (ret < 0) {
1705 dev_err(dev, "could not get regulators\n");
1706 return ret;
1707 }
1708
1709 imx378->enable_gpio = devm_gpiod_get(dev, "enable", GPIOD_OUT_LOW);
1710 if (IS_ERR(imx378->enable_gpio)) {
1711 dev_err(dev, "could get enable gpio\n");
1712 return PTR_ERR(imx378->enable_gpio);
1713 }
1714
1715 imx378->regmap = devm_regmap_init_i2c(client, &sensor_regmap_config);
1716 if (IS_ERR(imx378->regmap)) {
1717 dev_err(dev, "regmap init failed\n");
1718 return PTR_ERR(imx378->regmap);
1719 }
1720
1721 v4l2_i2c_subdev_init(&imx378->sd, client, &imx378_subdev_ops);
1722
1723 imx378_power_on(imx378->dev);
1724
1725 pm_runtime_set_active(imx378->dev);
1726 pm_runtime_enable(imx378->dev);
1727 pm_runtime_idle(imx378->dev);
1728
1729 ret = imx378_init_controls(imx378);
1730 if (ret) {
1731 dev_err(dev, "failed to init controls: %d", ret);
1732 goto error_probe;
1733 }
1734
1735 imx378->sd.flags |= V4L2_SUBDEV_FL_HAS_DEVNODE;
1736 imx378->pad.flags = MEDIA_PAD_FL_SOURCE;
1737 imx378->sd.dev = &client->dev;
1738 imx378->sd.entity.function = MEDIA_ENT_F_CAM_SENSOR;
1739
1740 ret = media_entity_pads_init(&imx378->sd.entity, 1, &imx378->pad);
1741 if (ret < 0) {
1742 dev_err(dev, "could not register media entity\n");
1743 goto free_ctrl;
1744 }
1745
1746 imx378_entity_init_cfg(&imx378->sd, NULL);
1747
1748 ret = v4l2_async_register_subdev_sensor_common(&imx378->sd);
1749 if (ret < 0) {
1750 dev_err(dev, "could not register v4l2 device\n");
1751 goto free_entity;
1752 }
1753
> 1754 ret = v4l2_device_register_subdev(&imx378->v4l2_dev, &imx378->sd);
1755 if (ret < 0) {
1756 dev_err(dev, "could not register v4l2 sd\n");
1757 goto free_entity;
1758 }
1759
> 1760 ret = v4l2_device_register_subdev_nodes(&imx378->v4l2_dev);
1761 if (ret) {
1762 dev_err(dev, "imx378 subdev nodes registration failed (err=%d)\n",
1763 ret);
1764 return ret;
1765 }
1766
1767 return 0;
1768
1769 free_entity:
1770 media_entity_cleanup(&imx378->sd.entity);
1771 free_ctrl:
1772 v4l2_ctrl_handler_free(&imx378->ctrls);
1773 error_probe:
1774 mutex_destroy(&imx378->mutex);
1775 pm_runtime_disable(imx378->dev);
1776
1777 return ret;
1778 }
1779
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 5 months