[openeuler:OLK-5.10 2974/2974] drivers/irqchip/irq-gic-v3.c:782:23: error: implicit declaration of function 'PDE_DATA'; did you mean 'NODE_DATA'?

tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 0bb9efd4883938dec34f710bce07ec3ecf5a04bd commit: a05426a568e457640f58698c8ebd636fcde4d202 [2974/2974] arm64: Introduce Xint software solution config: arm64-randconfig-001-20250620 (https://download.01.org/0day-ci/archive/20250620/202506200917.vHKIjHAl-lkp@i...) compiler: aarch64-linux-gcc (GCC) 9.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250620/202506200917.vHKIjHAl-lkp@i...) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202506200917.vHKIjHAl-lkp@intel.com/ All errors (new ones prefixed by >>): drivers/irqchip/irq-gic-v3.c: In function 'xint_proc_write':
drivers/irqchip/irq-gic-v3.c:782:23: error: implicit declaration of function 'PDE_DATA'; did you mean 'NODE_DATA'? [-Werror=implicit-function-declaration] 782 | int irq = (int)(long)PDE_DATA(file_inode(file)); | ^~~~~~~~ | NODE_DATA drivers/irqchip/irq-gic-v3.c: In function 'xint_proc_show': drivers/irqchip/irq-gic-v3.c:820:2: error: implicit declaration of function 'seq_printf'; did you mean 'dev_printk'? [-Werror=implicit-function-declaration] 820 | seq_printf(m, "%d\n", xint_transform((long)m->private, XINT_SET_CHECK)); | ^~~~~~~~~~ | dev_printk drivers/irqchip/irq-gic-v3.c:820:46: error: dereferencing pointer to incomplete type 'struct seq_file' 820 | seq_printf(m, "%d\n", xint_transform((long)m->private, XINT_SET_CHECK)); | ^~ drivers/irqchip/irq-gic-v3.c: In function 'xint_proc_open': drivers/irqchip/irq-gic-v3.c:826:9: error: implicit declaration of function 'single_open'; did you mean 'simple_open'? [-Werror=implicit-function-declaration] 826 | return single_open(file, xint_proc_show, PDE_DATA(inode)); | ^~~~~~~~~~~ | simple_open drivers/irqchip/irq-gic-v3.c: At top level: drivers/irqchip/irq-gic-v3.c:829:21: error: variable 'xint_proc_ops' has initializer but incomplete type 829 | static const struct proc_ops xint_proc_ops = { | ^~~~~~~~ drivers/irqchip/irq-gic-v3.c:830:3: error: 'const struct proc_ops' has no member named 'proc_open' 830 | .proc_open = xint_proc_open, | ^~~~~~~~~ drivers/irqchip/irq-gic-v3.c:830:15: warning: excess elements in struct initializer 830 | .proc_open = xint_proc_open, | ^~~~~~~~~~~~~~ drivers/irqchip/irq-gic-v3.c:830:15: note: (near initialization for 'xint_proc_ops') drivers/irqchip/irq-gic-v3.c:831:3: error: 'const struct proc_ops' has no member named 'proc_read' 831 | .proc_read = seq_read, | ^~~~~~~~~ drivers/irqchip/irq-gic-v3.c:831:15: error: 'seq_read' undeclared here (not in a function) 831 | .proc_read = seq_read, | ^~~~~~~~ drivers/irqchip/irq-gic-v3.c:831:15: warning: excess elements in struct initializer drivers/irqchip/irq-gic-v3.c:831:15: note: (near initialization for 'xint_proc_ops') drivers/irqchip/irq-gic-v3.c:832:3: error: 'const struct proc_ops' has no member named 'proc_lseek' 832 | .proc_lseek = seq_lseek, | ^~~~~~~~~~ drivers/irqchip/irq-gic-v3.c:832:16: error: 'seq_lseek' undeclared here (not in a function) 832 | .proc_lseek = seq_lseek, | ^~~~~~~~~ drivers/irqchip/irq-gic-v3.c:832:16: warning: excess elements in struct initializer drivers/irqchip/irq-gic-v3.c:832:16: note: (near initialization for 'xint_proc_ops') drivers/irqchip/irq-gic-v3.c:833:3: error: 'const struct proc_ops' has no member named 'proc_release' 833 | .proc_release = single_release, | ^~~~~~~~~~~~ drivers/irqchip/irq-gic-v3.c:833:18: error: 'single_release' undeclared here (not in a function); did you mean 'spin_release'? 833 | .proc_release = single_release, | ^~~~~~~~~~~~~~ | spin_release drivers/irqchip/irq-gic-v3.c:833:18: warning: excess elements in struct initializer drivers/irqchip/irq-gic-v3.c:833:18: note: (near initialization for 'xint_proc_ops') drivers/irqchip/irq-gic-v3.c:834:3: error: 'const struct proc_ops' has no member named 'proc_write' 834 | .proc_write = xint_proc_write, | ^~~~~~~~~~ drivers/irqchip/irq-gic-v3.c:834:16: warning: excess elements in struct initializer 834 | .proc_write = xint_proc_write, | ^~~~~~~~~~~~~~~ drivers/irqchip/irq-gic-v3.c:834:16: note: (near initialization for 'xint_proc_ops') drivers/irqchip/irq-gic-v3.c: In function 'register_irqchip_proc': drivers/irqchip/irq-gic-v3.c:843:2: error: implicit declaration of function 'proc_create_data' [-Werror=implicit-function-declaration] 843 | proc_create_data("xint", 0644, desc->dir, &xint_proc_ops, irqp); | ^~~~~~~~~~~~~~~~ drivers/irqchip/irq-gic-v3.c: In function 'unregister_irqchip_proc': drivers/irqchip/irq-gic-v3.c:851:2: error: implicit declaration of function 'remove_proc_entry' [-Werror=implicit-function-declaration] 851 | remove_proc_entry("xint", desc->dir); | ^~~~~~~~~~~~~~~~~ drivers/irqchip/irq-gic-v3.c: At top level: drivers/irqchip/irq-gic-v3.c:829:30: error: storage size of 'xint_proc_ops' isn't known 829 | static const struct proc_ops xint_proc_ops = { | ^~~~~~~~~~~~~ cc1: some warnings being treated as errors
Kconfig warnings: (for reference only) WARNING: unmet direct dependencies detected for CPPC_CPUFREQ_SYSFS_INTERFACE Depends on [n]: CPU_FREQ [=y] && (ARM || ARM64 [=y]) && ACPI_CPPC_CPUFREQ [=n] Selected by [m]: - CPU_FREQ_GOV_SEEP [=m] && CPU_FREQ [=y] && (ACPI_CPPC_CPUFREQ [=n] || ARM64 [=y]) vim +782 drivers/irqchip/irq-gic-v3.c 778 779 static ssize_t xint_proc_write(struct file *file, 780 const char __user *buffer, size_t count, loff_t *pos) 781 {
782 int irq = (int)(long)PDE_DATA(file_inode(file)); 783 bool xint_state = false; 784 unsigned long val; 785 char *buf = NULL; 786 787 if (!xint_transform(irq, XINT_RANGE_CHECK)) 788 return -EPERM; 789 790 buf = memdup_user_nul(buffer, count); 791 if (IS_ERR(buf)) 792 return PTR_ERR(buf); 793 794 if (kstrtoul(buf, 0, &val) || (val != 0 && val != 1)) { 795 kfree(buf); 796 return -EINVAL; 797 } 798 799 xint_state = xint_transform(irq, XINT_SET_CHECK); 800 if (xint_state == val) { 801 kfree(buf); 802 return -EBUSY; 803 } 804 805 local_irq_disable(); 806 disable_irq(irq); 807 808 xint_transform(irq, xint_state ? XINT_TO_IRQ : IRQ_TO_XINT); 809 810 enable_irq(irq); 811 local_irq_enable(); 812 813 kfree(buf); 814 815 return count; 816 } 817 818 static int xint_proc_show(struct seq_file *m, void *v) 819 { 820 seq_printf(m, "%d\n", xint_transform((long)m->private, XINT_SET_CHECK)); 821 return 0; 822 } 823 824 static int xint_proc_open(struct inode *inode, struct file *file) 825 { 826 return single_open(file, xint_proc_show, PDE_DATA(inode)); 827 } 828 829 static const struct proc_ops xint_proc_ops = { 830 .proc_open = xint_proc_open, 831 .proc_read = seq_read, 832 .proc_lseek = seq_lseek, 833 .proc_release = single_release, 834 .proc_write = xint_proc_write, 835 }; 836
-- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
participants (1)
-
kernel test robot