From: Mihai Moldovan <ionic@ionic.de>
To: The development of GNU GRUB <grub-devel@gnu.org>
Subject: [PATCH 4/7] grub-install: hook up --emu-512b to sector size autodetection in biosdisk
Date: Sun, 24 May 2020 13:43:05 +0200 [thread overview]
Message-ID: <20200524114308.1009-5-ionic@ionic.de> (raw)
In-Reply-To: <20200524114308.1009-1-ionic@ionic.de>
Chances are that if you need the
native-sector-addressing-with-512-bytes-lengths feature, you will also
need grub to autodetect the native sector size later on.
---
util/grub-install.c | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/util/grub-install.c b/util/grub-install.c
index 57ef3ef33..89e80907c 100644
--- a/util/grub-install.c
+++ b/util/grub-install.c
@@ -1362,6 +1362,32 @@ main (int argc, char *argv[])
fprintf (load_cfg_f, "set debug='%s'\n",
debug_image);
}
+
+ if (emu_512b)
+ {
+ switch (platform)
+ {
+ case GRUB_INSTALL_PLATFORM_I386_PC:
+ if (!load_cfg_f)
+ {
+ load_cfg_f = grub_util_fopen (load_cfg, "wb");
+ }
+ have_load_cfg = 1;
+ /*
+ * Exporting this variable would be nice, but the export command
+ * is not part of the rescue shell, so that won't work.
+ */
+ fprintf (load_cfg_f,
+ "set biosdisk_autodetect_sector_size='1'\n");
+ break;
+ default:
+ grub_util_error ("%s", _("native-sector-addressing with "
+ "512-bytes length emulation is not "
+ "supported on your platform"));
+ break;
+ }
+ }
+
char *prefix_drive = NULL;
char *install_drive = NULL;
--
2.25.1
next prev parent reply other threads:[~2020-05-24 11:43 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-24 11:43 [PATCH 0/7] support >512b sector disks with old/buggy firmware Mihai Moldovan
2020-05-24 11:43 ` [PATCH 1/7] biosdisk: autodetect hardware sector size (opt-in) Mihai Moldovan
2020-05-24 11:43 ` [PATCH 2/7] biosdisk: restore LBA mode after read/write failures Mihai Moldovan
2020-05-24 11:43 ` [PATCH 3/7] setup: add support for native sector addressing w/ 512-bytes lengths Mihai Moldovan
2020-05-24 11:43 ` Mihai Moldovan [this message]
2020-05-24 11:43 ` [PATCH 5/7] docs/grub: document --emu-512b install option Mihai Moldovan
2020-05-24 11:43 ` [PATCH 6/7] diskfilter: write out currently scanned partition Mihai Moldovan
2020-05-24 11:43 ` [PATCH 7/7] gpt: respect native sector size if set/detected Mihai Moldovan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200524114308.1009-5-ionic@ionic.de \
--to=ionic@ionic.de \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox