elastio / elastio-snap

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

Minimum compatible (kernel) version #288

Open MiniGrayGay opened 1 year ago

MiniGrayGay commented 1 year ago

It works on 3.11.0-15-generic kernel Ubuntu12.04, but in 3.2.0-29-generic kernel have some error when compiling, but i see elastio support 3.x.

MiniGrayGay commented 1 year ago
make -C src
make[1]: Entering directory `/root/elastio-snap-master/src'
if [ ! -f kernel-config.h ] || tail -1 kernel-config.h | grep -qv '#endif'; then ./genconfig.sh "3.2.0-29-generic"; fi;
make -C /lib/modules/3.2.0-29-generic/build M=/root/elastio-snap-master/src modules
make[2]: Entering directory `/usr/src/linux-headers-3.2.0-29-generic'
  CC [M]  /root/elastio-snap-master/src/main.o
/root/elastio-snap-master/src/main.c: In function 'bio_free_pages':
/root/elastio-snap-master/src/main.c:812:2: error: implicit declaration of function 'bio_for_each_segment_all' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c:812:41: error: expected ';' before '{' token
/root/elastio-snap-master/src/main.c:803:15: warning: unused variable 'bv_page' [-Wunused-variable]
/root/elastio-snap-master/src/main.c: At top level:
/root/elastio-snap-master/src/main.c:1129:2: warning: initialization from incompatible pointer type [enabled by default]
/root/elastio-snap-master/src/main.c:1129:2: warning: (near initialization for 'snap_ops.release') [enabled by default]
/root/elastio-snap-master/src/main.c: In function 'task_work_flush':
/root/elastio-snap-master/src/main.c:1433:11: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1433:11: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: warning: initialization makes integer from pointer without a cast [enabled by default]
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: warning: initialization makes integer from pointer without a cast [enabled by default]
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:10: error: 'struct task_struct' has no member named 'task_works'
/root/elastio-snap-master/src/main.c:1435:49: warning: comparison between pointer and integer [enabled by default]
/root/elastio-snap-master/src/main.c:1444:15: error: dereferencing pointer to incomplete type
/root/elastio-snap-master/src/main.c:1445:8: error: dereferencing pointer to incomplete type
/root/elastio-snap-master/src/main.c:1452:15: error: dereferencing pointer to incomplete type
/root/elastio-snap-master/src/main.c:1453:8: error: dereferencing pointer to incomplete type
/root/elastio-snap-master/src/main.c: In function 'file_write_block':
/root/elastio-snap-master/src/main.c:1822:2: error: implicit declaration of function 'submit_bio_wait' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c: In function 'file_read_block':
/root/elastio-snap-master/src/main.c:1937:46: error: expected ';' before '{' token
/root/elastio-snap-master/src/main.c: In function 'file_truncate':
/root/elastio-snap-master/src/main.c:2107:2: error: implicit declaration of function 'vfs_truncate' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c:2117:2: error: implicit declaration of function 'sb_start_write' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c:2124:2: error: implicit declaration of function 'sb_end_write' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c: In function 'real_fallocate':
/root/elastio-snap-master/src/main.c:2153:9: error: implicit declaration of function 'file_inode' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c:2153:24: warning: initialization makes pointer from integer without a cast [enabled by default]
/root/elastio-snap-master/src/main.c: In function 'elastio_snap_get_cow_file_extents':
/root/elastio-snap-master/src/main.c:2732:10: error: 'struct file' has no member named 'f_inode'
/root/elastio-snap-master/src/main.c:2733:16: error: 'struct file' has no member named 'f_inode'
/root/elastio-snap-master/src/main.c:2745:20: error: 'struct file' has no member named 'f_inode'
/root/elastio-snap-master/src/main.c:2775:2: error: implicit declaration of function 'vm_munmap' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c: In function 'cow_reopen':
/root/elastio-snap-master/src/main.c:2810:34: error: 'struct file' has no member named 'f_inode'
/root/elastio-snap-master/src/main.c: In function 'cow_reload':
/root/elastio-snap-master/src/main.c:2853:30: error: 'struct file' has no member named 'f_inode'
/root/elastio-snap-master/src/main.c: In function 'cow_init':
/root/elastio-snap-master/src/main.c:2971:30: error: 'struct file' has no member named 'f_inode'
/root/elastio-snap-master/src/main.c: In function 'snap_handle_read_bio':
/root/elastio-snap-master/src/main.c:3690:42: error: expected ';' before '{' token
/root/elastio-snap-master/src/main.c:3636:52: warning: unused variable 'bvec_off' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3636:41: warning: unused variable 'block_off' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3636:26: warning: unused variable 'bytes_to_copy' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3636:11: warning: unused variable 'block_mapping' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3634:26: warning: unused variable 'cur_block' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3633:8: warning: unused variable 'data' [-Wunused-variable]
/root/elastio-snap-master/src/main.c: In function 'snap_handle_write_bio':
/root/elastio-snap-master/src/main.c:3778:41: error: expected ';' before '{' token
/root/elastio-snap-master/src/main.c:3804:1: warning: label 'error' defined but not used [-Wunused-label]
/root/elastio-snap-master/src/main.c:3756:24: warning: unused variable 'end_block' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3756:11: warning: unused variable 'start_block' [-Wunused-variable]
/root/elastio-snap-master/src/main.c:3755:8: warning: unused variable 'data' [-Wunused-variable]
/root/elastio-snap-master/src/main.c: In function '__tracer_setup_base_dev':
/root/elastio-snap-master/src/main.c:4727:3: error: implicit declaration of function 'part_nr_sects_read' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c: In function '__tracer_setup_snap':
/root/elastio-snap-master/src/main.c:5053:2: error: implicit declaration of function 'blk_set_stacking_limits' [-Werror=implicit-function-declaration]
/root/elastio-snap-master/src/main.c: At top level:
/root/elastio-snap-master/src/main.c:3127:12: warning: 'cow_write_current' defined but not used [-Wunused-function]
/root/elastio-snap-master/src/main.c:3153:12: warning: 'cow_read_data' defined but not used [-Wunused-function]
cc1: some warnings being treated as errors
make[3]: *** [/root/elastio-snap-master/src/main.o] Error 1
make[2]: *** [_module_/root/elastio-snap-master/src] Error 2
make[2]: Leaving directory `/usr/src/linux-headers-3.2.0-29-generic'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/root/elastio-snap-master/src'
make: *** [driver] Error 2