mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 4/10] UML - allow ubd devices to provide partial end blocks
@ 2005-01-17  5:56 Jeff Dike
  0 siblings, 0 replies; only message in thread
From: Jeff Dike @ 2005-01-17  5:56 UTC (permalink / raw)
  To: akpm, Blaisorblade; +Cc: linux-kernel

If the file backing a ubd device is not an even blocklength, then the last
partial block is now readable, and it is padded with zeros.

Signed-off-by: Jeff Dike <jdike@addtoit.com>

Index: 2.6.10/arch/um/drivers/ubd_kern.c
===================================================================
--- 2.6.10.orig/arch/um/drivers/ubd_kern.c	2005-01-16 20:37:24.000000000 -0500
+++ 2.6.10/arch/um/drivers/ubd_kern.c	2005-01-16 20:40:41.000000000 -0500
@@ -682,6 +682,8 @@
 	return 0;
 }
 
+#define ROUND_BLOCK(n) ((n + ((1 << 9) - 1)) & (-1 << 9))
+
 static int ubd_add(int n)
 {
 	struct ubd *dev = &ubd_dev[n];
@@ -697,6 +699,8 @@
 	if(err < 0)
 		return(err);
 
+	dev->size = ROUND_BLOCK(dev->size);
+
 	err = ubd_new_disk(MAJOR_NR, dev->size, n, &ubd_gendisk[n]);
 	if(err) 
 		return(err);


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-01-17  3:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-17  5:56 [PATCH 4/10] UML - allow ubd devices to provide partial end blocks Jeff Dike

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®