Here is my failed compile attempt on Raspberry Pi 4 with Ubuntu 20.10:

root@pi-03:/usr/src/drbd_manual/drbd-9.0.26-0rc1# make
Need a git checkout to regenerate drbd/.drbd_git_revision
make[1]: Entering directory '/usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd'

    Calling toplevel makefile of kernel source tree, which I believe is in
    KDIR=/lib/modules/5.8.0-1006-raspi/build

make -C /lib/modules/5.8.0-1006-raspi/build M=/usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd  modules
  COMPAT  __vmalloc_has_2_params
  COMPAT  alloc_workqueue_takes_fmt
  COMPAT  before_4_13_kernel_read
  COMPAT  blkdev_issue_zeroout_discard
  COMPAT  drbd_release_returns_void
  COMPAT  genl_policy_in_ops
  COMPAT  have_SHASH_DESC_ON_STACK
  COMPAT  have_WB_congested_enum
  COMPAT  have_allow_kernel_signal
  COMPAT  have_atomic_dec_if_positive_linux
  COMPAT  have_atomic_in_flight
  COMPAT  have_bd_claim_by_disk
  COMPAT  have_bd_unlink_disk_holder
  COMPAT  have_bdi_congested_fn
  COMPAT  have_bio_bi_bdev
  COMPAT  have_bio_bi_disk
  COMPAT  have_bio_bi_error
  COMPAT  have_bio_bi_opf
  COMPAT  have_bio_bi_status
  COMPAT  have_bio_clone_fast
  COMPAT  have_bio_flush
  COMPAT  have_bio_free
  COMPAT  have_bio_op_shift
  COMPAT  have_bio_rw
  COMPAT  have_bio_set_op_attrs
  COMPAT  have_bio_start_io_acct
  COMPAT  have_bioset_create_front_pad
  COMPAT  have_bioset_init
  COMPAT  have_bioset_need_bvecs
  COMPAT  have_blk_check_plugged
  COMPAT  have_blk_qc_t_make_request
  COMPAT  have_blk_queue_flag_set
  COMPAT  have_blk_queue_make_request
  COMPAT  have_blk_queue_merge_bvec
  COMPAT  have_blk_queue_plugged
  COMPAT  have_blk_queue_split_bio
  COMPAT  have_blk_queue_split_q_bio
  COMPAT  have_blk_queue_split_q_bio_bioset
  COMPAT  have_blk_queue_update_readahead
  COMPAT  have_blk_queue_write_cache
  COMPAT  have_blkdev_get_by_path
  COMPAT  have_d_inode
  COMPAT  have_fallthrough
  COMPAT  have_file_inode
  COMPAT  have_generic_start_io_acct_q_rw_sect_part
  COMPAT  have_generic_start_io_acct_rw_sect_part
  COMPAT  have_genl_family_parallel_ops
  COMPAT  have_ib_cq_init_attr
  COMPAT  have_ib_get_dma_mr
  COMPAT  have_idr_alloc
  COMPAT  have_idr_is_empty
  COMPAT  have_inode_lock
  COMPAT  have_ktime_to_timespec64
  COMPAT  have_kvfree
  COMPAT  have_max_send_recv_sge
  COMPAT  have_netlink_cb_portid
  COMPAT  have_nla_nest_start_noflag
  COMPAT  have_nla_parse_deprecated
  COMPAT  have_nla_put_64bit
  COMPAT  have_part_stat_h
  COMPAT  have_pointer_backing_dev_info
  COMPAT  have_prandom_u32
  COMPAT  have_proc_create_single
  COMPAT  have_ratelimit_state_init
  COMPAT  have_rb_augment_functions
  COMPAT  have_refcount_inc
  COMPAT  have_req_hardbarrier
  COMPAT  have_req_noidle
  COMPAT  have_req_nounmap
  COMPAT  have_req_op_write
  COMPAT  have_req_op_write_same
  COMPAT  have_req_op_write_zeroes
  COMPAT  have_req_prio
  COMPAT  have_req_write
  COMPAT  have_req_write_same
  COMPAT  have_revalidate_disk_size
  COMPAT  have_security_netlink_recv
  COMPAT  have_sendpage_ok
  COMPAT  have_shash_desc_zero
  COMPAT  have_signed_nla_put
  COMPAT  have_simple_positive
  COMPAT  have_struct_bvec_iter
  COMPAT  have_struct_kernel_param_ops
  COMPAT  have_struct_size
  COMPAT  have_submit_bio
  COMPAT  have_submit_bio_noacct
  COMPAT  have_tcp_sock_set_cork
  COMPAT  have_tcp_sock_set_nodelay
  COMPAT  have_tcp_sock_set_quickack
  COMPAT  have_time64_to_tm
  COMPAT  have_timer_setup
  COMPAT  have_void_make_request
  COMPAT  hlist_for_each_entry_has_three_parameters
  COMPAT  ib_alloc_pd_has_2_params
  COMPAT  ib_device_has_ops
  COMPAT  ib_post_send_const_params
  COMPAT  ib_query_device_has_3_params
  COMPAT  kmap_atomic_page_only
  COMPAT  need_make_request_recursion
  COMPAT  queue_limits_has_discard_zeroes_data
  COMPAT  rdma_create_id_has_net_ns
  COMPAT  sock_create_kern_has_five_parameters
  COMPAT  sock_ops_returns_addr_len
  UPD /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/compat.5.8.14.h
  UPD     /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/compat.h
./drbd-kernel-compat/gen_compat_patch.sh: line 12: spatch: command not found
./drbd-kernel-compat/gen_compat_patch.sh: line 45: hash: spatch: not found
  INFO: no suitable spatch found; trying spatch-as-a-service;
  be patient, may take up to 10 minutes
  if it is in the server side cache it might only take a second
  SPAAS    e770d31eb644591d9d0920dfda4bff32
Successfully connected to SPAAS ('d35a4b17210dab1336de2725b997f300e9acd297')
  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
                                 Dload  Upload   Total   Spent Left  Speed
100 11287    0  5767    0  5520    406    388 --:--:--  0:00:14 --:--:--  1368
  You can create a new .tgz including this pre-computed compat patch
  by calling "make unpatch ; echo drbd-9.0.26-0rc1/drbd/drbd-kernel-compat/cocci_cache/e770d31eb644591d9d0920dfda4bff32/compat.patch >>.filelist ; make tgz"
  PATCH
patching file ./drbd_int.h
patching file drbd_main.c
patching file drbd_debugfs.c
patching file drbd_nl.c
patching file drbd_req.c
  CC [M] /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_debugfs.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_bitmap.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_proc.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_sender.o
  CC [M] /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_receiver.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_req.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_actlog.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/lru_cache.o
  CC [M]  /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_main.o
In file included from /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_main.c:19: ./include/linux/vermagic.h:6:2: error: #error "This header can be included from kernel/module.c or *.mod.c only"     6 | #error "This header can be included from kernel/module.c or *.mod.c only"
      |  ^~~~~
make[3]: *** [scripts/Makefile.build:290: /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd/drbd_main.o] Error 1 make[2]: *** [Makefile:1783: /usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd] Error 2
make[1]: *** [Makefile:132: kbuild] Error 2
make[1]: Leaving directory '/usr/src/drbd_manual/drbd-9.0.26-0rc1/drbd'
make: *** [Makefile:131: module] Error 2

Regards,
Adam

On 11/11/20 07:50, Philipp Reisner wrote:
Hi,

with this release, DRBD becomes compatible with Linux 5.8 and 5.9. Thanks to
the coccinelle based compatibility framework it stays compatible all the
way back to the kernel 2.6.32.
In upstream quite a few things changed for block device drivers, following
all that and staying compatible with the old ones is a noticeable achievement
by Christoph! Thanks!
BTW, we got external contributions. One in the area of Linux 5.8 compatibility
and a bugfix.

This is a release candidate, please help testing it. With this huge change
in the compatibility framework, I ask the community to point out issues with
building DRBD on exotic distributions/kernels you might have.

Changelog:
9.0.26-0rc1 (api:genl2/proto:86-118/transport:14)
--------
  * fix a case of a disk unexpectedly becoming Outdated by moving the
    exchange of the initial packets into the body of the two-phase-commit
    that happens at a connect
  * fix adding of new volumes to resources with a primary node
  * reliably detect split brain situation on both nodes
  * fix an unexpected occurrence of NetworkFailure state in a tight
    drbdsetup disconnect; drbdsetup connect sequence
  * fix online verify to return to Established from VerifyS if the VerifyT node
    was temporarily Inconsistent during the run
  * fix a corner case where a node ends up Outdated after crash and rejoin
    of a primary node
  * implement 'blockdev --setro' in DRBD
  * following upstream changes to DRBD up to Linux 5.9 and ensure
    compatibility with Linux 5.8 and 5.9

https://www.linbit.com/downloads/drbd/9.0/drbd-9.0.26-0rc1.tar.gz
https://github.com/LINBIT/drbd/commit/79b368b143283a898ce65594361f49fcb460b3be

best regards,
  Phil
_______________________________________________
Star us on GITHUB: https://github.com/LINBIT
drbd-user mailing list
drbd-user@lists.linbit.com
https://lists.linbit.com/mailman/listinfo/drbd-user
_______________________________________________
Star us on GITHUB: https://github.com/LINBIT
drbd-user mailing list
drbd-user@lists.linbit.com
https://lists.linbit.com/mailman/listinfo/drbd-user

Reply via email to