Re: [PATCH] soc: imx: select ARM_GIC_V3 for i.MX8M
by kbuild test robot
Hi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on shawnguo/for-next]
[cannot apply to v5.7-rc3 next-20200429]
[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/peng-fan-nxp-com/soc-imx-select-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git for-next
config: mips-allyesconfig (attached as .config)
compiler: mips-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
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=mips
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 >>):
In file included from drivers/irqchip/irq-gic-v3.c:24:
>> include/linux/irqchip/arm-gic-v3.h:661:10: fatal error: asm/arch_gicv3.h: No such file or directory
661 | #include <asm/arch_gicv3.h>
| ^~~~~~~~~~~~~~~~~~
compilation terminated.
vim +661 include/linux/irqchip/arm-gic-v3.h
7e5802781c3e10 Andre Przywara 2014-11-12 660
7936e914f7b082 Jean-Philippe Brucker 2015-10-01 @661 #include <asm/arch_gicv3.h>
021f653791ad17 Marc Zyngier 2014-06-30 662
:::::: The code at line 661 was first introduced by commit
:::::: 7936e914f7b0827c2dcfe63fbefdc21de2d61dcb irqchip/gic-v3: Refactor the arm64 specific parts
:::::: TO: Jean-Philippe Brucker <jean-philippe.brucker(a)arm.com>
:::::: CC: Marc Zyngier <marc.zyngier(a)arm.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
Re: [PATCH v3 1/5] cfg80211: add KHz variants of frame RX API
by kbuild test robot
Hi Thomas,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mac80211-next/master]
[cannot apply to mac80211/master v5.7-rc3 next-20200429]
[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/Thomas-Pedersen/initial-S1G-defi...
base: https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master
config: arm-exynos_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
COMPILER_INSTALL_PATH=$HOME/0day 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: net/wireless/trace.o: in function `trace_raw_output_cfg80211_rx_mgmt_khz':
>> trace.c:(.text+0x4ef4): undefined reference to `__aeabi_i2f'
>> arm-linux-gnueabi-ld: trace.c:(.text+0x4f00): undefined reference to `__aeabi_fdiv'
>> arm-linux-gnueabi-ld: trace.c:(.text+0x4f04): undefined reference to `__aeabi_f2d'
arm-linux-gnueabi-ld: net/wireless/trace.o: in function `trace_raw_output_cfg80211_report_obss_beacon_khz':
trace.c:(.text+0x56b0): undefined reference to `__aeabi_i2f'
arm-linux-gnueabi-ld: trace.c:(.text+0x56bc): undefined reference to `__aeabi_fdiv'
arm-linux-gnueabi-ld: trace.c:(.text+0x56c0): undefined reference to `__aeabi_f2d'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
Re: [PATCH v3 1/5] cfg80211: add KHz variants of frame RX API
by kbuild test robot
Hi Thomas,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mac80211-next/master]
[cannot apply to mac80211/master v5.7-rc3 next-20200429]
[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/Thomas-Pedersen/initial-S1G-defi...
base: https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.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
COMPILER_INSTALL_PATH=$HOME/0day 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 >>):
In file included from include/trace/define_trace.h:102,
from net/wireless/trace.h:3537,
from net/wireless/trace.c:5:
net/wireless/./trace.h: In function 'trace_raw_output_cfg80211_rx_mgmt_khz':
>> include/trace/trace_events.h:359:9: error: unable to generate reloads for:
359 | struct trace_event_raw_##call *field; \
| ^~~~~~~~~~~~~~~~
include/trace/trace_events.h:75:2: note: in expansion of macro 'DECLARE_EVENT_CLASS'
75 | DECLARE_EVENT_CLASS(name, \
| ^~~~~~~~~~~~~~~~~~~
net/wireless/./trace.h:2830:1: note: in expansion of macro 'TRACE_EVENT'
2830 | TRACE_EVENT(cfg80211_rx_mgmt_khz,
| ^~~~~~~~~~~
(insn 27 26 22 4 (set (reg:SF 28 %r28 [113])
(float:SF (reg:SI 28 %r28 [orig:114 field_12->freq ] [114]))) "net/wireless/./trace.h":2830:1 96 {floatsisf2}
(expr_list:REG_DEAD (reg:SI 28 %r28 [orig:114 field_12->freq ] [114])
(nil)))
during RTL pass: reload
include/trace/trace_events.h:359:9: internal compiler error: in find_reloads, at reload.c:3814
359 | struct trace_event_raw_##call *field; \
| ^~~~~~~~~~~~~~~~
include/trace/trace_events.h:75:2: note: in expansion of macro 'DECLARE_EVENT_CLASS'
75 | DECLARE_EVENT_CLASS(name, \
| ^~~~~~~~~~~~~~~~~~~
net/wireless/./trace.h:2830:1: note: in expansion of macro 'TRACE_EVENT'
2830 | TRACE_EVENT(cfg80211_rx_mgmt_khz,
| ^~~~~~~~~~~
0x513fa0 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*)
/tmp/build-crosstools-xh-9.3.0-2.34/gcc/gcc-9.3.0/gcc/rtl-error.c:108
0x513967 find_reloads(rtx_insn*, int, int, int, short*)
/tmp/build-crosstools-xh-9.3.0-2.34/gcc/gcc-9.3.0/gcc/reload.c:3814
0x984bb6 calculate_needs_all_insns
/tmp/build-crosstools-xh-9.3.0-2.34/gcc/gcc-9.3.0/gcc/reload1.c:1474
0x984bb6 reload(rtx_insn*, int)
/tmp/build-crosstools-xh-9.3.0-2.34/gcc/gcc-9.3.0/gcc/reload1.c:986
0x847ef0 do_reload
/tmp/build-crosstools-xh-9.3.0-2.34/gcc/gcc-9.3.0/gcc/ira.c:5535
0x847ef0 execute
/tmp/build-crosstools-xh-9.3.0-2.34/gcc/gcc-9.3.0/gcc/ira.c:5707
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
vim +359 include/trace/trace_events.h
2fc1b6f0d0a719 include/trace/ftrace.h liubo 2011-04-19 328
5a2e3995951176 include/trace/ftrace.h Kei Tokunaga 2010-04-01 329 #undef __print_hex
2acae0d5b0f73a include/trace/trace_events.h Daniel Borkmann 2017-01-25 330 #define __print_hex(buf, buf_len) \
3898fac1f488c7 include/trace/trace_events.h Daniel Borkmann 2017-02-02 331 trace_print_hex_seq(p, buf, buf_len, false)
2acae0d5b0f73a include/trace/trace_events.h Daniel Borkmann 2017-01-25 332
2acae0d5b0f73a include/trace/trace_events.h Daniel Borkmann 2017-01-25 333 #undef __print_hex_str
2acae0d5b0f73a include/trace/trace_events.h Daniel Borkmann 2017-01-25 334 #define __print_hex_str(buf, buf_len) \
3898fac1f488c7 include/trace/trace_events.h Daniel Borkmann 2017-02-02 335 trace_print_hex_seq(p, buf, buf_len, true)
5a2e3995951176 include/trace/ftrace.h Kei Tokunaga 2010-04-01 336
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 337 #undef __print_array
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 338 #define __print_array(array, count, el_size) \
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 339 ({ \
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 340 BUILD_BUG_ON(el_size != 1 && el_size != 2 && \
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 341 el_size != 4 && el_size != 8); \
645df987f7c174 include/trace/trace_events.h Steven Rostedt (Red Hat 2015-05-04 342) trace_print_array_seq(p, array, count, el_size); \
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 343 })
6ea22486ba46bc include/trace/ftrace.h Dave Martin 2015-01-28 344
ef56e047b2bd4d include/trace/trace_events.h Piotr Maziarz 2019-11-07 345 #undef __print_hex_dump
ef56e047b2bd4d include/trace/trace_events.h Piotr Maziarz 2019-11-07 346 #define __print_hex_dump(prefix_str, prefix_type, \
ef56e047b2bd4d include/trace/trace_events.h Piotr Maziarz 2019-11-07 347 rowsize, groupsize, buf, len, ascii) \
ef56e047b2bd4d include/trace/trace_events.h Piotr Maziarz 2019-11-07 348 trace_print_hex_dump_seq(p, prefix_str, prefix_type, \
ef56e047b2bd4d include/trace/trace_events.h Piotr Maziarz 2019-11-07 349 rowsize, groupsize, buf, len, ascii)
ef56e047b2bd4d include/trace/trace_events.h Piotr Maziarz 2019-11-07 350
091ad3658e3c76 include/trace/ftrace.h Ingo Molnar 2009-11-26 351 #undef DECLARE_EVENT_CLASS
091ad3658e3c76 include/trace/ftrace.h Ingo Molnar 2009-11-26 352 #define DECLARE_EVENT_CLASS(call, proto, args, tstruct, assign, print) \
83f0d53993b296 include/trace/ftrace.h Steven Rostedt 2010-02-16 353 static notrace enum print_line_t \
892c505aac2bdd include/trace/trace_events.h Steven Rostedt (Red Hat 2015-05-05 354) trace_raw_output_##call(struct trace_iterator *iter, int flags, \
80decc70afc57c include/trace/ftrace.h Steven Rostedt 2010-04-23 355 struct trace_event *trace_event) \
f42c85e74faa42 include/trace/ftrace.h Steven Rostedt 2009-04-13 356 { \
f42c85e74faa42 include/trace/ftrace.h Steven Rostedt 2009-04-13 357 struct trace_seq *s = &iter->seq; \
f71130de5c7fba include/trace/ftrace.h Li Zefan 2013-02-21 358 struct trace_seq __maybe_unused *p = &iter->tmp_seq; \
a7237765730a10 include/trace/trace_events.h Steven Rostedt (Red Hat 2015-05-13 @359) struct trace_event_raw_##call *field; \
f42c85e74faa42 include/trace/ftrace.h Steven Rostedt 2009-04-13 360 int ret; \
f42c85e74faa42 include/trace/ftrace.h Steven Rostedt 2009-04-13 361 \
f71130de5c7fba include/trace/ftrace.h Li Zefan 2013-02-21 362 field = (typeof(field))iter->ent; \
80decc70afc57c include/trace/ftrace.h Steven Rostedt 2010-04-23 363 \
892c505aac2bdd include/trace/trace_events.h Steven Rostedt (Red Hat 2015-05-05 364) ret = trace_raw_output_prep(iter, trace_event); \
8e2e095cbecad2 include/trace/ftrace.h Steven Rostedt (Red Hat 2014-11-14 365) if (ret != TRACE_TYPE_HANDLED) \
f71130de5c7fba include/trace/ftrace.h Li Zefan 2013-02-21 366 return ret; \
f71130de5c7fba include/trace/ftrace.h Li Zefan 2013-02-21 367 \
19a7fe206232cc include/trace/ftrace.h Steven Rostedt (Red Hat 2014-11-12 368) trace_seq_printf(s, print); \
f42c85e74faa42 include/trace/ftrace.h Steven Rostedt 2009-04-13 369 \
19a7fe206232cc include/trace/ftrace.h Steven Rostedt (Red Hat 2014-11-12 370) return trace_handle_return(s); \
80decc70afc57c include/trace/ftrace.h Steven Rostedt 2010-04-23 371 } \
3ad017bac94ac8 include/trace/trace_events.h Steven Rostedt (Red Hat 2015-05-13 372) static struct trace_event_functions trace_event_type_funcs_##call = { \
892c505aac2bdd include/trace/trace_events.h Steven Rostedt (Red Hat 2015-05-05 373) .trace = trace_raw_output_##call, \
80decc70afc57c include/trace/ftrace.h Steven Rostedt 2010-04-23 374 };
ff038f5c37c207 include/trace/ftrace.h Steven Rostedt 2009-11-18 375
:::::: The code at line 359 was first introduced by commit
:::::: a7237765730a10d429736f47ac4b89779ec6c534 tracing: Rename ftrace_raw_##call event structures to trace_event_raw_##call
:::::: TO: Steven Rostedt (Red Hat) <rostedt(a)goodmis.org>
:::::: CC: Steven Rostedt <rostedt(a)goodmis.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
Re: [RFC][PATCH 4/7] rbtree, perf: Use new rbtree helpers
by kbuild test robot
Hi Peter,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on next-20200429]
[cannot apply to tip/sched/core tip/perf/core linus/master linux/master v5.7-rc3 v5.7-rc2 v5.7-rc1 v5.7-rc3]
[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/Peter-Zijlstra/Generic-RB-tree-h...
base: 861978d1331b7e988e0295a2275c669c767fa3f1
config: arm64-randconfig-a001-20200429 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f30416fdde922eaa655934e050026930fefbd260)
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang 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 >>):
>> kernel/events/core.c:1603:15: error: no member named 'cgroup' in 'struct perf_event'; did you mean 'cgrp'?
if (!right->cgroup) {
^~~~~~
cgrp
include/linux/perf_event.h:758:23: note: 'cgrp' declared here
struct perf_cgroup *cgrp; /* cgroup event is attach to */
^
>> kernel/events/core.c:1611:17: error: passing 'const struct cgroup *' to parameter of type 'struct cgroup *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
if (cgroup_id(left_cgroup) < cgroup_id(right_cgroup))
^~~~~~~~~~~
include/linux/cgroup.h:310:44: note: passing argument to parameter 'cgrp' here
static inline u64 cgroup_id(struct cgroup *cgrp)
^
2 errors generated.
vim +1603 kernel/events/core.c
1575
1576 /*
1577 * Compare function for event groups;
1578 *
1579 * Implements complex key that first sorts by CPU and then by virtual index
1580 * which provides ordering when rotating groups for the same CPU.
1581 */
1582 static __always_inline int
1583 perf_event_groups_cmp(const int left_cpu, const struct cgroup *left_cgroup,
1584 const u64 left_group_index, const struct perf_event *right)
1585 {
1586 if (left_cpu < right->cpu)
1587 return -1;
1588 if (left_cpu > right->cpu)
1589 return 1;
1590
1591 #ifdef CONFIG_CGROUP_PERF
1592 {
1593 struct cgroup *right_cgroup = right->cgrp ? right->cgrp->css.cgroup : NULL;
1594
1595 if (left_cgroup != right_cgroup) {
1596 if (!left_cgroup) {
1597 /*
1598 * Left has no cgroup but right does, no cgroups come
1599 * first.
1600 */
1601 return -1;
1602 }
> 1603 if (!right->cgroup) {
1604 /*
1605 * Right has no cgroup but left does, no cgroups come
1606 * first.
1607 */
1608 return 1;
1609 }
1610 /* Two dissimilar cgroups, order by id. */
> 1611 if (cgroup_id(left_cgroup) < cgroup_id(right_cgroup))
1612 return -1;
1613
1614 return 1;
1615 }
1616 }
1617 #endif
1618
1619 if (left_group_index < right->group_index)
1620 return -1;
1621 if (left_group_index > right->group_index)
1622 return 1;
1623
1624 return 0;
1625 }
1626
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
Re: [PATCH 10/10] efi/libstub: Check return value of efi_parse_options
by kbuild test robot
Hi Arvind,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on efi/next]
[also build test WARNING on next-20200429]
[cannot apply to v5.7-rc3]
[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/Arvind-Sankar/efi-some-cleanups-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git next
config: arm-defconfig (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 1ccde533425a4ba9d379510206ad680ff9702129)
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang 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 warnings (new ones prefixed by >>):
>> drivers/firmware/efi/libstub/efi-stub.c:220:7: warning: variable 'si' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (status != EFI_SUCCESS) {
^~~~~~~~~~~~~~~~~~~~~
drivers/firmware/efi/libstub/efi-stub.c:339:19: note: uninitialized use occurs here
free_screen_info(si);
^~
drivers/firmware/efi/libstub/efi-stub.c:220:3: note: remove the 'if' if its condition is always false
if (status != EFI_SUCCESS) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/firmware/efi/libstub/efi-stub.c:212:7: warning: variable 'si' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (status != EFI_SUCCESS) {
^~~~~~~~~~~~~~~~~~~~~
drivers/firmware/efi/libstub/efi-stub.c:339:19: note: uninitialized use occurs here
free_screen_info(si);
^~
drivers/firmware/efi/libstub/efi-stub.c:212:3: note: remove the 'if' if its condition is always false
if (status != EFI_SUCCESS) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/firmware/efi/libstub/efi-stub.c:161:24: note: initialize the variable 'si' to silence this warning
struct screen_info *si;
^
= NULL
2 warnings generated.
vim +220 drivers/firmware/efi/libstub/efi-stub.c
119
120 /*
121 * This function handles the architcture specific differences between arm and
122 * arm64 regarding where the kernel image must be loaded and any memory that
123 * must be reserved. On failure it is required to free all
124 * all allocations it has made.
125 */
126 efi_status_t handle_kernel_image(unsigned long *image_addr,
127 unsigned long *image_size,
128 unsigned long *reserve_addr,
129 unsigned long *reserve_size,
130 unsigned long dram_base,
131 efi_loaded_image_t *image);
132
133 asmlinkage void __noreturn efi_enter_kernel(unsigned long entrypoint,
134 unsigned long fdt_addr,
135 unsigned long fdt_size);
136
137 /*
138 * EFI entry point for the arm/arm64 EFI stubs. This is the entrypoint
139 * that is described in the PE/COFF header. Most of the code is the same
140 * for both archictectures, with the arch-specific code provided in the
141 * handle_kernel_image() function.
142 */
143 efi_status_t efi_entry(efi_handle_t handle, efi_system_table_t *sys_table_arg)
144 {
145 efi_loaded_image_t *image;
146 efi_status_t status;
147 unsigned long image_addr;
148 unsigned long image_size = 0;
149 unsigned long dram_base;
150 /* addr/point and size pairs for memory management*/
151 unsigned long initrd_addr = 0;
152 unsigned long initrd_size = 0;
153 unsigned long fdt_addr = 0; /* Original DTB */
154 unsigned long fdt_size = 0;
155 char *cmdline_ptr = NULL;
156 int cmdline_size = 0;
157 efi_guid_t loaded_image_proto = LOADED_IMAGE_PROTOCOL_GUID;
158 unsigned long reserve_addr = 0;
159 unsigned long reserve_size = 0;
160 enum efi_secureboot_mode secure_boot;
161 struct screen_info *si;
162 efi_properties_table_t *prop_tbl;
163 unsigned long max_addr;
164
165 efi_system_table = sys_table_arg;
166
167 /* Check if we were booted by the EFI firmware */
168 if (efi_system_table->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE) {
169 status = EFI_INVALID_PARAMETER;
170 goto fail;
171 }
172
173 status = check_platform_features();
174 if (status != EFI_SUCCESS)
175 goto fail;
176
177 /*
178 * Get a handle to the loaded image protocol. This is used to get
179 * information about the running image, such as size and the command
180 * line.
181 */
182 status = efi_system_table->boottime->handle_protocol(handle,
183 &loaded_image_proto, (void *)&image);
184 if (status != EFI_SUCCESS) {
185 pr_efi_err("Failed to get loaded image protocol\n");
186 goto fail;
187 }
188
189 dram_base = get_dram_base();
190 if (dram_base == EFI_ERROR) {
191 pr_efi_err("Failed to find DRAM base\n");
192 status = EFI_LOAD_ERROR;
193 goto fail;
194 }
195
196 /*
197 * Get the command line from EFI, using the LOADED_IMAGE
198 * protocol. We are going to copy the command line into the
199 * device tree, so this can be allocated anywhere.
200 */
201 cmdline_ptr = efi_convert_cmdline(image, &cmdline_size, ULONG_MAX);
202 if (!cmdline_ptr) {
203 pr_efi_err("getting command line via LOADED_IMAGE_PROTOCOL\n");
204 status = EFI_OUT_OF_RESOURCES;
205 goto fail;
206 }
207
208 if (IS_ENABLED(CONFIG_CMDLINE_EXTEND) ||
209 IS_ENABLED(CONFIG_CMDLINE_FORCE) ||
210 cmdline_size == 0) {
211 status = efi_parse_options(CONFIG_CMDLINE);
212 if (status != EFI_SUCCESS) {
213 pr_efi_err("Failed to parse options\n");
214 goto fail_free_cmdline;
215 }
216 }
217
218 if (!IS_ENABLED(CONFIG_CMDLINE_FORCE) && cmdline_size > 0) {
219 status = efi_parse_options(cmdline_ptr);
> 220 if (status != EFI_SUCCESS) {
221 pr_efi_err("Failed to parse options\n");
222 goto fail_free_cmdline;
223 }
224 }
225
226 pr_efi("Booting Linux Kernel...\n");
227
228 si = setup_graphics();
229
230 status = handle_kernel_image(&image_addr, &image_size,
231 &reserve_addr,
232 &reserve_size,
233 dram_base, image);
234 if (status != EFI_SUCCESS) {
235 pr_efi_err("Failed to relocate kernel\n");
236 goto fail_free_cmdline;
237 }
238
239 efi_retrieve_tpm2_eventlog();
240
241 /* Ask the firmware to clear memory on unclean shutdown */
242 efi_enable_reset_attack_mitigation();
243
244 secure_boot = efi_get_secureboot();
245
246 /*
247 * Unauthenticated device tree data is a security hazard, so ignore
248 * 'dtb=' unless UEFI Secure Boot is disabled. We assume that secure
249 * boot is enabled if we can't determine its state.
250 */
251 if (!IS_ENABLED(CONFIG_EFI_ARMSTUB_DTB_LOADER) ||
252 secure_boot != efi_secureboot_mode_disabled) {
253 if (strstr(cmdline_ptr, "dtb="))
254 pr_efi("Ignoring DTB from command line.\n");
255 } else {
256 status = efi_load_dtb(image, &fdt_addr, &fdt_size);
257
258 if (status != EFI_SUCCESS) {
259 pr_efi_err("Failed to load device tree!\n");
260 goto fail_free_image;
261 }
262 }
263
264 if (fdt_addr) {
265 pr_efi("Using DTB from command line\n");
266 } else {
267 /* Look for a device tree configuration table entry. */
268 fdt_addr = (uintptr_t)get_fdt(&fdt_size);
269 if (fdt_addr)
270 pr_efi("Using DTB from configuration table\n");
271 }
272
273 if (!fdt_addr)
274 pr_efi("Generating empty DTB\n");
275
276 if (!efi_noinitrd) {
277 max_addr = efi_get_max_initrd_addr(dram_base, image_addr);
278 status = efi_load_initrd(image, &initrd_addr, &initrd_size, max_addr);
279 if (status != EFI_SUCCESS)
280 pr_efi_err("Failed to load initrd!\n");
281 }
282
283 efi_random_get_seed();
284
285 /*
286 * If the NX PE data feature is enabled in the properties table, we
287 * should take care not to create a virtual mapping that changes the
288 * relative placement of runtime services code and data regions, as
289 * they may belong to the same PE/COFF executable image in memory.
290 * The easiest way to achieve that is to simply use a 1:1 mapping.
291 */
292 prop_tbl = get_efi_config_table(EFI_PROPERTIES_TABLE_GUID);
293 flat_va_mapping = prop_tbl &&
294 (prop_tbl->memory_protection_attribute &
295 EFI_PROPERTIES_RUNTIME_MEMORY_PROTECTION_NON_EXECUTABLE_PE_DATA);
296
297 /* hibernation expects the runtime regions to stay in the same place */
298 if (!IS_ENABLED(CONFIG_HIBERNATION) && !efi_nokaslr && !flat_va_mapping) {
299 /*
300 * Randomize the base of the UEFI runtime services region.
301 * Preserve the 2 MB alignment of the region by taking a
302 * shift of 21 bit positions into account when scaling
303 * the headroom value using a 32-bit random value.
304 */
305 static const u64 headroom = EFI_RT_VIRTUAL_LIMIT -
306 EFI_RT_VIRTUAL_BASE -
307 EFI_RT_VIRTUAL_SIZE;
308 u32 rnd;
309
310 status = efi_get_random_bytes(sizeof(rnd), (u8 *)&rnd);
311 if (status == EFI_SUCCESS) {
312 virtmap_base = EFI_RT_VIRTUAL_BASE +
313 (((headroom >> 21) * rnd) >> (32 - 21));
314 }
315 }
316
317 install_memreserve_table();
318
319 status = allocate_new_fdt_and_exit_boot(handle, &fdt_addr,
320 efi_get_max_fdt_addr(dram_base),
321 initrd_addr, initrd_size,
322 cmdline_ptr, fdt_addr, fdt_size);
323 if (status != EFI_SUCCESS)
324 goto fail_free_initrd;
325
326 efi_enter_kernel(image_addr, fdt_addr, fdt_totalsize((void *)fdt_addr));
327 /* not reached */
328
329 fail_free_initrd:
330 pr_efi_err("Failed to update FDT and exit boot services\n");
331
332 efi_free(initrd_size, initrd_addr);
333 efi_free(fdt_size, fdt_addr);
334
335 fail_free_image:
336 efi_free(image_size, image_addr);
337 efi_free(reserve_size, reserve_addr);
338 fail_free_cmdline:
339 free_screen_info(si);
340 efi_free(cmdline_size, (unsigned long)cmdline_ptr);
341 fail:
342 return status;
343 }
344
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
Re: [PATCH 3/5] swiotlb: Add alloc and free APIs
by kbuild test robot
Hi Srivatsa,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on vhost/linux-next]
[also build test ERROR on xen-tip/linux-next linus/master v5.7-rc3 next-20200429]
[cannot apply to swiotlb/linux-next]
[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/Srivatsa-Vaddagiri/virtio-on-Typ...
base: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: i386-randconfig-b002-20200429 (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
# 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 errors (new ones prefixed by >>):
In file included from drivers/gpu/drm/i915/i915_scatterlist.h:12:0,
from drivers/gpu/drm/i915/i915_scatterlist.c:7:
include/linux/swiotlb.h: In function 'swiotlb_alloc':
>> include/linux/swiotlb.h:231:9: error: 'DMA_MAPPING_ERROR' undeclared (first use in this function); did you mean 'APM_NO_ERROR'?
return DMA_MAPPING_ERROR;
^~~~~~~~~~~~~~~~~
APM_NO_ERROR
include/linux/swiotlb.h:231:9: note: each undeclared identifier is reported only once for each function it appears in
vim +231 include/linux/swiotlb.h
226
227 static inline phys_addr_t swiotlb_alloc(struct swiotlb_pool *pool,
228 size_t alloc_size, unsigned long tbl_dma_addr,
229 unsigned long mask)
230 {
> 231 return DMA_MAPPING_ERROR;
232 }
233
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[android-common:android-4.19 69/106] arch/mips/vdso/vgettimeofday.c:39:9: error: implicit declaration of function '__cvdso_clock_getres_time32'; did you mean '__cvdso_clock_getres_common'?
by kbuild test robot
tree: https://android.googlesource.com/kernel/common android-4.19
head: a1728ecf5aed447128ca7143f29d8b0f5f6263c5
commit: 0854e59101a9219eb1607fb584dde8da4dea220e [69/106] UPSTREAM: lib/vdso: Build 32 bit specific functions in the right context
config: mips-malta_kvm_defconfig (attached as .config)
compiler: mipsel-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 0854e59101a9219eb1607fb584dde8da4dea220e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=mips
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 >>):
In file included from lib/vdso/gettimeofday.c:26,
from <command-line>:
arch/mips/include/asm/vdso/gettimeofday.h: In function 'clock_gettime_fallback':
arch/mips/include/asm/vdso/gettimeofday.h:59:31: error: '__NR_clock_gettime64' undeclared (first use in this function)
59 | register long nr asm("v0") = __NR_clock_gettime64;
| ^~~~~~~~~~~~~~~~~~~~
arch/mips/include/asm/vdso/gettimeofday.h:59:31: note: each undeclared identifier is reported only once for each function it appears in
arch/mips/include/asm/vdso/gettimeofday.h: In function 'clock_getres_fallback':
arch/mips/include/asm/vdso/gettimeofday.h:83:31: error: '__NR_clock_getres_time64' undeclared (first use in this function)
83 | register long nr asm("v0") = __NR_clock_getres_time64;
| ^~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/vdso/vgettimeofday.c: In function '__vdso_clock_gettime':
arch/mips/vdso/vgettimeofday.c:17:9: error: implicit declaration of function '__cvdso_clock_gettime32'; did you mean '__cvdso_clock_gettime'? [-Werror=implicit-function-declaration]
17 | return __cvdso_clock_gettime32(clock, ts);
| ^~~~~~~~~~~~~~~~~~~~~~~
| __cvdso_clock_gettime
arch/mips/vdso/vgettimeofday.c: In function '__vdso_clock_getres':
>> arch/mips/vdso/vgettimeofday.c:39:9: error: implicit declaration of function '__cvdso_clock_getres_time32'; did you mean '__cvdso_clock_getres_common'? [-Werror=implicit-function-declaration]
39 | return __cvdso_clock_getres_time32(clock_id, res);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
| __cvdso_clock_getres_common
cc1: all warnings being treated as errors
vim +39 arch/mips/vdso/vgettimeofday.c
cf84512fe7aac9 Vincenzo Frascino 2019-11-29 35
23dea1cf7ed384 Vincenzo Frascino 2019-06-21 36 int __vdso_clock_getres(clockid_t clock_id,
23dea1cf7ed384 Vincenzo Frascino 2019-06-21 37 struct old_timespec32 *res)
23dea1cf7ed384 Vincenzo Frascino 2019-06-21 38 {
23dea1cf7ed384 Vincenzo Frascino 2019-06-21 @39 return __cvdso_clock_getres_time32(clock_id, res);
23dea1cf7ed384 Vincenzo Frascino 2019-06-21 40 }
23dea1cf7ed384 Vincenzo Frascino 2019-06-21 41
:::::: The code at line 39 was first introduced by commit
:::::: 23dea1cf7ed3846719448e74feeb56c28e3a9019 UPSTREAM: mips: Add clock_getres entry point
:::::: TO: Vincenzo Frascino <vincenzo.frascino(a)arm.com>
:::::: CC: Alistair Delva <adelva(a)google.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[dm:for-next 29/30] drivers/md/dm-ebs-target.c:190:32: sparse: expected restricted blk_status_t [usertype] bi_status
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git for-next
head: ddc1316e185f6ab4a74656b4879a15ec23cdec31
commit: eeb17d25430dc2b3251a5abfec6a3b9160daaef6 [29/30] dm ebs: new block size emulating target
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-191-gc51a0382-dirty
git checkout eeb17d25430dc2b3251a5abfec6a3b9160daaef6
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
:::::: branch date: 7 hours ago
:::::: commit date: 30 hours ago
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/md/dm-ebs-target.c:190:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted blk_status_t [usertype] bi_status @@ got s_t [usertype] bi_status @@
>> drivers/md/dm-ebs-target.c:190:32: sparse: expected restricted blk_status_t [usertype] bi_status
>> drivers/md/dm-ebs-target.c:190:32: sparse: got int [assigned] r
drivers/md/dm-ebs-target.c:423:12: sparse: sparse: symbol 'dm_ebs_init' was not declared. Should it be static?
drivers/md/dm-ebs-target.c:433:6: sparse: sparse: symbol 'dm_ebs_exit' was not declared. Should it be static?
# https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.gi...
git remote add dm https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git
git remote update dm
git checkout eeb17d25430dc2b3251a5abfec6a3b9160daaef6
vim +190 drivers/md/dm-ebs-target.c
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 146
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 147 /* Worker funtion to process incoming bios. */
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 148 static void __ebs_process_bios(struct work_struct *ws)
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 149 {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 150 int r;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 151 bool write = false;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 152 sector_t block1, block2;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 153 struct ebs_c *ec = container_of(ws, struct ebs_c, ws);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 154 struct bio *bio;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 155 struct bio_list bios;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 156
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 157 bio_list_init(&bios);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 158
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 159 spin_lock_irq(&ec->lock);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 160 bios = ec->bios_in;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 161 bio_list_init(&ec->bios_in);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 162 spin_unlock_irq(&ec->lock);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 163
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 164 /* Prefetch all read and any mis-aligned write buffers */
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 165 bio_list_for_each(bio, &bios) {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 166 block1 = __sector_to_block(ec, bio->bi_iter.bi_sector);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 167 if (bio_op(bio) == REQ_OP_READ)
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 168 dm_bufio_prefetch(ec->bufio, block1, __nr_blocks(ec, bio));
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 169 else if (bio_op(bio) == REQ_OP_WRITE && !(bio->bi_opf & REQ_PREFLUSH)) {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 170 block2 = __sector_to_block(ec, bio_end_sector(bio));
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 171 if (__block_mod(bio->bi_iter.bi_sector, ec->u_bs))
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 172 dm_bufio_prefetch(ec->bufio, block1, 1);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 173 if (__block_mod(bio_end_sector(bio), ec->u_bs) && block2 != block1)
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 174 dm_bufio_prefetch(ec->bufio, block2, 1);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 175 }
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 176 }
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 177
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 178 bio_list_for_each(bio, &bios) {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 179 r = -EIO;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 180 if (bio_op(bio) == REQ_OP_READ)
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 181 r = __ebs_rw_bio(ec, READ, bio);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 182 else if (bio_op(bio) == REQ_OP_WRITE) {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 183 write = true;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 184 r = __ebs_rw_bio(ec, WRITE, bio);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 185 } else if (bio_op(bio) == REQ_OP_DISCARD) {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 186 /* FIXME: (optionally) call dm_bufio_discard_buffers() once upstream. */
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 187 r = __ebs_forget_bio(ec, bio);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 188 }
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 189
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 @190 bio->bi_status = r;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 191 }
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 192
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 193 /*
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 194 * We write dirty buffers after processing I/O on them
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 195 * but before we endio thus addressing REQ_FUA/REQ_SYNC.
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 196 */
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 197 r = write ? dm_bufio_write_dirty_buffers(ec->bufio) : 0;
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 198
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 199 while ((bio = bio_list_pop(&bios))) {
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 200 /* Any other request is endioed. */
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 201 if (unlikely(r && bio_op(bio) == REQ_OP_WRITE))
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 202 bio_io_error(bio);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 203 else
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 204 bio_endio(bio);
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 205 }
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 206 }
eeb17d25430dc2 Heinz Mauelshagen 2020-03-09 207
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[lkundrak-linux-mmp:lr/mmp3-hsic-phy 3/3] drivers/phy/marvell/phy-mmp3-hsic.c:61:31: sparse: sparse: cast removes address space '<asn:2>' of expression
by kbuild test robot
tree: git://git.kernel.org/pub/scm/linux/kernel/git/lkundrak/linux-mmp.git lr/mmp3-hsic-phy
head: 2e517a94639d84fdd929005f5bbc688722670b3e
commit: 2e517a94639d84fdd929005f5bbc688722670b3e [3/3] phy: Add USB HSIC PHY driver for Marvell MMP3 SoC
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-191-gc51a0382-dirty
git checkout 2e517a94639d84fdd929005f5bbc688722670b3e
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
:::::: branch date: 20 hours ago
:::::: commit date: 20 hours ago
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/phy/marvell/phy-mmp3-hsic.c:61:31: sparse: sparse: cast removes address space '<asn:2>' of expression
# https://git.kernel.org/pub/scm/linux/kernel/git/lkundrak/linux-mmp.git/co...
git remote add lkundrak-linux-mmp git://git.kernel.org/pub/scm/linux/kernel/git/lkundrak/linux-mmp.git
git remote update lkundrak-linux-mmp
git checkout 2e517a94639d84fdd929005f5bbc688722670b3e
vim +61 drivers/phy/marvell/phy-mmp3-hsic.c
2e517a94639d84 Lubomir Rintel 2020-03-08 39
2e517a94639d84 Lubomir Rintel 2020-03-08 40 static int mmp3_hsic_phy_probe(struct platform_device *pdev)
2e517a94639d84 Lubomir Rintel 2020-03-08 41 {
2e517a94639d84 Lubomir Rintel 2020-03-08 42 struct device *dev = &pdev->dev;
2e517a94639d84 Lubomir Rintel 2020-03-08 43 struct phy_provider *provider;
2e517a94639d84 Lubomir Rintel 2020-03-08 44 struct resource *resource;
2e517a94639d84 Lubomir Rintel 2020-03-08 45 void __iomem *base;
2e517a94639d84 Lubomir Rintel 2020-03-08 46 struct phy *phy;
2e517a94639d84 Lubomir Rintel 2020-03-08 47
2e517a94639d84 Lubomir Rintel 2020-03-08 48 resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
2e517a94639d84 Lubomir Rintel 2020-03-08 49 base = devm_ioremap_resource(dev, resource);
2e517a94639d84 Lubomir Rintel 2020-03-08 50 if (IS_ERR(base)) {
2e517a94639d84 Lubomir Rintel 2020-03-08 51 dev_err(dev, "failed to remap PHY regs\n");
2e517a94639d84 Lubomir Rintel 2020-03-08 52 return PTR_ERR(base);
2e517a94639d84 Lubomir Rintel 2020-03-08 53 }
2e517a94639d84 Lubomir Rintel 2020-03-08 54
2e517a94639d84 Lubomir Rintel 2020-03-08 55 phy = devm_phy_create(dev, NULL, &mmp3_hsic_phy_ops);
2e517a94639d84 Lubomir Rintel 2020-03-08 56 if (IS_ERR(phy)) {
2e517a94639d84 Lubomir Rintel 2020-03-08 57 dev_err(dev, "failed to create PHY\n");
2e517a94639d84 Lubomir Rintel 2020-03-08 58 return PTR_ERR(phy);
2e517a94639d84 Lubomir Rintel 2020-03-08 59 }
2e517a94639d84 Lubomir Rintel 2020-03-08 60
2e517a94639d84 Lubomir Rintel 2020-03-08 @61 phy_set_drvdata(phy, (void *)base);
2e517a94639d84 Lubomir Rintel 2020-03-08 62 provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate);
2e517a94639d84 Lubomir Rintel 2020-03-08 63 if (IS_ERR(provider)) {
2e517a94639d84 Lubomir Rintel 2020-03-08 64 dev_err(dev, "failed to register PHY provider\n");
2e517a94639d84 Lubomir Rintel 2020-03-08 65 return PTR_ERR(provider);
2e517a94639d84 Lubomir Rintel 2020-03-08 66 }
2e517a94639d84 Lubomir Rintel 2020-03-08 67
2e517a94639d84 Lubomir Rintel 2020-03-08 68 return 0;
2e517a94639d84 Lubomir Rintel 2020-03-08 69 }
2e517a94639d84 Lubomir Rintel 2020-03-08 70
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
Re: [PATCH bpf-next 1/2] bpf: Change error code when ops is NULL
by kbuild test robot
Hi Mao,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on bpf-next/master]
[also build test WARNING on bpf/master net/master net-next/master ipvs/master v5.7-rc2 next-20200423]
[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/Mao-Wenan/Change-return-code-if-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-191-gc51a0382-dirty
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
:::::: branch date: 19 hours ago
:::::: commit date: 19 hours ago
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> kernel/bpf/syscall.c:117:0: sparse: sparse: missing terminating " character
kernel/bpf/syscall.c:118:0: sparse: sparse: missing terminating " character
>> kernel/bpf/syscall.c:686:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:772:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:979:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1046:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1111:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1164:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1341:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1442:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1504:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1548:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1550:1: sparse: sparse: directive in macro's argument list
kernel/bpf/syscall.c:1551:1: sparse: sparse: directive in macro's argument list
>> kernel/bpf/syscall.c:116:17: sparse: sparse: macro "pr_warn" passed 2 arguments, but takes just 2
>> include/linux/bpf_types.h:7:1: sparse: sparse: No right hand side of ','-expression
include/linux/bpf_types.h:7:1: sparse: sparse: Expected ; at end of statement
include/linux/bpf_types.h:7:1: sparse: sparse: got [
include/linux/bpf_types.h:121:0: sparse: sparse: Expected } at end of compound statement
include/linux/bpf_types.h:121:0: sparse: sparse: got end-of-input
include/linux/bpf_types.h:121:0: sparse: sparse: Expected } at end of function
include/linux/bpf_types.h:121:0: sparse: sparse: got end-of-input
kernel/bpf/syscall.c:116:17: sparse: sparse: undefined identifier 'pr_warn'
kernel/bpf/syscall.c:1560:21: sparse: sparse: undefined identifier 'bpf_prog_types'
kernel/bpf/syscall.c:1560:21: sparse: sparse: undefined identifier 'bpf_prog_types'
kernel/bpf/syscall.c:1562:16: sparse: sparse: undefined identifier 'bpf_prog_types'
kernel/bpf/syscall.c:1562:16: sparse: sparse: undefined identifier 'bpf_prog_types'
kernel/bpf/syscall.c:1562:16: sparse: sparse: undefined identifier 'bpf_prog_types'
kernel/bpf/syscall.c:1562:16: sparse: sparse: undefined identifier 'bpf_prog_types'
>> kernel/bpf/syscall.c:1562:16: sparse: sparse: cannot size expression
kernel/bpf/syscall.c:1563:15: sparse: sparse: undefined identifier 'bpf_prog_types'
kernel/bpf/syscall.c:1797:27: sparse: sparse: undefined identifier 'bpf_dummy_read'
kernel/bpf/syscall.c:1798:27: sparse: sparse: undefined identifier 'bpf_dummy_write'
kernel/bpf/syscall.c:2293:27: sparse: sparse: undefined identifier 'bpf_dummy_read'
kernel/bpf/syscall.c:2294:27: sparse: sparse: undefined identifier 'bpf_dummy_write'
kernel/bpf/syscall.c:2870:23: sparse: sparse: undefined identifier '__bpf_map_inc_not_zero'
kernel/bpf/syscall.c:3538:15: sparse: sparse: undefined identifier 'map_get_sys_perms'
kernel/bpf/syscall.c:3544:15: sparse: sparse: undefined identifier 'map_get_sys_perms'
kernel/bpf/syscall.c:3685:23: sparse: sparse: undefined identifier 'map_create'
kernel/bpf/syscall.c:3688:23: sparse: sparse: undefined identifier 'map_lookup_elem'
kernel/bpf/syscall.c:3691:23: sparse: sparse: undefined identifier 'map_update_elem'
kernel/bpf/syscall.c:3694:23: sparse: sparse: undefined identifier 'map_delete_elem'
kernel/bpf/syscall.c:3697:23: sparse: sparse: undefined identifier 'map_get_next_key'
kernel/bpf/syscall.c:3700:23: sparse: sparse: undefined identifier 'map_freeze'
kernel/bpf/syscall.c:3757:23: sparse: sparse: undefined identifier 'map_lookup_and_delete_elem'
# https://github.com/0day-ci/linux/commit/45c88e856945c443c39e3f519ad9740b8...
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout 45c88e856945c443c39e3f519ad9740b8e487d8d
vim +117 kernel/bpf/syscall.c
a38845729ea398 Jakub Kicinski 2018-01-11 103
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 104 static struct bpf_map *find_and_alloc_map(union bpf_attr *attr)
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 105 {
1110f3a9bcf394 Jakub Kicinski 2018-01-11 106 const struct bpf_map_ops *ops;
9ef09e35e521bf Mark Rutland 2018-05-03 107 u32 type = attr->map_type;
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 108 struct bpf_map *map;
1110f3a9bcf394 Jakub Kicinski 2018-01-11 109 int err;
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 110
9ef09e35e521bf Mark Rutland 2018-05-03 111 if (type >= ARRAY_SIZE(bpf_map_types))
1110f3a9bcf394 Jakub Kicinski 2018-01-11 112 return ERR_PTR(-EINVAL);
9ef09e35e521bf Mark Rutland 2018-05-03 113 type = array_index_nospec(type, ARRAY_SIZE(bpf_map_types));
9ef09e35e521bf Mark Rutland 2018-05-03 114 ops = bpf_map_types[type];
45c88e856945c4 Mao Wenan 2020-04-22 115 if (!ops) {
45c88e856945c4 Mao Wenan 2020-04-22 @116 pr_warn("map type %d not supported or
45c88e856945c4 Mao Wenan 2020-04-22 @117 kernel config not opened\n", type);
45c88e856945c4 Mao Wenan 2020-04-22 118 return ERR_PTR(-EOPNOTSUPP);
45c88e856945c4 Mao Wenan 2020-04-22 119 }
1110f3a9bcf394 Jakub Kicinski 2018-01-11 120 if (ops->map_alloc_check) {
1110f3a9bcf394 Jakub Kicinski 2018-01-11 121 err = ops->map_alloc_check(attr);
1110f3a9bcf394 Jakub Kicinski 2018-01-11 122 if (err)
1110f3a9bcf394 Jakub Kicinski 2018-01-11 123 return ERR_PTR(err);
1110f3a9bcf394 Jakub Kicinski 2018-01-11 124 }
a38845729ea398 Jakub Kicinski 2018-01-11 125 if (attr->map_ifindex)
a38845729ea398 Jakub Kicinski 2018-01-11 126 ops = &bpf_map_offload_ops;
1110f3a9bcf394 Jakub Kicinski 2018-01-11 127 map = ops->map_alloc(attr);
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 128 if (IS_ERR(map))
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 129 return map;
1110f3a9bcf394 Jakub Kicinski 2018-01-11 130 map->ops = ops;
9ef09e35e521bf Mark Rutland 2018-05-03 131 map->map_type = type;
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 132 return map;
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 133 }
99c55f7d47c0dc Alexei Starovoitov 2014-09-26 134
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months