Hi Cristian,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on linux/master]
[also build test WARNING on soc/for-next linus/master v5.8-rc1 next-20200618]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url:
https://github.com/0day-ci/linux/commits/Cristian-Marussi/SCMI-Notificati...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
1b5044021070efa3259f3e9548dc35d1eb6aa844
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 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 warnings (new ones prefixed by >>, old ones prefixed by <<):
drivers/firmware/arm_scmi/notify.c: In function 'scmi_notify':
> drivers/firmware/arm_scmi/notify.c:146:24: warning: comparison is
always true due to limited range of data type [-Wtype-limits]
146 | if ((__ni)
&& (__pid) < SCMI_MAX_PROTO) | ^
> drivers/firmware/arm_scmi/notify.c:165:9: note: in expansion of
macro 'SCMI_GET_PROTO'
165 | __pd = SCMI_GET_PROTO((__ni), (__pid));
| ^~~~~~~~~~~~~~
> drivers/firmware/arm_scmi/notify.c:566:10: note: in expansion of
macro 'SCMI_GET_REVT'
566 | r_evt = SCMI_GET_REVT(ni, proto_id, evt_id);
| ^~~~~~~~~~~~~
drivers/firmware/arm_scmi/notify.c: In function 'scmi_register_protocol_events':
drivers/firmware/arm_scmi/notify.c:741:31: warning: comparison is always false due to
limited range of data type [-Wtype-limits]
741 | if (!ops || !evt || proto_id >= SCMI_MAX_PROTO)
| ^~
vim +146 drivers/firmware/arm_scmi/notify.c
be6c83f5e12aef Cristian Marussi 2020-06-18 135
be6c83f5e12aef Cristian Marussi 2020-06-18 136 /*
be6c83f5e12aef Cristian Marussi 2020-06-18 137 * A set of macros used to access safely
@registered_protocols and
be6c83f5e12aef Cristian Marussi 2020-06-18 138 * @registered_events arrays; these are
fixed in size and each entry is possibly
be6c83f5e12aef Cristian Marussi 2020-06-18 139 * populated at protocols'
registration time and then only read but NEVER
be6c83f5e12aef Cristian Marussi 2020-06-18 140 * modified or removed.
be6c83f5e12aef Cristian Marussi 2020-06-18 141 */
be6c83f5e12aef Cristian Marussi 2020-06-18 142 #define SCMI_GET_PROTO(__ni,
__pid) \
be6c83f5e12aef Cristian Marussi 2020-06-18 143 ({ \
be6c83f5e12aef Cristian Marussi 2020-06-18 144 struct scmi_registered_events_desc *__pd
= NULL; \
be6c83f5e12aef Cristian Marussi 2020-06-18 145 \
be6c83f5e12aef Cristian Marussi 2020-06-18 @146 if ((__ni) && (__pid) <
SCMI_MAX_PROTO) \
be6c83f5e12aef Cristian Marussi 2020-06-18 147 __pd =
READ_ONCE((__ni)->registered_protocols[(__pid)]);\
be6c83f5e12aef Cristian Marussi 2020-06-18 148 __pd; \
be6c83f5e12aef Cristian Marussi 2020-06-18 149 })
be6c83f5e12aef Cristian Marussi 2020-06-18 150
be6c83f5e12aef Cristian Marussi 2020-06-18 151 #define SCMI_GET_REVT_FROM_PD(__pd,
__eid) \
be6c83f5e12aef Cristian Marussi 2020-06-18 152 ({ \
be6c83f5e12aef Cristian Marussi 2020-06-18 153 struct scmi_registered_event *__revt =
NULL; \
be6c83f5e12aef Cristian Marussi 2020-06-18 154 \
be6c83f5e12aef Cristian Marussi 2020-06-18 155 if ((__pd) && (__eid) <
(__pd)->num_events) \
be6c83f5e12aef Cristian Marussi 2020-06-18 156 __revt =
READ_ONCE((__pd)->registered_events[(__eid)]); \
be6c83f5e12aef Cristian Marussi 2020-06-18 157 __revt; \
be6c83f5e12aef Cristian Marussi 2020-06-18 158 })
be6c83f5e12aef Cristian Marussi 2020-06-18 159
be6c83f5e12aef Cristian Marussi 2020-06-18 160 #define SCMI_GET_REVT(__ni, __pid,
__eid) \
be6c83f5e12aef Cristian Marussi 2020-06-18 161 ({ \
be6c83f5e12aef Cristian Marussi 2020-06-18 162 struct scmi_registered_event
*__revt; \
be6c83f5e12aef Cristian Marussi 2020-06-18 163 struct scmi_registered_events_desc
*__pd; \
be6c83f5e12aef Cristian Marussi 2020-06-18 164 \
be6c83f5e12aef Cristian Marussi 2020-06-18 @165 __pd = SCMI_GET_PROTO((__ni),
(__pid)); \
be6c83f5e12aef Cristian Marussi 2020-06-18 166 __revt = SCMI_GET_REVT_FROM_PD(__pd,
(__eid)); \
be6c83f5e12aef Cristian Marussi 2020-06-18 167 __revt; \
be6c83f5e12aef Cristian Marussi 2020-06-18 168 })
be6c83f5e12aef Cristian Marussi 2020-06-18 169
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org