cloop-2.634 (Re: kernel 2.6.35.3)
Hi,
On Wed, Aug 25, 2010 at 01:28:50AM -0700, stirner wrote:
> Hi,
>
> I did some experiment with kernel 2.6.35.3 and cloop fail with this errors:
>
> make[1]: Entering directory `/usr/src/linux-2.6.35.3'
> CC [M] /usr/src/cloop-2.6311/compressed_loop.o
> /usr/src/cloop-2.6311/compressed_loop.c: In function 'cloop_set_file':
> /usr/src/cloop-2.6311/compressed_loop.c:439: error: implicit declaration of
> function 'blk_queue_max_sectors'
> /usr/src/cloop-2.6311/compressed_loop.c:440: error: implicit declaration of
> function 'blk_queue_max_phys_segments'
> /usr/src/cloop-2.6311/compressed_loop.c:440: error: implicit declaration of
> function 'queue_max_phys_segments'
> /usr/src/cloop-2.6311/compressed_loop.c:441: error: implicit declaration of
> function 'blk_queue_max_hw_segments'
> /usr/src/cloop-2.6311/compressed_loop.c:441: error: implicit declaration of
> function 'queue_max_hw_segments'
> make[2]: *** [/usr/src/cloop-2.6311/compressed_loop.o] Error 1
> make[1]: *** [_module_/usr/src/cloop-2.6311] Error 2
> make[1]: Leaving directory `/usr/src/linux-2.6.35.3'
> make: *** [cloop.ko] Error 2
>
> Best wishes
>
> Max
I thought we had this resolved earlier in kernel 2.6.34, but apparently,
I forgot to upload the new version. :-(
Attached is the patch, you can also find the new version on
http://debian-knoppix.alioth.debian.org/sources/cloop_2.634-1.tar.gz
Regards
-Klaus
--- cloop-2.631/compressed_loop.c 2009-09-22 16:49:56.000000000 +0200
+++ cloop-2.634/compressed_loop.c 2010-08-25 13:35:21.000000000 +0200
@@ -20,7 +20,7 @@
*/
#define CLOOP_NAME "cloop"
-#define CLOOP_VERSION "2.631"
+#define CLOOP_VERSION "2.634"
#define CLOOP_MAX 8
#ifndef KBUILD_MODNAME
@@ -436,9 +436,9 @@
if(isblkdev)
{
struct request_queue *q = bdev_get_queue(inode->i_bdev);
- blk_queue_max_sectors(clo->clo_queue, queue_max_sectors(q));
- blk_queue_max_phys_segments(clo->clo_queue, queue_max_phys_segments(q));
- blk_queue_max_hw_segments(clo->clo_queue, queue_max_hw_segments(q));
+ blk_queue_max_hw_sectors(clo->clo_queue, queue_max_hw_sectors(q)); /* Renamed in 2.6.34 */
+ blk_queue_max_segments(clo->clo_queue, queue_max_segments(q)); /* Renamed in 2.6.34 */
+ /* blk_queue_max_hw_segments(clo->clo_queue, queue_max_hw_segments(q)); */ /* Removed in 2.6.34 */
blk_queue_max_segment_size(clo->clo_queue, queue_max_segment_size(q));
blk_queue_segment_boundary(clo->clo_queue, queue_segment_boundary(q));
blk_queue_merge_bvec(clo->clo_queue, q->merge_bvec_fn);
@@ -664,6 +664,7 @@
file = fget(arg); /* get filp struct from ioctl arg fd */
if(!file) return -EBADF;
error=cloop_set_file(cloop_num,file,"losetup_file");
+ set_device_ro(bdev, 1);
if(error) fput(file);
return error;
}
Reply to: