Re: [PATCH V6] scsi: ufs: Add configfs support for UFS provisioning

From: kbuild test robot
Date: Mon Jul 16 2018 - 11:30:41 EST


Hi Sayali,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on mkp-scsi/for-next]
[also build test ERROR on v4.18-rc5 next-20180716]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url: https://github.com/0day-ci/linux/commits/Sayali-Lokhande/scsi-ufs-Add-configfs-support-for-UFS-provisioning/20180716-212258
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 8.1.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=8.1.0 make.cross ARCH=ia64

All errors (new ones prefixed by >>):

In file included from include/linux/kernel.h:10,
from include/linux/list.h:9,
from include/linux/preempt.h:11,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/stat.h:19,
from include/linux/configfs.h:38,
from drivers/scsi/ufs/ufs-configfs.c:4:
drivers/scsi/ufs/ufs-configfs.c: In function 'config_item_to_hba':
>> include/linux/kernel.h:964:51: error: 'struct ufs_hba' has no member named 'subsys'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~
include/linux/compiler.h:316:19: note: in definition of macro '__compiletime_assert'
bool __cond = !(condition); \
^~~~~~~~~
include/linux/compiler.h:339:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:45:37: note: in expansion of macro 'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
include/linux/kernel.h:964:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~~~~~~~~~~~~~~~
include/linux/kernel.h:964:20: note: in expansion of macro '__same_type'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~~~~~~~~~~
drivers/scsi/ufs/ufs-configfs.c:15:24: note: in expansion of macro 'container_of'
struct ufs_hba *hba = container_of(subsys, struct ufs_hba, subsys);
^~~~~~~~~~~~
In file included from include/linux/compiler_types.h:58,
from <command-line>:
>> include/linux/compiler-gcc.h:170:2: error: 'struct ufs_hba' has no member named 'subsys'
__builtin_offsetof(a, b)
^~~~~~~~~~~~~~~~~~
include/linux/stddef.h:17:32: note: in expansion of macro '__compiler_offsetof'
#define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
^~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:967:21: note: in expansion of macro 'offsetof'
((type *)(__mptr - offsetof(type, member))); })
^~~~~~~~
drivers/scsi/ufs/ufs-configfs.c:15:24: note: in expansion of macro 'container_of'
struct ufs_hba *hba = container_of(subsys, struct ufs_hba, subsys);
^~~~~~~~~~~~
drivers/scsi/ufs/ufs-configfs.c: At top level:
>> drivers/scsi/ufs/ufs-configfs.c:141:5: error: redefinition of 'ufshcd_configfs_init'
int ufshcd_configfs_init(struct ufs_hba *hba, const char *name)
^~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi/ufs/ufs-configfs.c:9:
drivers/scsi/ufs/ufshcd.h:899:5: note: previous definition of 'ufshcd_configfs_init' was here
int ufshcd_configfs_init(struct ufs_hba *hba, const char *name)
^~~~~~~~~~~~~~~~~~~~
drivers/scsi/ufs/ufs-configfs.c: In function 'ufshcd_configfs_init':
>> drivers/scsi/ufs/ufs-configfs.c:144:42: error: 'struct ufs_hba' has no member named 'subsys'
struct configfs_subsystem *subsys = &hba->subsys;
^~
drivers/scsi/ufs/ufs-configfs.c: At top level:
>> drivers/scsi/ufs/ufs-configfs.c:159:6: error: redefinition of 'ufshcd_configfs_exit'
void ufshcd_configfs_exit(void)
^~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi/ufs/ufs-configfs.c:9:
drivers/scsi/ufs/ufshcd.h:904:6: note: previous definition of 'ufshcd_configfs_exit' was here
void ufshcd_configfs_exit(void)
^~~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/kernel.h:10,
from include/linux/list.h:9,
from include/linux/preempt.h:11,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/stat.h:19,
from include/linux/configfs.h:38,
from drivers/scsi//ufs/ufs-configfs.c:4:
drivers/scsi//ufs/ufs-configfs.c: In function 'config_item_to_hba':
>> include/linux/kernel.h:964:51: error: 'struct ufs_hba' has no member named 'subsys'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~
include/linux/compiler.h:316:19: note: in definition of macro '__compiletime_assert'
bool __cond = !(condition); \
^~~~~~~~~
include/linux/compiler.h:339:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:45:37: note: in expansion of macro 'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
include/linux/kernel.h:964:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~~~~~~~~~~~~~~~
include/linux/kernel.h:964:20: note: in expansion of macro '__same_type'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~~~~~~~~~~
drivers/scsi//ufs/ufs-configfs.c:15:24: note: in expansion of macro 'container_of'
struct ufs_hba *hba = container_of(subsys, struct ufs_hba, subsys);
^~~~~~~~~~~~
In file included from include/linux/compiler_types.h:58,
from <command-line>:
>> include/linux/compiler-gcc.h:170:2: error: 'struct ufs_hba' has no member named 'subsys'
__builtin_offsetof(a, b)
^~~~~~~~~~~~~~~~~~
include/linux/stddef.h:17:32: note: in expansion of macro '__compiler_offsetof'
#define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
^~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:967:21: note: in expansion of macro 'offsetof'
((type *)(__mptr - offsetof(type, member))); })
^~~~~~~~
drivers/scsi//ufs/ufs-configfs.c:15:24: note: in expansion of macro 'container_of'
struct ufs_hba *hba = container_of(subsys, struct ufs_hba, subsys);
^~~~~~~~~~~~
drivers/scsi//ufs/ufs-configfs.c: At top level:
drivers/scsi//ufs/ufs-configfs.c:141:5: error: redefinition of 'ufshcd_configfs_init'
int ufshcd_configfs_init(struct ufs_hba *hba, const char *name)
^~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi//ufs/ufs-configfs.c:9:
drivers/scsi//ufs/ufshcd.h:899:5: note: previous definition of 'ufshcd_configfs_init' was here
int ufshcd_configfs_init(struct ufs_hba *hba, const char *name)
^~~~~~~~~~~~~~~~~~~~
drivers/scsi//ufs/ufs-configfs.c: In function 'ufshcd_configfs_init':
drivers/scsi//ufs/ufs-configfs.c:144:42: error: 'struct ufs_hba' has no member named 'subsys'
struct configfs_subsystem *subsys = &hba->subsys;
^~
drivers/scsi//ufs/ufs-configfs.c: At top level:
drivers/scsi//ufs/ufs-configfs.c:159:6: error: redefinition of 'ufshcd_configfs_exit'
void ufshcd_configfs_exit(void)
^~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi//ufs/ufs-configfs.c:9:
drivers/scsi//ufs/ufshcd.h:904:6: note: previous definition of 'ufshcd_configfs_exit' was here
void ufshcd_configfs_exit(void)
^~~~~~~~~~~~~~~~~~~~

vim +964 include/linux/kernel.h

cf14f27f Alexei Starovoitov 2018-03-28 954
^1da177e Linus Torvalds 2005-04-16 955 /**
^1da177e Linus Torvalds 2005-04-16 956 * container_of - cast a member of a structure out to the containing structure
^1da177e Linus Torvalds 2005-04-16 957 * @ptr: the pointer to the member.
^1da177e Linus Torvalds 2005-04-16 958 * @type: the type of the container struct this is embedded in.
^1da177e Linus Torvalds 2005-04-16 959 * @member: the name of the member within the struct.
^1da177e Linus Torvalds 2005-04-16 960 *
^1da177e Linus Torvalds 2005-04-16 961 */
^1da177e Linus Torvalds 2005-04-16 962 #define container_of(ptr, type, member) ({ \
c7acec71 Ian Abbott 2017-07-12 963 void *__mptr = (void *)(ptr); \
c7acec71 Ian Abbott 2017-07-12 @964 BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
c7acec71 Ian Abbott 2017-07-12 965 !__same_type(*(ptr), void), \
c7acec71 Ian Abbott 2017-07-12 966 "pointer type mismatch in container_of()"); \
c7acec71 Ian Abbott 2017-07-12 967 ((type *)(__mptr - offsetof(type, member))); })
^1da177e Linus Torvalds 2005-04-16 968

:::::: The code at line 964 was first introduced by commit
:::::: c7acec713d14c6ce8a20154f9dfda258d6bcad3b kernel.h: handle pointers to arrays better in container_of()

:::::: TO: Ian Abbott <abbotti@xxxxxxxxx>
:::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip