[RFC PATCH] sched/fair: __pcpu_scope_nohz_balance_mask can be static
by kernel test robot
kernel/sched/fair.c:5697:1: warning: symbol '__pcpu_scope_nohz_balance_mask' was not declared. Should it be static?
Reported-by: kernel test robot <lkp(a)intel.com>
Signed-off-by: kernel test robot <lkp(a)intel.com>
---
fair.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 497208a1afb88..c6a515d469dd8 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5694,7 +5694,7 @@ DEFINE_PER_CPU(cpumask_var_t, select_idle_mask);
#ifdef CONFIG_NO_HZ_COMMON
-DEFINE_PER_CPU(cpumask_var_t, nohz_balance_mask);
+static DEFINE_PER_CPU(cpumask_var_t, nohz_balance_mask);
static struct {
cpumask_var_t idle_cpus_mask; /* CPUs in NOHZ idle */
1 year, 2 months
Re: [PATCH] sched/fair: Update nohz.next_balance for newly NOHZ-idle CPUs
by kernel test robot
Hi Valentin,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on tip/sched/core]
[also build test WARNING on tip/master linux/master linus/master v5.14-rc1 next-20210714]
[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/Valentin-Schneider/sched-fair-Up...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 031e3bd8986fffe31e1ddbf5264cccfe30c9abd7
config: x86_64-randconfig-s022-20210714 (attached as .config)
compiler: gcc-10 (Debian 10.2.1-6) 10.2.1 20210110
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/0day-ci/linux/commit/cbd87e97caf59c1a9d06d35e5a59404e4...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Valentin-Schneider/sched-fair-Update-nohz-next_balance-for-newly-NOHZ-idle-CPUs/20210714-194021
git checkout cbd87e97caf59c1a9d06d35e5a59404e4d7c8660
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash kernel/sched/
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 >>)
kernel/sched/fair.c:830:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct sched_entity *se @@ got struct sched_entity [noderef] __rcu * @@
kernel/sched/fair.c:830:34: sparse: expected struct sched_entity *se
kernel/sched/fair.c:830:34: sparse: got struct sched_entity [noderef] __rcu *
kernel/sched/fair.c:2477:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *tsk @@ got struct task_struct [noderef] __rcu * @@
kernel/sched/fair.c:2477:13: sparse: expected struct task_struct *tsk
kernel/sched/fair.c:2477:13: sparse: got struct task_struct [noderef] __rcu *
kernel/sched/fair.c:10730:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/fair.c:10730:9: sparse: expected struct sched_domain *[assigned] sd
kernel/sched/fair.c:10730:9: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/fair.c:4932:22: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/fair.c:4932:22: sparse: struct task_struct [noderef] __rcu *
kernel/sched/fair.c:4932:22: sparse: struct task_struct *
kernel/sched/fair.c:5692:1: sparse: sparse: symbol '__pcpu_scope_load_balance_mask' was not declared. Should it be static?
kernel/sched/fair.c:5693:1: sparse: sparse: symbol '__pcpu_scope_select_idle_mask' was not declared. Should it be static?
>> kernel/sched/fair.c:5697:1: sparse: sparse: symbol '__pcpu_scope_nohz_balance_mask' was not declared. Should it be static?
kernel/sched/fair.c:6719:20: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/fair.c:6719:20: sparse: expected struct sched_domain *[assigned] sd
kernel/sched/fair.c:6719:20: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/fair.c:6853:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] tmp @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/fair.c:6853:9: sparse: expected struct sched_domain *[assigned] tmp
kernel/sched/fair.c:6853:9: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/fair.c:7051:38: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct task_struct *curr @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/fair.c:7051:38: sparse: expected struct task_struct *curr
kernel/sched/fair.c:7051:38: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/fair.c:7335:38: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct task_struct *curr @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/fair.c:7335:38: sparse: expected struct task_struct *curr
kernel/sched/fair.c:7335:38: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/fair.c:8320:40: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct sched_domain *child @@ got struct sched_domain [noderef] __rcu *child @@
kernel/sched/fair.c:8320:40: sparse: expected struct sched_domain *child
kernel/sched/fair.c:8320:40: sparse: got struct sched_domain [noderef] __rcu *child
kernel/sched/fair.c:8768:22: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/fair.c:8768:22: sparse: struct task_struct [noderef] __rcu *
kernel/sched/fair.c:8768:22: sparse: struct task_struct *
kernel/sched/fair.c:10031:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/fair.c:10031:9: sparse: expected struct sched_domain *[assigned] sd
kernel/sched/fair.c:10031:9: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/fair.c:9691:44: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct sched_domain *sd_parent @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/fair.c:9691:44: sparse: expected struct sched_domain *sd_parent
kernel/sched/fair.c:9691:44: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/fair.c:10103:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/fair.c:10103:9: sparse: expected struct sched_domain *[assigned] sd
kernel/sched/fair.c:10103:9: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/fair.c:2421:9: sparse: sparse: context imbalance in 'task_numa_placement' - different lock contexts for basic block
kernel/sched/fair.c:4597:31: sparse: sparse: marked inline, but without a definition
kernel/sched/fair.c: note: in included file:
kernel/sched/sched.h:2169:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2169:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2169:9: sparse: struct task_struct *
kernel/sched/sched.h:2011:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2011:25: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2011:25: sparse: struct task_struct *
kernel/sched/sched.h:2011:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2011:25: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2011:25: sparse: struct task_struct *
Please review and possibly fold the followup patch.
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
Re: [Intel-gfx] [PATCH v3 4/5] drm/print: move conditional deref into macro defn
by kernel test robot
Hi Jim,
I love your patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on drm-tip/drm-tip linus/master v5.14-rc1 next-20210714]
[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/Jim-Cromie/drm-use-dyndbg-in-drm...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: h8300-randconfig-r016-20210714 (attached as .config)
compiler: h8300-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/4a3dcdd418da090977ab9fa225818e5ad...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jim-Cromie/drm-use-dyndbg-in-drm_print/20210715-015347
git checkout 4a3dcdd418da090977ab9fa225818e5ad142288d
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=h8300 SHELL=/bin/bash drivers/gpu/drm/mxsfb/
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 >>):
In file included from include/drm/drm_mm.h:49,
from include/drm/drm_vma_manager.h:26,
from include/drm/drm_gem.h:40,
from include/drm/drm_gem_cma_helper.h:7,
from drivers/gpu/drm/mxsfb/mxsfb_kms.c:25:
drivers/gpu/drm/mxsfb/mxsfb_kms.c: In function 'mxsfb_set_formats':
>> include/drm/drm_print.h:330:30: error: 'struct device' has no member named 'dev'; did you mean 'devt'?
330 | _drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
| ^~~
include/drm/drm_print.h:439:2: note: in expansion of macro 'drm_dev_dbg'
439 | drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~
drivers/gpu/drm/mxsfb/mxsfb_kms.c:60:2: note: in expansion of macro 'DRM_DEV_DEBUG_DRIVER'
60 | DRM_DEV_DEBUG_DRIVER(drm->dev, "Using bus_format: 0x%08X\n",
| ^~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/mxsfb/mxsfb_kms.c: In function 'mxsfb_crtc_mode_set_nofb':
>> include/drm/drm_print.h:330:30: error: 'struct device' has no member named 'dev'; did you mean 'devt'?
330 | _drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
| ^~~
include/drm/drm_print.h:439:2: note: in expansion of macro 'drm_dev_dbg'
439 | drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~
drivers/gpu/drm/mxsfb/mxsfb_kms.c:220:2: note: in expansion of macro 'DRM_DEV_DEBUG_DRIVER'
220 | DRM_DEV_DEBUG_DRIVER(drm->dev, "Pixel clock: %dkHz (actual: %dkHz)\n",
| ^~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_print.h:330:30: error: 'struct device' has no member named 'dev'; did you mean 'devt'?
330 | _drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
| ^~~
include/drm/drm_print.h:439:2: note: in expansion of macro 'drm_dev_dbg'
439 | drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~
drivers/gpu/drm/mxsfb/mxsfb_kms.c:223:2: note: in expansion of macro 'DRM_DEV_DEBUG_DRIVER'
223 | DRM_DEV_DEBUG_DRIVER(drm->dev, "Connector bus_flags: 0x%08X\n",
| ^~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_print.h:330:30: error: 'struct device' has no member named 'dev'; did you mean 'devt'?
330 | _drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
| ^~~
include/drm/drm_print.h:439:2: note: in expansion of macro 'drm_dev_dbg'
439 | drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~
drivers/gpu/drm/mxsfb/mxsfb_kms.c:225:2: note: in expansion of macro 'DRM_DEV_DEBUG_DRIVER'
225 | DRM_DEV_DEBUG_DRIVER(drm->dev, "Mode flags: 0x%08X\n", m->flags);
| ^~~~~~~~~~~~~~~~~~~~
vim +330 include/drm/drm_print.h
323
324 /* Use legacy drm-debug functions, and drm_debug_enabled().
325 * For cDRM_UT_* (converted category), identity map to DRM_UT_*
326 */
327 #define __drm_dbg(cls, fmt, ...) \
328 ___drm_dbg(cls, fmt, ##__VA_ARGS__)
329 #define drm_dev_dbg(drm, cls, fmt, ...) \
> 330 _drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
331
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[nbd168-wireless:mt76 18/26] drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: incorrect type in argument 1 (different base types)
by kernel test robot
tree: https://github.com/nbd168/wireless mt76
head: 322ec254cac2f270cd917c5e6bdf8c838ee0a2fc
commit: 895377eb178d757c0fdfdee78023b61b66689a05 [18/26] mt76: mt7915: report HE MU radiotap
config: sparc-randconfig-s031-20210714 (attached as .config)
compiler: sparc-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.3-341-g8af24329-dirty
# https://github.com/nbd168/wireless/commit/895377eb178d757c0fdfdee78023b61...
git remote add nbd168-wireless https://github.com/nbd168/wireless
git fetch --no-tags nbd168-wireless mt76
git checkout 895377eb178d757c0fdfdee78023b61b66689a05
# 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=sparc
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/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:258:28: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:263:25: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:268:25: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:270:25: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: expected unsigned int [usertype] val
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: got restricted __le32 [usertype]
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: cast from restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:13: sparse: sparse: restricted __le32 degrades to integer
vim +258 drivers/net/wireless/mediatek/mt76/mt7915/mac.c
249
250 he_mu->flags1 |= MU_PREP(FLAGS1_SIG_B_MCS, status->rate_idx);
251 if (status->he_dcm)
252 he_mu->flags1 |= MU_PREP(FLAGS1_SIG_B_DCM, status->he_dcm);
253
254 he_mu->flags2 |= MU_PREP(FLAGS2_BW_FROM_SIG_A_BW, status->bw) |
255 MU_PREP(FLAGS2_SIG_B_SYMS_USERS,
256 le32_get_bits(rxv[2], MT_CRXV_HE_NUM_USER));
257
> 258 he_mu->ru_ch1[0] = FIELD_GET(MT_CRXV_HE_RU0, cpu_to_le32(rxv[3]));
259
260 if (status->bw >= RATE_INFO_BW_40) {
261 he_mu->flags1 |= HE_BITS(MU_FLAGS1_CH2_RU_KNOWN);
262 he_mu->ru_ch2[0] =
263 FIELD_GET(MT_CRXV_HE_RU1, cpu_to_le32(rxv[3]));
264 }
265
266 if (status->bw >= RATE_INFO_BW_80) {
267 he_mu->ru_ch1[1] =
268 FIELD_GET(MT_CRXV_HE_RU2, cpu_to_le32(rxv[3]));
269 he_mu->ru_ch2[1] =
270 FIELD_GET(MT_CRXV_HE_RU3, cpu_to_le32(rxv[3]));
271 }
272 }
273
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
Re: [Intel-gfx] [PATCH v3 4/5] drm/print: move conditional deref into macro defn
by kernel test robot
Hi Jim,
I love your patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on drm-tip/drm-tip linus/master v5.14-rc1 next-20210714]
[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/Jim-Cromie/drm-use-dyndbg-in-drm...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a015-20210714 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/4a3dcdd418da090977ab9fa225818e5ad...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jim-Cromie/drm-use-dyndbg-in-drm_print/20210715-015347
git checkout 4a3dcdd418da090977ab9fa225818e5ad142288d
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/gpu/drm/bridge/ drivers/gpu/drm/exynos/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/gpu/drm/bridge/nwl-dsi.c:229:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "DSI Lanes %d\n", dsi->lanes);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:242:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_t_pre: 0x%x\n", cycles);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:245:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_tx_gap (pre): 0x%x\n", cycles);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:247:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_t_post: 0x%x\n", cycles);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:250:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_tx_gap: 0x%x\n", cycles);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:259:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_twakeup: 0x%x\n", cycles);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:281:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "hfront_porch = %d\n", hfront_porch);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:282:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "hback_porch = %d\n", hback_porch);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/bridge/nwl-dsi.c:283:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_DRIVER(dsi->dev, "hsync_len = %d\n", hsync_len);
^
include/drm/drm_print.h:439:2: note: expanded from macro 'DRM_DEV_DEBUG_DRIVER'
drm_dev_dbg(dev, cDRM_UT_DRIVER, fmt, ##__VA_ARGS__)
--
>> drivers/gpu/drm/exynos/exynos_drm_fbdev.c:112:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(dev->dev,
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
1 error generated.
--
>> drivers/gpu/drm/exynos/exynos_drm_fimc.c:188:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "enable[%d]\n", enable);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:203:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "enable[%d]\n", enable);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:227:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "flag[0x%x]\n", flag);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:249:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "cfg[0x%x]\n", cfg);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:271:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "present[%d]before[%d]\n",
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:281:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "buf_id[%d]\n", buf_id);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:290:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "enable[%d]\n", enable);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:305:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "fmt[0x%x]\n", fmt);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
^
include/drm/drm_print.h:330:30: note: expanded from macro 'drm_dev_dbg'
_drm_dev_dbg((drm) ? (drm)->dev : NULL, cls, fmt, ##__VA_ARGS__)
^
include/linux/device.h:544:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/gpu/drm/exynos/exynos_drm_fimc.c:370:2: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
DRM_DEV_DEBUG_KMS(ctx->dev, "fmt[0x%x]\n", fmt);
^
include/drm/drm_print.h:447:2: note: expanded from macro 'DRM_DEV_DEBUG_KMS'
drm_dev_dbg(dev, cDRM_UT_KMS, fmt, ##__VA_ARGS__)
vim +229 drivers/gpu/drm/bridge/nwl-dsi.c
44cfc6233447cb Guido Günther 2020-04-09 220
44cfc6233447cb Guido Günther 2020-04-09 221 static int nwl_dsi_config_host(struct nwl_dsi *dsi)
44cfc6233447cb Guido Günther 2020-04-09 222 {
44cfc6233447cb Guido Günther 2020-04-09 223 u32 cycles;
44cfc6233447cb Guido Günther 2020-04-09 224 struct phy_configure_opts_mipi_dphy *cfg = &dsi->phy_cfg.mipi_dphy;
44cfc6233447cb Guido Günther 2020-04-09 225
44cfc6233447cb Guido Günther 2020-04-09 226 if (dsi->lanes < 1 || dsi->lanes > 4)
44cfc6233447cb Guido Günther 2020-04-09 227 return -EINVAL;
44cfc6233447cb Guido Günther 2020-04-09 228
44cfc6233447cb Guido Günther 2020-04-09 @229 DRM_DEV_DEBUG_DRIVER(dsi->dev, "DSI Lanes %d\n", dsi->lanes);
44cfc6233447cb Guido Günther 2020-04-09 230 nwl_dsi_write(dsi, NWL_DSI_CFG_NUM_LANES, dsi->lanes - 1);
44cfc6233447cb Guido Günther 2020-04-09 231
44cfc6233447cb Guido Günther 2020-04-09 232 if (dsi->dsi_mode_flags & MIPI_DSI_CLOCK_NON_CONTINUOUS) {
44cfc6233447cb Guido Günther 2020-04-09 233 nwl_dsi_write(dsi, NWL_DSI_CFG_NONCONTINUOUS_CLK, 0x01);
44cfc6233447cb Guido Günther 2020-04-09 234 nwl_dsi_write(dsi, NWL_DSI_CFG_AUTOINSERT_EOTP, 0x01);
44cfc6233447cb Guido Günther 2020-04-09 235 } else {
44cfc6233447cb Guido Günther 2020-04-09 236 nwl_dsi_write(dsi, NWL_DSI_CFG_NONCONTINUOUS_CLK, 0x00);
44cfc6233447cb Guido Günther 2020-04-09 237 nwl_dsi_write(dsi, NWL_DSI_CFG_AUTOINSERT_EOTP, 0x00);
44cfc6233447cb Guido Günther 2020-04-09 238 }
44cfc6233447cb Guido Günther 2020-04-09 239
44cfc6233447cb Guido Günther 2020-04-09 240 /* values in byte clock cycles */
44cfc6233447cb Guido Günther 2020-04-09 241 cycles = ui2bc(dsi, cfg->clk_pre);
44cfc6233447cb Guido Günther 2020-04-09 242 DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_t_pre: 0x%x\n", cycles);
44cfc6233447cb Guido Günther 2020-04-09 243 nwl_dsi_write(dsi, NWL_DSI_CFG_T_PRE, cycles);
44cfc6233447cb Guido Günther 2020-04-09 244 cycles = ps2bc(dsi, cfg->lpx + cfg->clk_prepare + cfg->clk_zero);
44cfc6233447cb Guido Günther 2020-04-09 245 DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_tx_gap (pre): 0x%x\n", cycles);
44cfc6233447cb Guido Günther 2020-04-09 246 cycles += ui2bc(dsi, cfg->clk_pre);
44cfc6233447cb Guido Günther 2020-04-09 247 DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_t_post: 0x%x\n", cycles);
44cfc6233447cb Guido Günther 2020-04-09 248 nwl_dsi_write(dsi, NWL_DSI_CFG_T_POST, cycles);
44cfc6233447cb Guido Günther 2020-04-09 249 cycles = ps2bc(dsi, cfg->hs_exit);
44cfc6233447cb Guido Günther 2020-04-09 250 DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_tx_gap: 0x%x\n", cycles);
44cfc6233447cb Guido Günther 2020-04-09 251 nwl_dsi_write(dsi, NWL_DSI_CFG_TX_GAP, cycles);
44cfc6233447cb Guido Günther 2020-04-09 252
44cfc6233447cb Guido Günther 2020-04-09 253 nwl_dsi_write(dsi, NWL_DSI_CFG_EXTRA_CMDS_AFTER_EOTP, 0x01);
44cfc6233447cb Guido Günther 2020-04-09 254 nwl_dsi_write(dsi, NWL_DSI_CFG_HTX_TO_COUNT, 0x00);
44cfc6233447cb Guido Günther 2020-04-09 255 nwl_dsi_write(dsi, NWL_DSI_CFG_LRX_H_TO_COUNT, 0x00);
44cfc6233447cb Guido Günther 2020-04-09 256 nwl_dsi_write(dsi, NWL_DSI_CFG_BTA_H_TO_COUNT, 0x00);
44cfc6233447cb Guido Günther 2020-04-09 257 /* In LP clock cycles */
44cfc6233447cb Guido Günther 2020-04-09 258 cycles = us2lp(cfg->lp_clk_rate, cfg->wakeup);
44cfc6233447cb Guido Günther 2020-04-09 259 DRM_DEV_DEBUG_DRIVER(dsi->dev, "cfg_twakeup: 0x%x\n", cycles);
44cfc6233447cb Guido Günther 2020-04-09 260 nwl_dsi_write(dsi, NWL_DSI_CFG_TWAKEUP, cycles);
44cfc6233447cb Guido Günther 2020-04-09 261
44cfc6233447cb Guido Günther 2020-04-09 262 return nwl_dsi_clear_error(dsi);
44cfc6233447cb Guido Günther 2020-04-09 263 }
44cfc6233447cb Guido Günther 2020-04-09 264
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[xlnx:xlnx_rebase_v5.10 1409/1756] drivers/usb/dwc3/core.c:934:5: warning: no previous prototype for function 'dwc3_core_init'
by kernel test robot
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.10
head: f6f032f82f0a13def702a0154df535db88f43391
commit: 511e872607dba42eccf14b9debfb36d3d9fe1979 [1409/1756] usb: dwc3: gadget: Add hibernation support when operating in gadget mode
config: mips-randconfig-r004-20210714 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
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
# https://github.com/Xilinx/linux-xlnx/commit/511e872607dba42eccf14b9debfb3...
git remote add xlnx https://github.com/Xilinx/linux-xlnx
git fetch --no-tags xlnx xlnx_rebase_v5.10
git checkout 511e872607dba42eccf14b9debfb36d3d9fe1979
# 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 warnings (new ones prefixed by >>):
>> drivers/usb/dwc3/core.c:934:5: warning: no previous prototype for function 'dwc3_core_init' [-Wmissing-prototypes]
int dwc3_core_init(struct dwc3 *dwc)
^
drivers/usb/dwc3/core.c:934:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int dwc3_core_init(struct dwc3 *dwc)
^
static
1 warning generated.
vim +/dwc3_core_init +934 drivers/usb/dwc3/core.c
927
928 /**
929 * dwc3_core_init - Low-level initialization of DWC3 Core
930 * @dwc: Pointer to our controller context structure
931 *
932 * Returns 0 on success otherwise negative errno.
933 */
> 934 int dwc3_core_init(struct dwc3 *dwc)
935 {
936 unsigned int hw_mode;
937 u32 reg;
938 int ret;
939
940 hw_mode = DWC3_GHWPARAMS0_MODE(dwc->hwparams.hwparams0);
941
942 /*
943 * Write Linux Version Code to our GUID register so it's easy to figure
944 * out which kernel version a bug was found.
945 */
946 dwc3_writel(dwc->regs, DWC3_GUID, LINUX_VERSION_CODE);
947
948 ret = dwc3_phy_setup(dwc);
949 if (ret)
950 goto err0;
951
952 if (!dwc->ulpi_ready) {
953 ret = dwc3_core_ulpi_init(dwc);
954 if (ret)
955 goto err0;
956 dwc->ulpi_ready = true;
957 }
958
959 if (!dwc->phys_ready) {
960 ret = dwc3_core_get_phy(dwc);
961 if (ret)
962 goto err0a;
963 dwc->phys_ready = true;
964 }
965
966 ret = dwc3_core_soft_reset(dwc);
967 if (ret)
968 goto err0a;
969
970 if (hw_mode == DWC3_GHWPARAMS0_MODE_DRD &&
971 !DWC3_VER_IS_WITHIN(DWC3, ANY, 194A)) {
972 if (!dwc->dis_u3_susphy_quirk) {
973 reg = dwc3_readl(dwc->regs, DWC3_GUSB3PIPECTL(0));
974 reg |= DWC3_GUSB3PIPECTL_SUSPHY;
975 dwc3_writel(dwc->regs, DWC3_GUSB3PIPECTL(0), reg);
976 }
977
978 if (!dwc->dis_u2_susphy_quirk) {
979 reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0));
980 reg |= DWC3_GUSB2PHYCFG_SUSPHY;
981 dwc3_writel(dwc->regs, DWC3_GUSB2PHYCFG(0), reg);
982 }
983 }
984
985 dwc3_core_setup_global_control(dwc);
986 dwc3_core_num_eps(dwc);
987
988 ret = dwc3_alloc_scratch_buffers(dwc);
989 if (ret) {
990 dev_err(dwc->dev,
991 "Not enough memory for scratch buffers\n");
992 goto err1;
993 }
994
995 ret = dwc3_setup_scratch_buffers(dwc);
996 if (ret)
997 goto err1;
998
999 /* Adjust Frame Length */
1000 dwc3_frame_length_adjustment(dwc);
1001
1002 dwc3_set_incr_burst_type(dwc);
1003
1004 usb_phy_set_suspend(dwc->usb2_phy, 0);
1005 usb_phy_set_suspend(dwc->usb3_phy, 0);
1006 ret = phy_power_on(dwc->usb2_generic_phy);
1007 if (ret < 0)
1008 goto err2;
1009
1010 ret = phy_power_on(dwc->usb3_generic_phy);
1011 if (ret < 0)
1012 goto err3;
1013
1014 ret = dwc3_event_buffers_setup(dwc);
1015 if (ret) {
1016 dev_err(dwc->dev, "failed to setup event buffers\n");
1017 goto err4;
1018 }
1019
1020 /*
1021 * ENDXFER polling is available on version 3.10a and later of
1022 * the DWC_usb3 controller. It is NOT available in the
1023 * DWC_usb31 controller.
1024 */
1025 if (DWC3_VER_IS_WITHIN(DWC3, 310A, ANY)) {
1026 reg = dwc3_readl(dwc->regs, DWC3_GUCTL2);
1027 reg |= DWC3_GUCTL2_RST_ACTBITLATER;
1028 dwc3_writel(dwc->regs, DWC3_GUCTL2, reg);
1029 }
1030
1031 if (!DWC3_VER_IS_PRIOR(DWC3, 250A)) {
1032 reg = dwc3_readl(dwc->regs, DWC3_GUCTL1);
1033
1034 /*
1035 * Enable hardware control of sending remote wakeup
1036 * in HS when the device is in the L1 state.
1037 */
1038 if (!DWC3_VER_IS_PRIOR(DWC3, 290A))
1039 reg |= DWC3_GUCTL1_DEV_L1_EXIT_BY_HW;
1040
1041 if (dwc->dis_tx_ipgap_linecheck_quirk)
1042 reg |= DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS;
1043
1044 if (dwc->parkmode_disable_ss_quirk)
1045 reg |= DWC3_GUCTL1_PARKMODE_DISABLE_SS;
1046
1047 dwc3_writel(dwc->regs, DWC3_GUCTL1, reg);
1048 }
1049
1050 if (dwc->dr_mode == USB_DR_MODE_HOST ||
1051 dwc->dr_mode == USB_DR_MODE_OTG) {
1052 reg = dwc3_readl(dwc->regs, DWC3_GUCTL);
1053
1054 /*
1055 * Enable Auto retry Feature to make the controller operating in
1056 * Host mode on seeing transaction errors(CRC errors or internal
1057 * overrun scenerios) on IN transfers to reply to the device
1058 * with a non-terminating retry ACK (i.e, an ACK transcation
1059 * packet with Retry=1 & Nump != 0)
1060 */
1061 reg |= DWC3_GUCTL_HSTINAUTORETRY;
1062
1063 dwc3_writel(dwc->regs, DWC3_GUCTL, reg);
1064 }
1065
1066 /*
1067 * Must config both number of packets and max burst settings to enable
1068 * RX and/or TX threshold.
1069 */
1070 if (!DWC3_IP_IS(DWC3) && dwc->dr_mode == USB_DR_MODE_HOST) {
1071 u8 rx_thr_num = dwc->rx_thr_num_pkt_prd;
1072 u8 rx_maxburst = dwc->rx_max_burst_prd;
1073 u8 tx_thr_num = dwc->tx_thr_num_pkt_prd;
1074 u8 tx_maxburst = dwc->tx_max_burst_prd;
1075
1076 if (rx_thr_num && rx_maxburst) {
1077 reg = dwc3_readl(dwc->regs, DWC3_GRXTHRCFG);
1078 reg |= DWC31_RXTHRNUMPKTSEL_PRD;
1079
1080 reg &= ~DWC31_RXTHRNUMPKT_PRD(~0);
1081 reg |= DWC31_RXTHRNUMPKT_PRD(rx_thr_num);
1082
1083 reg &= ~DWC31_MAXRXBURSTSIZE_PRD(~0);
1084 reg |= DWC31_MAXRXBURSTSIZE_PRD(rx_maxburst);
1085
1086 dwc3_writel(dwc->regs, DWC3_GRXTHRCFG, reg);
1087 }
1088
1089 if (tx_thr_num && tx_maxburst) {
1090 reg = dwc3_readl(dwc->regs, DWC3_GTXTHRCFG);
1091 reg |= DWC31_TXTHRNUMPKTSEL_PRD;
1092
1093 reg &= ~DWC31_TXTHRNUMPKT_PRD(~0);
1094 reg |= DWC31_TXTHRNUMPKT_PRD(tx_thr_num);
1095
1096 reg &= ~DWC31_MAXTXBURSTSIZE_PRD(~0);
1097 reg |= DWC31_MAXTXBURSTSIZE_PRD(tx_maxburst);
1098
1099 dwc3_writel(dwc->regs, DWC3_GTXTHRCFG, reg);
1100 }
1101 }
1102
1103 return 0;
1104
1105 err4:
1106 phy_power_off(dwc->usb3_generic_phy);
1107
1108 err3:
1109 phy_power_off(dwc->usb2_generic_phy);
1110
1111 err2:
1112 usb_phy_set_suspend(dwc->usb2_phy, 1);
1113 usb_phy_set_suspend(dwc->usb3_phy, 1);
1114
1115 err1:
1116 usb_phy_shutdown(dwc->usb2_phy);
1117 usb_phy_shutdown(dwc->usb3_phy);
1118 phy_exit(dwc->usb2_generic_phy);
1119 phy_exit(dwc->usb3_generic_phy);
1120
1121 err0a:
1122 dwc3_ulpi_exit(dwc);
1123
1124 err0:
1125 return ret;
1126 }
1127
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[android-common:android-5.4-stable 1/2] net/wireless/wext-proc.c:122:36: warning: unused variable 'wireless_seq_ops'
by kernel test robot
Hi Chun-Hung,
First bad commit (maybe != root cause):
tree: https://android.googlesource.com/kernel/common android-5.4-stable
head: 1c300cd58f4a0077c4590b722c7b322ad92b1592
commit: af38fd31201c8767c203806f21640a35e3d9ce69 [1/2] ANDROID: net: enable wireless core features with GKI_LEGACY_WEXT_ALLCONFIG
config: arm64-randconfig-r014-20210714 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
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 arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
git remote add android-common https://android.googlesource.com/kernel/common
git fetch --no-tags android-common android-5.4-stable
git checkout af38fd31201c8767c203806f21640a35e3d9ce69
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> net/wireless/wext-proc.c:122:36: warning: unused variable 'wireless_seq_ops' [-Wunused-const-variable]
static const struct seq_operations wireless_seq_ops = {
^
1 warning generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for DRM_MIPI_DSI
Depends on HAS_IOMEM && DRM
Selected by
- GKI_HIDDEN_DRM_CONFIGS
WARNING: unmet direct dependencies detected for DRM_KMS_CMA_HELPER
Depends on HAS_IOMEM && DRM
Selected by
- GKI_HIDDEN_DRM_CONFIGS
WARNING: unmet direct dependencies detected for SND_VMASTER
Depends on SOUND && !UML && SND
Selected by
- GKI_HIDDEN_SND_CONFIGS
WARNING: unmet direct dependencies detected for SND_PCM_IEC958
Depends on SOUND && !UML && SND
Selected by
- GKI_HIDDEN_SND_SOC_CONFIGS
WARNING: unmet direct dependencies detected for SND_JACK
Depends on SOUND && !UML && SND
Selected by
- GKI_HIDDEN_SND_CONFIGS
WARNING: unmet direct dependencies detected for SND_JACK_INPUT_DEV
Depends on SOUND && !UML && SND && SND_JACK
Selected by
- GKI_HIDDEN_SND_CONFIGS
WARNING: unmet direct dependencies detected for SND_PCM_ELD
Depends on SOUND && !UML && SND
Selected by
- GKI_HIDDEN_SND_CONFIGS
WARNING: unmet direct dependencies detected for DRM_GEM_CMA_HELPER
Depends on HAS_IOMEM && DRM
Selected by
- GKI_HIDDEN_DRM_CONFIGS
WARNING: unmet direct dependencies detected for WEXT_PROC
Depends on NET && WIRELESS && PROC_FS && WEXT_CORE
Selected by
- GKI_LEGACY_WEXT_ALLCONFIG
vim +/wireless_seq_ops +122 net/wireless/wext-proc.c
3d23e349d80717 Johannes Berg 2009-09-29 121
3d23e349d80717 Johannes Berg 2009-09-29 @122 static const struct seq_operations wireless_seq_ops = {
3d23e349d80717 Johannes Berg 2009-09-29 123 .start = wireless_dev_seq_start,
3d23e349d80717 Johannes Berg 2009-09-29 124 .next = wireless_dev_seq_next,
3d23e349d80717 Johannes Berg 2009-09-29 125 .stop = wireless_dev_seq_stop,
3d23e349d80717 Johannes Berg 2009-09-29 126 .show = wireless_dev_seq_show,
3d23e349d80717 Johannes Berg 2009-09-29 127 };
3d23e349d80717 Johannes Berg 2009-09-29 128
:::::: The code at line 122 was first introduced by commit
:::::: 3d23e349d807177eaf519d444677cee86b1a04cf wext: refactor
:::::: TO: Johannes Berg <johannes(a)sipsolutions.net>
:::::: CC: John W. Linville <linville(a)tuxdriver.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
Re: [PATCH] arm64: kexec: add support for kexec with spin-table
by kernel test robot
Hi Henry,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on arm64/for-next/core]
[also build test WARNING on v5.14-rc1 next-20210714]
[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/Henry-Willard/arm64-kexec-add-su...
base: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core
config: arm64-randconfig-s031-20210714 (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.3-341-g8af24329-dirty
# https://github.com/0day-ci/linux/commit/3dd4112e1b67732182a5e12891867db4e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Henry-Willard/arm64-kexec-add-support-for-kexec-with-spin-table/20210715-014204
git checkout 3dd4112e1b67732182a5e12891867db4e139980c
# 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__' O=build_dir ARCH=arm64 SHELL=/bin/bash arch/arm64/kernel/
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 >>)
>> arch/arm64/kernel/smp_spin_table.c:179:28: sparse: sparse: cast removes address space '__iomem' of expression
vim +/__iomem +179 arch/arm64/kernel/smp_spin_table.c
132
133
134 /*
135 * There is a four instruction loop set aside in protected
136 * memory by u-boot where secondary CPUs wait for the kernel to
137 * start.
138 *
139 * 0: wfe
140 * ldr x0, spin_table_cpu_release_addr
141 * cbz x0, 0b
142 * br x0
143 * spin_table_cpu_release_addr:
144 * .quad 0
145 *
146 * The address of spin_table_cpu_release_addr is passed in the
147 * "release-address" property in the device table.
148 * smp_spin_table_cpu_prepare() stores the real address of
149 * secondary_holding_pen() where the secondary CPUs loop
150 * until they are released one at a time by smp_spin_table_cpu_boot().
151 * We reuse the spin-table loop by clearing spin_table_cpu_release_addr,
152 * and branching to the beginning of the loop via cpu_soft_restart(),
153 * which turns off the MMU and caching.
154 */
155 static void smp_spin_table_cpu_die(unsigned int cpu)
156 {
157 __le64 __iomem *release_addr;
158 unsigned int *spin_table_inst;
159 unsigned long spin_table_start;
160
161 if (!cpu_release_addr[cpu])
162 goto spin;
163
164 spin_table_start = (cpu_release_addr[cpu] - sizeof(spin_table_loop));
165
166 /*
167 * The cpu-release-addr may or may not be inside the linear mapping.
168 * As ioremap_cache will either give us a new mapping or reuse the
169 * existing linear mapping, we can use it to cover both cases. In
170 * either case the memory will be MT_NORMAL.
171 */
172 release_addr = ioremap_cache(spin_table_start,
173 sizeof(*release_addr) +
174 sizeof(spin_table_loop));
175
176 if (!release_addr)
177 goto spin;
178
> 179 spin_table_inst = (unsigned int *)release_addr;
180 if (spin_table_inst[0] != spin_table_loop[0] ||
181 spin_table_inst[1] != spin_table_loop[1] ||
182 spin_table_inst[2] != spin_table_loop[2] ||
183 spin_table_inst[3] != spin_table_loop[3])
184 goto spin;
185
186 /*
187 * Clear the release address, so that we can use it again
188 */
189 writeq_relaxed(0, release_addr + 2);
190 dcache_clean_inval_poc((__force unsigned long)(release_addr + 2),
191 (__force unsigned long)(release_addr + 2) +
192 sizeof(*release_addr));
193
194 iounmap(release_addr);
195
196 local_daif_mask();
197 cpu_soft_restart(spin_table_start, 0, 0, 0);
198
199 BUG(); /* Should never get here */
200
201 spin:
202 cpu_park_loop();
203
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months