[android-common:android12-5.10-2021-08 5024/10760] drivers/gpu/drm/hisilicon/kirin/kirin_drm_dsi.c:33:6: warning: no previous prototype for function 'dsi_set_output_client'
by kernel test robot
Hi John,
FYI, the error/warning still remains.
tree: https://android.googlesource.com/kernel/common android12-5.10-2021-08
head: fe9069667a5af7b74caa501c945d7482d324e9e5
commit: 34ebaf13befc0cd9274a190affbeae8e94f16ced [5024/10760] ANDROID: drm: kirin: Introduce kirin960
config: arm64-randconfig-r015-20211012 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project adf55ac6657693f7bfbe3087b599b4031a765a44)
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 android12-5.10-2021-08
git checkout 34ebaf13befc0cd9274a190affbeae8e94f16ced
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 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 >>):
>> drivers/gpu/drm/hisilicon/kirin/kirin_drm_dsi.c:33:6: warning: no previous prototype for function 'dsi_set_output_client' [-Wmissing-prototypes]
void dsi_set_output_client(struct drm_device *dev)
^
drivers/gpu/drm/hisilicon/kirin/kirin_drm_dsi.c:33:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void dsi_set_output_client(struct drm_device *dev)
^
static
1 warning generated.
vim +/dsi_set_output_client +33 drivers/gpu/drm/hisilicon/kirin/kirin_drm_dsi.c
32
> 33 void dsi_set_output_client(struct drm_device *dev)
34 {
35 enum dsi_output_client client;
36 struct drm_connector *connector;
37 struct drm_encoder *encoder;
38 struct drm_connector_list_iter conn_iter;
39 struct dw_dsi *dsi;
40
41 mutex_lock(&dev->mode_config.mutex);
42
43 /* find dsi encoder */
44 drm_for_each_encoder(encoder, dev)
45 if (encoder->encoder_type == DRM_MODE_ENCODER_DSI)
46 break;
47 dsi = encoder_to_dsi(encoder);
48
49 /* find HDMI connector */
50 drm_connector_list_iter_begin(dev, &conn_iter);
51 drm_for_each_connector_iter(connector, &conn_iter)
52 if (connector->connector_type == DRM_MODE_CONNECTOR_HDMIA)
53 break;
54 drm_connector_list_iter_end(&conn_iter);
55
56 /*
57 * set the proper dsi output client
58 */
59 client = connector->status == connector_status_connected ? OUT_HDMI :
60 OUT_PANEL;
61 if (client != dsi->cur_client) {
62 /*
63 * set the switch ic to select the HDMI or MIPI_DSI
64 */
65 if (hisi_dsi_ops->version == KIRIN960_DSI)
66 gpiod_set_value_cansleep(dsi->gpio_mux, client);
67
68 dsi->cur_client = client;
69 /* let the userspace know panel connector status has changed */
70 drm_sysfs_hotplug_event(dev);
71 DRM_INFO("client change to %s\n",
72 client == OUT_HDMI ? "HDMI" : "panel");
73 }
74
75 mutex_unlock(&dev->mode_config.mutex);
76 }
77 EXPORT_SYMBOL_GPL(dsi_set_output_client);
78 /************************for the panel attach to dsi*****************************/
79 static int dsi_connector_get_modes(struct drm_connector *connector)
80 {
81 struct dw_dsi *dsi = connector_to_dsi(connector);
82
83 return drm_panel_get_modes(dsi->panel, connector);
84 }
85
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[amir73il:fan_rename 6/8] fs/notify/fanotify/fanotify.c:796:8: warning: variable 'old_memcg' is used uninitialized whenever 'if' condition is true
by kernel test robot
tree: https://github.com/amir73il/linux fan_rename
head: d853df988fac35734c681deca299d26358f3e2fd
commit: 5fe3b310a5dc68cff5bd3dfbdfcc4c699a11ab15 [6/8] fanotify: record either old name new name or both for FAN_RENAME
config: hexagon-randconfig-r045-20211118 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project c46becf500df2a7fb4b4fce16178a036c344315a)
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/amir73il/linux/commit/5fe3b310a5dc68cff5bd3dfbdfcc4c69...
git remote add amir73il https://github.com/amir73il/linux
git fetch --no-tags amir73il fan_rename
git checkout 5fe3b310a5dc68cff5bd3dfbdfcc4c699a11ab15
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=hexagon
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> fs/notify/fanotify/fanotify.c:796:8: warning: variable 'old_memcg' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (WARN_ON_ONCE(!(mask & FAN_MOVE)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/bug.h:179:33: note: expanded from macro 'WARN_ON_ONCE'
#define WARN_ON_ONCE(condition) WARN_ON(condition)
^~~~~~~~~~~~~~~~~~
include/asm-generic/bug.h:165:28: note: expanded from macro 'WARN_ON'
#define WARN_ON(condition) ({ \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fs/notify/fanotify/fanotify.c:856:19: note: uninitialized use occurs here
set_active_memcg(old_memcg);
^~~~~~~~~
fs/notify/fanotify/fanotify.c:796:4: note: remove the 'if' if its condition is always false
if (WARN_ON_ONCE(!(mask & FAN_MOVE)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fs/notify/fanotify/fanotify.c:749:30: note: initialize the variable 'old_memcg' to silence this warning
struct mem_cgroup *old_memcg;
^
= NULL
1 warning generated.
vim +796 fs/notify/fanotify/fanotify.c
735
736 static struct fanotify_event *fanotify_alloc_event(struct fsnotify_group *group,
737 u32 mask, const void *data,
738 int data_type, struct inode *dir,
739 const struct qstr *file_name,
740 __kernel_fsid_t *fsid)
741 {
742 struct fanotify_event *event = NULL;
743 gfp_t gfp = GFP_KERNEL_ACCOUNT;
744 unsigned int fid_mode = FAN_GROUP_FLAG(group, FANOTIFY_FID_BITS);
745 struct inode *id = fanotify_fid_inode(mask, data, data_type, dir,
746 fid_mode);
747 struct inode *dirid = fanotify_dfid_inode(mask, data, data_type, dir);
748 const struct path *path = fsnotify_data_path(data, data_type);
749 struct mem_cgroup *old_memcg;
750 struct dentry *moved = NULL;
751 struct inode *child = NULL;
752 bool name_event = false;
753 unsigned int hash = 0;
754 bool ondir = mask & FAN_ONDIR;
755 struct pid *pid;
756
757 if ((fid_mode & FAN_REPORT_DIR_FID) && dirid) {
758 /*
759 * For certain events and group flags, report the child fid
760 * in addition to reporting the parent fid and maybe child name.
761 */
762 if (fanotify_report_child_fid(fid_mode, mask) && id != dirid)
763 child = id;
764
765 id = dirid;
766
767 /*
768 * We record file name only in a group with FAN_REPORT_NAME
769 * and when we have a directory inode to report.
770 *
771 * For directory entry modification event, we record the fid of
772 * the directory and the name of the modified entry.
773 *
774 * For event on non-directory that is reported to parent, we
775 * record the fid of the parent and the name of the child.
776 *
777 * Even if not reporting name, we need a variable length
778 * fanotify_name_event if reporting both parent and child fids.
779 */
780 if (!(fid_mode & FAN_REPORT_NAME)) {
781 name_event = !!child;
782 file_name = NULL;
783 } else if ((mask & ALL_FSNOTIFY_DIRENT_EVENTS) || !ondir) {
784 name_event = true;
785 }
786
787 /*
788 * In the special case of FAN_RENAME event, the FAN_MOVE flags
789 * are only used internally to indicate if we need to report
790 * only the old parent+name, only the new parent+name or both.
791 * 'dirid' and 'file_name' are the old parent+name and
792 * 'moved' has the new parent+name.
793 */
794 if (mask & FAN_RENAME) {
795 /* Either old and/or new info must be reported */
> 796 if (WARN_ON_ONCE(!(mask & FAN_MOVE)))
797 goto out;
798
799 if (!(mask & FAN_MOVED_FROM)) {
800 /* Do not report old parent+name */
801 dirid = NULL;
802 file_name = NULL;
803 }
804 if (mask & FAN_MOVED_FROM) {
805 /* Report new parent+name */
806 moved = fsnotify_data_dentry(data, data_type);
807 }
808 /* Clear internal flags */
809 mask &= ~FAN_MOVE;
810 name_event = true;
811 }
812 }
813
814 /*
815 * For queues with unlimited length lost events are not expected and
816 * can possibly have security implications. Avoid losing events when
817 * memory is short. For the limited size queues, avoid OOM killer in the
818 * target monitoring memcg as it may have security repercussion.
819 */
820 if (group->max_events == UINT_MAX)
821 gfp |= __GFP_NOFAIL;
822 else
823 gfp |= __GFP_RETRY_MAYFAIL;
824
825 /* Whoever is interested in the event, pays for the allocation. */
826 old_memcg = set_active_memcg(group->memcg);
827
828 if (fanotify_is_perm_event(mask)) {
829 event = fanotify_alloc_perm_event(path, gfp);
830 } else if (fanotify_is_error_event(mask)) {
831 event = fanotify_alloc_error_event(group, fsid, data,
832 data_type, &hash);
833 } else if (name_event && (file_name || moved || child)) {
834 event = fanotify_alloc_name_event(dirid, fsid, file_name, child,
835 moved, &hash, gfp);
836 } else if (fid_mode) {
837 event = fanotify_alloc_fid_event(id, fsid, &hash, gfp);
838 } else {
839 event = fanotify_alloc_path_event(path, &hash, gfp);
840 }
841
842 if (!event)
843 goto out;
844
845 if (FAN_GROUP_FLAG(group, FAN_REPORT_TID))
846 pid = get_pid(task_pid(current));
847 else
848 pid = get_pid(task_tgid(current));
849
850 /* Mix event info, FAN_ONDIR flag and pid into event merge key */
851 hash ^= hash_long((unsigned long)pid | ondir, FANOTIFY_EVENT_HASH_BITS);
852 fanotify_init_event(event, hash, mask);
853 event->pid = pid;
854
855 out:
856 set_active_memcg(old_memcg);
857 return event;
858 }
859
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[mcgrof-next:20211117-sysctl-cleanups-all-set-04 22/36] kernel/printk/printk.c:3205:2: error: implicit declaration of function 'printk_sysctl_init'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git 20211117-sysctl-cleanups-all-set-04
head: 3559bb8939dd93c96215ab179d868c5fdc167335
commit: 99f50ec2e9ced923150fa9f7d6d9a5f767cba59c [22/36] printk: move printk sysctl to printk/sysctl.c
config: arm-randconfig-r012-20211118 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project c46becf500df2a7fb4b4fce16178a036c344315a)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git/com...
git remote add mcgrof-next https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git
git fetch --no-tags mcgrof-next 20211117-sysctl-cleanups-all-set-04
git checkout 99f50ec2e9ced923150fa9f7d6d9a5f767cba59c
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=arm
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 >>):
kernel/printk/printk.c:175:5: warning: no previous prototype for function 'devkmsg_sysctl_set_loglvl' [-Wmissing-prototypes]
int devkmsg_sysctl_set_loglvl(struct ctl_table *table, int write,
^
kernel/printk/printk.c:175:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int devkmsg_sysctl_set_loglvl(struct ctl_table *table, int write,
^
static
>> kernel/printk/printk.c:3205:2: error: implicit declaration of function 'printk_sysctl_init' [-Werror,-Wimplicit-function-declaration]
printk_sysctl_init();
^
kernel/printk/printk.c:3205:2: note: did you mean 'printk_late_init'?
kernel/printk/printk.c:3174:19: note: 'printk_late_init' declared here
static int __init printk_late_init(void)
^
1 warning and 1 error generated.
--
>> kernel/printk/sysctl.c:47:13: error: use of undeclared identifier 'printk_delay_msec'
.data = &printk_delay_msec,
^
>> kernel/printk/sysctl.c:59:19: error: use of undeclared identifier 'devkmsg_sysctl_set_loglvl'
.proc_handler = devkmsg_sysctl_set_loglvl,
^
>> kernel/printk/sysctl.c:63:13: error: use of undeclared identifier 'dmesg_restrict'; did you mean 'kptr_restrict'?
.data = &dmesg_restrict,
^~~~~~~~~~~~~~
kptr_restrict
include/linux/printk.h:324:12: note: 'kptr_restrict' declared here
extern int kptr_restrict;
^
>> kernel/printk/sysctl.c:82:13: warning: no previous prototype for function 'printk_sysctl_init' [-Wmissing-prototypes]
void __init printk_sysctl_init(void)
^
kernel/printk/sysctl.c:82:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void __init printk_sysctl_init(void)
^
static
1 warning and 3 errors generated.
vim +/printk_sysctl_init +3205 kernel/printk/printk.c
3159
3160 /*
3161 * Some boot consoles access data that is in the init section and which will
3162 * be discarded after the initcalls have been run. To make sure that no code
3163 * will access this data, unregister the boot consoles in a late initcall.
3164 *
3165 * If for some reason, such as deferred probe or the driver being a loadable
3166 * module, the real console hasn't registered yet at this point, there will
3167 * be a brief interval in which no messages are logged to the console, which
3168 * makes it difficult to diagnose problems that occur during this time.
3169 *
3170 * To mitigate this problem somewhat, only unregister consoles whose memory
3171 * intersects with the init section. Note that all other boot consoles will
3172 * get unregistered when the real preferred console is registered.
3173 */
3174 static int __init printk_late_init(void)
3175 {
3176 struct console *con;
3177 int ret;
3178
3179 for_each_console(con) {
3180 if (!(con->flags & CON_BOOT))
3181 continue;
3182
3183 /* Check addresses that might be used for enabled consoles. */
3184 if (init_section_intersects(con, sizeof(*con)) ||
3185 init_section_contains(con->write, 0) ||
3186 init_section_contains(con->read, 0) ||
3187 init_section_contains(con->device, 0) ||
3188 init_section_contains(con->unblank, 0) ||
3189 init_section_contains(con->data, 0)) {
3190 /*
3191 * Please, consider moving the reported consoles out
3192 * of the init section.
3193 */
3194 pr_warn("bootconsole [%s%d] uses init memory and must be disabled even before the real one is ready\n",
3195 con->name, con->index);
3196 unregister_console(con);
3197 }
3198 }
3199 ret = cpuhp_setup_state_nocalls(CPUHP_PRINTK_DEAD, "printk:dead", NULL,
3200 console_cpu_notify);
3201 WARN_ON(ret < 0);
3202 ret = cpuhp_setup_state_nocalls(CPUHP_AP_ONLINE_DYN, "printk:online",
3203 console_cpu_notify, NULL);
3204 WARN_ON(ret < 0);
> 3205 printk_sysctl_init();
3206 return 0;
3207 }
3208 late_initcall(printk_late_init);
3209
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[paulmck-rcu:dev.2021.11.10a 81/96] kernel/rcu/tasks.h:181:25: sparse: sparse: incorrect type in argument 1 (different modifiers)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev.2021.11.10a
head: cfbd3769397911e7f1561fa57b4490b1e4fed9de
commit: a3ecbdd6d841a025ebe87b79c7538b4dc44edc94 [81/96] rcu-tasks: Use spin_lock_rcu_node() and friends
config: arm-randconfig-s032-20211115 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.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.4-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git/com...
git remote add paulmck-rcu https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
git fetch --no-tags paulmck-rcu dev.2021.11.10a
git checkout a3ecbdd6d841a025ebe87b79c7538b4dc44edc94
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm
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/rcu/update.c: note: in included file:
>> kernel/rcu/tasks.h:181:25: sparse: sparse: incorrect type in argument 1 (different modifiers) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] * @@
kernel/rcu/tasks.h:181:25: sparse: expected struct raw_spinlock [usertype] *lock
kernel/rcu/tasks.h:181:25: sparse: got struct raw_spinlock [noderef] *
vim +181 kernel/rcu/tasks.h
165
166 // Initialize per-CPU callback lists for the specified flavor of
167 // Tasks RCU.
168 static void cblist_init_generic(struct rcu_tasks *rtp)
169 {
170 int cpu;
171 unsigned long flags;
172
173 raw_spin_lock_irqsave(&rtp->cbs_gbl_lock, flags);
174 rtp->percpu_enqueue_shift = ilog2(nr_cpu_ids);
175 for_each_possible_cpu(cpu) {
176 struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
177
178 pr_info("%s initializing CPU %d rcu_tasks_percpu structure for %s\n", __func__, cpu, rtp->name);
179 WARN_ON_ONCE(!rtpcp);
180 if (cpu)
> 181 raw_spin_lock_init(&rtpcp->lock);
182 raw_spin_lock_irqsave_rcu_node(rtpcp, flags);
183 if (rcu_segcblist_empty(&rtpcp->cblist))
184 rcu_segcblist_init(&rtpcp->cblist);
185 raw_spin_unlock_irqrestore_rcu_node(rtpcp, flags);
186 }
187 raw_spin_unlock_irqrestore(&rtp->cbs_gbl_lock, flags);
188
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[dgc-xfs:xlog-write-rework 7/16] fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs.git xlog-write-rework
head: a205e517349494d7b3ab2ca314a5a2fb4ac042ff
commit: d16a295349c6a39d4c90b6386754466d9c8f5146 [7/16] xfs: reserve space and initialise xlog_op_header in item formatting
config: i386-randconfig-s001-20211115 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs.git/commit/...
git remote add dgc-xfs https://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs.git
git fetch --no-tags dgc-xfs xlog-write-rework
git checkout d16a295349c6a39d4c90b6386754466d9c8f5146
# 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>
sparse warnings: (new ones prefixed by >>)
fs/xfs/xfs_bmap_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_refcount_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_rmap_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_dquot_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_extfree_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_buf_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_icreate_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
--
fs/xfs/xfs_inode_item.c: note: in included file:
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
>> fs/xfs/xfs_log.h:33:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] oh_len @@ got int len @@
fs/xfs/xfs_log.h:33:21: sparse: expected restricted __be32 [usertype] oh_len
fs/xfs/xfs_log.h:33:21: sparse: got int len
vim +33 fs/xfs/xfs_log.h
23
24 void *xlog_prepare_iovec(struct xfs_log_vec *lv, struct xfs_log_iovec **vecp,
25 uint type);
26
27 static inline void
28 xlog_finish_iovec(struct xfs_log_vec *lv, struct xfs_log_iovec *vec, int len)
29 {
30 struct xlog_op_header *oph = vec->i_addr;
31
32 /* opheader tracks payload length, logvec tracks region length */
> 33 oph->oh_len = len;
34
35 len += sizeof(struct xlog_op_header);
36 lv->lv_buf_len += len;
37 lv->lv_bytes += len;
38 vec->i_len = len;
39 }
40
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[mcgrof-next:20211117-sysctl-cleanups-all-set-04 20/36] include/linux/sysctl.h:230:1: error: expected ';' before '}' token
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git 20211117-sysctl-cleanups-all-set-04
head: 3559bb8939dd93c96215ab179d868c5fdc167335
commit: e727f07ea75eda3892a29abc81b503ebc2bbcaf1 [20/36] sysctl: add helper to register a sysctl mount point
config: arc-randconfig-r043-20211117 (attached as .config)
compiler: arceb-elf-gcc (GCC) 11.2.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://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git/com...
git remote add mcgrof-next https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git
git fetch --no-tags mcgrof-next 20211117-sysctl-cleanups-all-set-04
git checkout e727f07ea75eda3892a29abc81b503ebc2bbcaf1
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc prepare
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/arc/Makefile:26: ** WARNING ** CONFIG_ARC_TUNE_MCPU flag '' is unknown, fallback to ''
error: no override and no default toolchain set
init/Kconfig:70:warning: 'RUSTC_VERSION': number is invalid
In file included from include/linux/key.h:17,
from include/linux/cred.h:13,
from include/linux/sched/signal.h:10,
from include/linux/rcuwait.h:6,
from include/linux/percpu-rwsem.h:7,
from include/linux/fs.h:33,
from include/linux/huge_mm.h:8,
from include/linux/mm.h:717,
from arch/arc/kernel/asm-offsets.c:7:
include/linux/sysctl.h: In function 'register_sysctl_mount_point':
>> include/linux/sysctl.h:230:1: error: expected ';' before '}' token
230 | }
| ^
At top level:
include/linux/sysctl.h:227:30: warning: 'register_sysctl_mount_point' defined but not used [-Wunused-function]
227 | static struct sysctl_header *register_sysctl_mount_point(const char *path)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:122: arch/arc/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1284: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:226: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.
vim +230 include/linux/sysctl.h
226
227 static struct sysctl_header *register_sysctl_mount_point(const char *path)
228 {
229 return NULL
> 230 }
231
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
drivers/platform/chrome/cros_ec_typec.c:900:39: sparse: sparse: cast to restricted __le16
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 42eb8fdac2fc5d62392dcfcf0253753e821a97b0
commit: 3b3dd1f0dbfe92781c60f36ea5c22b26360f9909 platform/chrome: cros_ec_typec: Report SOP' PD revision from status
date: 10 months ago
config: x86_64-randconfig-s021-20211117 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# 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 3b3dd1f0dbfe92781c60f36ea5c22b26360f9909
# 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 drivers/platform/chrome/
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/platform/chrome/cros_ec_typec.c:900:39: sparse: sparse: cast to restricted __le16
vim +900 drivers/platform/chrome/cros_ec_typec.c
870
871 static void cros_typec_handle_status(struct cros_typec_data *typec, int port_num)
872 {
873 struct ec_response_typec_status resp;
874 struct ec_params_typec_status req = {
875 .port = port_num,
876 };
877 int ret;
878
879 ret = cros_typec_ec_command(typec, 0, EC_CMD_TYPEC_STATUS, &req, sizeof(req),
880 &resp, sizeof(resp));
881 if (ret < 0) {
882 dev_warn(typec->dev, "EC_CMD_TYPEC_STATUS failed for port: %d\n", port_num);
883 return;
884 }
885
886 /* Handle any events appropriately. */
887 if (resp.events & PD_STATUS_EVENT_SOP_DISC_DONE && !typec->ports[port_num]->sop_disc_done) {
888 ret = cros_typec_handle_sop_disc(typec, port_num);
889 if (ret < 0)
890 dev_err(typec->dev, "Couldn't parse SOP Disc data, port: %d\n", port_num);
891 else
892 typec->ports[port_num]->sop_disc_done = true;
893 }
894
895 if (resp.events & PD_STATUS_EVENT_SOP_PRIME_DISC_DONE &&
896 !typec->ports[port_num]->sop_prime_disc_done) {
897 u16 sop_prime_revision;
898
899 /* Convert BCD to the format preferred by the TypeC framework */
> 900 sop_prime_revision = (le16_to_cpu(resp.sop_prime_revision) & 0xff00) >> 4;
901 ret = cros_typec_handle_sop_prime_disc(typec, port_num, sop_prime_revision);
902 if (ret < 0)
903 dev_err(typec->dev, "Couldn't parse SOP' Disc data, port: %d\n", port_num);
904 else
905 typec->ports[port_num]->sop_prime_disc_done = true;
906 }
907 }
908
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months
[tglx-devel:msi 46/89] include/vdso/bits.h:7:33: error: passing argument 1 of 'msi_device_has_property' makes pointer from integer without a cast
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git msi
head: 4c0c122f742a15b3fee04b234e1fb4191621a92f
commit: b78cf3459e9a30b2f7c98ce2f8876245e291b75b [46/89] powerpc/cell/axon_msi: Use MSI device properties
config: powerpc64-defconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 11.2.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://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git/commit/?id...
git remote add tglx-devel https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git
git fetch --no-tags tglx-devel msi
git checkout b78cf3459e9a30b2f7c98ce2f8876245e291b75b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.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 errors (new ones prefixed by >>):
In file included from include/linux/bits.h:6,
from include/linux/bitops.h:6,
from include/linux/kernel.h:13,
from include/linux/interrupt.h:6,
from arch/powerpc/platforms/cell/axon_msi.c:7:
arch/powerpc/platforms/cell/axon_msi.c: In function 'setup_msi_msg_address':
>> include/vdso/bits.h:7:33: error: passing argument 1 of 'msi_device_has_property' makes pointer from integer without a cast [-Werror=int-conversion]
7 | #define BIT(nr) (UL(1) << (nr))
| ^~~~~~~~~~~~~~~
| |
| long unsigned int
include/linux/msi.h:161:41: note: in expansion of macro 'BIT'
161 | #define MSI_PROP_64BIT BIT(2)
| ^~~
arch/powerpc/platforms/cell/axon_msi.c:212:44: note: in expansion of macro 'MSI_PROP_64BIT'
212 | is_64bit = msi_device_has_property(MSI_PROP_64BIT);
| ^~~~~~~~~~~~~~
In file included from arch/powerpc/platforms/cell/axon_msi.c:11:
include/linux/msi.h:164:45: note: expected 'struct device *' but argument is of type 'long unsigned int'
164 | bool msi_device_has_property(struct device *dev, unsigned long prop);
| ~~~~~~~~~~~~~~~^~~
>> arch/powerpc/platforms/cell/axon_msi.c:212:20: error: too few arguments to function 'msi_device_has_property'
212 | is_64bit = msi_device_has_property(MSI_PROP_64BIT);
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/powerpc/platforms/cell/axon_msi.c:11:
include/linux/msi.h:164:6: note: declared here
164 | bool msi_device_has_property(struct device *dev, unsigned long prop);
| ^~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +/msi_device_has_property +7 include/vdso/bits.h
3945ff37d2f48d3 Vincenzo Frascino 2020-03-20 6
3945ff37d2f48d3 Vincenzo Frascino 2020-03-20 @7 #define BIT(nr) (UL(1) << (nr))
3945ff37d2f48d3 Vincenzo Frascino 2020-03-20 8
:::::: The code at line 7 was first introduced by commit
:::::: 3945ff37d2f48d39fd1751d282c80176654049e4 linux/bits.h: Extract common header for vDSO
:::::: TO: Vincenzo Frascino <vincenzo.frascino(a)arm.com>
:::::: CC: Thomas Gleixner <tglx(a)linutronix.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
10 months