mfrw / compcache

Automatically exported from code.google.com/p/compcache
0 stars 0 forks source link

build errors on 2.6.18 #64

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Attempt to compile compcache on RHEL5 2.6.18

What version of the product are you using? On what operating system?

Version 0.6.2

Please provide any additional information below.

[compcache-0.6.2]$ make
make -C "/lib/modules/2.6.18-194.el5/build" M=compcache-0.6.2 modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-194.3.1.el5-x86_64'
  CC [M]  compcache-0.6.2/ramzswap_drv.o
compcache-0.6.2/ramzswap_drv.c:26:23: error: linux/lzo.h: No such file or
directory
compcache-0.6.2/ramzswap_drv.c: In function ‘rzs_test_flag’:
compcache-0.6.2/ramzswap_drv.c:56: error: implicit declaration of function
‘BIT’ 
compcache-0.6.2/ramzswap_drv.c: In function ‘setup_backing_swap_extents’: 
compcache-0.6.2/ramzswap_drv.c:418: error: implicit declaration of function
‘pr_err’
compcache-0.6.2/ramzswap_drv.c: In function ‘handle_zero_page’:
compcache-0.6.2/ramzswap_drv.c:674: error: too few arguments to function
‘bio_endio’
compcache-0.6.2/ramzswap_drv.c: In function ‘handle_uncompressed_page’:
compcache-0.6.2/ramzswap_drv.c:698: error: too few arguments to function
‘bio_endio’
compcache-0.6.2/ramzswap_drv.c: In function ‘handle_ramzswap_fault’:
compcache-0.6.2/ramzswap_drv.c:744: error: too few arguments to function
‘bio_endio’
compcache-0.6.2/ramzswap_drv.c: In function ‘ramzswap_read’:
compcache-0.6.2/ramzswap_drv.c:779: error: implicit declaration of function
‘lzo1x_decompress_safe’
compcache-0.6.2/ramzswap_drv.c:788: error: ‘LZO_E_OK’ undeclared (first use
in this function)
compcache-0.6.2/ramzswap_drv.c:788: error: (Each undeclared identifier is
reported only once
compcache-0.6.2/ramzswap_drv.c:788: error: for each function it appears in.) 
compcache-0.6.2/ramzswap_drv.c:798: error: too few arguments to function
‘bio_endio’
compcache-0.6.2/ramzswap_drv.c:802:18: error: macro "bio_io_error" requires
2 arguments, but only 1 given 
compcache-0.6.2/ramzswap_drv.c:802: error: ‘bio_io_error’ undeclared (first
use in this function)
compcache-0.6.2/ramzswap_drv.c: In function ‘ramzswap_write’: 
compcache-0.6.2/ramzswap_drv.c:842: error: too few arguments to function
‘bio_endio’
compcache-0.6.2/ramzswap_drv.c:854: error: implicit declaration of function
‘lzo1x_1_compress’
compcache-0.6.2/ramzswap_drv.c:859: error: ‘LZO_E_OK’ undeclared (first use
in this function)
compcache-0.6.2/ramzswap_drv.c:939: error: too few arguments to function
‘bio_endio’
compcache-0.6.2/ramzswap_drv.c:968:18: error: macro "bio_io_error" requires
2 arguments, but only 1 given 
compcache-0.6.2/ramzswap_drv.c:968: error: ‘bio_io_error’ undeclared (first
use in this function)
compcache-0.6.2/ramzswap_drv.c:1001:19: error: macro "bio_io_error"
requires 2 arguments, but only 1 given 
compcache-0.6.2/ramzswap_drv.c: In function ‘ramzswap_make_request’:
compcache-0.6.2/ramzswap_drv.c:1001: error: ‘bio_io_error’ undeclared
(first use in this function)
compcache-0.6.2/ramzswap_drv.c:1007:19: error: macro "bio_io_error"
requires 2 arguments, but only 1 given 
compcache-0.6.2/ramzswap_drv.c: In function ‘ramzswap_ioctl_init_device’: 
compcache-0.6.2/ramzswap_drv.c:1135: error: ‘LZO1X_MEM_COMPRESS’ undeclared
(first use in this function)
compcache-0.6.2/ramzswap_drv.c:1187: error: implicit declaration of
function ‘blk_queue_nonrot’
compcache-0.6.2/ramzswap_drv.c:1188: error: implicit declaration of
function ‘queue_flag_set_unlocked’
compcache-0.6.2/ramzswap_drv.c:1188: error: ‘QUEUE_FLAG_NONROT’ undeclared
(first use in this function)
compcache-0.6.2/ramzswap_drv.c: At top level:
compcache-0.6.2/ramzswap_drv.c:1346: warning: initialization from
incompatible pointer type
compcache-0.6.2/ramzswap_drv.c: In function ‘create_device’:
compcache-0.6.2/ramzswap_drv.c:1376: error: implicit declaration of
function ‘pr_warning’
make[2]: *** [compcache-0.6.2/ramzswap_drv.o] Error 1
make[1]: *** [_module_compcache-0.6.2] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.18-194.3.1.el5-x86_64'
make: *** [all] Error 2

Original issue reported on code.google.com by hines.mr@gmail.com on 11 May 2010 at 1:09

GoogleCodeExporter commented 9 years ago
2.6.18 doesn't have LZO de/compression, uses slightly different BIO interface 
and
small tidbits like QUEUE_FLAG_NONROT are missing. It will require lot of effort 
to
get it working it on such an old kernel. Is it possible for you to upgrade to 
any
newer kernel?

Original comment by nitingupta910@gmail.com on 18 May 2010 at 3:42

GoogleCodeExporter commented 9 years ago
Ah, yes. Thanks a lot for responding. I did manage to install a newer kernel 
and will
try again soon.

How difficult would it be to modularize LZO for older kernels? Out of curiosity?

Original comment by hines.mr@gmail.com on 19 May 2010 at 1:01

GoogleCodeExporter commented 9 years ago
Porting LZO to older kernel shouldn't be too difficult but backporting other 
compcache bits will be more problematic.

Original comment by nitingupta910@gmail.com on 4 Jul 2010 at 2:19

GoogleCodeExporter commented 9 years ago
Please reopen if problem problem exists even after kernel upgrade.
Closing as 'Wont Fix' since porting to kernel 2.6.18 itself will not be 
feasible.

Original comment by nitingupta910@gmail.com on 4 Jul 2010 at 2:42