Veeam Backup Agent error during blksnap compile on PROXMOX

Jun 23, 2021
6
0
6
39
Hello
On our two PROXMOX servers version 8.2.2 do we have a compile problem with veeam blksnap.
Code:
dkms install -m blksnap -v 6.1.0.1498
Sign command: /lib/modules/6.8.4-2-pve/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
make -j16 KERNELRELEASE=6.8.4-2-pve -j16 -C /lib/modules/6.8.4-2-pve/build M=/var/lib/dkms/blksnap/6.1.0.1498/build modules...(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.8.4-2-pve (x86_64)
Consult /var/lib/dkms/blksnap/6.1.0.1498/build/make.log for more information.

I tried to understand the log /var/lib/dkms/blksnap/6.1.0.1498/build/make.log, but i couldn't find a solution so far.
Code:
DKMS make.log for blksnap-6.1.0.1498 for kernel 6.8.4-2-pve (x86_64)
Fri Apr 26 02:49:00 PM CEST 2024
make: Entering directory '/usr/src/linux-headers-6.8.4-2-pve'
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/bdevfilter.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/log.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/big_buffer.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/cbt_map.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/chunk.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/ctrl.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_io.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_buffer.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/event_queue.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/main.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/sysfs.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/tracker.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/memory_checker.o
/var/lib/dkms/blksnap/6.1.0.1498/build/log.c:246:5: warning: no previous prototype for ‘log_processor’ [-Wmissing-prototypes]
  246 | int log_processor(void *data)
      |     ^~~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_io.c:45:6: warning: no previous prototype for ‘diff_io_endio’ [-Wmissing-prototypes]
   45 | void diff_io_endio(struct bio *bio)
      |      ^~~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c: In function ‘diff_area_free’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:123:17: error: implicit declaration of function ‘blkdev_put’ [-Werror=implicit-function-declaration]
  123 |                 blkdev_put(diff_area->orig_bdev, NULL);
      |                 ^~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c: In function ‘diff_storage_free’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c:123:17: error: implicit declaration of function ‘blkdev_put’ [-Werror=implicit-function-declaration]
  123 |                 blkdev_put(storage_bdev->bdev, NULL);
      |                 ^~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/ctrl.c:444:5: warning: no previous prototype for ‘ioctl_mod’ [-Wmissing-prototypes]
  444 | int ioctl_mod(unsigned long arg)
      |     ^~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/ctrl.c:454:5: warning: no previous prototype for ‘ioctl_setlog’ [-Wmissing-prototypes]
  454 | int ioctl_setlog(unsigned long arg)
      |     ^~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:23:9: note: ‘#pragma message: Standalone bdevfilter’
   23 | #pragma message("Standalone bdevfilter")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:29:9: note: ‘#pragma message: The void submit_bio_noacct(struct bio *) function was found.’
   29 | #pragma message("The void submit_bio_noacct(struct bio *) function was found.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:35:9: note: ‘#pragma message: The struct bio have pointer to struct block_device.’
   35 | #pragma message("The struct bio have pointer to struct block_device.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:41:9: note: ‘#pragma message: The bdev_nr_sectors() function was found.’
   41 | #pragma message("The bdev_nr_sectors() function was found.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:44:9: note: ‘#pragma message: The blk_mq_alloc_disk() function was found.’
   44 | #pragma message("The blk_mq_alloc_disk() function was found.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:50:9: note: ‘#pragma message: The function add_disk() has a return code.’
   50 | #pragma message("The function add_disk() has a return code.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:56:9: note: ‘#pragma message: The function bio_alloc_bioset() has a parameter bdev.’
   56 | #pragma message("The function bio_alloc_bioset() has a parameter bdev.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c: In function ‘diff_area_new’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:296:16: error: implicit declaration of function ‘blkdev_get_by_dev’; did you mean ‘blkdev_get_no_open’? [-Werror=implicit-function-declaration]
  296 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |                ^~~~~~~~~~~~~~~~~
      |                blkdev_get_no_open
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:296:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  296 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c: In function ‘diff_storage_add_storage_bdev’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c:162:16: error: implicit declaration of function ‘blkdev_get_by_dev’; did you mean ‘blkdev_get_no_open’? [-Werror=implicit-function-declaration]
  162 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |                ^~~~~~~~~~~~~~~~~
      |                blkdev_get_no_open
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c:162:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  162 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c: At top level:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:395:15: warning: no previous prototype for ‘diff_area_chunk_take’ [-Wmissing-prototypes]
  395 | struct chunk *diff_area_chunk_take(struct diff_area *diff_area,
      |               ^~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.c: In function ‘snapshot_release_trackers’:
/var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.c:58:21: error: implicit declaration of function ‘freeze_bdev’; did you mean ‘freeze_super’? [-Werror=implicit-function-declaration]
   58 |                 if (freeze_bdev(tracker->diff_area->orig_bdev))
      |                     ^~~~~~~~~~~
      |                     freeze_super
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_filter_attach’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:242:13: error: implicit declaration of function ‘freeze_bdev’; did you mean ‘freeze_super’? [-Werror=implicit-function-declaration]
  242 |         if (freeze_bdev(bdev))
      |             ^~~~~~~~~~~
      |             freeze_super
/var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.c:79:21: error: implicit declaration of function ‘thaw_bdev’ [-Werror=implicit-function-declaration]
   79 |                 if (thaw_bdev(tracker->diff_area->orig_bdev))
      |                     ^~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:259:21: error: implicit declaration of function ‘thaw_bdev’ [-Werror=implicit-function-declaration]
  259 |                 if (thaw_bdev(bdev))
      |                     ^~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_create_or_get’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:476:16: error: implicit declaration of function ‘blkdev_get_by_dev’; did you mean ‘blkdev_get_no_open’? [-Werror=implicit-function-declaration]
  476 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |                ^~~~~~~~~~~~~~~~~
      |                blkdev_get_no_open
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:476:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  476 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.c: In function ‘snapimage_create’:
/var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.c:292:47: error: ‘BLK_DEF_MAX_SECTORS’ undeclared (first use in this function); did you mean ‘BLK_SAFE_MAX_SECTORS’?
  292 |         blk_queue_max_hw_sectors(disk->queue, BLK_DEF_MAX_SECTORS);
      |                                               ^~~~~~~~~~~~~~~~~~~
      |                                               BLK_SAFE_MAX_SECTORS
/var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.c:292:47: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:531:9: error: implicit declaration of function ‘blkdev_put’ [-Werror=implicit-function-declaration]
  531 |         blkdev_put(bdev, NULL);
      |         ^~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_remove’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:548:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  548 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_read_cbt_bitmap’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:626:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  626 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘collect_cbt_info’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:678:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  678 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_mark_dirty_blocks’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:765:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  765 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/tracker.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.8.4-2-pve/Makefile:1926: /var/lib/dkms/blksnap/6.1.0.1498/build] Error 2
make: *** [Makefile:240: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.8.4-2-pve'

It might be some one better in this as me? Thanks for any help!
 
Last edited:
From log above it seems that issue related to Veeam Agent's code.
When they fix it - who knows.
 
Last edited:
Hello
On our two PROXMOX servers version 8.2.2 do we have a compile problem with veeam blksnap.
Code:
dkms install -m blksnap -v 6.1.0.1498
Sign command: /lib/modules/6.8.4-2-pve/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
make -j16 KERNELRELEASE=6.8.4-2-pve -j16 -C /lib/modules/6.8.4-2-pve/build M=/var/lib/dkms/blksnap/6.1.0.1498/build modules...(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.8.4-2-pve (x86_64)
Consult /var/lib/dkms/blksnap/6.1.0.1498/build/make.log for more information.

I tried to understand the log /var/lib/dkms/blksnap/6.1.0.1498/build/make.log, but i couldn't find a solution so far.
Code:
DKMS make.log for blksnap-6.1.0.1498 for kernel 6.8.4-2-pve (x86_64)
Fri Apr 26 02:49:00 PM CEST 2024
make: Entering directory '/usr/src/linux-headers-6.8.4-2-pve'
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/bdevfilter.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/log.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/big_buffer.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/cbt_map.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/chunk.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/ctrl.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_io.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_buffer.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/event_queue.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/main.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/sysfs.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/tracker.o
  CC [M]  /var/lib/dkms/blksnap/6.1.0.1498/build/memory_checker.o
/var/lib/dkms/blksnap/6.1.0.1498/build/log.c:246:5: warning: no previous prototype for ‘log_processor’ [-Wmissing-prototypes]
  246 | int log_processor(void *data)
      |     ^~~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_io.c:45:6: warning: no previous prototype for ‘diff_io_endio’ [-Wmissing-prototypes]
   45 | void diff_io_endio(struct bio *bio)
      |      ^~~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c: In function ‘diff_area_free’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:123:17: error: implicit declaration of function ‘blkdev_put’ [-Werror=implicit-function-declaration]
  123 |                 blkdev_put(diff_area->orig_bdev, NULL);
      |                 ^~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c: In function ‘diff_storage_free’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c:123:17: error: implicit declaration of function ‘blkdev_put’ [-Werror=implicit-function-declaration]
  123 |                 blkdev_put(storage_bdev->bdev, NULL);
      |                 ^~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/ctrl.c:444:5: warning: no previous prototype for ‘ioctl_mod’ [-Wmissing-prototypes]
  444 | int ioctl_mod(unsigned long arg)
      |     ^~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/ctrl.c:454:5: warning: no previous prototype for ‘ioctl_setlog’ [-Wmissing-prototypes]
  454 | int ioctl_setlog(unsigned long arg)
      |     ^~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:23:9: note: ‘#pragma message: Standalone bdevfilter’
   23 | #pragma message("Standalone bdevfilter")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:29:9: note: ‘#pragma message: The void submit_bio_noacct(struct bio *) function was found.’
   29 | #pragma message("The void submit_bio_noacct(struct bio *) function was found.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:35:9: note: ‘#pragma message: The struct bio have pointer to struct block_device.’
   35 | #pragma message("The struct bio have pointer to struct block_device.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:41:9: note: ‘#pragma message: The bdev_nr_sectors() function was found.’
   41 | #pragma message("The bdev_nr_sectors() function was found.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:44:9: note: ‘#pragma message: The blk_mq_alloc_disk() function was found.’
   44 | #pragma message("The blk_mq_alloc_disk() function was found.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:50:9: note: ‘#pragma message: The function add_disk() has a return code.’
   50 | #pragma message("The function add_disk() has a return code.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/main.c:56:9: note: ‘#pragma message: The function bio_alloc_bioset() has a parameter bdev.’
   56 | #pragma message("The function bio_alloc_bioset() has a parameter bdev.")
      |         ^~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c: In function ‘diff_area_new’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:296:16: error: implicit declaration of function ‘blkdev_get_by_dev’; did you mean ‘blkdev_get_no_open’? [-Werror=implicit-function-declaration]
  296 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |                ^~~~~~~~~~~~~~~~~
      |                blkdev_get_no_open
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:296:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  296 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c: In function ‘diff_storage_add_storage_bdev’:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c:162:16: error: implicit declaration of function ‘blkdev_get_by_dev’; did you mean ‘blkdev_get_no_open’? [-Werror=implicit-function-declaration]
  162 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |                ^~~~~~~~~~~~~~~~~
      |                blkdev_get_no_open
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.c:162:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  162 |         bdev = blkdev_get_by_dev(dev_id, FMODE_READ | FMODE_WRITE, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c: At top level:
/var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.c:395:15: warning: no previous prototype for ‘diff_area_chunk_take’ [-Wmissing-prototypes]
  395 | struct chunk *diff_area_chunk_take(struct diff_area *diff_area,
      |               ^~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.c: In function ‘snapshot_release_trackers’:
/var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.c:58:21: error: implicit declaration of function ‘freeze_bdev’; did you mean ‘freeze_super’? [-Werror=implicit-function-declaration]
   58 |                 if (freeze_bdev(tracker->diff_area->orig_bdev))
      |                     ^~~~~~~~~~~
      |                     freeze_super
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_filter_attach’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:242:13: error: implicit declaration of function ‘freeze_bdev’; did you mean ‘freeze_super’? [-Werror=implicit-function-declaration]
  242 |         if (freeze_bdev(bdev))
      |             ^~~~~~~~~~~
      |             freeze_super
/var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.c:79:21: error: implicit declaration of function ‘thaw_bdev’ [-Werror=implicit-function-declaration]
   79 |                 if (thaw_bdev(tracker->diff_area->orig_bdev))
      |                     ^~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:259:21: error: implicit declaration of function ‘thaw_bdev’ [-Werror=implicit-function-declaration]
  259 |                 if (thaw_bdev(bdev))
      |                     ^~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_create_or_get’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:476:16: error: implicit declaration of function ‘blkdev_get_by_dev’; did you mean ‘blkdev_get_no_open’? [-Werror=implicit-function-declaration]
  476 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |                ^~~~~~~~~~~~~~~~~
      |                blkdev_get_no_open
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:476:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  476 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.c: In function ‘snapimage_create’:
/var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.c:292:47: error: ‘BLK_DEF_MAX_SECTORS’ undeclared (first use in this function); did you mean ‘BLK_SAFE_MAX_SECTORS’?
  292 |         blk_queue_max_hw_sectors(disk->queue, BLK_DEF_MAX_SECTORS);
      |                                               ^~~~~~~~~~~~~~~~~~~
      |                                               BLK_SAFE_MAX_SECTORS
/var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.c:292:47: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:531:9: error: implicit declaration of function ‘blkdev_put’ [-Werror=implicit-function-declaration]
  531 |         blkdev_put(bdev, NULL);
      |         ^~~~~~~~~~
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_remove’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:548:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  548 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_read_cbt_bitmap’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:626:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  626 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘collect_cbt_info’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:678:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  678 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c: In function ‘tracker_mark_dirty_blocks’:
/var/lib/dkms/blksnap/6.1.0.1498/build/tracker.c:765:14: warning: assignment to ‘struct block_device *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  765 |         bdev = blkdev_get_by_dev(dev_id, 0, NULL, NULL);
      |              ^
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/snapimage.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/diff_storage.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/diff_area.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/snapshot.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:243: /var/lib/dkms/blksnap/6.1.0.1498/build/tracker.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.8.4-2-pve/Makefile:1926: /var/lib/dkms/blksnap/6.1.0.1498/build] Error 2
make: *** [Makefile:240: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.8.4-2-pve'

It might be some one better in this as me? Thanks for any help!
hi
you may try my steps here, if you haven't fixed it on your own already:
https://github.com/veeam/blksnap/issues/88#issuecomment-2100345227
 
hi
you may try my steps here, if you haven't fixed it on your own already:
https://github.com/veeam/blksnap/issues/88#issuecomment-2100345227
Hey @littlesatno,
big thanks, that helped me a lot and i got it working.
Step 4. was a bit confusing, maybe there is a typo in there.

Another short question: Do you know when you back-up the whole pve, does that include mounted devices? Like a NAS with NFS. Because i get snapshot overflow errors when i run the backup.
If you don't have a answer i will open a new thread with my question.
 
Hey @littlesatno,
big thanks, that helped me a lot and i got it working.
Step 4. was a bit confusing, maybe there is a typo in there.

Another short question: Do you know when you back-up the whole pve, does that include mounted devices? Like a NAS with NFS. Because i get snapshot overflow errors when i run the backup.
If you don't have a answer i will open a new thread with my question.
hi softwald:
I am glad to hear that it was useful for you and thx for the hint about step for (the two commands have been on two separte lines)
as far as I noticed, mounted devices are not included. I say that because I have also mounted my NAS (not sure if I have it mounted as NFS now but I had when I started with proxmox and might have switched to smb mounts. edit: just checked it and now I only mount as cifs) and have no issues.
 
Last edited:
Have you ever used Vinchin Backup & Recovery? It is also a professional backup solution for virtual machines and provides native support for Proxmox.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!