]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
Get sector size from disk label for NetBSD.
authorGrégoire Sutre <gregoire.sutre@gmail.com>
Sat, 17 Sep 2011 21:01:48 +0000 (23:01 +0200)
committerGrégoire Sutre <gregoire.sutre@gmail.com>
Sat, 17 Sep 2011 21:01:48 +0000 (23:01 +0200)
ChangeLog
grub-core/kern/emu/hostdisk.c

index c84aa30aa78c013eed3088c4f65f57bbfebaa0d3..1acdce29e6472cf18b705d229fb6a766e4b26aa4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-09-17  Grégoire Sutre  <gregoire.sutre@gmail.com>
+
+       * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__NetBSD__]:
+       Get sector size from disk label.
+
 2011-09-05  Colin Watson  <cjwatson@ubuntu.com>
 
        * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Return 1 for
index 000ef2f799e5e55ea6567453191213bdc5319299..b4c4eef7cfa77f3c60e8e304a73cbeb7c7eee38c 100644 (file)
@@ -265,10 +265,13 @@ grub_util_get_fd_sectors (int fd, unsigned *log_secsize)
 
 # if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
     if (ioctl (fd, DIOCGSECTORSIZE, &sector_size))
+      goto fail;
+# elif defined(__NetBSD__)
+    sector_size = label.d_secsize;
 # else
     if (ioctl (fd, BLKSSZGET, &sector_size))
-# endif
       goto fail;
+# endif
 
     if (sector_size & (sector_size - 1) || !sector_size)
       goto fail;