Re: [PATCH 04/22] usb: host: ehci-omap: deny IRQ0
by kernel test robot
Hi Sergey,
I love your patch! Yet something to improve:
[auto build test ERROR on usb/usb-testing]
[also build test ERROR on v5.15-rc6 next-20211020]
[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/Sergey-Shtylyov/Explicitly-deny-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
config: arm-randconfig-c002-20211021 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 3cea2505fd8d99a9ba0cb625aecfe28a47c4e3f8)
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 arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/0day-ci/linux/commit/cafbcf482dba9f0918ee071d03683bc2e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Sergey-Shtylyov/Explicitly-deny-IRQ0-in-the-USB-host-drivers/20211019-024031
git checkout cafbcf482dba9f0918ee071d03683bc2e8681d73
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/usb/host/ehci-omap.c:121:11: error: use of undeclared identifier 'ENIVAL'
return -ENIVAL;
^
1 error generated.
vim +/ENIVAL +121 drivers/usb/host/ehci-omap.c
77
78 /**
79 * ehci_hcd_omap_probe - initialize TI-based HCDs
80 * @pdev: Pointer to this platform device's information
81 *
82 * Allocates basic resources for this USB host controller, and
83 * then invokes the start() method for the HCD associated with it
84 * through the hotplug entry's driver_data.
85 */
86 static int ehci_hcd_omap_probe(struct platform_device *pdev)
87 {
88 struct device *dev = &pdev->dev;
89 struct usbhs_omap_platform_data *pdata = dev_get_platdata(dev);
90 struct resource *res;
91 struct usb_hcd *hcd;
92 void __iomem *regs;
93 int ret;
94 int irq;
95 int i;
96 struct omap_hcd *omap;
97
98 if (usb_disabled())
99 return -ENODEV;
100
101 if (!dev->parent) {
102 dev_err(dev, "Missing parent device\n");
103 return -ENODEV;
104 }
105
106 /* For DT boot, get platform data from parent. i.e. usbhshost */
107 if (dev->of_node) {
108 pdata = dev_get_platdata(dev->parent);
109 dev->platform_data = pdata;
110 }
111
112 if (!pdata) {
113 dev_err(dev, "Missing platform data\n");
114 return -ENODEV;
115 }
116
117 irq = platform_get_irq(pdev, 0);
118 if (irq < 0)
119 return irq;
120 if (!irq)
> 121 return -ENIVAL;
122
123 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
124 regs = devm_ioremap_resource(dev, res);
125 if (IS_ERR(regs))
126 return PTR_ERR(regs);
127
128 /*
129 * Right now device-tree probed devices don't get dma_mask set.
130 * Since shared usb code relies on it, set it here for now.
131 * Once we have dma capability bindings this can go away.
132 */
133 ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(32));
134 if (ret)
135 return ret;
136
137 ret = -ENODEV;
138 hcd = usb_create_hcd(&ehci_omap_hc_driver, dev,
139 dev_name(dev));
140 if (!hcd) {
141 dev_err(dev, "Failed to create HCD\n");
142 return -ENOMEM;
143 }
144
145 hcd->rsrc_start = res->start;
146 hcd->rsrc_len = resource_size(res);
147 hcd->regs = regs;
148 hcd_to_ehci(hcd)->caps = regs;
149
150 omap = (struct omap_hcd *)hcd_to_ehci(hcd)->priv;
151 omap->nports = pdata->nports;
152
153 platform_set_drvdata(pdev, hcd);
154
155 /* get the PHY devices if needed */
156 for (i = 0 ; i < omap->nports ; i++) {
157 struct usb_phy *phy;
158
159 /* get the PHY device */
160 phy = devm_usb_get_phy_by_phandle(dev, "phys", i);
161 if (IS_ERR(phy)) {
162 ret = PTR_ERR(phy);
163 if (ret == -ENODEV) { /* no PHY */
164 phy = NULL;
165 continue;
166 }
167
168 if (ret != -EPROBE_DEFER)
169 dev_err(dev, "Can't get PHY for port %d: %d\n",
170 i, ret);
171 goto err_phy;
172 }
173
174 omap->phy[i] = phy;
175
176 if (pdata->port_mode[i] == OMAP_EHCI_PORT_MODE_PHY) {
177 usb_phy_init(omap->phy[i]);
178 /* bring PHY out of suspend */
179 usb_phy_set_suspend(omap->phy[i], 0);
180 }
181 }
182
183 pm_runtime_enable(dev);
184 pm_runtime_get_sync(dev);
185
186 /*
187 * An undocumented "feature" in the OMAP3 EHCI controller,
188 * causes suspended ports to be taken out of suspend when
189 * the USBCMD.Run/Stop bit is cleared (for example when
190 * we do ehci_bus_suspend).
191 * This breaks suspend-resume if the root-hub is allowed
192 * to suspend. Writing 1 to this undocumented register bit
193 * disables this feature and restores normal behavior.
194 */
195 ehci_write(regs, EHCI_INSNREG04,
196 EHCI_INSNREG04_DISABLE_UNSUSPEND);
197
198 ret = usb_add_hcd(hcd, irq, IRQF_SHARED);
199 if (ret) {
200 dev_err(dev, "failed to add hcd with err %d\n", ret);
201 goto err_pm_runtime;
202 }
203 device_wakeup_enable(hcd->self.controller);
204
205 /*
206 * Bring PHYs out of reset for non PHY modes.
207 * Even though HSIC mode is a PHY-less mode, the reset
208 * line exists between the chips and can be modelled
209 * as a PHY device for reset control.
210 */
211 for (i = 0; i < omap->nports; i++) {
212 if (!omap->phy[i] ||
213 pdata->port_mode[i] == OMAP_EHCI_PORT_MODE_PHY)
214 continue;
215
216 usb_phy_init(omap->phy[i]);
217 /* bring PHY out of suspend */
218 usb_phy_set_suspend(omap->phy[i], 0);
219 }
220
221 return 0;
222
223 err_pm_runtime:
224 pm_runtime_put_sync(dev);
225 pm_runtime_disable(dev);
226
227 err_phy:
228 for (i = 0; i < omap->nports; i++) {
229 if (omap->phy[i])
230 usb_phy_shutdown(omap->phy[i]);
231 }
232
233 usb_put_hcd(hcd);
234
235 return ret;
236 }
237
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months
Re: [net-next] tcp: don't free a FIN sk_buff in tcp_remove_empty_skb()
by kernel test robot
Hi Jon,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Jon-Maxwell/tcp-don-t-free-a-FIN...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 2641b62d2fab52648e34cdc6994b2eacde2d27c1
config: i386-randconfig-a004-20211021 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 3cea2505fd8d99a9ba0cb625aecfe28a47c4e3f8)
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/87f5ea309107de5183ec0bd7d0b48ec90...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jon-Maxwell/tcp-don-t-free-a-FIN-sk_buff-in-tcp_remove_empty_skb/20211021-072644
git checkout 87f5ea309107de5183ec0bd7d0b48ec90546d350
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross 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 >>):
>> net/ipv4/tcp.c:941:26: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
if (skb && !skb->len && !TCP_SKB_CB(skb)->tcp_flags & TCPHDR_FIN) {
^ ~
net/ipv4/tcp.c:941:26: note: add parentheses after the '!' to evaluate the bitwise operator first
if (skb && !skb->len && !TCP_SKB_CB(skb)->tcp_flags & TCPHDR_FIN) {
^
( )
net/ipv4/tcp.c:941:26: note: add parentheses around left hand side expression to silence this warning
if (skb && !skb->len && !TCP_SKB_CB(skb)->tcp_flags & TCPHDR_FIN) {
^
( )
1 warning generated.
vim +941 net/ipv4/tcp.c
932
933 /* In some cases, both sendpage() and sendmsg() could have added
934 * an skb to the write queue, but failed adding payload on it.
935 * We need to remove it to consume less memory, but more
936 * importantly be able to generate EPOLLOUT for Edge Trigger epoll()
937 * users.
938 */
939 void tcp_remove_empty_skb(struct sock *sk, struct sk_buff *skb)
940 {
> 941 if (skb && !skb->len && !TCP_SKB_CB(skb)->tcp_flags & TCPHDR_FIN) {
942 tcp_unlink_write_queue(skb, sk);
943 if (tcp_write_queue_empty(sk))
944 tcp_chrono_stop(sk, TCP_CHRONO_BUSY);
945 sk_wmem_free_skb(sk, skb);
946 }
947 }
948
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months
Re: [PATCH 13/18] mtd: nand: mxic-ecc: Support SPI pipelined mode
by kernel test robot
Hi Miquel,
I love your patch! Perhaps something to improve:
[auto build test WARNING on broonie-spi/for-next]
[also build test WARNING on mtd/nand/next mtd/mtd/next mtd/mtd/fixes v5.15-rc6 next-20211020]
[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/Miquel-Raynal/External-ECC-engin...
base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
config: hexagon-randconfig-r014-20211021 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 3cea2505fd8d99a9ba0cb625aecfe28a47c4e3f8)
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/ccf53b4df2cab6209b1c56f22e1a1955f...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Miquel-Raynal/External-ECC-engines-Macronix-support/20211020-223036
git checkout ccf53b4df2cab6209b1c56f22e1a1955f59b8ea0
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=hexagon
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/mtd/nand/ecc-mxic.c:480:5: warning: no previous prototype for function 'mxic_ecc_process_data' [-Wmissing-prototypes]
int mxic_ecc_process_data(struct mxic_ecc_engine *eng, dma_addr_t dirmap)
^
drivers/mtd/nand/ecc-mxic.c:480:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int mxic_ecc_process_data(struct mxic_ecc_engine *eng, dma_addr_t dirmap)
^
static
>> drivers/mtd/nand/ecc-mxic.c:742:29: warning: no previous prototype for function 'mxic_ecc_get_pipelined_ops' [-Wmissing-prototypes]
struct nand_ecc_engine_ops *mxic_ecc_get_pipelined_ops(void)
^
drivers/mtd/nand/ecc-mxic.c:742:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
struct nand_ecc_engine_ops *mxic_ecc_get_pipelined_ops(void)
^
static
2 warnings generated.
vim +/mxic_ecc_process_data +480 drivers/mtd/nand/ecc-mxic.c
479
> 480 int mxic_ecc_process_data(struct mxic_ecc_engine *eng, dma_addr_t dirmap)
481 {
482 /* Retrieve the direction */
483 unsigned int dir = (eng->req->type == NAND_PAGE_READ) ?
484 READ_NAND : WRITE_NAND;
485
486 if (dirmap)
487 writel(dirmap, eng->regs + HC_SLV_ADDR);
488
489 /* Trigger processing */
490 writel(SDMA_STRT | dir, eng->regs + SDMA_CTRL);
491
492 /* Wait for completion */
493 return mxic_ecc_data_xfer_wait_for_completion(eng);
494 }
495 EXPORT_SYMBOL_GPL(mxic_ecc_process_data);
496
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months
[jimc:dd-drm-next 8/10] lib/dynamic_debug.c:736:3: error: implicit declaration of function 'trace_array_printk'
by kernel test robot
tree: https://github.com/jimc/linux.git dd-drm-next
head: 207507896a3ad58ac7365d5e8e9257442bbf166d
commit: 5e69f9654a4908cbbbe9d103331646eacf9cb1d4 [8/10] dyndbg: add print-to-tracefs, selftest with it - RFC
config: hexagon-randconfig-r045-20211021 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 3cea2505fd8d99a9ba0cb625aecfe28a47c4e3f8)
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/jimc/linux/commit/5e69f9654a4908cbbbe9d103331646eacf9c...
git remote add jimc https://github.com/jimc/linux.git
git fetch --no-tags jimc dd-drm-next
git checkout 5e69f9654a4908cbbbe9d103331646eacf9cb1d4
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=hexagon
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 >>):
>> lib/dynamic_debug.c:736:3: error: implicit declaration of function 'trace_array_printk' [-Werror,-Wimplicit-function-declaration]
trace_array_printk(trace_arr, _THIS_IP_, "%s%pV", buf, &vaf);
^
lib/dynamic_debug.c:736:3: note: did you mean 'trace_printk'?
include/linux/kernel.h:467:5: note: 'trace_printk' declared here
int trace_printk(const char *fmt, ...)
^
lib/dynamic_debug.c:763:3: error: implicit declaration of function 'trace_array_printk' [-Werror,-Wimplicit-function-declaration]
trace_array_printk(trace_arr, _THIS_IP_, "%s%pV", buf, &vaf);
^
lib/dynamic_debug.c:799:3: error: implicit declaration of function 'trace_array_printk' [-Werror,-Wimplicit-function-declaration]
trace_array_printk(trace_arr, _THIS_IP_, "%s%pV", buf, &vaf);
^
lib/dynamic_debug.c:841:3: error: implicit declaration of function 'trace_array_printk' [-Werror,-Wimplicit-function-declaration]
trace_array_printk(trace_arr, _THIS_IP_, "%s%pV", buf, &vaf);
^
>> lib/dynamic_debug.c:1201:2: error: static declaration of 'trace_array_printk' follows non-static declaration
trace_array_printk(struct trace_array *tr, unsigned long ip,
^
lib/dynamic_debug.c:736:3: note: previous implicit declaration is here
trace_array_printk(trace_arr, _THIS_IP_, "%s%pV", buf, &vaf);
^
5 errors generated.
vim +/trace_array_printk +736 lib/dynamic_debug.c
718
719 void __dynamic_pr_debug(struct _ddebug *descriptor, const char *fmt, ...)
720 {
721 va_list args;
722 struct va_format vaf;
723 char buf[PREFIX_SIZE] = "";
724
725 BUG_ON(!descriptor);
726 BUG_ON(!fmt);
727
728 va_start(args, fmt);
729
730 vaf.fmt = fmt;
731 vaf.va = &args;
732
733 dynamic_emit_prefix(descriptor, buf);
734
735 if (dyndbg_site_is_tracing(descriptor))
> 736 trace_array_printk(trace_arr, _THIS_IP_, "%s%pV", buf, &vaf);
737
738 if (dyndbg_site_is_logging(descriptor))
739 printk(KERN_DEBUG "%s%pV", buf, &vaf);
740
741 va_end(args);
742 }
743 EXPORT_SYMBOL(__dynamic_pr_debug);
744
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months
[tj-misc:bpf-task-local-storage-prealloc 3/3] kernel/bpf/bpf_task_storage.c:371:20: error: use of undeclared identifier 'task_storage_map_ops'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git bpf-task-local-storage-prealloc
head: 5e3ad0d4a0b0732e7ebe035582d282ab752397ed
commit: 5e3ad0d4a0b0732e7ebe035582d282ab752397ed [3/3] bpf: Implement prealloc for task_local_storage
config: hexagon-randconfig-r041-20211019 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 9660563950aaed54020bfdf0be07e7096a9553e4)
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/tj/misc.git/commit/?id=5e...
git remote add tj-misc https://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git
git fetch --no-tags tj-misc bpf-task-local-storage-prealloc
git checkout 5e3ad0d4a0b0732e7ebe035582d282ab752397ed
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash
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/bpf/bpf_task_storage.c:371:20: error: use of undeclared identifier 'task_storage_map_ops'
smap->map.ops = &task_storage_map_ops;
^
1 error generated.
vim +/task_storage_map_ops +371 kernel/bpf/bpf_task_storage.c
355
356 static struct bpf_map *task_storage_map_alloc(union bpf_attr *attr)
357 {
358 struct bpf_local_storage_map *smap;
359 int err;
360
361 smap = bpf_local_storage_map_alloc(attr);
362 if (IS_ERR(smap))
363 return ERR_CAST(smap);
364
365 if (!(attr->map_flags & BPF_F_NO_PREALLOC)) {
366 /* We're going to exercise the regular update path to populate
367 * the map for the existing tasks, which will call into map ops
368 * which is normally initialized after this function returns.
369 * Initialize it early here.
370 */
> 371 smap->map.ops = &task_storage_map_ops;
372
373 percpu_down_write(&threadgroup_rwsem);
374 list_add_tail(&smap->prealloc_node, &prealloc_smaps);
375 err = task_storage_map_populate(smap);
376 percpu_up_write(&threadgroup_rwsem);
377 if (err) {
378 bpf_local_storage_map_free(smap,
379 &bpf_task_storage_busy);
380 return ERR_PTR(err);
381 }
382 }
383
384 smap->cache_idx = bpf_local_storage_cache_idx_get(&task_cache);
385 return &smap->map;
386 }
387
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months
[intel-tdx:guest 53/136] arch/x86/kernel/acpi/boot.c:366:2: error: call to __compiletime_assert_231 declared with 'error' attribute: Need native word sized stores/loads for atomicity.
by kernel test robot
tree: https://github.com/intel/tdx.git guest
head: 12f4800ff5dbe89a642744796008f89f23b2e446
commit: b93c111150948d0c5a55fca8e1620a05aa7e4298 [53/136] x86/acpi, x86/boot: Add multiprocessor wake-up support
config: i386-randconfig-c001-20211019 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 9660563950aaed54020bfdf0be07e7096a9553e4)
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/intel/tdx/commit/b93c111150948d0c5a55fca8e1620a05aa7e4298
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx guest
git checkout b93c111150948d0c5a55fca8e1620a05aa7e4298
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
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/kernel/acpi/boot.c:366:2: error: call to __compiletime_assert_231 declared with 'error' attribute: Need native word sized stores/loads for atomicity.
smp_store_release(&acpi_mp_wake_mailbox->wakeup_vector, start_ip);
^
include/asm-generic/barrier.h:138:33: note: expanded from macro 'smp_store_release'
#define smp_store_release(p, v) __smp_store_release(p, v)
^
arch/x86/include/asm/barrier.h:65:2: note: expanded from macro '__smp_store_release'
compiletime_assert_atomic_type(*p); \
^
include/linux/compiler_types.h:325:2: note: expanded from macro 'compiletime_assert_atomic_type'
compiletime_assert(__native_word(t), \
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler_types.h:310:2: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:303:4: note: expanded from macro '__compiletime_assert'
prefix ## suffix(); \
^
<scratch space>:18:1: note: expanded from here
__compiletime_assert_231
^
1 error generated.
vim +/error +366 arch/x86/kernel/acpi/boot.c
333
334 static int acpi_wakeup_cpu(int apicid, unsigned long start_ip)
335 {
336 u8 timeout = 0xFF;
337
338 /* Remap mailbox memory only for the first call to acpi_wakeup_cpu() */
339 if (physids_empty(apic_id_wakemap)) {
340 acpi_mp_wake_mailbox = memremap(acpi_mp_wake_mailbox_paddr,
341 sizeof(*acpi_mp_wake_mailbox),
342 MEMREMAP_WB);
343 }
344
345 /*
346 * According to the ACPI specification r6.4, sec 5.2.12.19, the
347 * mailbox-based wakeup mechanism cannot be used more than once
348 * for the same CPU, so skip sending wake commands to already
349 * awake CPU.
350 */
351 if (physid_isset(apicid, apic_id_wakemap)) {
352 pr_err("CPU already awake (APIC ID %x), skipping wakeup\n",
353 apicid);
354 return -EINVAL;
355 }
356
357 /*
358 * Mailbox memory is shared between firmware and OS. Firmware will
359 * listen on mailbox command address, and once it receives the wakeup
360 * command, CPU associated with the given apicid will be booted. So,
361 * the value of apic_id and wakeup_vector has to be set before updating
362 * the wakeup command. So use smp_store_release to let the compiler know
363 * about it and preserve the order of writes.
364 */
365 smp_store_release(&acpi_mp_wake_mailbox->apic_id, apicid);
> 366 smp_store_release(&acpi_mp_wake_mailbox->wakeup_vector, start_ip);
367 smp_store_release(&acpi_mp_wake_mailbox->command,
368 ACPI_MP_WAKE_COMMAND_WAKEUP);
369
370 /*
371 * After writing wakeup command, wait for maximum timeout of 0xFF
372 * for firmware to reset the command address back zero to indicate
373 * the successful reception of command.
374 * NOTE: 255 as timeout value is decided based on our experiments.
375 *
376 * XXX: Change the timeout once ACPI specification comes up with
377 * standard maximum timeout value.
378 */
379 while (READ_ONCE(acpi_mp_wake_mailbox->command) && timeout--)
380 cpu_relax();
381
382 if (timeout) {
383 /*
384 * If the CPU wakeup process is successful, store the
385 * status in apic_id_wakemap to prevent re-wakeup
386 * requests.
387 */
388 physid_set(apicid, apic_id_wakemap);
389 return 0;
390 }
391
392 /* If timed out (timeout == 0), return error */
393 return -EIO;
394 }
395
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months
Re: [RFC PATCH] mm, slob: Rewrite SLOB using segregated free list
by kernel test robot
Hi Hyeonggon,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on linux/master]
[also build test ERROR on linus/master v5.15-rc6 next-20211020]
[cannot apply to hnaz-mm/master]
[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/Hyeonggon-Yoo/mm-slob-Rewrite-SL...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git ec681c53f8d2d0ee362ff67f5b98dd8263c15002
config: i386-randconfig-r003-20211019 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 9660563950aaed54020bfdf0be07e7096a9553e4)
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/e2ba7ee42ed802d48dd0ea4ff0fe07096...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Hyeonggon-Yoo/mm-slob-Rewrite-SLOB-using-segregated-free-list/20211020-215705
git checkout e2ba7ee42ed802d48dd0ea4ff0fe07096d115c11
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
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 >>):
>> mm/slob.c:603:16: error: use of undeclared identifier '_RET_IP'; did you mean 'NET_IPX'?
trace_kmalloc(_RET_IP, ret, size, s->size, gfp);
^~~~~~~
NET_IPX
include/uapi/linux/sysctl.h:210:2: note: 'NET_IPX' declared here
NET_IPX=6,
^
>> mm/slob.c:604:12: error: expected ';' after return statement
return ret
^
;
2 errors generated.
vim +603 mm/slob.c
597
598 #ifdef CONFIG_TRACING
599 void *kmem_cache_alloc_trace(struct kmem_cache *s, gfp_t gfp, size_t size)
600 {
601 void *ret = slob_alloc_node(s, gfp, NUMA_NO_NODE);
602
> 603 trace_kmalloc(_RET_IP, ret, size, s->size, gfp);
> 604 return ret
605 }
606
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months