Re: [PATCH v1 2/2] uuid: Make guid_t completely internal type to the kernel

From: kernel test robot
Date: Sun Nov 01 2020 - 14:21:28 EST


Hi Andy,

I love your patch! Yet something to improve:

[auto build test ERROR on hch-configfs/for-next]
[also build test ERROR on linus/master v5.10-rc1 next-20201030]
[cannot apply to linux/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/Andy-Shevchenko/modpost-Mark-uuid_le-type-only-for-MEI/20201031-221811
base: git://git.infradead.org/users/hch/configfs.git for-next
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/b3ed5f445f0427adad04815a6c42982ef1f5926f
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Andy-Shevchenko/modpost-Mark-uuid_le-type-only-for-MEI/20201031-221811
git checkout b3ed5f445f0427adad04815a6c42982ef1f5926f
# save the attached .config to linux build tree
make W=1 ARCH=x86_64

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

drivers/misc/mei/client.c: In function '__mei_me_cl_by_uuid':
>> drivers/misc/mei/client.c:141:19: error: incompatible type for argument 1 of 'uuid_le_cmp'
141 | if (uuid_le_cmp(*uuid, *pn) == 0)
| ^~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/uapi/linux/mei.h:10,
from drivers/misc/mei/client.c:13:
include/linux/uuid.h:113:44: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/client.c:141:26: error: incompatible type for argument 2 of 'uuid_le_cmp'
141 | if (uuid_le_cmp(*uuid, *pn) == 0)
| ^~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/uapi/linux/mei.h:10,
from drivers/misc/mei/client.c:13:
include/linux/uuid.h:113:61: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/client.c: In function '__mei_me_cl_by_uuid_id':
drivers/misc/mei/client.c:221:19: error: incompatible type for argument 1 of 'uuid_le_cmp'
221 | if (uuid_le_cmp(*uuid, *pn) == 0 &&
| ^~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/uapi/linux/mei.h:10,
from drivers/misc/mei/client.c:13:
include/linux/uuid.h:113:44: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/client.c:221:26: error: incompatible type for argument 2 of 'uuid_le_cmp'
221 | if (uuid_le_cmp(*uuid, *pn) == 0 &&
| ^~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/uapi/linux/mei.h:10,
from drivers/misc/mei/client.c:13:
include/linux/uuid.h:113:61: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
--
In file included from include/linux/uuid.h:111,
from include/linux/mei_cl_bus.h:9,
from drivers/misc/mei/bus.c:16:
drivers/misc/mei/bus.c: In function 'mei_cl_device_find':
>> include/uapi/linux/uuid.h:28:1: error: incompatible type for argument 1 of 'uuid_le_cmp'
28 | ((uuid_le) \
| ^~~~~~~~~~~~~~~~~~~
| |
| uuid_le {aka struct <anonymous>}
29 | {{ (a) & 0xff, ((a) >> 8) & 0xff, ((a) >> 16) & 0xff, ((a) >> 24) & 0xff, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | (b) & 0xff, ((b) >> 8) & 0xff, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 | (c) & 0xff, ((c) >> 8) & 0xff, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32 | (d0), (d1), (d2), (d3), (d4), (d5), (d6), (d7) }})
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/uapi/linux/uuid.h:35:2: note: in expansion of macro 'UUID_LE'
35 | UUID_LE(0x00000000, 0x0000, 0x0000, 0x00, 0x00, 0x00, 0x00, \
| ^~~~~~~
drivers/misc/mei/bus.c:630:21: note: in expansion of macro 'NULL_UUID_LE'
630 | while (uuid_le_cmp(NULL_UUID_LE, id->uuid)) {
| ^~~~~~~~~~~~
In file included from include/linux/mei_cl_bus.h:9,
from drivers/misc/mei/bus.c:16:
include/linux/uuid.h:113:44: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
>> drivers/misc/mei/bus.c:630:37: error: incompatible type for argument 2 of 'uuid_le_cmp'
630 | while (uuid_le_cmp(NULL_UUID_LE, id->uuid)) {
| ~~^~~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/linux/mei_cl_bus.h:9,
from drivers/misc/mei/bus.c:16:
include/linux/uuid.h:113:61: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/bus.c:631:20: error: incompatible type for argument 1 of 'uuid_le_cmp'
631 | if (!uuid_le_cmp(*uuid, id->uuid)) {
| ^~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/linux/mei_cl_bus.h:9,
from drivers/misc/mei/bus.c:16:
include/linux/uuid.h:113:44: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/bus.c:631:29: error: incompatible type for argument 2 of 'uuid_le_cmp'
631 | if (!uuid_le_cmp(*uuid, id->uuid)) {
| ~~^~~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from include/linux/mei_cl_bus.h:9,
from drivers/misc/mei/bus.c:16:
include/linux/uuid.h:113:61: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
--
drivers/misc/mei/bus-fixup.c: In function 'mei_cl_bus_dev_fixup':
>> drivers/misc/mei/bus-fixup.c:495:20: error: incompatible type for argument 1 of 'uuid_le_cmp'
495 | if (uuid_le_cmp(f->uuid, MEI_UUID_ANY) == 0 ||
| ~^~~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from drivers/misc/mei/bus-fixup.c:12:
include/linux/uuid.h:113:44: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
In file included from include/linux/uuid.h:111,
from drivers/misc/mei/bus-fixup.c:12:
include/uapi/linux/uuid.h:28:1: error: incompatible type for argument 2 of 'uuid_le_cmp'
28 | ((uuid_le) \
| ^~~~~~~~~~~~~~~~~~~
| |
| uuid_le {aka struct <anonymous>}
29 | {{ (a) & 0xff, ((a) >> 8) & 0xff, ((a) >> 16) & 0xff, ((a) >> 24) & 0xff, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | (b) & 0xff, ((b) >> 8) & 0xff, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 | (c) & 0xff, ((c) >> 8) & 0xff, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32 | (d0), (d1), (d2), (d3), (d4), (d5), (d6), (d7) }})
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/uapi/linux/uuid.h:35:2: note: in expansion of macro 'UUID_LE'
35 | UUID_LE(0x00000000, 0x0000, 0x0000, 0x00, 0x00, 0x00, 0x00, \
| ^~~~~~~
drivers/misc/mei/bus-fixup.c:36:22: note: in expansion of macro 'NULL_UUID_LE'
36 | #define MEI_UUID_ANY NULL_UUID_LE
| ^~~~~~~~~~~~
drivers/misc/mei/bus-fixup.c:495:28: note: in expansion of macro 'MEI_UUID_ANY'
495 | if (uuid_le_cmp(f->uuid, MEI_UUID_ANY) == 0 ||
| ^~~~~~~~~~~~
In file included from drivers/misc/mei/bus-fixup.c:12:
include/linux/uuid.h:113:61: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/bus-fixup.c:496:20: error: incompatible type for argument 1 of 'uuid_le_cmp'
496 | uuid_le_cmp(f->uuid, *uuid) == 0)
| ~^~~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from drivers/misc/mei/bus-fixup.c:12:
include/linux/uuid.h:113:44: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~
drivers/misc/mei/bus-fixup.c:496:28: error: incompatible type for argument 2 of 'uuid_le_cmp'
496 | uuid_le_cmp(f->uuid, *uuid) == 0)
| ^~~~~
| |
| uuid_le {aka const struct <anonymous>}
In file included from drivers/misc/mei/bus-fixup.c:12:
include/linux/uuid.h:113:61: note: expected 'guid_t' {aka 'const struct <anonymous>'} but argument is of type 'uuid_le' {aka 'const struct <anonymous>'}
113 | static inline int uuid_le_cmp(const guid_t u1, const guid_t u2)
| ~~~~~~~~~~~~~^~

vim +/uuid_le_cmp +141 drivers/misc/mei/client.c

b7d885145538dd Tomas Winkler 2015-02-10 119
b7d885145538dd Tomas Winkler 2015-02-10 120 /**
b7d885145538dd Tomas Winkler 2015-02-10 121 * __mei_me_cl_by_uuid - locate me client by uuid
79563db9ddd379 Tomas Winkler 2015-01-11 122 * increases ref count
90e0b5f18569bd Tomas Winkler 2013-01-08 123 *
90e0b5f18569bd Tomas Winkler 2013-01-08 124 * @dev: mei device
a8605ea2c20c2b Alexander Usyskin 2014-09-29 125 * @uuid: me client uuid
a27a76d3c07de0 Alexander Usyskin 2014-02-17 126 *
a8605ea2c20c2b Alexander Usyskin 2014-09-29 127 * Return: me client or NULL if not found
b7d885145538dd Tomas Winkler 2015-02-10 128 *
b7d885145538dd Tomas Winkler 2015-02-10 129 * Locking: dev->me_clients_rwsem
90e0b5f18569bd Tomas Winkler 2013-01-08 130 */
b7d885145538dd Tomas Winkler 2015-02-10 131 static struct mei_me_client *__mei_me_cl_by_uuid(struct mei_device *dev,
d320832f646660 Tomas Winkler 2014-08-24 132 const uuid_le *uuid)
90e0b5f18569bd Tomas Winkler 2013-01-08 133 {
5ca2d3882d60c0 Tomas Winkler 2014-08-21 134 struct mei_me_client *me_cl;
b7d885145538dd Tomas Winkler 2015-02-10 135 const uuid_le *pn;
90e0b5f18569bd Tomas Winkler 2013-01-08 136
b7d885145538dd Tomas Winkler 2015-02-10 137 WARN_ON(!rwsem_is_locked(&dev->me_clients_rwsem));
b7d885145538dd Tomas Winkler 2015-02-10 138
b7d885145538dd Tomas Winkler 2015-02-10 139 list_for_each_entry(me_cl, &dev->me_clients, list) {
b7d885145538dd Tomas Winkler 2015-02-10 140 pn = &me_cl->props.protocol_name;
b7d885145538dd Tomas Winkler 2015-02-10 @141 if (uuid_le_cmp(*uuid, *pn) == 0)
79563db9ddd379 Tomas Winkler 2015-01-11 142 return mei_me_cl_get(me_cl);
b7d885145538dd Tomas Winkler 2015-02-10 143 }
90e0b5f18569bd Tomas Winkler 2013-01-08 144
d320832f646660 Tomas Winkler 2014-08-24 145 return NULL;
90e0b5f18569bd Tomas Winkler 2013-01-08 146 }
90e0b5f18569bd Tomas Winkler 2013-01-08 147

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip