Hi,

I've downloaded RHEL7.4 Beta in order to prepare my future platform for drbd+corosync+pacemaker.

Today, I can't compile drbd 8.4.10-1 on my RHEL 7.4 Beta platform, an error is returned...

    Calling toplevel makefile of kernel source tree, which I believe is in
    KDIR=/usr/src/kernels/3.10.0-663.el7.x86_64

make -C /usr/src/kernels/3.10.0-663.el7.x86_64   SUBDIRS=/asn/system/build/ha/drbd-8.4/drbd  modules
  COMPAT  have_inode_lock
  COMPAT  have_kvfree
  COMPAT  have_prandom_u32
  COMPAT  drbd_release_returns_void
  COMPAT  have_idr_is_empty
  COMPAT  have_genl_register_family_with_ops
  COMPAT  have_blk_queue_merge_bvec
  COMPAT  have_dst_groups
  COMPAT  have_f_path_dentry
  COMPAT  have_genlmsg_reply
  COMPAT  have_ctrl_attr_mcast_groups
  COMPAT  have_vzalloc
  COMPAT  have_blk_set_stacking_limits
  COMPAT  have_netlink_skb_parms_portid
  COMPAT  have_void_make_request
  COMPAT  have_bool_type
  COMPAT  have_proc_pde_data
  COMPAT  have_fmode_t
  COMPAT  have_bd_claim_by_disk
  COMPAT  have_blk_qc_t_make_request
  COMPAT  queue_limits_has_discard_granularity
  COMPAT  have_idr_alloc
  COMPAT  blkdev_issue_zeroout_blkdev_ifl_wait
  COMPAT  have_genlmsg_put_reply
  COMPAT  have_nla_put_64bit
  COMPAT  have_nlmsg_hdr
  COMPAT  have_struct_bvec_iter
  COMPAT  have_blk_queue_max_hw_sectors
  COMPAT  have_blk_plug_cb_data
  COMPAT  sock_create_kern_has_five_parameters
  COMPAT  have_AHASH_REQUEST_ON_STACK
  COMPAT  have_cpumask_empty
  COMPAT  have_bd_unlink_disk_holder
  COMPAT  have_task_pid_nr
  COMPAT  init_work_has_three_arguments
  COMPAT  bio_split_has_bio_split_pool_parameter
  COMPAT  have_SHASH_DESC_ON_STACK
  COMPAT  need_d_inode
  COMPAT  have_generic_start_io_acct
  COMPAT  have_IS_ERR_OR_NULL
  COMPAT  have_struct_queue_limits
  COMPAT  have_bio_set_op_attrs
  COMPAT  have_WB_congested_enum
  COMPAT  have_signed_nla_put
  COMPAT  bioset_create_has_three_parameters
  COMPAT  have_security_netlink_recv
  COMPAT  have_umh_wait_proc
  COMPAT  kmap_atomic_page_only
  COMPAT  have_list_splice_tail_init
  COMPAT  have_linux_byteorder_swabb_h
  COMPAT  have_bio_bi_error
  COMPAT  have_shash_desc_zero
  COMPAT  have_blk_queue_write_cache
  COMPAT  hlist_for_each_entry_has_three_parameters
  COMPAT  have_genlmsg_msg_size
  COMPAT  have_blkdev_get_by_path
  COMPAT  have_blk_queue_split
  COMPAT  have_proc_create_data
  COMPAT  have_bio_bi_destructor
  COMPAT  have_clear_bit_unlock
  COMPAT  have_is_vmalloc_addr
  COMPAT  have_sock_shutdown
  COMPAT  have_idr_for_each_entry
  COMPAT  have_blk_queue_max_segments
  COMPAT  have_refcount_inc
  COMPAT  have_genl_family_in_genlmsg_multicast
  COMPAT  have_genl_lock
  COMPAT  have_cn_netlink_skb_parms
  COMPAT  have_atomic_in_flight
  COMPAT  have_debugfs_create_symlink
  COMPAT  have_bdev_discard_alignment
  COMPAT  have_genlmsg_new
  COMPAT  have_kref_get_unless_zero
  COMPAT  have_rb_augment_functions
  COMPAT  have_idr_for_each
  COMPAT  have_simple_positive
  COMPAT  have_genl_register_family_with_ops3
  COMPAT  have_genl_id_generate
  COMPAT  have_bioset_create_front_pad
  COMPAT  queue_limits_has_discard_zeroes_data
  COMPAT  have_open_bdev_exclusive
  COMPAT  have_nr_cpu_ids
  COMPAT  need_genlmsg_multicast_wrapper
  COMPAT  have_find_next_zero_bit_le
  COMPAT  blkdev_issue_zeroout_discard
  COMPAT  have_pointer_backing_dev_info
  COMPAT  use_blk_queue_max_sectors_anyways
  CHK     /asn/system/build/ha/drbd-8.4/drbd/compat.h
  UPD     /asn/system/build/ha/drbd-8.4/drbd/compat.h
  CC [M]  /asn/system/build/ha/drbd-8.4/drbd/drbd_debugfs.o
  CC [M]  /asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.o
/asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.c: In function ‘bm_page_io_async’:
/asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.c:1049:3: warning: passing argument 1 of ‘submit_bio’ makes integer from pointer without a cast [enabled by default]
   submit_bio(bio);
   ^
In file included from include/linux/compat.h:17:0,
                 from include/linux/ethtool.h:16,
                 from include/linux/netdevice.h:43,
                 from include/net/sock.h:51,
                 from include/linux/tcp.h:23,
                 from /asn/system/build/ha/drbd-8.4/drbd/drbd_int.h:38,
                 from /asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.c:35:
include/linux/fs.h:2833:13: note: expected ‘int’ but argument is of type ‘struct bio *’
 extern void submit_bio(int, struct bio *);
             ^
/asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.c:1049:3: error: too few arguments to function ‘submit_bio’
   submit_bio(bio);
   ^

In file included from include/linux/compat.h:17:0,
                 from include/linux/ethtool.h:16,
                 from include/linux/netdevice.h:43,
                 from include/net/sock.h:51,
                 from include/linux/tcp.h:23,
                 from /asn/system/build/ha/drbd-8.4/drbd/drbd_int.h:38,
                 from /asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.c:35:
include/linux/fs.h:2833:13: note: declared here
 extern void submit_bio(int, struct bio *);
             ^

make[3]: *** [/asn/system/build/ha/drbd-8.4/drbd/drbd_bitmap.o] Error 1
make[2]: *** [_module_/asn/system/build/ha/drbd-8.4/drbd] Error 2
make[1]: *** [kbuild] Error 2
make[1]: Leaving directory `/asn/system/build/ha/drbd-8.4/drbd'
make: *** [module] Error 2

In file drbd/drbd_wrappers.h, on line 998, I see : #ifndef COMPAT_HAVE_BIO_SET_OP_ATTRS /* compat for Linux before 4.8 {{{2 */
...
#define submit_bio(__bio)       submit_bio(__bio->bi_rw, __bio)                                   <= Line 1051
#endif


When I read the generated file drbd/compat.h, on line 87, I see : #define COMPAT_HAVE_BIO_SET_OP_ATTRS

My kernel is before 4.8 (3.10.0-663) so I suppose COMPAT_HAVE_BIO_SET_OP_ATTR have not to be set... but in my case, it is set !

Now, I don't know if it's a problem on DRBD side or RedHat side... could you help me ?

Thanks by advance for help.


_______________________________________________
drbd-user mailing list
[email protected]
http://lists.linbit.com/mailman/listinfo/drbd-user

Reply via email to