Hi
I have proxmox 8 with Kernel 6.11 and it fails to install drbd-dkms
Here is what I did:
wget -O /tmp/linbit-keyring.deb https://packages.linbit.com/public/linbit-keyring.deb
dpkg -i /tmp/linbit-keyring.deb
PVERS=8 && echo "deb [signed-by=/etc/apt/trusted.gpg.d/linbit-keyring.gpg] \
http://packages.linbit.com/public/ proxmox-$PVERS drbd-9" > /etc/apt/sources.list.d/linbit.list
apt update
apt install pve-headers-$(uname -r) drbd-dkms drbd-utils
dkms status
dkms autoinstall
resulting in this error:
...
Error! Bad return status for module build on kernel: 6.11.0-1-pve (x86_64)
Consult /var/lib/dkms/drbd/9.2.12-1/build/make.log for more information.
dpkg: error processing package drbd-dkms (--configure):
installed drbd-dkms package post-installation script subprocess returned error exit status 10
Setting up g++ (4:12.2.0-3) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up build-essential (12.9) ...
Processing triggers for man-db (2.11.2-2) ...
Processing triggers for libc-bin (2.36-9+deb12u9) ...
Errors were encountered while processing:
drbd-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@pve:~#
Log:
DKMS make.log for drbd-9.2.12-1 for kernel 6.11.0-1-pve (x86_64)
Mon Nov 18 03:12:16 PM CET 2024
make: Entering directory '/var/lib/dkms/drbd/9.2.12-1/build/src/drbd'
Calling toplevel makefile of kernel source tree, which I believe is in
KDIR=/lib/modules/6.11.0-1-pve/build
make -C /lib/modules/6.11.0-1-pve/build "PRE_CFLAGS=" M=/var/lib/dkms/drbd/9.2.12-1/build/src/drbd obj-m=dummy-for-compat.o dummy-for-compat-h.o
COMPAT have_sane_test_environment
COMPAT have_sane_test_environment_always_fail
LN build-current -> build-6.11.0-1-pve/
UPD /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/.drbd_kernelrelease
LN compat.h -> build-6.11.0-1-pve/compat.h
LN .compat_test -> build-6.11.0-1-pve/.compat_test
LN compat.6.11.0-1-pve.h -> build-6.11.0-1-pve/compat.h
LN .compat_test.6.11.0-1-pve -> build-6.11.0-1-pve/.compat_test
COMPAT __vmalloc_has_2_params
COMPAT add_disk_returns_int
COMPAT before_4_13_kernel_read
COMPAT bio_alloc_has_4_params
COMPAT blk_alloc_disk_takes_queue_limits
COMPAT blkdev_get_by_path_has_holder_ops
COMPAT blkdev_issue_discard_takes_flags
COMPAT blkdev_issue_zeroout_discard
COMPAT blkdev_put_has_holder
COMPAT block_device_operations_open_takes_gendisk
COMPAT block_device_operations_release_takes_single_argument
COMPAT can_include_vermagic_h
COMPAT dax_direct_access_takes_mode
COMPAT fs_dax_get_by_bdev_takes_start_off
COMPAT fs_dax_get_by_bdev_takes_start_off_and_holder
COMPAT genl_policy_in_ops
COMPAT genlmsg_multicast_allns_has_4_params
COMPAT have_BIO_MAX_VECS
COMPAT have_CRYPTO_TFM_NEED_KEY
COMPAT have_GENHD_FL_NO_PART
COMPAT have_SHASH_DESC_ON_STACK
COMPAT have_WB_congested_enum
COMPAT have___bio_add_page
COMPAT have_allow_kernel_signal
COMPAT have_bdev_discard_granularity
COMPAT have_bdev_file_open_by_path
COMPAT have_bdev_max_discard_sectors
COMPAT have_bdev_nr_sectors
COMPAT have_bdev_open_by_path
COMPAT have_bdevname
COMPAT have_bdgrab
COMPAT have_bdi_congested
COMPAT have_bdi_congested_fn
COMPAT have_bio_advance_iter_single
COMPAT have_bio_alloc_clone
COMPAT have_bio_bi_bdev
COMPAT have_bio_bi_error
COMPAT have_bio_bi_opf
COMPAT have_bio_bi_status
COMPAT have_bio_clone_fast
COMPAT have_bio_max_segs
COMPAT have_bio_op_shift
COMPAT have_bio_set_dev
COMPAT have_bio_set_op_attrs
COMPAT have_bio_split_to_limits
COMPAT have_bio_start_io_acct
COMPAT have_bioset_init
COMPAT have_bioset_need_bvecs
COMPAT have_blk_alloc_disk
COMPAT have_blk_alloc_queue_rh
COMPAT have_blk_check_plugged
COMPAT have_blk_cleanup_disk
COMPAT have_blk_mode_t
COMPAT have_blk_opf_t
COMPAT have_blk_qc_t_make_request
COMPAT have_blk_qc_t_submit_bio
COMPAT have_blk_queue_flag_set
COMPAT have_blk_queue_make_request
COMPAT have_blk_queue_max_write_same_sectors
COMPAT have_blk_queue_merge_bvec
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_bvec_kmap_local
COMPAT have_counted_by
COMPAT have_d_inode
COMPAT have_disk_update_readahead
COMPAT have_enum_req_op
COMPAT have_fallthrough
COMPAT have_fs_dax_get_by_bdev
COMPAT have_generic_start_io_acct_q_rw_sect_part
COMPAT have_generic_start_io_acct_rw_sect_part
COMPAT have_genl_info_userhdr
COMPAT have_get_random_u32
COMPAT have_get_random_u32_below
COMPAT have_hd_struct
COMPAT have_ib_cq_init_attr
COMPAT have_ib_get_dma_mr
COMPAT have_idr_is_empty
COMPAT have_inode_lock
COMPAT have_kmap_local_page
COMPAT have_ktime_to_timespec64
COMPAT have_kvfree
COMPAT have_kvfree_rcu
COMPAT have_kvfree_rcu_mightsleep
COMPAT have_linux_unaligned_h
COMPAT have_list_is_first
COMPAT have_list_next_entry
COMPAT have_lookup_user_key
COMPAT have_max_send_recv_sge
COMPAT have_nla_nest_start_noflag
COMPAT have_nla_parse_deprecated
COMPAT have_nla_put_64bit
COMPAT have_nla_strscpy
COMPAT have_part_stat_h
COMPAT have_part_stat_read_accum
COMPAT have_pointer_backing_dev_info
COMPAT have_proc_create_single
COMPAT have_queue_flag_discard
COMPAT have_queue_flag_stable_writes
COMPAT have_queue_limits_start_update
COMPAT have_rb_declare_callbacks_max
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_zeroes
COMPAT have_req_write
COMPAT have_revalidate_disk_size
COMPAT have_sched_set_fifo
COMPAT have_sched_signal_h
COMPAT have_security_netlink_recv
COMPAT have_sendpage
COMPAT have_sendpage_ok
COMPAT have_set_capacity_and_notify
COMPAT have_shash_desc_zero
COMPAT have_simple_positive
COMPAT have_sk_use_task_frag
COMPAT have_sock_set_keepalive
COMPAT have_strscpy
COMPAT have_struct_bvec_iter
COMPAT have_struct_size
COMPAT have_submit_bio_noacct
COMPAT have_tasklet_setup
COMPAT have_tcp_sock_set_cork
COMPAT have_tcp_sock_set_keepcnt
COMPAT have_tcp_sock_set_keepidle
COMPAT have_tcp_sock_set_nodelay
COMPAT have_tcp_sock_set_quickack
COMPAT have_time64_to_tm
COMPAT have_timer_setup
COMPAT have_timer_shutdown
COMPAT have_tls_get_record_type
COMPAT have_tls_tx_rx
COMPAT have_void_make_request
COMPAT have_void_submit_bio
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 need_drbd_wrappers
COMPAT need_make_request_recursion
COMPAT need_recalc_sigpending
COMPAT need_skb_abort_seq_read
COMPAT part_stat_read_takes_block_device
COMPAT queue_limits_has_discard_zeroes_data
COMPAT queue_limits_has_features
COMPAT queue_limits_has_max_hw_discard_sectors
COMPAT rdma_create_id_has_net_ns
COMPAT rdma_reject_has_reason_arg
COMPAT sk_data_ready_has_1_param
COMPAT sock_create_kern_has_netns_parameter
COMPAT sock_ops_returns_addr_len
COMPAT struct_gendisk_has_backing_dev_info
UPD /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/compat.h
make -C /lib/modules/6.11.0-1-pve/build "PRE_CFLAGS=" M=/var/lib/dkms/drbd/9.2.12-1/build/src/drbd obj-m=dummy-for-prep.o dummy-for-patch.o
GEN /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_buildtag.c
GEN /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/.kernel.config.gz
COPY /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/Kbuild
make -C /var/lib/dkms/drbd/9.2.12-1/build/src/drbd -f Makefile.spatch /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/compat.patch
COPY /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/Kbuild
./drbd-kernel-compat/gen_compat_patch.sh: line 17: spatch: command not found
./drbd-kernel-compat/gen_compat_patch.sh: line 44: 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 9ca9930e561c5d832a3ffdb19cb59dc5
Successfully connected to SPAAS ('8ad32056122d2881f5ceab704db604f3a9a6e22d')
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 9232 100 482 0 8750 5457 99069 --:--:-- --:--:-- --:--:-- 102k
You can create a new .tgz including this pre-computed compat patch
by calling "echo drbd/drbd-kernel-compat/cocci_cache/9ca9930e561c5d832a3ffdb19cb59dc5/compat.patch >>.filelist ; make tgz"
CHK build-6.11.0-1-pve/compat.patch
LN /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/compat.patch -> ../drbd-kernel-compat/cocci_cache/9ca9930e561c5d832a3ffdb19cb59dc5/compat.patch
set -- /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/compat.patch /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/compat.h; \
test $1 -nt $2 || touch -r $1 $2
SPLIT /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/compat.patch
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/compat.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/drbd_meta_data.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/drbd_protocol.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/drbd_strings.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/drbd_strings.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/drbd_transport.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/drbd.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/drbd_genl.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/drbd_genl_api.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/drbd_limits.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/genl_magic_func-genl_register_family_with_ops_groups.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/genl_magic_func-genl_register_mc_group.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/genl_magic_func.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/genl_magic_struct.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/windrbd/windrbd_ioctl.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/cocci_macros.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/drbd_wrappers.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/drbd_wrappers.h
/var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/.patches/drbd-headers_linux_genl_magic_func-genl_register_family_with_ops_groups.h.patch:8: could not annotate 'plus' lines, line offsets may be wrong
/var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-headers/linux/genl_magic_func-genl_register_family_with_ops_groups.h:23: could not annotate 'plus' lines, line offsets may be wrong
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/genl.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/genl.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/handshake.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/netlink.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/request.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/handshake/tlshd.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/linux/libnvdimm.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/linux/lru_cache.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/linux/overflow.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/lru_cache.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/net/handshake.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/nsecs_to_jiffies.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/uapi/linux/handshake.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd-kernel-compat/uapi/linux/sched/types.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_actlog.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_bitmap.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_dax_pmem.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_dax_pmem.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_debugfs.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_debugfs.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_int.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_interval.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_interval.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_kref_debug.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_kref_debug.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_main.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_nl.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_nla.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_nla.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_polymorph_printk.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_proc.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_receiver.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_req.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_req.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_sender.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_state.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_state.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_state_change.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_transport.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_transport_lb-tcp.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_transport_rdma.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_transport_tcp.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_transport_template.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/drbd_vli.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/kref_debug.c
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/kref_debug.h
PATCH /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-6.11.0-1-pve/linux/drbd_config.h
test -e build-current && \
make -C /lib/modules/6.11.0-1-pve/build "PRE_CFLAGS=" M=/var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current modules
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_buildtag.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_bitmap.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_proc.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_sender.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_receiver.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_req.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_actlog.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_main.o
COPY /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_strings.c
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_nl.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_interval.o
CC [M] /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_state.o
/var/lib/dkms/drbd/9.2.12-1/build/src/drbd/drbd_nl.c:32:10: fatal error: linux/unaligned.h: No such file or directory
32 | #include <linux/unaligned.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [scripts/Makefile.build:244: /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current/drbd_nl.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1931: /var/lib/dkms/drbd/9.2.12-1/build/src/drbd/build-current] Error 2
make: *** [Makefile:248: kbuild] Error 2
make: Leaving directory '/var/lib/dkms/drbd/9.2.12-1/build/src/drbd'
Anyone got this working already? Help apreciated.
Kr
M.