datto / dattobd

kernel module for taking block-level snapshots and incremental backups of Linux block devices
GNU General Public License v2.0
561 stars 120 forks source link

5.19.0-35-generic removed genhd.h? #299

Open kattantak opened 1 year ago

kattantak commented 1 year ago

I just tried to recompile on the newest kernel what I got with ubuntu update

dattobd/src/includes.h:13:10: fatal error: linux/genhd.h: No such file or directory 13 | #include <linux/genhd.h> | ^~~~~~~ compilation terminated.

It seems for me this header is not exist any more in the newest kernel on ubuntu. Please investigate. Thank you.

nixomose commented 1 year ago

Most of the genhd stuff moved to blkdev.h

On Fri, Mar 3, 2023, 4:58 AM kattantak @.***> wrote:

I just tried to recompile on the newest kernel what I got with ubuntu update

dattobd/src/includes.h:13:10: fatal error: linux/genhd.h: No such file or directory 13 | #include <linux/genhd.h> | ^~~~~~~ compilation terminated.

It seems for me this header is not exist any more in the newest kernel on ubuntu. Please investigate. Thank you.

— Reply to this email directly, view it on GitHub https://github.com/datto/dattobd/issues/299, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADI2M2WFBJ3ON4UAOFEGUG3W2G6FZANCNFSM6AAAAAAVOM5DOM . You are receiving this because you are subscribed to this thread.Message ID: @.***>

Swistusmen commented 1 year ago

Hello @kattantak we have added support for kernel 5.19, you can check it out

kattantak commented 1 year ago

Hello. Building smoothly on 5.19. Thanks for the update.

kattantak commented 1 year ago

Unfortunately for some reason it is not able to create snapshots. Do you have any idea why or how I can check what can be the problem? Thanks

[ 2901.005212] [ 3021.836220] INFO: task dbdctl:18133 blocked for more than 966 seconds. [ 3021.836248] Tainted: G OE 5.19.0-45-generic #46~22.04.1-Ubuntu [ 3021.836257] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 3021.836265] task:dbdctl state:D stack: 0 pid:18133 ppid: 18132 flags:0x00004002 [ 3021.836275] Call Trace: [ 3021.836281] [ 3021.836289] schedule+0x257/0x5d0 [ 3021.836304] schedule+0x68/0x110 [ 3021.836310] io_schedule+0x46/0x80 [ 3021.836316] folio_wait_bit_common+0x14c/0x3a0 [ 3021.836327] ? filemap_invalidate_unlock_two+0x50/0x50 [ 3021.836335] ? blkdev_writepages+0x20/0x20 [ 3021.836342] do_read_cache_folio+0x14b/0x200 [ 3021.836349] read_cache_page+0x1a/0xb0 [ 3021.836356] read_part_sector+0x3f/0x190 [ 3021.836364] read_lba+0xfc/0x270 [ 3021.836369] ? kmem_cache_alloc_trace+0x1a6/0x330 [ 3021.836379] find_valid_gpt.constprop.0+0xd5/0x600 [ 3021.836385] ? post_alloc_hook+0xdf/0x120 [ 3021.836400] ? find_valid_gpt.constprop.0+0x600/0x600 [ 3021.836407] efi_partition+0x80/0x3a0 [ 3021.836413] ? vsnprintf+0x3a8/0x560 [ 3021.836421] ? snprintf+0x49/0x80 [ 3021.836428] ? find_valid_gpt.constprop.0+0x600/0x600 [ 3021.836434] check_partition+0x13a/0x270 [ 3021.836440] bdev_disk_changed.part.0+0xb3/0x230 [ 3021.836448] bdev_disk_changed+0x24/0x40 [ 3021.836453] blkdev_get_whole+0x7f/0xa0 [ 3021.836461] blkdev_get_by_dev.part.0+0x13c/0x330 [ 3021.836467] blkdev_get_by_dev+0x5d/0x80 [ 3021.836471] disk_scan_partitions+0x5a/0xa0 [ 3021.836477] device_add_disk+0x3d7/0x3e0 [ 3021.836484] __tracer_setup_snap+0x1fe/0x230 [dattobd] [ 3021.836501] tracer_setup_active_snap+0xb5/0x130 [dattobd] [ 3021.836514] ioctl_setup+0xfe/0x1b0 [dattobd] [ 3021.836528] ctrl_ioctl+0x27e/0x3e0 [dattobd] [ 3021.836542] __x64_sys_ioctl+0x9a/0xe0 [ 3021.836550] do_syscall_64+0x59/0x90 [ 3021.836556] ? irqentry_exit+0x43/0x50 [ 3021.836562] ? exc_page_fault+0x92/0x1b0 [ 3021.836568] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 3021.836575] RIP: 0033:0x7fc5adb1aaff [ 3021.836582] RSP: 002b:00007fffed6c3a90 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 [ 3021.836589] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fc5adb1aaff [ 3021.836593] RDX: 00007fffed6c3b30 RSI: 0000000040289101 RDI: 0000000000000003 [ 3021.836596] RBP: 00007fffed6c3b60 R08: 0000000000000000 R09: 0000000000000000 [ 3021.836600] R10: 00007fc5ada11df0 R11: 0000000000000246 R12: 00007fffed6c3d08 [ 3021.836603] R13: 0000561123b07de9 R14: 0000561123b0ad28 R15: 00007fc5adcab040 [ 3021.836610]

Swistusmen commented 10 months ago

@kattantak I will look into that, are you able to tell me which commit did you build? Also are you using LVM on your machine?

kattantak commented 9 months ago

I am using the latest commit as freshly cloning the repo. "git clone https://github.com/datto/dattobd.git" Not using LVM.


Meanwhile my ubuntu updated to 6.2.0-33-generic and I cannot comply the module again. make[2]: Entering directory '/usr/src/linux-headers-6.2.0-33-generic' warning: the compiler differs from the one used to build the kernel The kernel was built by: x86_64-linux-gnu-gcc-11 (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 You are using: gcc-11 (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 CC [M] /home/mike/dattobd-git/dattobd/src/bio_helper.o /home/mike/dattobd-git/dattobd/src/bio_helper.c: In function ‘dattobd_set_bio_ops’: /home/mike/dattobd-git/dattobd/src/bio_helper.c:184:9: error: implicit declaration of function ‘bio_set_op_attrs’ [-Werror=implicit-function-declaration] 184 | bio_set_op_attrs(bio, op, op_flags); | ^~~~ cc1: some warnings being treated as errors make[3]: [scripts/Makefile.build:260: /home/mike/dattobd-git/dattobd/src/bio_helper.o] Error 1 make[2]: [Makefile:2026: /home/mike/dattobd-git/dattobd/src] Error 2 make[2]: Leaving directory '/usr/src/linux-headers-6.2.0-33-generic' make[1]: [Makefile:17: default] Error 2 make[1]: Leaving directory '/home/mike/dattobd-git/dattobd/src' make: [Makefile:24: driver] Error 2

I just going to compile from source because ubuntu install not working to me.

sudo apt-key adv --fetch-keys https://cpkg.datto.com/DATTO-PKGS-GPG-KEY Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)). Executing: /tmp/apt-key-gpghome.rqx86YbDog/gpg.1.sh --fetch-keys https://cpkg.datto.com/DATTO-PKGS-GPG-KEY gpg: requesting key from 'https://cpkg.datto.com/DATTO-PKGS-GPG-KEY' gpg: WARNING: unable to fetch URI https://cpkg.datto.com/DATTO-PKGS-GPG-KEY: No such file or directory

Swistusmen commented 9 months ago

we're currently focusing mostly on kernel 5.19. Tested building on kernel 6.1. So 6.2 is not covered with tests, but we're going there. If you find any solution/ workaround I encourage you to share it with us either by creating PR or suggesting solutions. Thanks for you input

kattantak commented 9 months ago

OK. no rush with this. Thanks.