You need to reconfigure/recompile ZFS in the new kernel. 7.4 added a macro for bio_set_op_attrs and it's conflicting with a definition in blkdev_compat.h because your source tree still thinks HAVE_BIO_SET_OP_ATTRS = 0
? Well, I have been able to build for the 7.3 and updates kernels, but I have yet to succeed in building against any 3.10.693.* kernel. I can update everything except the kernel and still build it. I, for one, would love some feedback about what needs changed to build with the latest kernel. I get different errors than you, so it may be something different. I tend to get */In file included from /tmp/rpmbuild-lustre-root-QrSZ2WIs/BUILD/lustre-2.10.56_1_g11aae87/lustre/include/lustre_compat.h:39:0,/**/ /**/ from /tmp/rpmbuild-lustre-root-QrSZ2WIs/BUILD/lustre-2.10.56_1_g11aae87/lustre/include/lvfs.h:45,/**/ /**/ from /tmp/rpmbuild-lustre-root-QrSZ2WIs/BUILD/lustre-2.10.56_1_g11aae87/lustre/include/obd.h:53,/**/ /**/ from /tmp/rpmbuild-lustre-root-QrSZ2WIs/BUILD/lustre-2.10.56_1_g11aae87/lustre/osd-zfs/osd_handler.c:45:/**/ /**//usr/src/zfs-0.7.5/include/linux/blkdev_compat.h:412:18: error: expected identifier or '(' before 'struct'/**/ /**/ bio_set_op_attrs(struct bio *bio, unsigned rw, unsigned flags)/**/ /**/ ^/**/ /**/include/linux/bio.h:48:44: note: in definition of macro 'bio_set_op_attrs'/**/ /**/ #define bio_set_op_attrs(bio, op, flags) ((bio)->bi_rw |= (op | flags))/**/ /**/ ^/**/ /**/include/linux/bio.h:48:48: error: expected ')' before '->' token/**/ /**/ #define bio_set_op_attrs(bio, op, flags) ((bio)->bi_rw |= (op | flags))/**/ /**/ ^/**/ /**//usr/src/zfs-0.7.5/include/linux/blkdev_compat.h:412:1: note: in expansion of macro 'bio_set_op_attrs'/**/ /**/ bio_set_op_attrs(struct bio *bio, unsigned rw, unsigned flags)/**/ /* ** Yet the same configure/make lines work if I merely boot kernel 3.10.0-514.26.2 Brian Andrus
_______________________________________________ lustre-discuss mailing list lustre-discuss@lists.lustre.org http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org