dm snapshot: fix chunksize sector conversion
authorMikulas Patocka <mpatocka@redhat.com>
Thu, 24 Apr 2008 20:41:50 +0000 (21:41 +0100)
committerAlasdair G Kergon <agk@redhat.com>
Fri, 25 Apr 2008 12:26:34 +0000 (13:26 +0100)
If a snapshot has a smaller chunksize than the page size the
conversion to pages currently returns 0 instead of 1, causing:
kernel BUG in mempool_resize.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Cc: stable@kernel.org
drivers/md/dm-exception-store.c

index 5bbce29f143ac45f6d358a9b26217b3d30ee1ccd..c7d305bfd838157b5bb197ebd7ffc90207151b64 100644 (file)
@@ -131,7 +131,7 @@ struct pstore {
 
 static unsigned sectors_to_pages(unsigned sectors)
 {
-       return sectors / (PAGE_SIZE >> 9);
+       return DIV_ROUND_UP(sectors, PAGE_SIZE >> 9);
 }
 
 static int alloc_area(struct pstore *ps)