[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Cloop and kernel 4.3



Hi Klaus,

kernel 4.3 is out with many improvements and as you can imagine I have
already tried to implement this new kernel in my live system.

Cloop doesn't compile and I think I have found the reason:

From: Ming Lin <mlin kernel org>
To: linux-kernel vger kernel org

As generic_make_request() is now able to handle arbitrarily sized bios,
it's no longer necessary for each individual block driver to define its
own ->merge_bvec_fn() callback. Remove every invocation completely.

========================

After removing the invocation the module compiles and loads without any
problem:

Thu Nov 12 17:49:51 2015] aufs 4.3-20151109
[Thu Nov 12 17:49:55 2015] cloop: Initializing cloop v3.14
[Thu Nov 12 17:49:55 2015] cloop: loaded (max 8 devices)

and from the live system:

Thu Nov 12 17:57:23 2015] cloop: Initializing cloop v3.14
[Thu Nov 12 17:57:23 2015] cloop: loaded (max 8 devices)
[Thu Nov 12 17:57:23 2015] cloop: Can't open device read-write in mode 0x1f
[Thu Nov 12 17:57:23 2015] cloop: losetup_file: 800 blocks, 1048576
bytes/block, largest block is 1047162 bytes.
[Thu Nov 12 17:57:23 2015] cloop: preloaded 32 blocks into cache.

==================================

Here's the changelog:

root@MRS:/media/sdb1/usr/src# diff -u cloop.c  cloop-319/cloop.c 
--- cloop.c	2015-11-12 17:25:12.000000000 +0000
+++ cloop-319/cloop.c	2015-11-12 17:41:31.000000000 +0000
@@ -460,17 +460,6 @@
  /* In suspended mode, we have done all checks necessary - FF */
  if (clo->suspended)
    return error;
- if(isblkdev)
-  {
-   struct request_queue *q = bdev_get_queue(inode->i_bdev);
-   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);
-   clo->underlying_blksize = block_size(inode->i_bdev);
-  }
  else
    clo->underlying_blksize = PAGE_SIZE;
  DEBUGP("Underlying blocksize is %u\n", clo->underlying_blksize);


Best wishes

Massimo Bollati



--
View this message in context: http://debian.2.n7.nabble.com/Cloop-and-kernel-4-3-tp3694497.html
Sent from the debian-knoppix mailing list archive at Nabble.com.


Reply to: