Re: [PATCH v2 04/13] mm/debug_vm_pgtables/hugevmap: Use the arch helper to identify huge vmap support.
by kernel test robot
Hi "Aneesh,
I love your patch! Yet something to improve:
[auto build test ERROR on hnaz-linux-mm/master]
[also build test ERROR on powerpc/next linus/master v5.9-rc1 next-20200819]
[cannot apply to mmotm/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/Aneesh-Kumar-K-V/mm-debug_vm_pgt...
base: https://github.com/hnaz/linux-mm master
config: i386-randconfig-s002-20200818 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-183-gaa6ede3b-dirty
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> arch/x86/mm/ioremap.c:484:12: error: redefinition of 'arch_ioremap_p4d_supported'
484 | int __init arch_ioremap_p4d_supported(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/x86/mm/ioremap.c:12:
include/linux/io.h:41:19: note: previous definition of 'arch_ioremap_p4d_supported' was here
41 | static inline int arch_ioremap_p4d_supported(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> arch/x86/mm/ioremap.c:489:12: error: redefinition of 'arch_ioremap_pud_supported'
489 | int __init arch_ioremap_pud_supported(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/x86/mm/ioremap.c:12:
include/linux/io.h:45:19: note: previous definition of 'arch_ioremap_pud_supported' was here
45 | static inline int arch_ioremap_pud_supported(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> arch/x86/mm/ioremap.c:498:12: error: redefinition of 'arch_ioremap_pmd_supported'
498 | int __init arch_ioremap_pmd_supported(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/x86/mm/ioremap.c:12:
include/linux/io.h:49:19: note: previous definition of 'arch_ioremap_pmd_supported' was here
49 | static inline int arch_ioremap_pmd_supported(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/mm/ioremap.c:737:17: warning: no previous prototype for 'early_memremap_pgprot_adjust' [-Wmissing-prototypes]
737 | pgprot_t __init early_memremap_pgprot_adjust(resource_size_t phys_addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
# https://github.com/0day-ci/linux/commit/260b675444a7d5afa9ccef47ca9e588fb...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Aneesh-Kumar-K-V/mm-debug_vm_pgtable-fixes/20200819-213446
git checkout 260b675444a7d5afa9ccef47ca9e588fb18d01a3
vim +/arch_ioremap_p4d_supported +484 arch/x86/mm/ioremap.c
^1da177e4c3f41 arch/i386/mm/ioremap.c Linus Torvalds 2005-04-16 483
0f472d04f59ff8 arch/x86/mm/ioremap.c Anshuman Khandual 2019-07-16 @484 int __init arch_ioremap_p4d_supported(void)
0f472d04f59ff8 arch/x86/mm/ioremap.c Anshuman Khandual 2019-07-16 485 {
0f472d04f59ff8 arch/x86/mm/ioremap.c Anshuman Khandual 2019-07-16 486 return 0;
0f472d04f59ff8 arch/x86/mm/ioremap.c Anshuman Khandual 2019-07-16 487 }
0f472d04f59ff8 arch/x86/mm/ioremap.c Anshuman Khandual 2019-07-16 488
1e6277de3a2337 arch/x86/mm/ioremap.c Jan Beulich 2015-05-28 @489 int __init arch_ioremap_pud_supported(void)
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 490 {
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 491 #ifdef CONFIG_X86_64
b8291adc191abe arch/x86/mm/ioremap.c Borislav Petkov 2016-03-29 492 return boot_cpu_has(X86_FEATURE_GBPAGES);
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 493 #else
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 494 return 0;
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 495 #endif
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 496 }
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 497
1e6277de3a2337 arch/x86/mm/ioremap.c Jan Beulich 2015-05-28 @498 int __init arch_ioremap_pmd_supported(void)
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 499 {
16bf92261b1b6c arch/x86/mm/ioremap.c Borislav Petkov 2016-03-29 500 return boot_cpu_has(X86_FEATURE_PSE);
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 501 }
5d72b4fba40ef4 arch/x86/mm/ioremap.c Toshi Kani 2015-04-14 502
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[ath6kl:pending 106/110] drivers/net/wireless/ath/ath10k/mac.c:3033:6-25: duplicated argument to && or || (fwd)
by Julia Lawall
On line 3033 there are two occurrences of arvif->rate_ctrl[i]
julia
---------- Forwarded message ----------
Date: Wed, 19 Aug 2020 09:21:21 +0800
From: kernel test robot <lkp(a)intel.com>
To: kbuild(a)lists.01.org
Cc: lkp(a)intel.com, Julia Lawall <julia.lawall(a)lip6.fr>
Subject: [ath6kl:pending 106/110]
drivers/net/wireless/ath/ath10k/mac.c:3033:6-25: duplicated argument to &&
or ||
CC: kbuild-all(a)lists.01.org
CC: Kalle Valo <kvalo(a)codeaurora.org>
CC: ath10k(a)lists.infradead.org
TO: Tamizh Chelvam <tamizhr(a)codeaurora.org>
CC: Kalle Valo <kvalo(a)codeaurora.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git pending
head: 45b6467afc71b6e19e4ffe264c448409add56f84
commit: cd275e8765b99d313c06d867af6e3fcc90484cfb [106/110] ath10k: Add new api to support TID specific configuration
:::::: branch date: 15 hours ago
:::::: commit date: 15 hours ago
config: x86_64-randconfig-c004-20200818 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Julia Lawall <julia.lawall(a)lip6.fr>
coccinelle warnings: (new ones prefixed by >>)
>> drivers/net/wireless/ath/ath10k/mac.c:3033:6-25: duplicated argument to && or ||
# https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/commit/?id=...
git remote add ath6kl https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
git fetch --no-tags ath6kl pending
git checkout cd275e8765b99d313c06d867af6e3fcc90484cfb
vim +3033 drivers/net/wireless/ath/ath10k/mac.c
5e3dd157d7e70f Kalle Valo 2013-06-12 3020
cd275e8765b99d Tamizh Chelvam 2020-08-18 3021 static int ath10k_new_peer_tid_config(struct ath10k *ar,
cd275e8765b99d Tamizh Chelvam 2020-08-18 3022 struct ieee80211_sta *sta,
cd275e8765b99d Tamizh Chelvam 2020-08-18 3023 struct ath10k_vif *arvif)
cd275e8765b99d Tamizh Chelvam 2020-08-18 3024 {
cd275e8765b99d Tamizh Chelvam 2020-08-18 3025 struct wmi_per_peer_per_tid_cfg_arg arg = {};
cd275e8765b99d Tamizh Chelvam 2020-08-18 3026 struct ath10k_sta *arsta = (struct ath10k_sta *)sta->drv_priv;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3027 bool config_apply;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3028 int ret, i;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3029
cd275e8765b99d Tamizh Chelvam 2020-08-18 3030 for (i = 0; i < ATH10K_TID_MAX; i++) {
cd275e8765b99d Tamizh Chelvam 2020-08-18 3031 config_apply = false;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3032 if (arvif->retry_long[i] || arvif->ampdu[i] ||
cd275e8765b99d Tamizh Chelvam 2020-08-18 @3033 arvif->rate_ctrl[i] || arvif->rate_ctrl[i] ||
cd275e8765b99d Tamizh Chelvam 2020-08-18 3034 arvif->rtscts[i]) {
cd275e8765b99d Tamizh Chelvam 2020-08-18 3035 config_apply = true;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3036 arg.tid = i;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3037 arg.vdev_id = arvif->vdev_id;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3038 arg.retry_count = arvif->retry_long[i];
cd275e8765b99d Tamizh Chelvam 2020-08-18 3039 arg.aggr_control = arvif->ampdu[i];
cd275e8765b99d Tamizh Chelvam 2020-08-18 3040 arg.rate_ctrl = arvif->rate_ctrl[i];
cd275e8765b99d Tamizh Chelvam 2020-08-18 3041 arg.rcode_flags = arvif->rate_code[i];
cd275e8765b99d Tamizh Chelvam 2020-08-18 3042
cd275e8765b99d Tamizh Chelvam 2020-08-18 3043 if (arvif->rtscts[i])
cd275e8765b99d Tamizh Chelvam 2020-08-18 3044 arg.ext_tid_cfg_bitmap =
cd275e8765b99d Tamizh Chelvam 2020-08-18 3045 WMI_EXT_TID_RTS_CTS_CONFIG;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3046 else
cd275e8765b99d Tamizh Chelvam 2020-08-18 3047 arg.ext_tid_cfg_bitmap = 0;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3048
cd275e8765b99d Tamizh Chelvam 2020-08-18 3049 arg.rtscts_ctrl = arvif->rtscts[i];
cd275e8765b99d Tamizh Chelvam 2020-08-18 3050 }
cd275e8765b99d Tamizh Chelvam 2020-08-18 3051
cd275e8765b99d Tamizh Chelvam 2020-08-18 3052 if (arvif->noack[i]) {
cd275e8765b99d Tamizh Chelvam 2020-08-18 3053 arg.ack_policy = arvif->noack[i];
cd275e8765b99d Tamizh Chelvam 2020-08-18 3054 arg.rate_ctrl = WMI_TID_CONFIG_RATE_CONTROL_DEFAULT_LOWEST_RATE;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3055 arg.aggr_control = WMI_TID_CONFIG_AGGR_CONTROL_DISABLE;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3056 config_apply = true;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3057 }
cd275e8765b99d Tamizh Chelvam 2020-08-18 3058
cd275e8765b99d Tamizh Chelvam 2020-08-18 3059 /* Assign default value(-1) to newly connected station.
cd275e8765b99d Tamizh Chelvam 2020-08-18 3060 * This is to identify station specific tid configuration not
cd275e8765b99d Tamizh Chelvam 2020-08-18 3061 * configured for the station.
cd275e8765b99d Tamizh Chelvam 2020-08-18 3062 */
cd275e8765b99d Tamizh Chelvam 2020-08-18 3063 arsta->retry_long[i] = -1;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3064 arsta->noack[i] = -1;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3065 arsta->ampdu[i] = -1;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3066
cd275e8765b99d Tamizh Chelvam 2020-08-18 3067 if (!config_apply)
cd275e8765b99d Tamizh Chelvam 2020-08-18 3068 continue;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3069
cd275e8765b99d Tamizh Chelvam 2020-08-18 3070 ether_addr_copy(arg.peer_macaddr.addr, sta->addr);
cd275e8765b99d Tamizh Chelvam 2020-08-18 3071
cd275e8765b99d Tamizh Chelvam 2020-08-18 3072 ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, &arg);
cd275e8765b99d Tamizh Chelvam 2020-08-18 3073 if (ret) {
cd275e8765b99d Tamizh Chelvam 2020-08-18 3074 ath10k_warn(ar, "failed to set per tid retry/aggr config for sta %pM: %d\n",
cd275e8765b99d Tamizh Chelvam 2020-08-18 3075 sta->addr, ret);
cd275e8765b99d Tamizh Chelvam 2020-08-18 3076 return ret;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3077 }
cd275e8765b99d Tamizh Chelvam 2020-08-18 3078
cd275e8765b99d Tamizh Chelvam 2020-08-18 3079 memset(&arg, 0, sizeof(arg));
cd275e8765b99d Tamizh Chelvam 2020-08-18 3080 }
cd275e8765b99d Tamizh Chelvam 2020-08-18 3081
cd275e8765b99d Tamizh Chelvam 2020-08-18 3082 return 0;
cd275e8765b99d Tamizh Chelvam 2020-08-18 3083 }
cd275e8765b99d Tamizh Chelvam 2020-08-18 3084
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
Re: [Intel-gfx] [PATCH v1] drm/i915/gt: convert tasklets to use new tasklet_setup() API
by kernel test robot
Hi Andy,
I love your patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on v5.9-rc1 next-20200819]
[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/Andy-Shevchenko/drm-i915-gt-conv...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-randconfig-r024-20200818 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# save the attached .config to linux build tree
make 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 error/warnings (new ones prefixed by >>):
drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'execlists_submission_tasklet':
drivers/gpu/drm/i915/gt/intel_lrc.c:3135:42: error: implicit declaration of function 'from_tasklet' [-Werror=implicit-function-declaration]
3135 | struct intel_engine_cs * const engine = from_tasklet(engine, t, execlists.tasklet);
| ^~~~~~~~~~~~
drivers/gpu/drm/i915/gt/intel_lrc.c:3135:66: error: 'execlists' undeclared (first use in this function); did you mean 'execlists_hold'?
3135 | struct intel_engine_cs * const engine = from_tasklet(engine, t, execlists.tasklet);
| ^~~~~~~~~
| execlists_hold
drivers/gpu/drm/i915/gt/intel_lrc.c:3135:66: note: each undeclared identifier is reported only once for each function it appears in
drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'intel_execlists_set_default_submission':
>> drivers/gpu/drm/i915/gt/intel_lrc.c:4989:33: error: assignment to 'void (*)(long unsigned int)' from incompatible pointer type 'void (*)(struct tasklet_struct *)' [-Werror=incompatible-pointer-types]
4989 | engine->execlists.tasklet.func = execlists_submission_tasklet;
| ^
drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'intel_execlists_submission_setup':
drivers/gpu/drm/i915/gt/intel_lrc.c:5116:2: error: implicit declaration of function 'tasklet_setup' [-Werror=implicit-function-declaration]
5116 | tasklet_setup(&engine->execlists.tasklet, execlists_submission_tasklet);
| ^~~~~~~~~~~~~
drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'virtual_submission_tasklet':
drivers/gpu/drm/i915/gt/intel_lrc.c:5513:57: error: 'base' undeclared (first use in this function)
5513 | struct virtual_engine * const ve = from_tasklet(ve, t, base.execlists.tasklet);
| ^~~~
drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'intel_execlists_create_virtual':
>> drivers/gpu/drm/i915/gt/intel_lrc.c:5748:39: warning: comparison of distinct pointer types lacks a cast
5748 | if (sibling->execlists.tasklet.func !=
| ^~
cc1: some warnings being treated as errors
# https://github.com/0day-ci/linux/commit/72a087952fafa97f8e7fa8b42fee8234c...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Andy-Shevchenko/drm-i915-gt-convert-tasklets-to-use-new-tasklet_setup-API/20200819-195502
git checkout 72a087952fafa97f8e7fa8b42fee8234c2a04fd7
vim +4989 drivers/gpu/drm/i915/gt/intel_lrc.c
c34c5bca331adc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-05-03 4984
209b7955e59e36 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2018-07-17 4985 void intel_execlists_set_default_submission(struct intel_engine_cs *engine)
ddd66c5154c25d drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2016-08-02 4986 {
f4ea6bddb9988e drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2016-08-02 4987 engine->submit_request = execlists_submit_request;
e2f3496e93be32 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2018-10-01 4988 engine->schedule = i915_schedule;
c6dce8f140bc19 drivers/gpu/drm/i915/intel_lrc.c Sagar Arun Kamble 2017-11-16 @4989 engine->execlists.tasklet.func = execlists_submission_tasklet;
aba5e278586b16 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2017-10-25 4990
1329115c6c4370 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2018-05-16 4991 engine->reset.prepare = execlists_reset_prepare;
e26b6d4341476f drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-22 4992 engine->reset.rewind = execlists_reset_rewind;
e26b6d4341476f drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-22 4993 engine->reset.cancel = execlists_reset_cancel;
292ad25c22d965 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2019-04-11 4994 engine->reset.finish = execlists_reset_finish;
1329115c6c4370 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2018-05-16 4995
c34c5bca331adc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-05-03 4996 engine->park = execlists_park;
aba5e278586b16 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2017-10-25 4997 engine->unpark = NULL;
cf669b4e9fdce4 drivers/gpu/drm/i915/intel_lrc.c Tvrtko Ursulin 2017-11-29 4998
cf669b4e9fdce4 drivers/gpu/drm/i915/intel_lrc.c Tvrtko Ursulin 2017-11-29 4999 engine->flags |= I915_ENGINE_SUPPORTS_STATS;
09975b861aa0c5 drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-07-09 5000 if (!intel_vgpu_active(engine->i915)) {
a2deb87396b090 drivers/gpu/drm/i915/intel_lrc.c Zhenyu Wang 2019-03-27 5001 engine->flags |= I915_ENGINE_HAS_SEMAPHORES;
a211da9c771bf9 drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2020-05-01 5002 if (HAS_LOGICAL_RING_PREEMPTION(engine->i915)) {
2a694feb93556e drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2018-04-03 5003 engine->flags |= I915_ENGINE_HAS_PREEMPTION;
a211da9c771bf9 drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2020-05-01 5004 if (IS_ACTIVE(CONFIG_DRM_I915_TIMESLICE_DURATION))
a211da9c771bf9 drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2020-05-01 5005 engine->flags |= I915_ENGINE_HAS_TIMESLICES;
a211da9c771bf9 drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2020-05-01 5006 }
20311bd3506043 drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2016-11-14 5007 }
cdb736fa8b8b65 drivers/gpu/drm/i915/gt/intel_lrc.c Mika Kuoppala 2019-09-06 5008
ba2c74da52eba3 drivers/gpu/drm/i915/gt/intel_lrc.c Daniele Ceraolo Spurio 2019-10-09 5009 if (INTEL_GEN(engine->i915) >= 12)
cdb736fa8b8b65 drivers/gpu/drm/i915/gt/intel_lrc.c Mika Kuoppala 2019-09-06 5010 engine->flags |= I915_ENGINE_HAS_RELATIVE_MMIO;
a5e93b42f462fc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-13 5011
a5e93b42f462fc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-13 5012 if (intel_engine_has_preemption(engine))
a5e93b42f462fc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-13 5013 engine->emit_bb_start = gen8_emit_bb_start;
a5e93b42f462fc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-13 5014 else
a5e93b42f462fc drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-12-13 5015 engine->emit_bb_start = gen8_emit_bb_start_noarb;
09975b861aa0c5 drivers/gpu/drm/i915/gt/intel_lrc.c Chris Wilson 2019-07-09 5016 }
ddd66c5154c25d drivers/gpu/drm/i915/intel_lrc.c Chris Wilson 2016-08-02 5017
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/video/fbdev/mx3fb.c:1336:26: sparse: sparse: incorrect type in assignment (different address spaces)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 18445bf405cb331117bc98427b1ba6f12418ad17
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 9 weeks ago
config: arm64-randconfig-s031-20200819 (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
# apt-get install sparse
# sparse version: v0.6.2-183-gaa6ede3b-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/mx3fb.c:1336:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected char [noderef] __iomem *screen_base @@ got void * @@
>> drivers/video/fbdev/mx3fb.c:1336:26: sparse: expected char [noderef] __iomem *screen_base
drivers/video/fbdev/mx3fb.c:1336:26: sparse: got void *
>> drivers/video/fbdev/mx3fb.c:1359:17: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/video/fbdev/mx3fb.c:1377:56: sparse: sparse: incorrect type in argument 3 (different address spaces) @@ expected void *cpu_addr @@ got char [noderef] __iomem *screen_base @@
drivers/video/fbdev/mx3fb.c:1377:56: sparse: expected void *cpu_addr
>> drivers/video/fbdev/mx3fb.c:1377:56: sparse: got char [noderef] __iomem *screen_base
drivers/video/fbdev/mx3fb.c:1094:25: sparse: sparse: cast removes address space '__iomem' of expression
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
vim +1336 drivers/video/fbdev/mx3fb.c
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1313
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1314 /*
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1315 * Main framebuffer functions
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1316 */
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1317
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1318 /**
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1319 * mx3fb_map_video_memory() - allocates the DRAM memory for the frame buffer.
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1320 * @fbi: framebuffer information pointer
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1321 * @mem_len: length of mapped memory
20de03dae54e10 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-08-06 1322 * @lock: do not lock during initialisation
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1323 * @return: Error code indicating success or failure
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1324 *
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1325 * This buffer is remapped into a non-cached, non-buffered, memory region to
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1326 * allow palette and pixel writes to occur without flushing the cache. Once this
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1327 * area is remapped, all virtual memory access to the video memory should occur
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1328 * at the new region.
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1329 */
20de03dae54e10 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-08-06 1330 static int mx3fb_map_video_memory(struct fb_info *fbi, unsigned int mem_len,
20de03dae54e10 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-08-06 1331 bool lock)
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1332 {
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1333 int retval = 0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1334 dma_addr_t addr;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1335
f6e45661f9be54 drivers/video/fbdev/mx3fb.c Luis R. Rodriguez 2016-01-22 @1336 fbi->screen_base = dma_alloc_wc(fbi->device, mem_len, &addr,
f6e45661f9be54 drivers/video/fbdev/mx3fb.c Luis R. Rodriguez 2016-01-22 1337 GFP_DMA | GFP_KERNEL);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1338
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1339 if (!fbi->screen_base) {
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1340 dev_err(fbi->device, "Cannot allocate %u bytes framebuffer memory\n",
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1341 mem_len);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1342 retval = -EBUSY;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1343 goto err0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1344 }
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1345
20de03dae54e10 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-08-06 1346 if (lock)
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1347 mutex_lock(&fbi->mm_lock);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1348 fbi->fix.smem_start = addr;
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1349 fbi->fix.smem_len = mem_len;
20de03dae54e10 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-08-06 1350 if (lock)
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1351 mutex_unlock(&fbi->mm_lock);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1352
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1353 dev_dbg(fbi->device, "allocated fb @ p=0x%08x, v=0x%p, size=%d.\n",
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1354 (uint32_t) fbi->fix.smem_start, fbi->screen_base, fbi->fix.smem_len);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1355
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1356 fbi->screen_size = fbi->fix.smem_len;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1357
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1358 /* Clear the screen */
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 @1359 memset((char *)fbi->screen_base, 0, fbi->fix.smem_len);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1360
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1361 return 0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1362
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1363 err0:
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1364 fbi->fix.smem_len = 0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1365 fbi->fix.smem_start = 0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1366 fbi->screen_base = NULL;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1367 return retval;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1368 }
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1369
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1370 /**
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1371 * mx3fb_unmap_video_memory() - de-allocate frame buffer memory.
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1372 * @fbi: framebuffer information pointer
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1373 * @return: error code indicating success or failure
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1374 */
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1375 static int mx3fb_unmap_video_memory(struct fb_info *fbi)
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1376 {
f6e45661f9be54 drivers/video/fbdev/mx3fb.c Luis R. Rodriguez 2016-01-22 @1377 dma_free_wc(fbi->device, fbi->fix.smem_len, fbi->screen_base,
f6e45661f9be54 drivers/video/fbdev/mx3fb.c Luis R. Rodriguez 2016-01-22 1378 fbi->fix.smem_start);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1379
f3d8496e9c8418 drivers/video/mx3fb.c Fabio Estevam 2013-02-21 1380 fbi->screen_base = NULL;
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1381 mutex_lock(&fbi->mm_lock);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1382 fbi->fix.smem_start = 0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1383 fbi->fix.smem_len = 0;
537a1bf059fa31 drivers/video/mx3fb.c Krzysztof Helt 2009-06-30 1384 mutex_unlock(&fbi->mm_lock);
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1385 return 0;
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1386 }
86528da229a448 drivers/video/mx3fb.c Guennadi Liakhovetski 2009-01-21 1387
:::::: The code at line 1336 was first introduced by commit
:::::: f6e45661f9be546811b62b2b01f32f4bf0c436c0 dma, mm/pat: Rename dma_*_writecombine() to dma_*_wc()
:::::: TO: Luis R. Rodriguez <mcgrof(a)suse.com>
:::::: 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, 1 month
[hverkuil-media:tegrav4 22/25] drivers/media/i2c/imx274.c:1864:10: warning: variable 'ret' is uninitialized when used here
by kernel test robot
tree: git://linuxtv.org/hverkuil/media_tree.git tegrav4
head: ce1e7ce798ee872c0cd58f0a98a1f4db0606f8a2
commit: 8e6137f211b496f99153e409c92f7a5ce3c9dbf3 [22/25] media: i2c: Add support for IMX274 supplies and external clock
config: arm-randconfig-r021-20200818 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b34b1e38381fa4d1b1d9751a6b5233b68e734cfe)
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
git checkout 8e6137f211b496f99153e409c92f7a5ce3c9dbf3
# 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: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/media/i2c/imx274.c:1864:10: warning: variable 'ret' is uninitialized when used here [-Wuninitialized]
return ret;
^~~
drivers/media/i2c/imx274.c:1852:9: note: initialize the variable 'ret' to silence this warning
int ret;
^
= 0
1 warning generated.
git remote add hverkuil-media git://linuxtv.org/hverkuil/media_tree.git
git fetch --no-tags hverkuil-media tegrav4
git checkout 8e6137f211b496f99153e409c92f7a5ce3c9dbf3
vim +/ret +1864 drivers/media/i2c/imx274.c
1847
1848 static int imx274_probe(struct i2c_client *client)
1849 {
1850 struct v4l2_subdev *sd;
1851 struct stimx274 *imx274;
1852 int ret;
1853
1854 /* initialize imx274 */
1855 imx274 = devm_kzalloc(&client->dev, sizeof(*imx274), GFP_KERNEL);
1856 if (!imx274)
1857 return -ENOMEM;
1858
1859 mutex_init(&imx274->lock);
1860
1861 imx274->xclk = devm_clk_get(&client->dev, "xclk");
1862 if (IS_ERR(imx274->xclk)) {
1863 dev_err(&client->dev, "Failed to get xclk\n");
> 1864 return ret;
1865 }
1866
1867 ret = clk_set_rate(imx274->xclk, IMX274_DEFAULT_CLK_FREQ);
1868 if (ret < 0) {
1869 dev_err(&client->dev, "Failed to set xclk rate\n");
1870 return ret;
1871 }
1872
1873 ret = imx274_get_regulators(&client->dev, imx274);
1874 if (ret) {
1875 dev_err(&client->dev, "Failed to get power regulators, err: %d\n", ret);
1876 return ret;
1877 }
1878
1879 /* initialize format */
1880 imx274->mode = &imx274_modes[IMX274_DEFAULT_BINNING];
1881 imx274->crop.width = IMX274_MAX_WIDTH;
1882 imx274->crop.height = IMX274_MAX_HEIGHT;
1883 imx274->format.width = imx274->crop.width / imx274->mode->bin_ratio;
1884 imx274->format.height = imx274->crop.height / imx274->mode->bin_ratio;
1885 imx274->format.field = V4L2_FIELD_NONE;
1886 imx274->format.code = MEDIA_BUS_FMT_SRGGB10_1X10;
1887 imx274->format.colorspace = V4L2_COLORSPACE_SRGB;
1888 imx274->frame_interval.numerator = 1;
1889 imx274->frame_interval.denominator = IMX274_DEF_FRAME_RATE;
1890
1891 /* initialize regmap */
1892 imx274->regmap = devm_regmap_init_i2c(client, &imx274_regmap_config);
1893 if (IS_ERR(imx274->regmap)) {
1894 dev_err(&client->dev,
1895 "regmap init failed: %ld\n", PTR_ERR(imx274->regmap));
1896 ret = -ENODEV;
1897 goto err_regmap;
1898 }
1899
1900 /* initialize subdevice */
1901 imx274->client = client;
1902 sd = &imx274->sd;
1903 v4l2_i2c_subdev_init(sd, client, &imx274_subdev_ops);
1904 sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE | V4L2_SUBDEV_FL_HAS_EVENTS;
1905
1906 /* initialize subdev media pad */
1907 imx274->pad.flags = MEDIA_PAD_FL_SOURCE;
1908 sd->entity.function = MEDIA_ENT_F_CAM_SENSOR;
1909 ret = media_entity_pads_init(&sd->entity, 1, &imx274->pad);
1910 if (ret < 0) {
1911 dev_err(&client->dev,
1912 "%s : media entity init Failed %d\n", __func__, ret);
1913 goto err_regmap;
1914 }
1915
1916 /* initialize sensor reset gpio */
1917 imx274->reset_gpio = devm_gpiod_get_optional(&client->dev, "reset",
1918 GPIOD_OUT_HIGH);
1919 if (IS_ERR(imx274->reset_gpio)) {
1920 if (PTR_ERR(imx274->reset_gpio) != -EPROBE_DEFER)
1921 dev_err(&client->dev, "Reset GPIO not setup in DT");
1922 ret = PTR_ERR(imx274->reset_gpio);
1923 goto err_me;
1924 }
1925
1926 /* initialize controls */
1927 ret = v4l2_ctrl_handler_init(&imx274->ctrls.handler, 4);
1928 if (ret < 0) {
1929 dev_err(&client->dev,
1930 "%s : ctrl handler init Failed\n", __func__);
1931 goto err_me;
1932 }
1933
1934 imx274->ctrls.handler.lock = &imx274->lock;
1935
1936 /* add new controls */
1937 imx274->ctrls.test_pattern = v4l2_ctrl_new_std_menu_items(
1938 &imx274->ctrls.handler, &imx274_ctrl_ops,
1939 V4L2_CID_TEST_PATTERN,
1940 ARRAY_SIZE(tp_qmenu) - 1, 0, 0, tp_qmenu);
1941
1942 imx274->ctrls.gain = v4l2_ctrl_new_std(
1943 &imx274->ctrls.handler,
1944 &imx274_ctrl_ops,
1945 V4L2_CID_GAIN, IMX274_MIN_GAIN,
1946 IMX274_MAX_DIGITAL_GAIN * IMX274_MAX_ANALOG_GAIN, 1,
1947 IMX274_DEF_GAIN);
1948
1949 imx274->ctrls.exposure = v4l2_ctrl_new_std(
1950 &imx274->ctrls.handler,
1951 &imx274_ctrl_ops,
1952 V4L2_CID_EXPOSURE, IMX274_MIN_EXPOSURE_TIME,
1953 1000000 / IMX274_DEF_FRAME_RATE, 1,
1954 IMX274_MIN_EXPOSURE_TIME);
1955
1956 imx274->ctrls.vflip = v4l2_ctrl_new_std(
1957 &imx274->ctrls.handler,
1958 &imx274_ctrl_ops,
1959 V4L2_CID_VFLIP, 0, 1, 1, 0);
1960
1961 imx274->sd.ctrl_handler = &imx274->ctrls.handler;
1962 if (imx274->ctrls.handler.error) {
1963 ret = imx274->ctrls.handler.error;
1964 goto err_ctrls;
1965 }
1966
1967 /* power on the sensor */
1968 ret = imx274_power_on(&client->dev);
1969 if (ret < 0) {
1970 dev_err(&client->dev,
1971 "%s : imx274 power on failed\n", __func__);
1972 goto err_ctrls;
1973 }
1974
1975 /* setup default controls */
1976 ret = v4l2_ctrl_handler_setup(&imx274->ctrls.handler);
1977 if (ret) {
1978 dev_err(&client->dev,
1979 "Error %d setup default controls\n", ret);
1980 goto err_power_off;
1981 }
1982
1983 /* load default control values */
1984 ret = imx274_load_default(imx274);
1985 if (ret) {
1986 dev_err(&client->dev,
1987 "%s : imx274_load_default failed %d\n",
1988 __func__, ret);
1989 goto err_power_off;
1990 }
1991
1992 /* register subdevice */
1993 ret = v4l2_async_register_subdev(sd);
1994 if (ret < 0) {
1995 dev_err(&client->dev,
1996 "%s : v4l2_async_register_subdev failed %d\n",
1997 __func__, ret);
1998 goto err_power_off;
1999 }
2000
2001 dev_info(&client->dev, "imx274 : imx274 probe success !\n");
2002 return 0;
2003
2004 err_power_off:
2005 imx274_power_off(&client->dev);
2006 err_ctrls:
2007 v4l2_ctrl_handler_free(&imx274->ctrls.handler);
2008 err_me:
2009 media_entity_cleanup(&sd->entity);
2010 err_regmap:
2011 mutex_destroy(&imx274->lock);
2012 return ret;
2013 }
2014
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[kraxel:drm-qemu-next 1/1] include/linux/topology.h:119:9: error: implicit declaration of function 'cpu_logical_map'
by kernel test robot
Hi David,
First bad commit (maybe != root cause):
tree: git://git.kraxel.org/linux drm-qemu-next
head: 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0
commit: 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0 [1/1] virtio: fix build for configs without dma-bufs
config: mips-randconfig-r016-20200818 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b34b1e38381fa4d1b1d9751a6b5233b68e734cfe)
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 mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
git checkout 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0
# 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: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
arch/mips/include/asm/atomic.h:52:1: warning: converting the result of '<<' to a boolean always evaluates to true
arch/mips/include/asm/atomic.h:40:9: note: expanded from macro 'ATOMIC_OPS'
return cmpxchg(&v->counter, o, n); ^
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:13:
In file included from include/linux/cpumask.h:13:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:52:1: warning: converting the result of '<<' to a boolean always evaluates to true
arch/mips/include/asm/atomic.h:45:9: note: expanded from macro 'ATOMIC_OPS'
return xchg(&v->counter, n); ^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:13:
In file included from include/linux/cpumask.h:13:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:257:1: warning: converting the result of '<<' to a boolean always evaluates to true
ATOMIC_SIP_OP(atomic, int, subu, ll, sc)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro 'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:13:
In file included from include/linux/cpumask.h:13:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:261:1: warning: converting the result of '<<' to a boolean always evaluates to true
ATOMIC_SIP_OP(atomic64, s64, dsubu, lld, scd)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro 'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:15:
In file included from include/linux/smp_types.h:5:
include/linux/llist.h:222:9: warning: converting the result of '<<' to a boolean always evaluates to true
return xchg(&head->first, NULL);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:14:
In file included from include/linux/sem.h:5:
In file included from include/uapi/linux/sem.h:5:
In file included from include/linux/ipc.h:5:
In file included from include/linux/spinlock.h:59:
In file included from include/linux/lockdep.h:27:
include/linux/debug_locks.h:17:9: warning: converting the result of '<<' to a boolean always evaluates to true
return xchg(&debug_locks, 0);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:15:
In file included from include/linux/radix-tree.h:18:
In file included from include/linux/xarray.h:14:
In file included from include/linux/gfp.h:9:
>> include/linux/topology.h:119:9: error: implicit declaration of function 'cpu_logical_map'
return cpu_to_node(raw_smp_processor_id());
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro 'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:15:
In file included from include/linux/radix-tree.h:18:
In file included from include/linux/xarray.h:14:
In file included from include/linux/gfp.h:9:
include/linux/topology.h:176:9: error: implicit declaration of function 'cpu_logical_map'
return cpu_to_node(cpu);
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro 'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:15:
In file included from include/linux/radix-tree.h:18:
In file included from include/linux/xarray.h:14:
In file included from include/linux/gfp.h:9:
include/linux/topology.h:210:25: error: implicit declaration of function 'cpu_logical_map'
return cpumask_of_node(cpu_to_node(cpu));
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro 'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:15:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:210:3: warning: converting the result of '<<' to a boolean always evaluates to true
cmpxchg64(&buddy->pte, 0, _PAGE_GLOBAL);
^
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); ^
arch/mips/include/asm/cmpxchg.h:194:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:15:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:210:3: warning: converting the result of '<<' to a boolean always evaluates to true
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); ^
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:17:
In file included from include/linux/suspend.h:5:
In file included from include/linux/swap.h:9:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:8:
In file included from include/linux/genhd.h:35:
In file included from include/linux/device.h:16:
In file included from include/linux/energy_model.h:10:
>> include/linux/sched/topology.h:254:9: error: implicit declaration of function 'cpu_logical_map'
return cpu_to_node(task_cpu(p));
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro 'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:24:
include/linux/kvm_host.h:332:9: warning: converting the result of '<<' to a boolean always evaluates to true
return cmpxchg(&vcpu->mode, IN_GUEST_MODE, EXITING_GUEST_MODE);
^
arch/mips/include/asm/cmpxchg.h:194:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:24:
include/linux/kvm_host.h:332:9: warning: converting the result of '<<' to a boolean always evaluates to true
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for function 'output_ptreg_defines'
void output_ptreg_defines(void)
^
arch/mips/kernel/asm-offsets.c:26:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_ptreg_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for function 'output_task_defines'
void output_task_defines(void)
^
arch/mips/kernel/asm-offsets.c:78:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_task_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for function 'output_thread_info_defines'
void output_thread_info_defines(void)
^
arch/mips/kernel/asm-offsets.c:93:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_thread_info_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:110:6: warning: no previous prototype for function 'output_thread_defines'
void output_thread_defines(void)
^
arch/mips/kernel/asm-offsets.c:110:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_thread_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:138:6: warning: no previous prototype for function 'output_thread_fpu_defines'
void output_thread_fpu_defines(void)
^
arch/mips/kernel/asm-offsets.c:138:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_thread_fpu_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:181:6: warning: no previous prototype for function 'output_mm_defines'
void output_mm_defines(void)
^
arch/mips/kernel/asm-offsets.c:181:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_mm_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:242:6: warning: no previous prototype for function 'output_sc_defines'
void output_sc_defines(void)
^
arch/mips/kernel/asm-offsets.c:242:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_sc_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:255:6: warning: no previous prototype for function 'output_signal_defined'
void output_signal_defined(void)
^
arch/mips/kernel/asm-offsets.c:255:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_signal_defined(void)
^
static
arch/mips/kernel/asm-offsets.c:334:6: warning: no previous prototype for function 'output_pm_defines'
void output_pm_defines(void)
^
arch/mips/kernel/asm-offsets.c:334:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_pm_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:348:6: warning: no previous prototype for function 'output_kvm_defines'
void output_kvm_defines(void)
^
arch/mips/kernel/asm-offsets.c:348:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void output_kvm_defines(void)
^
static
24 warnings and 4 errors generated.
Makefile arch include kernel scripts source [scripts/Makefile.build:117: arch/mips/kernel/asm-offsets.s] Error 1
Target 'missing-syscalls' not remade because of errors.
Makefile arch include kernel scripts source [arch/mips/Makefile:401: archprepare] Error 2
Target 'prepare' not remade because of errors.
make: Makefile arch include kernel scripts source [Makefile:185: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.
git remote add kraxel git://git.kraxel.org/linux
git fetch --no-tags kraxel drm-qemu-next
git checkout 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0
vim +/cpu_logical_map +119 include/linux/topology.h
7281201922a0063 Lee Schermerhorn 2010-05-26 114
7281201922a0063 Lee Schermerhorn 2010-05-26 115 /* Returns the number of the current Node. */
7281201922a0063 Lee Schermerhorn 2010-05-26 116 #ifndef numa_node_id
7281201922a0063 Lee Schermerhorn 2010-05-26 117 static inline int numa_node_id(void)
7281201922a0063 Lee Schermerhorn 2010-05-26 118 {
7281201922a0063 Lee Schermerhorn 2010-05-26 @119 return cpu_to_node(raw_smp_processor_id());
7281201922a0063 Lee Schermerhorn 2010-05-26 120 }
7281201922a0063 Lee Schermerhorn 2010-05-26 121 #endif
7281201922a0063 Lee Schermerhorn 2010-05-26 122
:::::: The code at line 119 was first introduced by commit
:::::: 7281201922a0063fa60804ce39c277fc98142a47 numa: add generic percpu var numa_node_id() implementation
:::::: TO: Lee Schermerhorn <lee.schermerhorn(a)hp.com>
:::::: 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, 1 month
Re: [PATCH] btrfs: switch btrfs_buffered_write() to page-by-page pace
by kernel test robot
Hi Qu,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on kdave/for-next]
[also build test WARNING on v5.9-rc1 next-20200819]
[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/Qu-Wenruo/btrfs-switch-btrfs_buf...
base: https://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git for-next
config: arm-randconfig-r022-20200818 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b34b1e38381fa4d1b1d9751a6b5233b68e734cfe)
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
# 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: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from fs/btrfs/file.c:19:
fs/btrfs/ctree.h:2265:8: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
size_t __const btrfs_get_num_csums(void);
^~~~~~~~
>> fs/btrfs/file.c:1570:24: warning: comparison of distinct pointer types ('typeof (iov_iter_count(i)) *' (aka 'unsigned int *') and 'typeof (((1UL) << 12) - offset) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types]
size_t write_bytes = min(iov_iter_count(i),
^~~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:884:19: note: expanded from macro 'min'
#define min(x, y) __careful_cmp(x, y, <)
^~~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:875:24: note: expanded from macro '__careful_cmp'
__builtin_choose_expr(__safe_cmp(x, y), \
^~~~~~~~~~~~~~~~
include/linux/kernel.h:865:4: note: expanded from macro '__safe_cmp'
(__typecheck(x, y) && __no_side_effects(x, y))
^~~~~~~~~~~~~~~~~
include/linux/kernel.h:851:29: note: expanded from macro '__typecheck'
(!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~
2 warnings generated.
# https://github.com/0day-ci/linux/commit/89f414f96d87eab3a1c3a3afc5283f801...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Qu-Wenruo/btrfs-switch-btrfs_buffered_write-to-page-by-page-pace/20200819-135541
git checkout 89f414f96d87eab3a1c3a3afc5283f80154e7a8b
vim +1570 fs/btrfs/file.c
89f414f96d87ea Qu Wenruo 2020-08-19 1550
e4af400a9c5081 Goldwyn Rodrigues 2018-06-17 1551 static noinline ssize_t btrfs_buffered_write(struct kiocb *iocb,
e4af400a9c5081 Goldwyn Rodrigues 2018-06-17 1552 struct iov_iter *i)
39279cc3d2704c Chris Mason 2007-06-12 1553 {
e4af400a9c5081 Goldwyn Rodrigues 2018-06-17 1554 struct file *file = iocb->ki_filp;
e4af400a9c5081 Goldwyn Rodrigues 2018-06-17 1555 loff_t pos = iocb->ki_pos;
496ad9aa8ef448 Al Viro 2013-01-23 1556 struct inode *inode = file_inode(file);
0b246afa62b0cf Jeff Mahoney 2016-06-22 1557 struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
89f414f96d87ea Qu Wenruo 2020-08-19 1558 struct page *page = NULL;
364ecf3651e086 Qu Wenruo 2017-02-27 1559 struct extent_changeset *data_reserved = NULL;
376cc685cb3b43 Miao Xie 2013-12-10 1560 u64 lockstart;
376cc685cb3b43 Miao Xie 2013-12-10 1561 u64 lockend;
d0215f3e5ebb58 Josef Bacik 2011-01-25 1562 size_t num_written = 0;
c9149235a42ab9 Tsutomu Itoh 2011-03-30 1563 int ret = 0;
7ee9e4405f264e Josef Bacik 2013-06-21 1564 bool only_release_metadata = false;
b6316429af7f36 Josef Bacik 2011-09-30 1565 bool force_page_uptodate = false;
4b46fce23349bf Josef Bacik 2010-05-23 1566
d0215f3e5ebb58 Josef Bacik 2011-01-25 1567 while (iov_iter_count(i) > 0) {
c67d970f0ea8dc Filipe Manana 2019-09-30 1568 struct extent_state *cached_state = NULL;
7073017aeb98db Johannes Thumshirn 2018-12-05 1569 size_t offset = offset_in_page(pos);
d0215f3e5ebb58 Josef Bacik 2011-01-25 @1570 size_t write_bytes = min(iov_iter_count(i),
89f414f96d87ea Qu Wenruo 2020-08-19 1571 PAGE_SIZE - offset);
89f414f96d87ea Qu Wenruo 2020-08-19 1572 size_t reserve_bytes = PAGE_SIZE;
d0215f3e5ebb58 Josef Bacik 2011-01-25 1573 size_t copied;
79f015f216539d Goldwyn Rodrigues 2017-10-16 1574 int extents_locked;
39279cc3d2704c Chris Mason 2007-06-12 1575
914ee295af418e Xin Zhong 2010-12-09 1576 /*
89f414f96d87ea Qu Wenruo 2020-08-19 1577 * Fault pages before locking them in prepare_page()
914ee295af418e Xin Zhong 2010-12-09 1578 * to avoid recursive lock
914ee295af418e Xin Zhong 2010-12-09 1579 */
d0215f3e5ebb58 Josef Bacik 2011-01-25 1580 if (unlikely(iov_iter_fault_in_readable(i, write_bytes))) {
914ee295af418e Xin Zhong 2010-12-09 1581 ret = -EFAULT;
d0215f3e5ebb58 Josef Bacik 2011-01-25 1582 break;
914ee295af418e Xin Zhong 2010-12-09 1583 }
914ee295af418e Xin Zhong 2010-12-09 1584
a0e248bb502d51 Filipe Manana 2019-10-11 1585 only_release_metadata = false;
d9d8b2a51a404c Qu Wenruo 2015-09-08 1586
364ecf3651e086 Qu Wenruo 2017-02-27 1587 extent_changeset_release(data_reserved);
36ea6f3e931391 Nikolay Borisov 2020-06-03 1588 ret = btrfs_check_data_free_space(BTRFS_I(inode),
36ea6f3e931391 Nikolay Borisov 2020-06-03 1589 &data_reserved, pos,
364ecf3651e086 Qu Wenruo 2017-02-27 1590 write_bytes);
c6887cd11149d7 Josef Bacik 2016-03-25 1591 if (ret < 0) {
89f414f96d87ea Qu Wenruo 2020-08-19 1592 size_t tmp = write_bytes;
38d37aa9c32938 Qu Wenruo 2020-06-24 1593 if (btrfs_check_nocow_lock(BTRFS_I(inode), pos,
89f414f96d87ea Qu Wenruo 2020-08-19 1594 &tmp) > 0) {
89f414f96d87ea Qu Wenruo 2020-08-19 1595 ASSERT(tmp == write_bytes);
d9d8b2a51a404c Qu Wenruo 2015-09-08 1596 /*
d9d8b2a51a404c Qu Wenruo 2015-09-08 1597 * For nodata cow case, no need to reserve
d9d8b2a51a404c Qu Wenruo 2015-09-08 1598 * data space.
d9d8b2a51a404c Qu Wenruo 2015-09-08 1599 */
7ee9e4405f264e Josef Bacik 2013-06-21 1600 only_release_metadata = true;
89f414f96d87ea Qu Wenruo 2020-08-19 1601 reserve_bytes = 0;
c6887cd11149d7 Josef Bacik 2016-03-25 1602 } else {
d0215f3e5ebb58 Josef Bacik 2011-01-25 1603 break;
c6887cd11149d7 Josef Bacik 2016-03-25 1604 }
c6887cd11149d7 Josef Bacik 2016-03-25 1605 }
1832a6d5ee3b1a Chris Mason 2007-12-21 1606
9f3db423f98c5c Nikolay Borisov 2017-02-20 1607 ret = btrfs_delalloc_reserve_metadata(BTRFS_I(inode),
9f3db423f98c5c Nikolay Borisov 2017-02-20 1608 reserve_bytes);
7ee9e4405f264e Josef Bacik 2013-06-21 1609 if (ret) {
7ee9e4405f264e Josef Bacik 2013-06-21 1610 if (!only_release_metadata)
25ce28caaa1ddc Nikolay Borisov 2020-06-03 1611 btrfs_free_reserved_data_space(BTRFS_I(inode),
bc42bda22345ef Qu Wenruo 2017-02-27 1612 data_reserved, pos,
d9d8b2a51a404c Qu Wenruo 2015-09-08 1613 write_bytes);
8257b2dc3c1a10 Miao Xie 2014-03-06 1614 else
38d37aa9c32938 Qu Wenruo 2020-06-24 1615 btrfs_check_nocow_unlock(BTRFS_I(inode));
7ee9e4405f264e Josef Bacik 2013-06-21 1616 break;
7ee9e4405f264e Josef Bacik 2013-06-21 1617 }
7ee9e4405f264e Josef Bacik 2013-06-21 1618
376cc685cb3b43 Miao Xie 2013-12-10 1619 again:
89f414f96d87ea Qu Wenruo 2020-08-19 1620 ret = prepare_one_page(inode, &page, pos, write_bytes,
b6316429af7f36 Josef Bacik 2011-09-30 1621 force_page_uptodate);
8b62f87bad9cf0 Josef Bacik 2017-10-19 1622 if (ret) {
8b62f87bad9cf0 Josef Bacik 2017-10-19 1623 btrfs_delalloc_release_extents(BTRFS_I(inode),
8702ba9396bf7b Qu Wenruo 2019-10-14 1624 reserve_bytes);
d0215f3e5ebb58 Josef Bacik 2011-01-25 1625 break;
8b62f87bad9cf0 Josef Bacik 2017-10-19 1626 }
39279cc3d2704c Chris Mason 2007-06-12 1627
79f015f216539d Goldwyn Rodrigues 2017-10-16 1628 extents_locked = lock_and_cleanup_extent_if_need(
89f414f96d87ea Qu Wenruo 2020-08-19 1629 BTRFS_I(inode), &page, 1, pos, write_bytes,
89f414f96d87ea Qu Wenruo 2020-08-19 1630 &lockstart, &lockend, &cached_state);
79f015f216539d Goldwyn Rodrigues 2017-10-16 1631 if (extents_locked < 0) {
79f015f216539d Goldwyn Rodrigues 2017-10-16 1632 if (extents_locked == -EAGAIN)
376cc685cb3b43 Miao Xie 2013-12-10 1633 goto again;
8b62f87bad9cf0 Josef Bacik 2017-10-19 1634 btrfs_delalloc_release_extents(BTRFS_I(inode),
8702ba9396bf7b Qu Wenruo 2019-10-14 1635 reserve_bytes);
79f015f216539d Goldwyn Rodrigues 2017-10-16 1636 ret = extents_locked;
376cc685cb3b43 Miao Xie 2013-12-10 1637 break;
376cc685cb3b43 Miao Xie 2013-12-10 1638 }
376cc685cb3b43 Miao Xie 2013-12-10 1639
89f414f96d87ea Qu Wenruo 2020-08-19 1640 copied = iov_iter_copy_from_user_atomic(page, i, offset,
89f414f96d87ea Qu Wenruo 2020-08-19 1641 write_bytes);
89f414f96d87ea Qu Wenruo 2020-08-19 1642 flush_dcache_page(page);
56244ef151c3cd Chris Mason 2016-05-16 1643
89f414f96d87ea Qu Wenruo 2020-08-19 1644 if (!PageUptodate(page) && copied < write_bytes) {
b1bf862e9dad43 Chris Mason 2011-02-28 1645 /*
89f414f96d87ea Qu Wenruo 2020-08-19 1646 * Short write on non-uptodate page, we must retry and
89f414f96d87ea Qu Wenruo 2020-08-19 1647 * force the page uptodate in next run.
b1bf862e9dad43 Chris Mason 2011-02-28 1648 */
89f414f96d87ea Qu Wenruo 2020-08-19 1649 copied = 0;
b6316429af7f36 Josef Bacik 2011-09-30 1650 force_page_uptodate = true;
b6316429af7f36 Josef Bacik 2011-09-30 1651 } else {
89f414f96d87ea Qu Wenruo 2020-08-19 1652 /* Next run doesn't need forced uptodate */
b6316429af7f36 Josef Bacik 2011-09-30 1653 force_page_uptodate = false;
b6316429af7f36 Josef Bacik 2011-09-30 1654 }
914ee295af418e Xin Zhong 2010-12-09 1655
89f414f96d87ea Qu Wenruo 2020-08-19 1656 iov_iter_advance(i, copied);
485290a734f142 Qu Wenruo 2015-10-29 1657
89f414f96d87ea Qu Wenruo 2020-08-19 1658 if (copied > 0) {
89f414f96d87ea Qu Wenruo 2020-08-19 1659 ret = btrfs_dirty_pages(BTRFS_I(inode), &page, 1, pos,
89f414f96d87ea Qu Wenruo 2020-08-19 1660 copied, &cached_state);
89f414f96d87ea Qu Wenruo 2020-08-19 1661 } else {
89f414f96d87ea Qu Wenruo 2020-08-19 1662 /* No bytes copied, need to free reserved space */
89f414f96d87ea Qu Wenruo 2020-08-19 1663 if (only_release_metadata)
89f414f96d87ea Qu Wenruo 2020-08-19 1664 btrfs_delalloc_release_metadata(BTRFS_I(inode),
89f414f96d87ea Qu Wenruo 2020-08-19 1665 reserve_bytes, true);
89f414f96d87ea Qu Wenruo 2020-08-19 1666 else
86d52921a2ba51 Nikolay Borisov 2020-06-03 1667 btrfs_delalloc_release_space(BTRFS_I(inode),
89f414f96d87ea Qu Wenruo 2020-08-19 1668 data_reserved, pos, write_bytes,
89f414f96d87ea Qu Wenruo 2020-08-19 1669 true);
485290a734f142 Qu Wenruo 2015-10-29 1670 }
914ee295af418e Xin Zhong 2010-12-09 1671
c67d970f0ea8dc Filipe Manana 2019-09-30 1672 /*
c67d970f0ea8dc Filipe Manana 2019-09-30 1673 * If we have not locked the extent range, because the range's
c67d970f0ea8dc Filipe Manana 2019-09-30 1674 * start offset is >= i_size, we might still have a non-NULL
c67d970f0ea8dc Filipe Manana 2019-09-30 1675 * cached extent state, acquired while marking the extent range
c67d970f0ea8dc Filipe Manana 2019-09-30 1676 * as delalloc through btrfs_dirty_pages(). Therefore free any
c67d970f0ea8dc Filipe Manana 2019-09-30 1677 * possible cached extent state to avoid a memory leak.
c67d970f0ea8dc Filipe Manana 2019-09-30 1678 */
79f015f216539d Goldwyn Rodrigues 2017-10-16 1679 if (extents_locked)
376cc685cb3b43 Miao Xie 2013-12-10 1680 unlock_extent_cached(&BTRFS_I(inode)->io_tree,
e43bbe5e16d87b David Sterba 2017-12-12 1681 lockstart, lockend, &cached_state);
c67d970f0ea8dc Filipe Manana 2019-09-30 1682 else
c67d970f0ea8dc Filipe Manana 2019-09-30 1683 free_extent_state(cached_state);
c67d970f0ea8dc Filipe Manana 2019-09-30 1684
8702ba9396bf7b Qu Wenruo 2019-10-14 1685 btrfs_delalloc_release_extents(BTRFS_I(inode), reserve_bytes);
f1de968376340c Miao Xie 2014-01-09 1686 if (ret) {
89f414f96d87ea Qu Wenruo 2020-08-19 1687 btrfs_drop_pages(&page, 1);
d0215f3e5ebb58 Josef Bacik 2011-01-25 1688 break;
f1de968376340c Miao Xie 2014-01-09 1689 }
39279cc3d2704c Chris Mason 2007-06-12 1690
89f414f96d87ea Qu Wenruo 2020-08-19 1691 if (only_release_metadata) {
38d37aa9c32938 Qu Wenruo 2020-06-24 1692 btrfs_check_nocow_unlock(BTRFS_I(inode));
da17066c40472c Jeff Mahoney 2016-06-15 1693 lockstart = round_down(pos,
0b246afa62b0cf Jeff Mahoney 2016-06-22 1694 fs_info->sectorsize);
89f414f96d87ea Qu Wenruo 2020-08-19 1695 lockend = lockstart + PAGE_SIZE - 1;
7ee9e4405f264e Josef Bacik 2013-06-21 1696
7ee9e4405f264e Josef Bacik 2013-06-21 1697 set_extent_bit(&BTRFS_I(inode)->io_tree, lockstart,
7ee9e4405f264e Josef Bacik 2013-06-21 1698 lockend, EXTENT_NORESERVE, NULL,
7ee9e4405f264e Josef Bacik 2013-06-21 1699 NULL, GFP_NOFS);
7ee9e4405f264e Josef Bacik 2013-06-21 1700 }
7ee9e4405f264e Josef Bacik 2013-06-21 1701
89f414f96d87ea Qu Wenruo 2020-08-19 1702 btrfs_drop_pages(&page, 1);
f1de968376340c Miao Xie 2014-01-09 1703
d0215f3e5ebb58 Josef Bacik 2011-01-25 1704 cond_resched();
d0215f3e5ebb58 Josef Bacik 2011-01-25 1705
d0e1d66b5aa1ec Namjae Jeon 2012-12-11 1706 balance_dirty_pages_ratelimited(inode->i_mapping);
cb843a6f513a1a Chris Mason 2008-10-03 1707
914ee295af418e Xin Zhong 2010-12-09 1708 pos += copied;
914ee295af418e Xin Zhong 2010-12-09 1709 num_written += copied;
d0215f3e5ebb58 Josef Bacik 2011-01-25 1710 }
39279cc3d2704c Chris Mason 2007-06-12 1711
364ecf3651e086 Qu Wenruo 2017-02-27 1712 extent_changeset_free(data_reserved);
d0215f3e5ebb58 Josef Bacik 2011-01-25 1713 return num_written ? num_written : ret;
39279cc3d2704c Chris Mason 2007-06-12 1714 }
d0215f3e5ebb58 Josef Bacik 2011-01-25 1715
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[linux-sof-driver:pr/2371 4/4] sound/soc/sof/sof-audio.c:139:1: warning: control reaches end of non-void function
by kernel test robot
tree: https://github.com/thesofproject/linux pr/2371
head: caaa61b2dbc327075d31dce1e30c5be6e9271c3e
commit: caaa61b2dbc327075d31dce1e30c5be6e9271c3e [4/4] ASoC: SOF: sof-audio: Add helpers to set up and destroy a pipeline
config: arm64-sof-customedconfig-sof-defconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout caaa61b2dbc327075d31dce1e30c5be6e9271c3e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
sound/soc/sof/sof-audio.c: In function 'sof_restore_pipelines':
sound/soc/sof/sof-audio.c:518:9: warning: unused variable 'ipc_size' [-Wunused-variable]
518 | size_t ipc_size;
| ^~~~~~~~
sound/soc/sof/sof-audio.c: In function 'sof_pcm_pipeline_set_up':
>> sound/soc/sof/sof-audio.c:139:1: warning: control reaches end of non-void function [-Wreturn-type]
139 | }
| ^
sound/soc/sof/sof-audio.c: In function 'sof_pcm_pipeline_destroy':
sound/soc/sof/sof-audio.c:206:1: warning: control reaches end of non-void function [-Wreturn-type]
206 | }
| ^
# https://github.com/thesofproject/linux/commit/caaa61b2dbc327075d31dce1e30...
git remote add linux-sof-driver https://github.com/thesofproject/linux
git fetch --no-tags linux-sof-driver pr/2371
git checkout caaa61b2dbc327075d31dce1e30c5be6e9271c3e
vim +139 sound/soc/sof/sof-audio.c
96
97 int sof_pcm_pipeline_set_up(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm, int dir)
98 {
99 struct snd_sof_route_list *route_list = spcm->stream[dir].route_list;
100 struct snd_sof_widget *pipeline_widget = route_list->pipeline_widget;
101 int ret, i;
102
103 if (!route_list)
104 return -ENOENT;
105
106 /* set up pipeline widget */
107 ret = sof_widget_setup(sdev, pipeline_widget);
108 if (ret < 0)
109 return ret;
110
111 /* set up widgets and routes as we walk the list */
112 for (i = 0; i < route_list->num_widgets; i++) {
113 struct snd_sof_widget *swidget = route_list->widgets[i];
114
115 ret = sof_widget_setup(sdev, swidget);
116 if (ret < 0)
117 return ret;
118
119 /* set up the route with the previous widget */
120 if (i > 0) {
121 struct snd_sof_widget *wsink, *wsource;
122
123 if (dir == SNDRV_PCM_STREAM_PLAYBACK) {
124 wsink = swidget;
125 wsource = route_list->widgets[i - 1];
126 } else {
127 wsource = swidget;
128 wsink = route_list->widgets[i - 1];
129 }
130
131 ret = sof_route_set_up(sdev, wsource, wsink);
132 if (ret < 0)
133 return ret;
134 }
135 }
136
137 /* complete pipeline */
138 pipeline_widget->complete = snd_sof_complete_pipeline(sdev->dev, pipeline_widget);
> 139 }
140
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
Re: [PATCH v2 15/16] rdma_rxe: Added functional bind and invalidate MW ops
by kernel test robot
Hi Bob,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on v5.8]
[cannot apply to linus/master v5.9-rc1 next-20200818]
[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/Bob-Pearson/rdma_rxe-Added-SPDX-...
base: bcf876870b95592b52519ed4aafcf9d95999bc9c
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
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/infiniband/sw/rxe/rxe_mw.c: In function 'do_bind_mw':
>> drivers/infiniband/sw/rxe/rxe_mw.c:227:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
227 | int ret;
| ^~~
# https://github.com/0day-ci/linux/commit/01db430643deac98d0b280d7d6a0939c5...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Bob-Pearson/rdma_rxe-Added-SPDX-headers-to-rxe-source-files/20200819-124026
git checkout 01db430643deac98d0b280d7d6a0939c5c0d7856
vim +/ret +227 drivers/infiniband/sw/rxe/rxe_mw.c
223
224 static int do_bind_mw(struct rxe_qp *qp, struct rxe_send_wqe *wqe,
225 struct rxe_mw *mw, struct rxe_mr *mr)
226 {
> 227 int ret;
228 u32 rkey;
229 u32 new_rkey;
230 struct rxe_mw *duplicate_mw;
231 struct rxe_dev *rxe = to_rdev(qp->ibqp.device);
232
233 /* key part of new rkey is provided by user for type 2
234 * and ibv_bind_mw() for type 1 MWs
235 * there is a very rare chance that the new rkey will
236 * collide with an existing MW. Return an error if this
237 * occurs
238 */
239 rkey = mw->ibmw.rkey;
240 new_rkey = (rkey & 0xffffff00) | (wqe->wr.wr.umw.rkey & 0x000000ff);
241 duplicate_mw = rxe_pool_get_key(&rxe->mw_pool, &new_rkey);
242 if (duplicate_mw) {
243 pr_err_once("new MW key is a duplicate, try another\n");
244 rxe_drop_ref(duplicate_mw);
245 return -EINVAL;
246 }
247
248 rxe_drop_key(mw);
249 ret = rxe_add_key(mw, &new_rkey);
250
251 mw->access = wqe->wr.wr.umw.access;
252 mw->state = RXE_MEM_STATE_VALID;
253 mw->addr = wqe->wr.wr.umw.addr;
254 mw->length = wqe->wr.wr.umw.length;
255
256 if (mw->mr) {
257 rxe_drop_ref(mw->mr);
258 atomic_dec(&mw->mr->num_mw);
259 mw->mr = NULL;
260 }
261
262 if (mw->length) {
263 mw->mr = mr;
264 atomic_inc(&mr->num_mw);
265 rxe_add_ref(mr);
266 }
267
268 if (mw->ibmw.type == IB_MW_TYPE_2)
269 mw->qp = qp;
270
271 return 0;
272 }
273
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month