UML - limit requests on COW devices to 32 sectors
PATCH 1/1 UML - limit requests on COW devices to 32 sectors
COWed devices can't handle more than 32 (64 on x86_64) sectors in one request due to the size of the bitmap being carried around in the io_thread_req.
Enforce that by telling the block layer not to put too many sectors in requests to COWed devices.
--
arch/um/drivers/ubd_kern.c | 2 ++ 1 file changed, 2 insertions(+)
arch/um/drivers/ubd_kern.c +2 -0
@@ -712,6 +712,8 @@ static int ubd_add(int n, char **error_o ubd_dev->queue->queuedata = ubd_dev;blk_queue_max_hw_segments (ubd_dev->queue,MAX_SG ); +if (ubd_dev->cow.file !=NULL ) +blk_queue_max_sectors (ubd_dev->queue,8 *sizeof (long )); err =ubd_disk_register (MAJOR_NR , ubd_dev->size, n, &ubd_gendisk[n]);if (err){ *error_out ="Failed to register device" ;
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
User-mode-linux-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel