Re: [RFC] scripts: kernel-doc: improve parsing for kernel-doc comments syntax
by kernel test robot
Hi Aditya,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on lwn/docs-next]
[also build test WARNING on next-20210414]
[cannot apply to linus/master v5.12-rc7]
[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/Aditya-Srivastava/scripts-kernel...
base: git://git.lwn.net/linux-2.6 docs-next
config: i386-randconfig-s001-20210414 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-280-g2cd6d34e-dirty
# https://github.com/0day-ci/linux/commit/1ce0c4f2c165f733b954591dbf5b31c83...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Aditya-Srivastava/scripts-kernel-doc-improve-parsing-for-kernel-doc-comments-syntax/20210415-032651
git checkout 1ce0c4f2c165f733b954591dbf5b31c834eb0da7
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/xen/xenbus/xenbus_client.c:134: warning: Function parameter or member 'will_handle' not described in 'xenbus_watch_path'
drivers/xen/xenbus/xenbus_client.c:177: warning: Function parameter or member 'will_handle' not described in 'xenbus_watch_pathfmt'
drivers/xen/xenbus/xenbus_client.c:350: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
* Equivalent to xenbus_dev_fatal(dev, err, fmt, args), but helps
drivers/xen/xenbus/xenbus_client.c:414: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
* Allocate an event channel for the given xenbus_device, assigning the newly
drivers/xen/xenbus/xenbus_client.c:443: warning: Function parameter or member 'dev' not described in 'xenbus_free_evtchn'
drivers/xen/xenbus/xenbus_client.c:443: warning: Function parameter or member 'port' not described in 'xenbus_free_evtchn'
>> drivers/xen/xenbus/xenbus_client.c:443: warning: expecting prototype for Free an existing event channel. Returns 0 on success or(). Prototype was for xenbus_free_evtchn() instead
vim +443 drivers/xen/xenbus/xenbus_client.c
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 437
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 438
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 439 /**
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 440 * Free an existing event channel. Returns 0 on success or -errno on error.
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 441 */
0102e4efda76d0 Yan Yankovskyi 2020-03-23 442 int xenbus_free_evtchn(struct xenbus_device *dev, evtchn_port_t port)
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 @443 {
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 444 struct evtchn_close close;
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 445 int err;
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 446
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 447 close.port = port;
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 448
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 449 err = HYPERVISOR_event_channel_op(EVTCHNOP_close, &close);
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 450 if (err)
0102e4efda76d0 Yan Yankovskyi 2020-03-23 451 xenbus_dev_error(dev, err, "freeing event channel %u", port);
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 452
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 453 return err;
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 454 }
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 455 EXPORT_SYMBOL_GPL(xenbus_free_evtchn);
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 456
4bac07c993d034 Jeremy Fitzhardinge 2007-07-17 457
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
Re: [PATCH resend 5/9] drm/connector: Add a drm_connector privacy-screen helper functions
by kernel test robot
Hi Hans,
I love your patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on drm-tip/drm-tip linus/master v5.12-rc7 next-20210414]
[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/Hans-de-Goede/drm-Add-privacy-sc...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: xtensa-randconfig-r003-20210414 (attached as .config)
compiler: xtensa-linux-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
# https://github.com/0day-ci/linux/commit/8cb16e16d419f6ea9da13b9826a2d1d7a...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Hans-de-Goede/drm-Add-privacy-screen-class-and-connector-properties/20210414-231316
git checkout 8cb16e16d419f6ea9da13b9826a2d1d7ad5a9819
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=xtensa
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 >>):
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_free':
drm_connector.c:(.text+0x34): undefined reference to `drm_privacy_screen_get_state'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_update_privacy_screen_properties':
drm_connector.c:(.text+0x52): undefined reference to `drm_privacy_screen_get_state'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_has_possible_encoder':
drm_connector.c:(.text+0x448): undefined reference to `drm_privacy_screen_register_notifier'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_register':
drm_connector.c:(.text+0x4e0): undefined reference to `drm_privacy_screen_register_notifier'
>> xtensa-linux-ld: drm_connector.c:(.text+0x4fc): undefined reference to `drm_privacy_screen_unregister_notifier'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_unregister':
drm_connector.c:(.text+0x53b): undefined reference to `drm_privacy_screen_unregister_notifier'
>> xtensa-linux-ld: drm_connector.c:(.text+0x574): undefined reference to `drm_privacy_screen_put'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_cleanup':
drm_connector.c:(.text+0x5c3): undefined reference to `drm_privacy_screen_put'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_attach_privacy_screen_provider':
drm_connector.c:(.text+0x1afc): undefined reference to `drm_privacy_screen_set_sw_state'
xtensa-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_update_privacy_screen':
drm_connector.c:(.text+0x1b3a): undefined reference to `drm_privacy_screen_set_sw_state'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
[peterz-queue:sched/core-sched 29/29] kernel/sched/core.c:9498:50: error: 'GROUP_COOKIE' undeclared; did you mean 'SO_COOKIE'?
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git sched/core-sched
head: b417ddaf222294bcc35e9857105ab37d9b0fd715
commit: b417ddaf222294bcc35e9857105ab37d9b0fd715 [29/29] sched: prctl() and cgroup interaction
config: openrisc-randconfig-r033-20210414 (attached as .config)
compiler: or1k-linux-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
# https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?...
git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue sched/core-sched
git checkout b417ddaf222294bcc35e9857105ab37d9b0fd715
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=openrisc
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 >>):
kernel/sched/core.c:3166:6: warning: no previous prototype for 'sched_set_stop_task' [-Wmissing-prototypes]
3166 | void sched_set_stop_task(int cpu, struct task_struct *stop)
| ^~~~~~~~~~~~~~~~~~~
kernel/sched/core.c: In function 'sched_free_group':
kernel/sched/core.c:9359:2: error: implicit declaration of function 'sched_core_cgroup_free'; did you mean 'sched_core_free'? [-Werror=implicit-function-declaration]
9359 | sched_core_cgroup_free(tg);
| ^~~~~~~~~~~~~~~~~~~~~~
| sched_core_free
kernel/sched/core.c: In function 'sched_online_group':
kernel/sched/core.c:9404:2: error: implicit declaration of function 'sched_core_cgroup_online' [-Werror=implicit-function-declaration]
9404 | sched_core_cgroup_online(parent, tg);
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/sched/core.c: In function 'sched_move_task':
kernel/sched/core.c:9497:11: error: implicit declaration of function 'sched_core_cgroup_cookie' [-Werror=implicit-function-declaration]
9497 | cookie = sched_core_cgroup_cookie(tsk->sched_task_group);
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/sched/core.c:9498:11: error: implicit declaration of function 'sched_core_update_cookie' [-Werror=implicit-function-declaration]
9498 | cookie = sched_core_update_cookie(tsk, cookie | GROUP_COOKIE);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/sched/core.c:9498:50: error: 'GROUP_COOKIE' undeclared (first use in this function); did you mean 'SO_COOKIE'?
9498 | cookie = sched_core_update_cookie(tsk, cookie | GROUP_COOKIE);
| ^~~~~~~~~~~~
| SO_COOKIE
kernel/sched/core.c:9498:50: note: each undeclared identifier is reported only once for each function it appears in
kernel/sched/core.c:9499:2: error: implicit declaration of function 'sched_core_put_cookie' [-Werror=implicit-function-declaration]
9499 | sched_core_put_cookie(cookie);
| ^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +9498 kernel/sched/core.c
9454
9455 /*
9456 * Change task's runqueue when it moves between groups.
9457 *
9458 * The caller of this function should have put the task in its new group by
9459 * now. This function just updates tsk->se.cfs_rq and tsk->se.parent to reflect
9460 * its new group.
9461 */
9462 void sched_move_task(struct task_struct *tsk)
9463 {
9464 int queued, running, queue_flags =
9465 DEQUEUE_SAVE | DEQUEUE_MOVE | DEQUEUE_NOCLOCK;
9466 unsigned long cookie;
9467 struct rq_flags rf;
9468 struct rq *rq;
9469
9470 rq = task_rq_lock(tsk, &rf);
9471 update_rq_clock(rq);
9472
9473 running = task_current(rq, tsk);
9474 queued = task_on_rq_queued(tsk);
9475
9476 if (queued)
9477 dequeue_task(rq, tsk, queue_flags);
9478 if (running)
9479 put_prev_task(rq, tsk);
9480
9481 sched_change_group(tsk, TASK_MOVE_GROUP);
9482
9483 if (queued)
9484 enqueue_task(rq, tsk, queue_flags);
9485 if (running) {
9486 set_next_task(rq, tsk);
9487 /*
9488 * After changing group, the running task may have joined a
9489 * throttled one but it's still the running task. Trigger a
9490 * resched to make sure that task can still run.
9491 */
9492 resched_curr(rq);
9493 }
9494
9495 task_rq_unlock(rq, tsk, &rf);
9496
9497 cookie = sched_core_cgroup_cookie(tsk->sched_task_group);
> 9498 cookie = sched_core_update_cookie(tsk, cookie | GROUP_COOKIE);
9499 sched_core_put_cookie(cookie);
9500 }
9501
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
Re: [RFC] scripts: kernel-doc: improve parsing for kernel-doc comments syntax
by kernel test robot
Hi Aditya,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on lwn/docs-next]
[also build test WARNING on next-20210414]
[cannot apply to linus/master v5.12-rc7]
[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/Aditya-Srivastava/scripts-kernel...
base: git://git.lwn.net/linux-2.6 docs-next
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/1ce0c4f2c165f733b954591dbf5b31c83...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Aditya-Srivastava/scripts-kernel-doc-improve-parsing-for-kernel-doc-comments-syntax/20210415-032651
git checkout 1ce0c4f2c165f733b954591dbf5b31c834eb0da7
# save the attached .config to linux build tree
make W=1 W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
arch/x86/kernel/cpu/sgx/main.c:659: warning: Function parameter or member 'low' not described in 'sgx_calc_section_metric'
arch/x86/kernel/cpu/sgx/main.c:659: warning: Function parameter or member 'high' not described in 'sgx_calc_section_metric'
>> arch/x86/kernel/cpu/sgx/main.c:659: warning: expecting prototype for A section metric is concatenated in a way that @low bits 12(). Prototype was for sgx_calc_section_metric() instead
vim +659 arch/x86/kernel/cpu/sgx/main.c
e7e0545299d8cb Sean Christopherson 2020-11-13 652
e7e0545299d8cb Sean Christopherson 2020-11-13 653 /**
e7e0545299d8cb Sean Christopherson 2020-11-13 654 * A section metric is concatenated in a way that @low bits 12-31 define the
e7e0545299d8cb Sean Christopherson 2020-11-13 655 * bits 12-31 of the metric and @high bits 0-19 define the bits 32-51 of the
e7e0545299d8cb Sean Christopherson 2020-11-13 656 * metric.
e7e0545299d8cb Sean Christopherson 2020-11-13 657 */
e7e0545299d8cb Sean Christopherson 2020-11-13 658 static inline u64 __init sgx_calc_section_metric(u64 low, u64 high)
e7e0545299d8cb Sean Christopherson 2020-11-13 @659 {
e7e0545299d8cb Sean Christopherson 2020-11-13 660 return (low & GENMASK_ULL(31, 12)) +
e7e0545299d8cb Sean Christopherson 2020-11-13 661 ((high & GENMASK_ULL(19, 0)) << 32);
e7e0545299d8cb Sean Christopherson 2020-11-13 662 }
e7e0545299d8cb Sean Christopherson 2020-11-13 663
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
[peterz-queue:perf/hybrid 17/26] arch/x86/events/core.c:2121:17: error: implicit declaration of function 'get_this_hybrid_cpu_type'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git perf/hybrid
head: d8d36d49b08781039deaf70e63f661cf55d28d2a
commit: a90ca7c4fc7dbada15912371642b1bb9e24b2b25 [17/26] perf/x86: Register hybrid PMUs
config: i386-randconfig-r034-20210414 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?...
git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue perf/hybrid
git checkout a90ca7c4fc7dbada15912371642b1bb9e24b2b25
# save the attached .config to linux build tree
make W=1 W=1 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/events/core.c: In function 'init_hw_perf_events':
>> arch/x86/events/core.c:2121:17: error: implicit declaration of function 'get_this_hybrid_cpu_type' [-Werror=implicit-function-declaration]
2121 | u8 cpu_type = get_this_hybrid_cpu_type();
| ^~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/get_this_hybrid_cpu_type +2121 arch/x86/events/core.c
2021
2022 static int __init init_hw_perf_events(void)
2023 {
2024 struct x86_pmu_quirk *quirk;
2025 int err;
2026
2027 pr_info("Performance Events: ");
2028
2029 switch (boot_cpu_data.x86_vendor) {
2030 case X86_VENDOR_INTEL:
2031 err = intel_pmu_init();
2032 break;
2033 case X86_VENDOR_AMD:
2034 err = amd_pmu_init();
2035 break;
2036 case X86_VENDOR_HYGON:
2037 err = amd_pmu_init();
2038 x86_pmu.name = "HYGON";
2039 break;
2040 case X86_VENDOR_ZHAOXIN:
2041 case X86_VENDOR_CENTAUR:
2042 err = zhaoxin_pmu_init();
2043 break;
2044 default:
2045 err = -ENOTSUPP;
2046 }
2047 if (err != 0) {
2048 pr_cont("no PMU driver, software events only.\n");
2049 return 0;
2050 }
2051
2052 pmu_check_apic();
2053
2054 /* sanity check that the hardware exists or is emulated */
2055 if (!check_hw_exists(&pmu, x86_pmu.num_counters, x86_pmu.num_counters_fixed))
2056 return 0;
2057
2058 pr_cont("%s PMU driver.\n", x86_pmu.name);
2059
2060 x86_pmu.attr_rdpmc = 1; /* enable userspace RDPMC usage by default */
2061
2062 for (quirk = x86_pmu.quirks; quirk; quirk = quirk->next)
2063 quirk->func();
2064
2065 if (!x86_pmu.intel_ctrl)
2066 x86_pmu.intel_ctrl = (1 << x86_pmu.num_counters) - 1;
2067
2068 perf_events_lapic_init();
2069 register_nmi_handler(NMI_LOCAL, perf_event_nmi_handler, 0, "PMI");
2070
2071 unconstrained = (struct event_constraint)
2072 __EVENT_CONSTRAINT(0, (1ULL << x86_pmu.num_counters) - 1,
2073 0, x86_pmu.num_counters, 0, 0);
2074
2075 x86_pmu_format_group.attrs = x86_pmu.format_attrs;
2076
2077 if (!x86_pmu.events_sysfs_show)
2078 x86_pmu_events_group.attrs = &empty_attrs;
2079
2080 pmu.attr_update = x86_pmu.attr_update;
2081
2082 if (!is_hybrid()) {
2083 x86_pmu_show_pmu_cap(x86_pmu.num_counters,
2084 x86_pmu.num_counters_fixed,
2085 x86_pmu.intel_ctrl);
2086 }
2087
2088 if (!x86_pmu.read)
2089 x86_pmu.read = _x86_pmu_read;
2090
2091 if (!x86_pmu.guest_get_msrs)
2092 x86_pmu.guest_get_msrs = (void *)&__static_call_return0;
2093
2094 x86_pmu_static_call_update();
2095
2096 /*
2097 * Install callbacks. Core will call them for each online
2098 * cpu.
2099 */
2100 err = cpuhp_setup_state(CPUHP_PERF_X86_PREPARE, "perf/x86:prepare",
2101 x86_pmu_prepare_cpu, x86_pmu_dead_cpu);
2102 if (err)
2103 return err;
2104
2105 err = cpuhp_setup_state(CPUHP_AP_PERF_X86_STARTING,
2106 "perf/x86:starting", x86_pmu_starting_cpu,
2107 x86_pmu_dying_cpu);
2108 if (err)
2109 goto out;
2110
2111 err = cpuhp_setup_state(CPUHP_AP_PERF_X86_ONLINE, "perf/x86:online",
2112 x86_pmu_online_cpu, NULL);
2113 if (err)
2114 goto out1;
2115
2116 if (!is_hybrid()) {
2117 err = perf_pmu_register(&pmu, "cpu", PERF_TYPE_RAW);
2118 if (err)
2119 goto out2;
2120 } else {
> 2121 u8 cpu_type = get_this_hybrid_cpu_type();
2122 struct x86_hybrid_pmu *hybrid_pmu;
2123 int i, j;
2124
2125 if (!cpu_type && x86_pmu.get_hybrid_cpu_type)
2126 cpu_type = x86_pmu.get_hybrid_cpu_type();
2127
2128 for (i = 0; i < x86_pmu.num_hybrid_pmus; i++) {
2129 hybrid_pmu = &x86_pmu.hybrid_pmu[i];
2130
2131 hybrid_pmu->pmu = pmu;
2132 hybrid_pmu->pmu.type = -1;
2133 hybrid_pmu->pmu.attr_update = x86_pmu.attr_update;
2134 hybrid_pmu->pmu.capabilities |= PERF_PMU_CAP_HETEROGENEOUS_CPUS;
2135
2136 err = perf_pmu_register(&hybrid_pmu->pmu, hybrid_pmu->name,
2137 (hybrid_pmu->cpu_type == hybrid_big) ? PERF_TYPE_RAW : -1);
2138 if (err)
2139 break;
2140
2141 if (cpu_type == hybrid_pmu->cpu_type)
2142 x86_pmu_update_cpu_context(&hybrid_pmu->pmu, raw_smp_processor_id());
2143 }
2144
2145 if (i < x86_pmu.num_hybrid_pmus) {
2146 for (j = 0; j < i; j++)
2147 perf_pmu_unregister(&x86_pmu.hybrid_pmu[j].pmu);
2148 pr_warn("Failed to register hybrid PMUs\n");
2149 kfree(x86_pmu.hybrid_pmu);
2150 x86_pmu.hybrid_pmu = NULL;
2151 x86_pmu.num_hybrid_pmus = 0;
2152 goto out2;
2153 }
2154 }
2155
2156 return 0;
2157
2158 out2:
2159 cpuhp_remove_state(CPUHP_AP_PERF_X86_ONLINE);
2160 out1:
2161 cpuhp_remove_state(CPUHP_AP_PERF_X86_STARTING);
2162 out:
2163 cpuhp_remove_state(CPUHP_PERF_X86_PREPARE);
2164 return err;
2165 }
2166 early_initcall(init_hw_perf_events);
2167
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
ld.lld: error: failed to open drivers/gpu/drm/i915/i915.o: Cannot allocate memory
by kernel test robot
CC: linux-kernel(a)vger.kernel.org
TO: Daniele Ceraolo Spurio <daniele.ceraolospurio(a)intel.com>
CC: Chris Wilson <chris(a)chris-wilson.co.uk>
Hi Daniele,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 8e2e0104ef78d49a51db9acfd24eaf6d52dc779e
commit: 007c457876507637b4af39458a8a745fea7f2907 drm/i915/guc: stop calling execlists_set_default_submission
date: 3 months ago
config: x86_64-randconfig-a004-20210414 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 9829f5e6b1bca9b61efc629770d28bb9014dec45)
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
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 007c457876507637b4af39458a8a745fea7f2907
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 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 >>):
terminate called after throwing an instance of 'std::system_error'
what(): Resource temporarily unavailable
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
>> ld.lld: error: failed to open drivers/gpu/drm/i915/i915.o: Cannot allocate memory
#0 0x0000559695f892ec llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/cross/clang-9829f5e6b1/bin/lld+0x9982ec)
#1 0x0000559695f87124 llvm::sys::RunSignalHandlers() (/opt/cross/clang-9829f5e6b1/bin/lld+0x996124)
#2 0x0000559695f87283 SignalHandler(int) Signals.cpp:0:0
#3 0x00007f179e9e9140 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14140)
#4 0x00007f179e50dce1 raise (/lib/x86_64-linux-gnu/libc.so.6+0x3bce1)
#5 0x00007f179e4f7537 abort (/lib/x86_64-linux-gnu/libc.so.6+0x25537)
#6 0x00007f179e8917ec (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x9a7ec)
#7 0x00007f179e89c966 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xa5966)
#8 0x00007f179e89c9d1 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xa59d1)
#9 0x00007f179e89cc65 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xa5c65)
#10 0x00007f179e894458 std::__throw_system_error(int) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x9d458)
#11 0x00007f179e8c6159 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xcf159)
#12 0x0000559698e49921 std::thread::_State_impl<std::thread::_Invoker<std::tuple<llvm::parallel::detail::(anonymous namespace)::ThreadPoolExecutor::ThreadPoolExecutor(llvm::ThreadPoolStrategy)::'lambda'()> > >::_M_run() Parallel.cpp:0:0
#13 0x00007f179e8c5ed0 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xceed0)
#14 0x00007f179e9ddea7 start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x8ea7)
#15 0x00007f179e5cfdef __clone (/lib/x86_64-linux-gnu/libc.so.6+0xfddef)
/bin/bash: line 1: 75036 Aborted ld.lld -m elf_x86_64 -r -o drivers/gpu/drm/i915/i915.o drivers/gpu/drm/i915/i915_drv.o drivers/gpu/drm/i915/i915_config.o drivers/gpu/drm/i915/i915_irq.o drivers/gpu/drm/i915/i915_getparam.o drivers/gpu/drm/i915/i915_mitigations.o drivers/gpu/drm/i915/i915_params.o drivers/gpu/drm/i915/i915_pci.o drivers/gpu/drm/i915/i915_scatterlist.o drivers/gpu/drm/i915/i915_suspend.o drivers/gpu/drm/i915/i915_switcheroo.o drivers/gpu/drm/i915/i915_sysfs.o drivers/gpu/drm/i915/i915_utils.o drivers/gpu/drm/i915/intel_device_info.o drivers/gpu/drm/i915/intel_dram.o drivers/gpu/drm/i915/intel_memory_region.o drivers/gpu/drm/i915/intel_pch.o drivers/gpu/drm/i915/intel_pm.o drivers/gpu/drm/i915/intel_runtime_pm.o drivers/gpu/drm/i915/intel_sideband.o drivers/gpu/drm/i915/intel_uncore.o drivers/gpu/drm/i915/intel_wakeref.o drivers/gpu/drm/i915/vlv_suspend.o drivers/gpu/drm/i915/dma_resv_utils.o drivers/gpu/drm/i915/i915_memcpy.o drivers/gpu/drm/i915/i915_mm.o drivers/gpu/drm/i915/i915_sw_fence.o drivers/gpu/drm/i915/i915_sw_fence_work.o drivers/gpu/drm/i915/i915_syncmap.o drivers/gpu/drm/i915/i915_user_extensions.o drivers/gpu/drm/i915/i915_debugfs.o drivers/gpu/drm/i915/i915_debugfs_params.o drivers/gpu/drm/i915/display/intel_display_debugfs.o drivers/gpu/drm/i915/display/intel_pipe_crc.o drivers/gpu/drm/i915/i915_pmu.o drivers/gpu/drm/i915/gt/debugfs_engines.o drivers/gpu/drm/i915/gt/debugfs_gt.o drivers/gpu/drm/i915/gt/debugfs_gt_pm.o drivers/gpu/drm/i915/gt/gen2_engine_cs.o drivers/gpu/drm/i915/gt/gen6_engine_cs.o drivers/gpu/drm/i915/gt/gen6_ppgtt.o drivers/gpu/drm/i915/gt/gen7_renderclear.o drivers/gpu/drm/i915/gt/gen8_engine_cs.o drivers/gpu/drm/i915/gt/gen8_ppgtt.o drivers/gpu/drm/i915/gt/intel_breadcrumbs.o drivers/gpu/drm/i915/gt/intel_context.o drivers/gpu/drm/i915/gt/intel_context_param.o drivers/gpu/drm/i915/gt/intel_context_sseu.o drivers/gpu/drm/i915/gt/intel_engine_cs.o drivers/gpu/drm/i915/gt/intel_engine_heartbeat.o drivers/gpu/drm/i915/gt/intel_engine_pm.o drivers/gpu/drm/i915/gt/intel_engine_user.o drivers/gpu/drm/i915/gt/intel_execlists_submission.o drivers/gpu/drm/i915/gt/intel_ggtt.o drivers/gpu/drm/i915/gt/intel_ggtt_fencing.o drivers/gpu/drm/i915/gt/intel_gt.o drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.o drivers/gpu/drm/i915/gt/intel_gt_clock_utils.o drivers/gpu/drm/i915/gt/intel_gt_irq.o drivers/gpu/drm/i915/gt/intel_gt_pm.o drivers/gpu/drm/i915/gt/intel_gt_pm_irq.o drivers/gpu/drm/i915/gt/intel_gt_requests.o drivers/gpu/drm/i915/gt/intel_gtt.o drivers/gpu/drm/i915/gt/intel_llc.o drivers/gpu/drm/i915/gt/intel_lrc.o drivers/gpu/drm/i915/gt/intel_mocs.o drivers/gpu/drm/i915/gt/intel_ppgtt.o drivers/gpu/drm/i915/gt/intel_rc6.o drivers/gpu/drm/i915/gt/intel_region_lmem.o drivers/gpu/drm/i915/gt/intel_renderstate.o drivers/gpu/drm/i915/gt/intel_reset.o drivers/gpu/drm/i915/gt/intel_ring.o drivers/gpu/drm/i915/gt/intel_ring_submission.o drivers/gpu/drm/i915/gt/intel_rps.o drivers/gpu/drm/i915/gt/intel_sseu.o drivers/gpu/drm/i915/gt/intel_sseu_debugfs.o drivers/gpu/drm/i915/gt/intel_timeline.o drivers/gpu/drm/i915/gt/intel_workarounds.o drivers/gpu/drm/i915/gt/shmem_utils.o drivers/gpu/drm/i915/gt/sysfs_engines.o drivers/gpu/drm/i915/gt/gen6_renderstate.o drivers/gpu/drm/i915/gt/gen7_renderstate.o drivers/gpu/drm/i915/gt/gen8_renderstate.o drivers/gpu/drm/i915/gt/gen9_renderstate.o drivers/gpu/drm/i915/gem/i915_gem_busy.o drivers/gpu/drm/i915/gem/i915_gem_clflush.o drivers/gpu/drm/i915/gem/i915_gem_client_blt.o drivers/gpu/drm/i915/gem/i915_gem_context.o drivers/gpu/drm/i915/gem/i915_gem_dmabuf.o drivers/gpu/drm/i915/gem/i915_gem_domain.o drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o drivers/gpu/drm/i915/gem/i915_gem_fence.o drivers/gpu/drm/i915/gem/i915_gem_internal.o drivers/gpu/drm/i915/gem/i915_gem_object.o drivers/gpu/drm/i915/gem/i915_gem_object_blt.o drivers/gpu/drm/i915/gem/i915_gem_lmem.o drivers/gpu/drm/i915/gem/i915_gem_mman.o drivers/gpu/drm/i915/gem/i915_gem_pages.o drivers/gpu/drm/i915/gem/i915_gem_phys.o drivers/gpu/drm/i915/gem/i915_gem_pm.o drivers/gpu/drm/i915/gem/i915_gem_region.o drivers/gpu/drm/i915/gem/i915_gem_shmem.o drivers/gpu/drm/i915/gem/i915_gem_shrinker.o drivers/gpu/drm/i915/gem/i915_gem_stolen.o drivers/gpu/drm/i915/gem/i915_gem_throttle.o drivers/gpu/drm/i915/gem/i915_gem_tiling.o drivers/gpu/drm/i915/gem/i915_gem_userptr.o drivers/gpu/drm/i915/gem/i915_gem_wait.o drivers/gpu/drm/i915/gem/i915_gemfs.o drivers/gpu/drm/i915/i915_active.o drivers/gpu/drm/i915/i915_buddy.o drivers/gpu/drm/i915/i915_cmd_parser.o drivers/gpu/drm/i915/i915_gem_evict.o drivers/gpu/drm/i915/i915_gem_gtt.o drivers/gpu/drm/i915/i915_gem.o drivers/gpu/drm/i915/i915_globals.o drivers/gpu/drm/i915/i915_query.o drivers/gpu/drm/i915/i915_request.o drivers/gpu/drm/i915/i915_scheduler.o drivers/gpu/drm/i915/i915_trace_points.o drivers/gpu/drm/i915/i915_vma.o drivers/gpu/drm/i915/intel_wopcm.o drivers/gpu/drm/i915/gt/uc/intel_uc.o drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.o drivers/gpu/drm/i915/gt/uc/intel_uc_fw.o drivers/gpu/drm/i915/gt/uc/intel_guc.o drivers/gpu/drm/i915/gt/uc/intel_guc_ads.o drivers/gpu/drm/i915/gt/uc/intel_guc_ct.o drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.o drivers/gpu/drm/i915/gt/uc/intel_guc_fw.o drivers/gpu/drm/i915/gt/uc/intel_guc_log.o drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.o drivers/gpu/drm/i915/gt/uc/intel_guc_submission.o drivers/gpu/drm/i915/gt/uc/intel_huc.o drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.o drivers/gpu/drm/i915/gt/uc/intel_huc_fw.o drivers/gpu/drm/i915/display/intel_atomic.o drivers/gpu/drm/i915/display/intel_atomic_plane.o drivers/gpu/drm/i915/display/intel_audio.o drivers/gpu/drm/i915/display/intel_bios.o drivers/gpu/drm/i915/display/intel_bw.o drivers/gpu/drm/i915/display/intel_cdclk.o drivers/gpu/drm/i915/display/intel_color.o drivers/gpu/drm/i915/display/intel_combo_phy.o drivers/gpu/drm/i915/display/intel_connector.o drivers/gpu/drm/i915/display/intel_csr.o drivers/gpu/drm/i915/display/intel_display.o drivers/gpu/drm/i915/display/intel_display_power.o drivers/gpu/drm/i915/display/intel_dpio_phy.o drivers/gpu/drm/i915/display/intel_dpll_mgr.o drivers/gpu/drm/i915/display/intel_dsb.o drivers/gpu/drm/i915/display/intel_fbc.o drivers/gpu/drm/i915/display/intel_fifo_underrun.o drivers/gpu/drm/i915/display/intel_frontbuffer.o drivers/gpu/drm/i915/display/intel_global_state.o drivers/gpu/drm/i915/display/intel_hdcp.o drivers/gpu/drm/i915/display/intel_hotplug.o drivers/gpu/drm/i915/display/intel_lpe_audio.o drivers/gpu/drm/i915/display/intel_overlay.o drivers/gpu/drm/i915/display/intel_psr.o drivers/gpu/drm/i915/display/intel_quirks.o drivers/gpu/drm/i915/display/intel_sprite.o drivers/gpu/drm/i915/display/intel_tc.o drivers/gpu/drm/i915/display/intel_vga.o drivers/gpu/drm/i915/display/intel_acpi.o drivers/gpu/drm/i915/display/intel_opregion.o drivers/gpu/drm/i915/display/dvo_ch7017.o drivers/gpu/drm/i915/display/dvo_ch7xxx.o drivers/gpu/drm/i915/display/dvo_ivch.o drivers/gpu/drm/i915/display/dvo_ns2501.o drivers/gpu/drm/i915/display/dvo_sil164.o drivers/gpu/drm/i915/display/dvo_tfp410.o drivers/gpu/drm/i915/display/icl_dsi.o drivers/gpu/drm/i915/display/intel_crt.o drivers/gpu/drm/i915/display/intel_ddi.o drivers/gpu/drm/i915/display/intel_dp.o drivers/gpu/drm/i915/display/intel_dp_aux_backlight.o drivers/gpu/drm/i915/display/intel_dp_hdcp.o drivers/gpu/drm/i915/display/intel_dp_link_training.o drivers/gpu/drm/i915/display/intel_dp_mst.o drivers/gpu/drm/i915/display/intel_dsi.o drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.o drivers/gpu/drm/i915/display/intel_dsi_vbt.o drivers/gpu/drm/i915/display/intel_dvo.o drivers/gpu/drm/i915/display/intel_gmbus.o drivers/gpu/drm/i915/display/intel_hdmi.o drivers/gpu/drm/i915/display/intel_lspcon.o drivers/gpu/drm/i915/display/intel_lvds.o drivers/gpu/drm/i915/display/intel_panel.o drivers/gpu/drm/i915/display/intel_sdvo.o drivers/gpu/drm/i915/display/intel_tv.o drivers/gpu/drm/i915/display/intel_vdsc.o drivers/gpu/drm/i915/display/vlv_dsi.o drivers/gpu/drm/i915/display/vlv_dsi_pll.o drivers/gpu/drm/i915/i915_perf.o drivers/gpu/drm/i915/i915_gpu_error.o drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.o drivers/gpu/drm/i915/selftests/i915_random.o drivers/gpu/drm/i915/selftests/i915_selftest.o drivers/gpu/drm/i915/selftests/igt_atomic.o drivers/gpu/drm/i915/selftests/igt_flush_test.o drivers/gpu/drm/i915/selftests/igt_live_test.o drivers/gpu/drm/i915/selftests/igt_mmap.o drivers/gpu/drm/i915/selftests/igt_reset.o drivers/gpu/drm/i915/selftests/igt_spinner.o drivers/gpu/drm/i915/selftests/librapl.o drivers/gpu/drm/i915/i915_vgpu.o
--
>> ld.lld: error: failed to open drivers/gpu/drm/i915/i915.o: Cannot allocate memory
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
[linux-next:master 5461/12695] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c:125:5: warning: no previous prototype for 'kgd_arcturus_hqd_sdma_load'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 1c8ce959b41a18b9657eaafd7a1215a8da67d3ab
commit: 5073506c7eff55b9599ba9d5b52bf45b86a5df4f [5461/12695] drm/amdkfd: add aldebaran kfd2kgd callbacks to kfd device (v2)
config: arm64-randconfig-r024-20210414 (attached as .config)
compiler: aarch64-linux-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
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout 5073506c7eff55b9599ba9d5b52bf45b86a5df4f
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c:125:5: warning: no previous prototype for 'kgd_arcturus_hqd_sdma_load' [-Wmissing-prototypes]
125 | int kgd_arcturus_hqd_sdma_load(struct kgd_dev *kgd, void *mqd,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c:195:5: warning: no previous prototype for 'kgd_arcturus_hqd_sdma_dump' [-Wmissing-prototypes]
195 | int kgd_arcturus_hqd_sdma_dump(struct kgd_dev *kgd,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c:227:6: warning: no previous prototype for 'kgd_arcturus_hqd_sdma_is_occupied' [-Wmissing-prototypes]
227 | bool kgd_arcturus_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c:246:5: warning: no previous prototype for 'kgd_arcturus_hqd_sdma_destroy' [-Wmissing-prototypes]
246 | int kgd_arcturus_hqd_sdma_destroy(struct kgd_dev *kgd, void *mqd,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/kgd_arcturus_hqd_sdma_load +125 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c
124
> 125 int kgd_arcturus_hqd_sdma_load(struct kgd_dev *kgd, void *mqd,
126 uint32_t __user *wptr, struct mm_struct *mm)
127 {
128 struct amdgpu_device *adev = get_amdgpu_device(kgd);
129 struct v9_sdma_mqd *m;
130 uint32_t sdma_rlc_reg_offset;
131 unsigned long end_jiffies;
132 uint32_t data;
133 uint64_t data64;
134 uint64_t __user *wptr64 = (uint64_t __user *)wptr;
135
136 m = get_sdma_mqd(mqd);
137 sdma_rlc_reg_offset = get_sdma_rlc_reg_offset(adev, m->sdma_engine_id,
138 m->sdma_queue_id);
139
140 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL,
141 m->sdmax_rlcx_rb_cntl & (~SDMA0_RLC0_RB_CNTL__RB_ENABLE_MASK));
142
143 end_jiffies = msecs_to_jiffies(2000) + jiffies;
144 while (true) {
145 data = RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_CONTEXT_STATUS);
146 if (data & SDMA0_RLC0_CONTEXT_STATUS__IDLE_MASK)
147 break;
148 if (time_after(jiffies, end_jiffies)) {
149 pr_err("SDMA RLC not idle in %s\n", __func__);
150 return -ETIME;
151 }
152 usleep_range(500, 1000);
153 }
154
155 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_DOORBELL_OFFSET,
156 m->sdmax_rlcx_doorbell_offset);
157
158 data = REG_SET_FIELD(m->sdmax_rlcx_doorbell, SDMA0_RLC0_DOORBELL,
159 ENABLE, 1);
160 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_DOORBELL, data);
161 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_RPTR,
162 m->sdmax_rlcx_rb_rptr);
163 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_RPTR_HI,
164 m->sdmax_rlcx_rb_rptr_hi);
165
166 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_MINOR_PTR_UPDATE, 1);
167 if (read_user_wptr(mm, wptr64, data64)) {
168 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_WPTR,
169 lower_32_bits(data64));
170 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_WPTR_HI,
171 upper_32_bits(data64));
172 } else {
173 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_WPTR,
174 m->sdmax_rlcx_rb_rptr);
175 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_WPTR_HI,
176 m->sdmax_rlcx_rb_rptr_hi);
177 }
178 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_MINOR_PTR_UPDATE, 0);
179
180 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_BASE, m->sdmax_rlcx_rb_base);
181 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_BASE_HI,
182 m->sdmax_rlcx_rb_base_hi);
183 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_RPTR_ADDR_LO,
184 m->sdmax_rlcx_rb_rptr_addr_lo);
185 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_RPTR_ADDR_HI,
186 m->sdmax_rlcx_rb_rptr_addr_hi);
187
188 data = REG_SET_FIELD(m->sdmax_rlcx_rb_cntl, SDMA0_RLC0_RB_CNTL,
189 RB_ENABLE, 1);
190 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL, data);
191
192 return 0;
193 }
194
> 195 int kgd_arcturus_hqd_sdma_dump(struct kgd_dev *kgd,
196 uint32_t engine_id, uint32_t queue_id,
197 uint32_t (**dump)[2], uint32_t *n_regs)
198 {
199 struct amdgpu_device *adev = get_amdgpu_device(kgd);
200 uint32_t sdma_rlc_reg_offset = get_sdma_rlc_reg_offset(adev,
201 engine_id, queue_id);
202 uint32_t i = 0, reg;
203 #undef HQD_N_REGS
204 #define HQD_N_REGS (19+6+7+10)
205
206 *dump = kmalloc_array(HQD_N_REGS * 2, sizeof(uint32_t), GFP_KERNEL);
207 if (*dump == NULL)
208 return -ENOMEM;
209
210 for (reg = mmSDMA0_RLC0_RB_CNTL; reg <= mmSDMA0_RLC0_DOORBELL; reg++)
211 DUMP_REG(sdma_rlc_reg_offset + reg);
212 for (reg = mmSDMA0_RLC0_STATUS; reg <= mmSDMA0_RLC0_CSA_ADDR_HI; reg++)
213 DUMP_REG(sdma_rlc_reg_offset + reg);
214 for (reg = mmSDMA0_RLC0_IB_SUB_REMAIN;
215 reg <= mmSDMA0_RLC0_MINOR_PTR_UPDATE; reg++)
216 DUMP_REG(sdma_rlc_reg_offset + reg);
217 for (reg = mmSDMA0_RLC0_MIDCMD_DATA0;
218 reg <= mmSDMA0_RLC0_MIDCMD_CNTL; reg++)
219 DUMP_REG(sdma_rlc_reg_offset + reg);
220
221 WARN_ON_ONCE(i != HQD_N_REGS);
222 *n_regs = i;
223
224 return 0;
225 }
226
> 227 bool kgd_arcturus_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd)
228 {
229 struct amdgpu_device *adev = get_amdgpu_device(kgd);
230 struct v9_sdma_mqd *m;
231 uint32_t sdma_rlc_reg_offset;
232 uint32_t sdma_rlc_rb_cntl;
233
234 m = get_sdma_mqd(mqd);
235 sdma_rlc_reg_offset = get_sdma_rlc_reg_offset(adev, m->sdma_engine_id,
236 m->sdma_queue_id);
237
238 sdma_rlc_rb_cntl = RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL);
239
240 if (sdma_rlc_rb_cntl & SDMA0_RLC0_RB_CNTL__RB_ENABLE_MASK)
241 return true;
242
243 return false;
244 }
245
> 246 int kgd_arcturus_hqd_sdma_destroy(struct kgd_dev *kgd, void *mqd,
247 unsigned int utimeout)
248 {
249 struct amdgpu_device *adev = get_amdgpu_device(kgd);
250 struct v9_sdma_mqd *m;
251 uint32_t sdma_rlc_reg_offset;
252 uint32_t temp;
253 unsigned long end_jiffies = (utimeout * HZ / 1000) + jiffies;
254
255 m = get_sdma_mqd(mqd);
256 sdma_rlc_reg_offset = get_sdma_rlc_reg_offset(adev, m->sdma_engine_id,
257 m->sdma_queue_id);
258
259 temp = RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL);
260 temp = temp & ~SDMA0_RLC0_RB_CNTL__RB_ENABLE_MASK;
261 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL, temp);
262
263 while (true) {
264 temp = RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_CONTEXT_STATUS);
265 if (temp & SDMA0_RLC0_CONTEXT_STATUS__IDLE_MASK)
266 break;
267 if (time_after(jiffies, end_jiffies)) {
268 pr_err("SDMA RLC not idle in %s\n", __func__);
269 return -ETIME;
270 }
271 usleep_range(500, 1000);
272 }
273
274 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_DOORBELL, 0);
275 WREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL,
276 RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_CNTL) |
277 SDMA0_RLC0_RB_CNTL__RB_ENABLE_MASK);
278
279 m->sdmax_rlcx_rb_rptr = RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_RPTR);
280 m->sdmax_rlcx_rb_rptr_hi =
281 RREG32(sdma_rlc_reg_offset + mmSDMA0_RLC0_RB_RPTR_HI);
282
283 return 0;
284 }
285
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months
[ext4:dev 13/28] mballoc.c:undefined reference to `atomic64_inc_386'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
head: fcdf3c34b7abdcbb49690c94c7fa6ce224dc9749
commit: a6c75eaf11032f4a3d2b3ce2265a194ac6e4a7f0 [13/28] ext4: add mballoc stats proc file
config: um-randconfig-r022-20210412 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git/commit/?id...
git remote add ext4 https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git
git fetch --no-tags ext4 dev
git checkout a6c75eaf11032f4a3d2b3ce2265a194ac6e4a7f0
# save the attached .config to linux build tree
make W=1 ARCH=um
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 >>):
/usr/bin/ld: kernel/fork.o: in function `mm_init':
fork.c:(.text+0x1294): undefined reference to `atomic64_set_386'
/usr/bin/ld: kernel/sched/fair.o: in function `update_curr':
fair.c:(.text+0xb8a): undefined reference to `atomic64_add_386'
/usr/bin/ld: kernel/futex.o: in function `get_futex_key':
futex.c:(.text+0x2900): undefined reference to `atomic64_read_386'
/usr/bin/ld: futex.c:(.text+0x2a04): undefined reference to `atomic64_add_return_386'
/usr/bin/ld: futex.c:(.text+0x2a5d): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: mm/debug.o: in function `dump_mm':
debug.c:(.text+0x542): undefined reference to `atomic64_read_386'
/usr/bin/ld: mm/z3fold.o: in function `z3fold_zpool_total_size':
z3fold.c:(.text+0x3c): undefined reference to `atomic64_read_386'
/usr/bin/ld: mm/z3fold.o: in function `z3fold_zpool_create':
z3fold.c:(.text+0x36b): undefined reference to `atomic64_set_386'
/usr/bin/ld: mm/z3fold.o: in function `z3fold_page_putback':
z3fold.c:(.text+0xd15): undefined reference to `atomic64_dec_386'
/usr/bin/ld: mm/z3fold.o: in function `z3fold_reclaim_page.constprop.0':
z3fold.c:(.text+0x108b): undefined reference to `atomic64_dec_386'
/usr/bin/ld: z3fold.c:(.text+0x1150): undefined reference to `atomic64_dec_386'
/usr/bin/ld: z3fold.c:(.text+0x157c): undefined reference to `atomic64_dec_386'
/usr/bin/ld: mm/z3fold.o: in function `z3fold_alloc':
z3fold.c:(.text+0x1dd2): undefined reference to `atomic64_inc_386'
/usr/bin/ld: z3fold.c:(.text+0x2270): undefined reference to `atomic64_dec_386'
/usr/bin/ld: mm/z3fold.o: in function `do_compact_page':
z3fold.c:(.text+0x250f): undefined reference to `atomic64_dec_386'
/usr/bin/ld: z3fold.c:(.text+0x2f7a): undefined reference to `atomic64_dec_386'
/usr/bin/ld: mm/z3fold.o: in function `z3fold_free':
z3fold.c:(.text+0x3416): undefined reference to `atomic64_dec_386'
/usr/bin/ld: z3fold.c:(.text+0x3574): undefined reference to `atomic64_dec_386'
/usr/bin/ld: fs/inode.o: in function `inode_init_always':
inode.c:(.text+0x5ae): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/inode.o: in function `generic_update_time':
inode.c:(.text+0x34d2): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x3513): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/inode.o: in function `file_update_time':
inode.c:(.text+0x43e1): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/namespace.o: in function `alloc_mnt_ns':
namespace.c:(.text+0x1700): undefined reference to `atomic64_add_return_386'
/usr/bin/ld: fs/io_uring.o: in function `io_sqe_buffers_unregister.part.0':
io_uring.c:(.text+0x2bfb): undefined reference to `atomic64_sub_386'
/usr/bin/ld: fs/io_uring.o: in function `io_sqe_buffers_register':
io_uring.c:(.text+0x6e4c): undefined reference to `atomic64_add_386'
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_mb_generate_buddy':
mballoc.c:(.text+0x2839): undefined reference to `atomic64_add_386'
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_mb_mark_diskspace_used':
mballoc.c:(.text+0x8b81): undefined reference to `atomic64_sub_386'
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_mb_regular_allocator':
>> mballoc.c:(.text+0x99c4): undefined reference to `atomic64_inc_386'
>> /usr/bin/ld: mballoc.c:(.text+0x9d12): undefined reference to `atomic64_inc_386'
/usr/bin/ld: mballoc.c:(.text+0xa371): undefined reference to `atomic64_inc_386'
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_seq_mb_stats_show':
mballoc.c:(.text+0xa58b): undefined reference to `atomic64_read_386'
>> /usr/bin/ld: mballoc.c:(.text+0xa5af): undefined reference to `atomic64_read_386'
/usr/bin/ld: mballoc.c:(.text+0xa5d3): undefined reference to `atomic64_read_386'
/usr/bin/ld: mballoc.c:(.text+0xa608): undefined reference to `atomic64_read_386'
/usr/bin/ld: mballoc.c:(.text+0xa62c): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/ext4/mballoc.o:mballoc.c:(.text+0xa650): more undefined references to `atomic64_read_386' follow
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_mb_mark_bb':
mballoc.c:(.text+0xc558): undefined reference to `atomic64_sub_386'
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_free_blocks':
mballoc.c:(.text+0xead0): undefined reference to `atomic64_add_386'
/usr/bin/ld: fs/ext4/mballoc.o: in function `ext4_group_add_blocks':
mballoc.c:(.text+0xfb01): undefined reference to `atomic64_add_386'
/usr/bin/ld: fs/ext4/super.o: in function `ext4_statfs':
super.c:(.text+0x6511): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/ext4/super.o: in function `ext4_alloc_inode':
super.c:(.text+0x6bfc): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/ext4/super.o: in function `ext4_fill_super':
super.c:(.text+0x16808): undefined reference to `atomic64_set_386'
/usr/bin/ld: super.c:(.text+0x16ed8): undefined reference to `atomic64_add_386'
/usr/bin/ld: fs/ext4/sysfs.o: in function `ext4_attr_store':
sysfs.c:(.text+0x127): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/ext4/sysfs.o: in function `ext4_attr_show':
sysfs.c:(.text+0x4d0): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/fat/inode.o: in function `fat_fill_inode':
inode.c:(.text+0x1d0d): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x1d44): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/fat/inode.o: in function `fat_build_inode':
inode.c:(.text+0x221d): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/fat/inode.o: in function `fat_fill_super':
inode.c:(.text+0x29ec): undefined reference to `atomic64_set_386'
/usr/bin/ld: inode.c:(.text+0x2a28): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x2a82): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/fat/namei_msdos.o: in function `do_msdos_rename':
namei_msdos.c:(.text+0xf0e): undefined reference to `atomic64_read_386'
/usr/bin/ld: namei_msdos.c:(.text+0xf68): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: namei_msdos.c:(.text+0x10d7): undefined reference to `atomic64_read_386'
/usr/bin/ld: namei_msdos.c:(.text+0x1121): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: namei_msdos.c:(.text+0x1496): undefined reference to `atomic64_read_386'
/usr/bin/ld: namei_msdos.c:(.text+0x14e0): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/ufs/super.o: in function `ufs_alloc_inode':
super.c:(.text+0x415): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/affs/super.o: in function `affs_alloc_inode':
super.c:(.text+0x4d5): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/nilfs2/super.o: in function `nilfs_attach_checkpoint':
super.c:(.text+0x15fd): undefined reference to `atomic64_set_386'
/usr/bin/ld: super.c:(.text+0x160e): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/nilfs2/super.o: in function `nilfs_statfs.cold':
super.c:(.text.unlikely+0x11d): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/nilfs2/sysfs.o: in function `nilfs_snapshot_blocks_count_show':
sysfs.c:(.text+0x35a): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/nilfs2/sysfs.o: in function `nilfs_snapshot_inodes_count_show':
sysfs.c:(.text+0x392): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/btrfs/super.o: in function `trace_event_raw_event_btrfs_dump_space_info':
super.c:(.text+0x9e76): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/btrfs/disk-io.o: in function `btrfs_init_fs_info':
disk-io.c:(.text+0x531e): undefined reference to `atomic64_set_386'
/usr/bin/ld: disk-io.c:(.text+0x534c): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/btrfs/inode.o: in function `fill_inode_item':
inode.c:(.text+0x806): undefined reference to `atomic64_read_386'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_read_locked_inode':
inode.c:(.text+0x1a44): undefined reference to `atomic64_set_386'
/usr/bin/ld: fs/btrfs/inode.o: in function `__btrfs_unlink_inode':
inode.c:(.text+0x8b82): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x8bb6): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x8c0b): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x8c3f): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_update_time':
inode.c:(.text+0x9188): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x91d1): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `__btrfs_prealloc_file_range':
inode.c:(.text+0x95c7): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x9608): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_unlink_subvol':
inode.c:(.text+0xdbf7): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0xdc2d): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_add_link':
inode.c:(.text+0x1327c): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x132b3): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_rename_exchange':
inode.c:(.text+0x13b1f): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x13b61): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x13bc6): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x13bff): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x13c58): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x13c94): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x13ced): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x13d2f): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_link':
inode.c:(.text+0x14f4e): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x14f82): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_rename':
inode.c:(.text+0x157a4): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x157fe): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x15869): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x158c3): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x1592e): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x15988): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: inode.c:(.text+0x16074): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x160ce): undefined reference to `cmpxchg8b_emu'
/usr/bin/ld: fs/btrfs/inode.o: in function `btrfs_setattr':
inode.c:(.text+0x19514): undefined reference to `atomic64_read_386'
/usr/bin/ld: inode.c:(.text+0x1954a): undefined reference to `cmpxchg8b_emu'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 5 months