[hnaz-linux-mm:master 80/408] include/linux/memcontrol.h:863:9: warning: 'return' with a value, in function returning void
by kbuild test robot
tree: https://github.com/hnaz/linux-mm master
head: 52eaf754e07cae946b8010a40ed2ac26128e1967
commit: e3ee1a4e054fd2bb4e8d5a6e1c5db700b488acd5 [80/408] mm, memcg: decouple e{low,min} state mutations from protection checks
config: sh-rsk7269_defconfig (attached as .config)
compiler: sh4-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 e3ee1a4e054fd2bb4e8d5a6e1c5db700b488acd5
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=sh
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from include/linux/swap.h:9,
from include/linux/suspend.h:5,
from arch/sh/kernel/asm-offsets.c:16:
include/linux/memcontrol.h: In function 'mem_cgroup_protection':
include/linux/memcontrol.h:855:20: error: invalid storage class for function 'mem_cgroup_calculate_protection'
855 | static inline void mem_cgroup_calculate_protection(struct mem_cgroup *root,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:860:20: error: invalid storage class for function 'mem_cgroup_protection'
860 | static inline void mem_cgroup_protection(struct mem_cgroup *memcg,
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h: In function 'mem_cgroup_protection':
>> include/linux/memcontrol.h:863:9: warning: 'return' with a value, in function returning void [-Wreturn-type]
863 | return 0;
| ^
include/linux/memcontrol.h:860:20: note: declared here
860 | static inline void mem_cgroup_protection(struct mem_cgroup *memcg,
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h: In function 'mem_cgroup_protection':
>> include/linux/memcontrol.h:860:1: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
860 | static inline void mem_cgroup_protection(struct mem_cgroup *memcg,
| ^~~~~~
include/linux/memcontrol.h:866:20: error: invalid storage class for function 'mem_cgroup_below_low'
866 | static inline bool mem_cgroup_below_low(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:871:20: error: invalid storage class for function 'mem_cgroup_below_min'
871 | static inline bool mem_cgroup_below_min(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:876:19: error: invalid storage class for function 'mem_cgroup_try_charge'
876 | static inline int mem_cgroup_try_charge(struct page *page, struct mm_struct *mm,
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:885:19: error: invalid storage class for function 'mem_cgroup_try_charge_delay'
885 | static inline int mem_cgroup_try_charge_delay(struct page *page,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:895:20: error: invalid storage class for function 'mem_cgroup_commit_charge'
895 | static inline void mem_cgroup_commit_charge(struct page *page,
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:901:20: error: invalid storage class for function 'mem_cgroup_cancel_charge'
901 | static inline void mem_cgroup_cancel_charge(struct page *page,
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:907:20: error: invalid storage class for function 'mem_cgroup_uncharge'
907 | static inline void mem_cgroup_uncharge(struct page *page)
| ^~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:911:20: error: invalid storage class for function 'mem_cgroup_uncharge_list'
911 | static inline void mem_cgroup_uncharge_list(struct list_head *page_list)
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:915:20: error: invalid storage class for function 'mem_cgroup_migrate'
915 | static inline void mem_cgroup_migrate(struct page *old, struct page *new)
| ^~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:919:30: error: invalid storage class for function 'mem_cgroup_lruvec'
919 | static inline struct lruvec *mem_cgroup_lruvec(struct mem_cgroup *memcg,
| ^~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:925:30: error: invalid storage class for function 'mem_cgroup_page_lruvec'
925 | static inline struct lruvec *mem_cgroup_page_lruvec(struct page *page,
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:931:34: error: invalid storage class for function 'parent_mem_cgroup'
931 | static inline struct mem_cgroup *parent_mem_cgroup(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:936:20: error: invalid storage class for function 'mm_match_cgroup'
936 | static inline bool mm_match_cgroup(struct mm_struct *mm,
| ^~~~~~~~~~~~~~~
include/linux/memcontrol.h:942:34: error: invalid storage class for function 'get_mem_cgroup_from_mm'
942 | static inline struct mem_cgroup *get_mem_cgroup_from_mm(struct mm_struct *mm)
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:947:34: error: invalid storage class for function 'get_mem_cgroup_from_page'
947 | static inline struct mem_cgroup *get_mem_cgroup_from_page(struct page *page)
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:952:20: error: invalid storage class for function 'mem_cgroup_put'
952 | static inline void mem_cgroup_put(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~
include/linux/memcontrol.h:957:1: error: invalid storage class for function 'mem_cgroup_iter'
957 | mem_cgroup_iter(struct mem_cgroup *root,
| ^~~~~~~~~~~~~~~
include/linux/memcontrol.h:964:20: error: invalid storage class for function 'mem_cgroup_iter_break'
964 | static inline void mem_cgroup_iter_break(struct mem_cgroup *root,
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:969:19: error: invalid storage class for function 'mem_cgroup_scan_tasks'
969 | static inline int mem_cgroup_scan_tasks(struct mem_cgroup *memcg,
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:975:30: error: invalid storage class for function 'mem_cgroup_id'
975 | static inline unsigned short mem_cgroup_id(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~
include/linux/memcontrol.h:980:34: error: invalid storage class for function 'mem_cgroup_from_id'
980 | static inline struct mem_cgroup *mem_cgroup_from_id(unsigned short id)
| ^~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:987:34: error: invalid storage class for function 'mem_cgroup_from_seq'
987 | static inline struct mem_cgroup *mem_cgroup_from_seq(struct seq_file *m)
| ^~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:992:34: error: invalid storage class for function 'lruvec_memcg'
992 | static inline struct mem_cgroup *lruvec_memcg(struct lruvec *lruvec)
| ^~~~~~~~~~~~
include/linux/memcontrol.h:997:20: error: invalid storage class for function 'mem_cgroup_online'
997 | static inline bool mem_cgroup_online(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1003:15: error: invalid storage class for function 'mem_cgroup_get_zone_lru_size'
1003 | unsigned long mem_cgroup_get_zone_lru_size(struct lruvec *lruvec,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1009:29: error: invalid storage class for function 'mem_cgroup_get_max'
1009 | static inline unsigned long mem_cgroup_get_max(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1014:29: error: invalid storage class for function 'mem_cgroup_size'
1014 | static inline unsigned long mem_cgroup_size(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~
include/linux/memcontrol.h:1020:1: error: invalid storage class for function 'mem_cgroup_print_oom_context'
1020 | mem_cgroup_print_oom_context(struct mem_cgroup *memcg, struct task_struct *p)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1025:1: error: invalid storage class for function 'mem_cgroup_print_oom_meminfo'
1025 | mem_cgroup_print_oom_meminfo(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1029:34: error: invalid storage class for function 'lock_page_memcg'
1029 | static inline struct mem_cgroup *lock_page_memcg(struct page *page)
| ^~~~~~~~~~~~~~~
include/linux/memcontrol.h:1034:20: error: invalid storage class for function '__unlock_page_memcg'
1034 | static inline void __unlock_page_memcg(struct mem_cgroup *memcg)
| ^~~~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1038:20: error: invalid storage class for function 'unlock_page_memcg'
1038 | static inline void unlock_page_memcg(struct page *page)
| ^~~~~~~~~~~~~~~~~
include/linux/memcontrol.h:1042:20: error: invalid storage class for function 'mem_cgroup_handle_over_high'
1042 | static inline void mem_cgroup_handle_over_high(void)
--
include/linux/suspend.h:336:20: error: invalid storage class for function 'pm_suspend_clear_flags'
336 | static inline void pm_suspend_clear_flags(void) {}
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:337:20: error: invalid storage class for function 'pm_set_suspend_via_firmware'
337 | static inline void pm_set_suspend_via_firmware(void) {}
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:338:20: error: invalid storage class for function 'pm_set_resume_via_firmware'
338 | static inline void pm_set_resume_via_firmware(void) {}
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:339:20: error: invalid storage class for function 'pm_suspend_via_firmware'
339 | static inline bool pm_suspend_via_firmware(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:340:20: error: invalid storage class for function 'pm_resume_via_firmware'
340 | static inline bool pm_resume_via_firmware(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:341:20: error: invalid storage class for function 'pm_suspend_no_platform'
341 | static inline bool pm_suspend_no_platform(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:342:20: error: invalid storage class for function 'pm_suspend_default_s2idle'
342 | static inline bool pm_suspend_default_s2idle(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:344:20: error: invalid storage class for function 'suspend_set_ops'
344 | static inline void suspend_set_ops(const struct platform_suspend_ops *ops) {}
| ^~~~~~~~~~~~~~~
include/linux/suspend.h:345:19: error: invalid storage class for function 'pm_suspend'
345 | static inline int pm_suspend(suspend_state_t state) { return -ENOSYS; }
| ^~~~~~~~~~
include/linux/suspend.h:346:20: error: invalid storage class for function 'sync_on_suspend_enabled'
346 | static inline bool sync_on_suspend_enabled(void) { return true; }
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:347:20: error: invalid storage class for function 'idle_should_enter_s2idle'
347 | static inline bool idle_should_enter_s2idle(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:348:27: error: invalid storage class for function 'pm_states_init'
348 | static inline void __init pm_states_init(void) {}
| ^~~~~~~~~~~~~~
include/linux/suspend.h:349:20: error: invalid storage class for function 's2idle_set_ops'
349 | static inline void s2idle_set_ops(const struct platform_s2idle_ops *ops) {}
| ^~~~~~~~~~~~~~
include/linux/suspend.h:350:20: error: invalid storage class for function 's2idle_wake'
350 | static inline void s2idle_wake(void) {}
| ^~~~~~~~~~~
include/linux/suspend.h:457:20: error: invalid storage class for function 'register_nosave_region'
457 | static inline void register_nosave_region(unsigned long b, unsigned long e) {}
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:458:20: error: invalid storage class for function 'register_nosave_region_late'
458 | static inline void register_nosave_region_late(unsigned long b, unsigned long e) {}
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:459:19: error: invalid storage class for function 'swsusp_page_is_forbidden'
459 | static inline int swsusp_page_is_forbidden(struct page *p) { return 0; }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:460:20: error: invalid storage class for function 'swsusp_set_page_free'
460 | static inline void swsusp_set_page_free(struct page *p) {}
| ^~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:461:20: error: invalid storage class for function 'swsusp_unset_page_free'
461 | static inline void swsusp_unset_page_free(struct page *p) {}
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:463:20: error: invalid storage class for function 'hibernation_set_ops'
463 | static inline void hibernation_set_ops(const struct platform_hibernation_ops *ops) {}
| ^~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:464:19: error: invalid storage class for function 'hibernate'
464 | static inline int hibernate(void) { return -ENOSYS; }
| ^~~~~~~~~
include/linux/suspend.h:465:20: error: invalid storage class for function 'system_entering_hibernation'
465 | static inline bool system_entering_hibernation(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:466:20: error: invalid storage class for function 'hibernation_available'
466 | static inline bool hibernation_available(void) { return false; }
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:514:19: error: invalid storage class for function 'register_pm_notifier'
514 | static inline int register_pm_notifier(struct notifier_block *nb)
| ^~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:519:19: error: invalid storage class for function 'unregister_pm_notifier'
519 | static inline int unregister_pm_notifier(struct notifier_block *nb)
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:524:20: error: invalid storage class for function 'ksys_sync_helper'
524 | static inline void ksys_sync_helper(void) {}
| ^~~~~~~~~~~~~~~~
include/linux/suspend.h:528:20: error: invalid storage class for function 'pm_wakeup_pending'
528 | static inline bool pm_wakeup_pending(void) { return false; }
| ^~~~~~~~~~~~~~~~~
include/linux/suspend.h:529:20: error: invalid storage class for function 'pm_system_wakeup'
529 | static inline void pm_system_wakeup(void) {}
| ^~~~~~~~~~~~~~~~
include/linux/suspend.h:530:20: error: invalid storage class for function 'pm_wakeup_clear'
530 | static inline void pm_wakeup_clear(bool reset) {}
| ^~~~~~~~~~~~~~~
include/linux/suspend.h:531:20: error: invalid storage class for function 'pm_system_irq_wakeup'
531 | static inline void pm_system_irq_wakeup(unsigned int irq_number) {}
| ^~~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:533:20: error: invalid storage class for function 'lock_system_sleep'
533 | static inline void lock_system_sleep(void) {}
| ^~~~~~~~~~~~~~~~~
include/linux/suspend.h:534:20: error: invalid storage class for function 'unlock_system_sleep'
534 | static inline void unlock_system_sleep(void) {}
| ^~~~~~~~~~~~~~~~~~~
include/linux/suspend.h:565:20: error: invalid storage class for function 'queue_up_suspend_work'
565 | static inline void queue_up_suspend_work(void) {}
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sh/kernel/asm-offsets.c:19:
>> arch/sh/include/asm/suspend.h:20:19: error: invalid storage class for function 'sh_mobile_setup_cpuidle'
20 | static inline int sh_mobile_setup_cpuidle(void) { return 0; }
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/sh/kernel/asm-offsets.c:60:1: error: expected declaration or statement at end of input
60 | }
| ^
In file included from arch/sh/kernel/asm-offsets.c:19:
arch/sh/include/asm/suspend.h:84:22: warning: unused variable 'sh_mobile_sleep_supported' [-Wunused-variable]
84 | extern unsigned long sh_mobile_sleep_supported;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/sh/include/asm/suspend.h:25:36: warning: unused variable 'sh_mobile_post_sleep_notifier_list' [-Wunused-variable]
25 | extern struct atomic_notifier_head sh_mobile_post_sleep_notifier_list;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/sh/include/asm/suspend.h:24:36: warning: unused variable 'sh_mobile_pre_sleep_notifier_list' [-Wunused-variable]
24 | extern struct atomic_notifier_head sh_mobile_pre_sleep_notifier_list;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/sh/kernel/asm-offsets.c:16:
include/linux/suspend.h:477:21: warning: unused variable 'system_transition_mutex' [-Wunused-variable]
477 | extern struct mutex system_transition_mutex;
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/suspend.h:5,
from arch/sh/kernel/asm-offsets.c:16:
include/linux/swap.h:366:22: warning: unused variable 'vm_total_pages' [-Wunused-variable]
366 | extern unsigned long vm_total_pages;
| ^~~~~~~~~~~~~~
include/linux/swap.h:322:22: warning: unused variable 'totalreserve_pages' [-Wunused-variable]
322 | extern unsigned long totalreserve_pages;
| ^~~~~~~~~~~~~~~~~~
In file included from include/linux/swap.h:11,
from include/linux/suspend.h:5,
from arch/sh/kernel/asm-offsets.c:16:
include/linux/node.h:98:21: warning: unused variable 'node_devices' [-Wunused-variable]
98 | extern struct node *node_devices[];
| ^~~~~~~~~~~~
>> arch/sh/kernel/asm-offsets.c:60:1: warning: no return statement in function returning non-void [-Wreturn-type]
60 | }
| ^
At top level:
arch/sh/kernel/asm-offsets.c:21:5: warning: 'main' defined but not used [-Wunused-function]
21 | int main(void)
| ^~~~
make[2]: *** [scripts/Makefile.build:100: arch/sh/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1141: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:180: sub-make] Error 2
vim +/return +863 include/linux/memcontrol.h
e3ee1a4e054fd2b Chris Down 2020-04-29 853
e3ee1a4e054fd2b Chris Down 2020-04-29 854
e3ee1a4e054fd2b Chris Down 2020-04-29 @855 static inline void mem_cgroup_calculate_protection(struct mem_cgroup *root,
e3ee1a4e054fd2b Chris Down 2020-04-29 856 struct mem_cgroup *memcg);
e3ee1a4e054fd2b Chris Down 2020-04-29 857 {
e3ee1a4e054fd2b Chris Down 2020-04-29 858 }
e3ee1a4e054fd2b Chris Down 2020-04-29 859
e3ee1a4e054fd2b Chris Down 2020-04-29 @860 static inline void mem_cgroup_protection(struct mem_cgroup *memcg,
e3ee1a4e054fd2b Chris Down 2020-04-29 861 bool in_low_reclaim)
e3ee1a4e054fd2b Chris Down 2020-04-29 862 {
1bc63fb1272be07 Chris Down 2019-10-06 @863 return 0;
9783aa9917f8ae2 Chris Down 2019-10-06 864 }
9783aa9917f8ae2 Chris Down 2019-10-06 865
:::::: The code at line 863 was first introduced by commit
:::::: 1bc63fb1272be0773e925f78c0fbd06c89701d55 mm, memcg: make scan aggression always exclude protection
:::::: TO: Chris Down <chris(a)chrisdown.name>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH v2 1/2] btrfs: add authentication support
by kbuild test robot
Hi Johannes,
I love your patch! Yet something to improve:
[auto build test ERROR on kdave/for-next]
[also build test ERROR on v5.7-rc3 next-20200428]
[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/Johannes-Thumshirn/Add-file-syst...
base: https://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git for-next
config: x86_64-randconfig-d002-20200428 (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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
>> fs/btrfs/disk-io.c:2227:8: error: implicit declaration of function 'request_key' [-Werror,-Wimplicit-function-declaration]
key = request_key(&key_type_logon, fs_info->auth_key_name, NULL);
^
>> fs/btrfs/disk-io.c:2227:21: error: use of undeclared identifier 'key_type_logon'
key = request_key(&key_type_logon, fs_info->auth_key_name, NULL);
^
>> fs/btrfs/disk-io.c:2231:16: error: incomplete definition of type 'struct key'
down_read(&key->sem);
~~~^
include/linux/key.h:33:8: note: forward declaration of 'struct key'
struct key;
^
>> fs/btrfs/disk-io.c:2233:8: error: implicit declaration of function 'user_key_payload_locked' [-Werror,-Wimplicit-function-declaration]
ukp = user_key_payload_locked(key);
^
>> fs/btrfs/disk-io.c:2233:6: warning: incompatible integer to pointer conversion assigning to 'const struct user_key_payload *' from 'int' [-Wint-conversion]
ukp = user_key_payload_locked(key);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> fs/btrfs/disk-io.c:2240:52: error: incomplete definition of type 'struct user_key_payload'
err = crypto_shash_setkey(fs_info->csum_shash, ukp->data, ukp->datalen);
~~~^
fs/btrfs/disk-io.c:2193:15: note: forward declaration of 'struct user_key_payload'
const struct user_key_payload *ukp;
^
fs/btrfs/disk-io.c:2240:63: error: incomplete definition of type 'struct user_key_payload'
err = crypto_shash_setkey(fs_info->csum_shash, ukp->data, ukp->datalen);
~~~^
fs/btrfs/disk-io.c:2193:15: note: forward declaration of 'struct user_key_payload'
const struct user_key_payload *ukp;
^
fs/btrfs/disk-io.c:2249:14: error: incomplete definition of type 'struct key'
up_read(&key->sem);
~~~^
include/linux/key.h:33:8: note: forward declaration of 'struct key'
struct key;
^
1 warning and 7 errors generated.
vim +/request_key +2227 fs/btrfs/disk-io.c
2187
2188 static int btrfs_init_csum_hash(struct btrfs_fs_info *fs_info, u16 csum_type)
2189 {
2190 struct crypto_shash *csum_shash;
2191 const char *csum_driver = btrfs_super_csum_driver(csum_type);
2192 struct key *key;
2193 const struct user_key_payload *ukp;
2194 int err = 0;
2195
2196 csum_shash = crypto_alloc_shash(csum_driver, 0, 0);
2197
2198 if (IS_ERR(csum_shash)) {
2199 btrfs_err(fs_info, "error allocating %s hash for checksum",
2200 csum_driver);
2201 return PTR_ERR(csum_shash);
2202 }
2203
2204 fs_info->csum_shash = csum_shash;
2205
2206 /*
2207 * if we're not doing authentication, we're done by now. Still we have
2208 * to validate the possible combinations of BTRFS_MOUNT_AUTH_KEY and
2209 * keyed hashes.
2210 */
2211 if (csum_type == BTRFS_CSUM_TYPE_HMAC_SHA256 &&
2212 !btrfs_test_opt(fs_info, AUTH_KEY)) {
2213 crypto_free_shash(fs_info->csum_shash);
2214 return -EINVAL;
2215 } else if (btrfs_test_opt(fs_info, AUTH_KEY)
2216 && csum_type != BTRFS_CSUM_TYPE_HMAC_SHA256) {
2217 crypto_free_shash(fs_info->csum_shash);
2218 return -EINVAL;
2219 } else if (!btrfs_test_opt(fs_info, AUTH_KEY)) {
2220 /*
2221 * This is the normal case, if noone want's authentication and
2222 * doesn't have a keyed hash, we're done.
2223 */
2224 return 0;
2225 }
2226
> 2227 key = request_key(&key_type_logon, fs_info->auth_key_name, NULL);
2228 if (IS_ERR(key))
2229 return PTR_ERR(key);
2230
> 2231 down_read(&key->sem);
2232
> 2233 ukp = user_key_payload_locked(key);
2234 if (!ukp) {
2235 btrfs_err(fs_info, "");
2236 err = -EKEYREVOKED;
2237 goto out;
2238 }
2239
> 2240 err = crypto_shash_setkey(fs_info->csum_shash, ukp->data, ukp->datalen);
2241 if (err)
2242 btrfs_err(fs_info, "error setting key %s for verification",
2243 fs_info->auth_key_name);
2244
2245 out:
2246 if (err)
2247 crypto_free_shash(fs_info->csum_shash);
2248
2249 up_read(&key->sem);
2250 key_put(key);
2251
2252 return err;
2253 }
2254
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH v8 02/24] PCI: Ensure a bridge has I/O and MEM access for hot-added devices
by kbuild test robot
Hi Sergei,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on pci/next]
[also build test WARNING on powerpc/next linus/master v5.7-rc3 next-20200428]
[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/Sergei-Miroshnichenko/PCI-Allow-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
config: powerpc-defconfig (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 powerpc cross compiling tool for clang build
# apt-get install binutils-powerpc-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc
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/pci/pci.c:1745:3: warning: ignoring return value of function declared with 'warn_unused_result' attribute [-Wunused-result]
pci_reenable_device(dev);
^~~~~~~~~~~~~~~~~~~ ~~~
1 warning generated.
vim +/warn_unused_result +1745 drivers/pci/pci.c
1732
1733 static void pci_enable_bridge(struct pci_dev *dev)
1734 {
1735 struct pci_dev *bridge;
1736 int retval;
1737
1738 mutex_lock(&dev->enable_mutex);
1739
1740 bridge = pci_upstream_bridge(dev);
1741 if (bridge)
1742 pci_enable_bridge(bridge);
1743
1744 if (pci_is_enabled(dev)) {
> 1745 pci_reenable_device(dev);
1746
1747 if (!dev->is_busmaster)
1748 pci_set_master(dev);
1749 mutex_unlock(&dev->enable_mutex);
1750 return;
1751 }
1752
1753 retval = pci_enable_device(dev);
1754 if (retval)
1755 pci_err(dev, "Error enabling bridge (%d), continuing\n",
1756 retval);
1757 pci_set_master(dev);
1758 mutex_unlock(&dev->enable_mutex);
1759 }
1760
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH v3 1/2] remoteproc: qcom: Add per subsystem SSR notification
by kbuild test robot
Hi Rishabh,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v5.7-rc3 next-20200428]
[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/Rishabh-Bhatnagar/Extend-SSR-not...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 96c9a7802af7d500a582d89a8b864584fe878c1b
config: arm64-defconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
drivers/soc/qcom/glink_ssr.c: In function 'qcom_glink_ssr_probe':
>> drivers/soc/qcom/glink_ssr.c:128:36: error: passing argument 1 of 'qcom_register_ssr_notifier' from incompatible pointer type [-Werror=incompatible-pointer-types]
128 | return qcom_register_ssr_notifier(&ssr->nb);
| ^~~~~~~~
| |
| struct notifier_block *
In file included from drivers/soc/qcom/glink_ssr.c:11:
include/linux/remoteproc/qcom_rproc.h:13:7: note: expected 'const char *' but argument is of type 'struct notifier_block *'
13 | void *qcom_register_ssr_notifier(const char *name, struct notifier_block *nb);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/soc/qcom/glink_ssr.c:128:9: error: too few arguments to function 'qcom_register_ssr_notifier'
128 | return qcom_register_ssr_notifier(&ssr->nb);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/soc/qcom/glink_ssr.c:11:
include/linux/remoteproc/qcom_rproc.h:13:7: note: declared here
13 | void *qcom_register_ssr_notifier(const char *name, struct notifier_block *nb);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/soc/qcom/glink_ssr.c: In function 'qcom_glink_ssr_remove':
>> drivers/soc/qcom/glink_ssr.c:135:2: error: too few arguments to function 'qcom_unregister_ssr_notifier'
135 | qcom_unregister_ssr_notifier(&ssr->nb);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/soc/qcom/glink_ssr.c:11:
include/linux/remoteproc/qcom_rproc.h:14:5: note: declared here
14 | int qcom_unregister_ssr_notifier(void *notify, struct notifier_block *nb);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/soc/qcom/glink_ssr.c: In function 'qcom_glink_ssr_probe':
>> drivers/soc/qcom/glink_ssr.c:129:1: warning: control reaches end of non-void function [-Wreturn-type]
129 | }
| ^
cc1: some warnings being treated as errors
vim +/qcom_register_ssr_notifier +128 drivers/soc/qcom/glink_ssr.c
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 111
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 112 static int qcom_glink_ssr_probe(struct rpmsg_device *rpdev)
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 113 {
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 114 struct glink_ssr *ssr;
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 115
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 116 ssr = devm_kzalloc(&rpdev->dev, sizeof(*ssr), GFP_KERNEL);
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 117 if (!ssr)
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 118 return -ENOMEM;
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 119
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 120 init_completion(&ssr->completion);
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 121
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 122 ssr->dev = &rpdev->dev;
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 123 ssr->ept = rpdev->ept;
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 124 ssr->nb.notifier_call = qcom_glink_ssr_notify;
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 125
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 126 dev_set_drvdata(&rpdev->dev, ssr);
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 127
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 @128 return qcom_register_ssr_notifier(&ssr->nb);
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 @129 }
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 130
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 131 static void qcom_glink_ssr_remove(struct rpmsg_device *rpdev)
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 132 {
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 133 struct glink_ssr *ssr = dev_get_drvdata(&rpdev->dev);
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 134
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 @135 qcom_unregister_ssr_notifier(&ssr->nb);
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 136 }
c4d77d5fcd8bae Bjorn Andersson 2017-07-24 137
:::::: The code at line 128 was first introduced by commit
:::::: c4d77d5fcd8baefb358ae921b940e9bbd09a751e soc: qcom: GLINK SSR notifier
:::::: TO: Bjorn Andersson <bjorn.andersson(a)linaro.org>
:::::: CC: Bjorn Andersson <bjorn.andersson(a)linaro.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[dsahern-linux:nexthops/invalidating-dst 1/1] arch/alpha/include/asm/atomic.h:30:25: note: in expansion of macro 'READ_ONCE'
by kbuild test robot
tree: https://github.com/dsahern/linux nexthops/invalidating-dst
head: 39d5d3fb5d48e83ea3df5ddcbeaa3fe9473c447a
commit: 39d5d3fb5d48e83ea3df5ddcbeaa3fe9473c447a [1/1] ipv6: Use global sernum for dst validation with nexthop objects
config: alpha-defconfig (attached as .config)
compiler: alpha-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 39d5d3fb5d48e83ea3df5ddcbeaa3fe9473c447a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from include/linux/rcupdate.h:24,
from include/linux/init_task.h:5,
from init/init_task.c:2:
include/net/net_namespace.h: In function 'rt_genid_ipv6':
include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:261:17: note: in definition of macro '__READ_ONCE'
261 | union { typeof(x) __val; char __c[1]; } __u; \
| ^
>> arch/alpha/include/asm/atomic.h:30:25: note: in expansion of macro 'READ_ONCE'
30 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:263:22: note: in definition of macro '__READ_ONCE'
263 | __read_once_size(&(x), __u.__c, sizeof(x)); \
| ^
>> arch/alpha/include/asm/atomic.h:30:25: note: in expansion of macro 'READ_ONCE'
30 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:263:42: note: in definition of macro '__READ_ONCE'
263 | __read_once_size(&(x), __u.__c, sizeof(x)); \
| ^
>> arch/alpha/include/asm/atomic.h:30:25: note: in expansion of macro 'READ_ONCE'
30 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:265:30: note: in definition of macro '__READ_ONCE'
265 | __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
| ^
>> arch/alpha/include/asm/atomic.h:30:25: note: in expansion of macro 'READ_ONCE'
30 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:265:50: note: in definition of macro '__READ_ONCE'
265 | __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
| ^
>> arch/alpha/include/asm/atomic.h:30:25: note: in expansion of macro 'READ_ONCE'
30 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
vim +/READ_ONCE +30 arch/alpha/include/asm/atomic.h
^1da177e4c3f41 include/asm-alpha/atomic.h Linus Torvalds 2005-04-16 29
62e8a3258bda11 arch/alpha/include/asm/atomic.h Peter Zijlstra 2015-09-18 @30 #define atomic_read(v) READ_ONCE((v)->counter)
62e8a3258bda11 arch/alpha/include/asm/atomic.h Peter Zijlstra 2015-09-18 31 #define atomic64_read(v) READ_ONCE((v)->counter)
^1da177e4c3f41 include/asm-alpha/atomic.h Linus Torvalds 2005-04-16 32
:::::: The code at line 30 was first introduced by commit
:::::: 62e8a3258bda118f24ff462fe04cfbe75b8189b5 atomic, arch: Audit atomic_{read,set}()
:::::: TO: Peter Zijlstra <peterz(a)infradead.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[lkp] [+618 bytes kernel size regression] [i386-tinyconfig] [0a27074469] rcu/tiny: support reclaim for head-less object
by kbuild test robot
FYI, we noticed a +618 bytes kernel size regression due to commit:
commit: 0a2707446991f80336b8d89c942e498973d4793e (rcu/tiny: support reclaim for head-less object)
url: https://github.com/0day-ci/linux/commits/Uladzislau-Rezki-Sony/Introduce-...
Details as below (size data is obtained by `nm --size-sort vmlinux`):
02dabf68: rcu/tiny: move kvfree_call_rcu() out of header
0a270744: rcu/tiny: support reclaim for head-less object
+----------------------------+----------+----------+-------+
| symbol | 02dabf68 | 0a270744 | delta |
+----------------------------+----------+----------+-------+
| bzImage | 439392 | 439680 | 288 |
| nm.T.kvfree_call_rcu | 5 | 209 | 204 |
| nm.T.rcu_init | 25 | 157 | 132 |
| nm.t.kvfree_rcu_monitor | 0 | 96 | 96 |
| nm.t.kvfree_rcu_work | 0 | 81 | 81 |
| nm.b.monitor_work | 0 | 44 | 44 |
| nm.b.rcu_work | 0 | 28 | 28 |
| nm.t.rcu_process_callbacks | 146 | 153 | 7 |
| nm.T.call_rcu | 46 | 51 | 5 |
| nm.b.kvcache | 0 | 4 | 4 |
| nm.b.kvhead | 0 | 4 | 4 |
| nm.b.kvhead_free | 0 | 4 | 4 |
| nm.b.rcu_init_done | 0 | 4 | 4 |
| nm.T.rcu_qs | 36 | 40 | 4 |
| nm.b.monitor_todo | 0 | 1 | 1 |
+----------------------------+----------+----------+-------+
Thanks,
Kbuild test robot
2 years
[chrome-os:chromeos-5.4 1/8] /bin/bash: line 1: 99452 Aborted ld.lld -m elf32btsmip -r -o fs/xfs/xfs.o fs/xfs/xfs_trace.o fs/xfs/libxfs/xfs_ag.o fs/xfs/libxfs/xfs_alloc.o fs/xfs/libxfs/xfs_alloc_btree.o fs/xfs/libxfs/xfs_attr.o fs/xfs/libxfs/xfs_attr_leaf.o fs/xfs/libxfs/xfs_attr_remote.o fs/xfs/libxfs/xfs_bit.o fs/xfs/libxfs/xfs_bmap.o fs/xfs/libxfs/xfs_bmap_btree.o fs/xfs/libxfs/xfs_btree.o fs/xfs/libxfs/xfs_da_btree.o fs/xfs/libxfs/xfs_da_format.o fs/xfs/libxfs/xfs_defer.o fs
by kbuild test robot
tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.4
head: 7e2879120f0e620e811aa06f640349abceb757bb
commit: 3ed857bc071c551114ae12c184e667a1acb9377f [1/8] FROMGIT: platform/chrome: typec: Fix ret value check error
config: mips-randconfig-a001-20200424 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 10bc12588dac532fad044b2851dde8e7b9121e88)
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
git checkout 3ed857bc071c551114ae12c184e667a1acb9377f
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang 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 >>):
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.
LLVM ERROR: out of memory
>> /bin/bash: line 1: 99452 Aborted ld.lld -m elf32btsmip -r -o fs/xfs/xfs.o fs/xfs/xfs_trace.o fs/xfs/libxfs/xfs_ag.o fs/xfs/libxfs/xfs_alloc.o fs/xfs/libxfs/xfs_alloc_btree.o fs/xfs/libxfs/xfs_attr.o fs/xfs/libxfs/xfs_attr_leaf.o fs/xfs/libxfs/xfs_attr_remote.o fs/xfs/libxfs/xfs_bit.o fs/xfs/libxfs/xfs_bmap.o fs/xfs/libxfs/xfs_bmap_btree.o fs/xfs/libxfs/xfs_btree.o fs/xfs/libxfs/xfs_da_btree.o fs/xfs/libxfs/xfs_da_format.o fs/xfs/libxfs/xfs_defer.o fs/xfs/libxfs/xfs_dir2.o fs/xfs/libxfs/xfs_dir2_block.o fs/xfs/libxfs/xfs_dir2_data.o fs/xfs/libxfs/xfs_dir2_leaf.o fs/xfs/libxfs/xfs_dir2_node.o fs/xfs/libxfs/xfs_dir2_sf.o fs/xfs/libxfs/xfs_dquot_buf.o fs/xfs/libxfs/xfs_ialloc.o fs/xfs/libxfs/xfs_ialloc_btree.o fs/xfs/libxfs/xfs_iext_tree.o fs/xfs/libxfs/xfs_inode_fork.o fs/xfs/libxfs/xfs_inode_buf.o fs/xfs/libxfs/xfs_log_rlimit.o fs/xfs/libxfs/xfs_ag_resv.o fs/xfs/libxfs/xfs_rmap.o fs/xfs/libxfs/xfs_rmap_btree.o fs/xfs/libxfs/xfs_refcount.o fs/xfs/libxfs/xfs_refcount_btree.o fs/xfs/libxfs/xfs_sb.o fs/xfs/libxfs/xfs_symlink_remote.o fs/xfs/libxfs/xfs_trans_inode.o fs/xfs/libxfs/xfs_trans_resv.o fs/xfs/libxfs/xfs_types.o fs/xfs/libxfs/xfs_rtbitmap.o fs/xfs/xfs_aops.o fs/xfs/xfs_attr_inactive.o fs/xfs/xfs_attr_list.o fs/xfs/xfs_bmap_util.o fs/xfs/xfs_bio_io.o fs/xfs/xfs_buf.o fs/xfs/xfs_dir2_readdir.o fs/xfs/xfs_discard.o fs/xfs/xfs_error.o fs/xfs/xfs_export.o fs/xfs/xfs_extent_busy.o fs/xfs/xfs_file.o fs/xfs/xfs_filestream.o fs/xfs/xfs_fsmap.o fs/xfs/xfs_fsops.o fs/xfs/xfs_globals.o fs/xfs/xfs_health.o fs/xfs/xfs_icache.o fs/xfs/xfs_ioctl.o fs/xfs/xfs_iomap.o fs/xfs/xfs_iops.o fs/xfs/xfs_inode.o fs/xfs/xfs_itable.o fs/xfs/xfs_iwalk.o fs/xfs/xfs_message.o fs/xfs/xfs_mount.o fs/xfs/xfs_mru_cache.o fs/xfs/xfs_pwork.o fs/xfs/xfs_reflink.o fs/xfs/xfs_stats.o fs/xfs/xfs_super.o fs/xfs/xfs_symlink.o fs/xfs/xfs_sysfs.o fs/xfs/xfs_trans.o fs/xfs/xfs_xattr.o fs/xfs/kmem.o fs/xfs/xfs_log.o fs/xfs/xfs_log_cil.o fs/xfs/xfs_bmap_item.o fs/xfs/xfs_buf_item.o fs/xfs/xfs_extfree_item.o fs/xfs/xfs_icreate_item.o fs/xfs/xfs_inode_item.o fs/xfs/xfs_refcount_item.o fs/xfs/xfs_rmap_item.o fs/xfs/xfs_log_recover.o fs/xfs/xfs_trans_ail.o fs/xfs/xfs_trans_buf.o fs/xfs/xfs_dquot.o fs/xfs/xfs_dquot_item.o fs/xfs/xfs_trans_dquot.o fs/xfs/xfs_qm_syscalls.o fs/xfs/xfs_qm_bhv.o fs/xfs/xfs_qm.o fs/xfs/xfs_quotaops.o fs/xfs/xfs_rtalloc.o fs/xfs/xfs_acl.o fs/xfs/xfs_sysctl.o fs/xfs/xfs_pnfs.o fs/xfs/scrub/trace.o fs/xfs/scrub/agheader.o fs/xfs/scrub/alloc.o fs/xfs/scrub/attr.o fs/xfs/scrub/bmap.o fs/xfs/scrub/btree.o fs/xfs/scrub/common.o fs/xfs/scrub/dabtree.o fs/xfs/scrub/dir.o fs/xfs/scrub/fscounters.o fs/xfs/scrub/health.o fs/xfs/scrub/ialloc.o fs/xfs/scrub/inode.o fs/xfs/scrub/parent.o fs/xfs/scrub/refcount.o fs/xfs/scrub/rmap.o fs/xfs/scrub/scrub.o fs/xfs/scrub/symlink.o fs/xfs/scrub/rtbitmap.o fs/xfs/scrub/quota.o
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH 11/24] rcu/tree: Maintain separate array for vmalloc ptrs
by kbuild test robot
Hi "Uladzislau,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on rcu/dev]
[also build test ERROR on rcu/rcu/next next-20200428]
[cannot apply to linus/master linux/master 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/Uladzislau-Rezki-Sony/Introduce-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev
config: mips-loongson1c_defconfig (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 mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang 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 >>):
>> kernel/rcu/tree.c:3053:4: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(bvhead->records[i]);
^
1 error generated.
vim +/vfree +3053 kernel/rcu/tree.c
2989
2990 /*
2991 * This function is invoked in workqueue context after a grace period.
2992 * It frees all the objects queued on ->bhead_free or ->head_free.
2993 */
2994 static void kfree_rcu_work(struct work_struct *work)
2995 {
2996 unsigned long flags;
2997 struct kvfree_rcu_bulk_data *bkhead, *bvhead, *bnext;
2998 struct rcu_head *head, *next;
2999 struct kfree_rcu_cpu *krcp;
3000 struct kfree_rcu_cpu_work *krwp;
3001 int i;
3002
3003 krwp = container_of(to_rcu_work(work),
3004 struct kfree_rcu_cpu_work, rcu_work);
3005 krcp = krwp->krcp;
3006
3007 raw_spin_lock_irqsave(&krcp->lock, flags);
3008 /* Channel 1. */
3009 bkhead = krwp->bkvhead_free[0];
3010 krwp->bkvhead_free[0] = NULL;
3011
3012 /* Channel 2. */
3013 bvhead = krwp->bkvhead_free[1];
3014 krwp->bkvhead_free[1] = NULL;
3015
3016 /* Channel 3. */
3017 head = krwp->head_free;
3018 krwp->head_free = NULL;
3019 raw_spin_unlock_irqrestore(&krcp->lock, flags);
3020
3021 /* kmalloc()/kfree() channel. */
3022 for (; bkhead; bkhead = bnext) {
3023 bnext = bkhead->next;
3024 debug_rcu_bhead_unqueue(bkhead);
3025
3026 rcu_lock_acquire(&rcu_callback_map);
3027 trace_rcu_invoke_kfree_bulk_callback(rcu_state.name,
3028 bkhead->nr_records, bkhead->records);
3029
3030 kfree_bulk(bkhead->nr_records, bkhead->records);
3031 rcu_lock_release(&rcu_callback_map);
3032
3033 krcp = krc_this_cpu_lock(&flags);
3034 if (put_cached_bnode(krcp, bkhead))
3035 bkhead = NULL;
3036 krc_this_cpu_unlock(krcp, flags);
3037
3038 if (bkhead)
3039 free_page((unsigned long) bkhead);
3040
3041 cond_resched_tasks_rcu_qs();
3042 }
3043
3044 /* vmalloc()/vfree() channel. */
3045 for (; bvhead; bvhead = bnext) {
3046 bnext = bvhead->next;
3047 debug_rcu_bhead_unqueue(bvhead);
3048
3049 rcu_lock_acquire(&rcu_callback_map);
3050 for (i = 0; i < bvhead->nr_records; i++) {
3051 trace_rcu_invoke_kfree_callback(rcu_state.name,
3052 (struct rcu_head *) bvhead->records[i], 0);
> 3053 vfree(bvhead->records[i]);
3054 }
3055 rcu_lock_release(&rcu_callback_map);
3056
3057 krcp = krc_this_cpu_lock(&flags);
3058 if (put_cached_bnode(krcp, bvhead))
3059 bvhead = NULL;
3060 krc_this_cpu_unlock(krcp, flags);
3061
3062 if (bvhead)
3063 free_page((unsigned long) bvhead);
3064
3065 cond_resched_tasks_rcu_qs();
3066 }
3067
3068 /*
3069 * Emergency case only. It can happen under low memory
3070 * condition when an allocation gets failed, so the "bulk"
3071 * path can not be temporary maintained.
3072 */
3073 for (; head; head = next) {
3074 unsigned long offset = (unsigned long)head->func;
3075 void *ptr = (void *)head - offset;
3076
3077 next = head->next;
3078 debug_rcu_head_unqueue((struct rcu_head *)ptr);
3079 rcu_lock_acquire(&rcu_callback_map);
3080 trace_rcu_invoke_kfree_callback(rcu_state.name, head, offset);
3081
3082 if (!WARN_ON_ONCE(!__is_kfree_rcu_offset(offset)))
3083 kvfree(ptr);
3084
3085 rcu_lock_release(&rcu_callback_map);
3086 cond_resched_tasks_rcu_qs();
3087 }
3088 }
3089
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[dsahern-linux:nexthops/invalidating-dst 1/1] include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
by kbuild test robot
tree: https://github.com/dsahern/linux nexthops/invalidating-dst
head: 39d5d3fb5d48e83ea3df5ddcbeaa3fe9473c447a
commit: 39d5d3fb5d48e83ea3df5ddcbeaa3fe9473c447a [1/1] ipv6: Use global sernum for dst validation with nexthop objects
config: nds32-defconfig (attached as .config)
compiler: nds32le-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 39d5d3fb5d48e83ea3df5ddcbeaa3fe9473c447a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=nds32
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from include/linux/kernel.h:11,
from include/linux/list.h:9,
from include/linux/module.h:12,
from net/ethernet/eth.c:36:
include/net/net_namespace.h: In function 'rt_genid_ipv6':
>> include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:261:17: note: in definition of macro '__READ_ONCE'
261 | union { typeof(x) __val; char __c[1]; } __u; \
| ^
include/asm-generic/atomic.h:171:24: note: in expansion of macro 'READ_ONCE'
171 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
>> include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
>> include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:263:22: note: in definition of macro '__READ_ONCE'
263 | __read_once_size(&(x), __u.__c, sizeof(x)); \
| ^
include/asm-generic/atomic.h:171:24: note: in expansion of macro 'READ_ONCE'
171 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
>> include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
>> include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:263:42: note: in definition of macro '__READ_ONCE'
263 | __read_once_size(&(x), __u.__c, sizeof(x)); \
| ^
include/asm-generic/atomic.h:171:24: note: in expansion of macro 'READ_ONCE'
171 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
>> include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
>> include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:265:30: note: in definition of macro '__READ_ONCE'
265 | __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
| ^
include/asm-generic/atomic.h:171:24: note: in expansion of macro 'READ_ONCE'
171 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
>> include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
>> include/net/net_namespace.h:442:27: error: 'const struct net' has no member named 'ipv6'; did you mean 'ipv4'?
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~
include/linux/compiler.h:265:50: note: in definition of macro '__READ_ONCE'
265 | __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
| ^
include/asm-generic/atomic.h:171:24: note: in expansion of macro 'READ_ONCE'
171 | #define atomic_read(v) READ_ONCE((v)->counter)
| ^~~~~~~~~
>> include/net/net_namespace.h:442:9: note: in expansion of macro 'atomic_read'
442 | return atomic_read(&net->ipv6.fib6_sernum);
| ^~~~~~~~~~~
vim +442 include/net/net_namespace.h
439
440 static inline int rt_genid_ipv6(const struct net *net)
441 {
> 442 return atomic_read(&net->ipv6.fib6_sernum);
443 }
444
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years