[openib-general] [PATCH][5/27] IB/mthca: allow unaligned memory regions

Roland Dreier roland at topspin.com
Fri Apr 1 12:49:52 PST 2005


From: Michael S. Tsirkin <mst at mellanox.co.il>

The first buffer of a memory region is not required to be
page-aligned, so don't return an error if it's not.

Signed-off-by: Michael S. Tsirkin <mst at mellanox.co.il>
Signed-off-by: Roland Dreier <roland at topspin.com>


--- linux-export.orig/drivers/infiniband/hw/mthca/mthca_provider.c	2005-04-01 12:38:20.839437009 -0800
+++ linux-export/drivers/infiniband/hw/mthca/mthca_provider.c	2005-04-01 12:38:21.926201103 -0800
@@ -494,7 +494,7 @@
 	mask = 0;
 	total_size = 0;
 	for (i = 0; i < num_phys_buf; ++i) {
-		if (buffer_list[i].addr & ~PAGE_MASK)
+		if (i != 0 && buffer_list[i].addr & ~PAGE_MASK)
 			return ERR_PTR(-EINVAL);
 		if (i != 0 && i != num_phys_buf - 1 &&
 		    (buffer_list[i].size & ~PAGE_MASK))




More information about the general mailing list