]> code.delx.au - refind/blobdiff - docs/refind/todo.html
Fix memory management error; version 0.6.4 release.
[refind] / docs / refind / todo.html
index 2fc86a5e93320f47091a694c5322d6c7484a2b52..4be866e180bf1a108cc546f0c32a872bbbed2e15 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-12/6/2012, referencing rEFInd 0.5.0</p>
+1/8/2013, referencing rEFInd 0.6.4</p>
 
 
 <p>I'm a technical writer and consultant specializing in Linux technologies. This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -165,6 +165,13 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        from the partition data is harder than extracting the volume's
        label or counting up the filesystem numbers.</li>
 
+    <li>Currently, if a filesystem's label comes up empty, rEFInd
+       substitutes the size, so you get displays like <tt>boot
+       EFI\foo\bar.efi from 90 GiB volume</tt>. I'd like to add more
+       checks to substitute the GPT <i>partition</i> label if the
+       <i>filesystem</i> label comes up empty, or add a filesystem type
+       identifier to the size.</li>
+
     <li>The default_selection option in refind.conf could be improved by
        supporting a list of default options, so that if the first item
        isn't found, rEFInd will try to boot the second one in the list,
@@ -183,42 +190,12 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        and/or initial RAM disks relative to the rEFInd directory (or the
        boot loader's directory, in the case of initrds).</li>
 
-    <li>Various options (<tt>dont_scan_dirs</tt>, <tt>also_scan_dirs</tt>,
-       <tt>scan_driver_dirs</tt>, etc.) refer to directories or files,
-       either on the ESP or on all partitions. A way to identify specific
-       partitions for these options would be useful in some
-       situations.</li>
-
     </ul></li> <!-- Improvements -->
 
 <li><b>Known bugs that need squashing:</b>
 
     <ul>
 
-    <li>When in Secure Boot mode, rEFInd can launch just one driver that's
-       signed with a shim key or MOK. The second and later drivers
-       generate "access denied" errors. <!-- I think this is because of
-       the fast-and-loose sample code I borrowed from shim, which re-uses
-       rEFInd's own image handle (the <tt>image_handle</tt> variable in
-       <tt>start_image()</tt>) for launching shim/MOK-signed binaries. The
-       result is that when the second driver is loaded, it can't register
-       itself with the firmware because the firmware believes it's already
-       been registered. The solution is likely to involve creating a child
-       image handle rather than re-using rEFInd's own image handle, but
-       this is likely to be tedious to do&mdash;see
-       <tt>/usr/local/UDK2010/MyWorkSpace/MdeModulePkg/Core/Dxe/Image/Image.c</tt>
-       for the reference UEFI implementation. --> </li>
-
-    <li>When launching ELILO in Secure Boot mode, ELILO can't find its
-       configuration file. It's possible that a similar problem exists for
-       other boot loaders, too.</li>
-
-    <li>When setting a resolution higher than about 800x600 (or maybe even
-       640x480) in text mode, the text displayed by rEFInd, and on some
-       systems shells and other programs launched from rEFInd, is
-       restricted to an 80x24-character area in the top-left corner of the
-       screen.</li>
-
     <li>The <a href="http://www.rodsbooks.com/gb-hybrid-efi/">Gigabyte
        Hybrid EFI</a> has a bug that causes the allegedly case-insensitive
        <tt>StriCmp()</tt> function to perform a case-sensitive comparison.
@@ -237,7 +214,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        implementation, and a dismal one at that, so I'm inclined to just
        let it go.</li>
 
-    <li>The Shutdown option works correctly on Macs, but not on UEFI-based
+    <li>The Shutdown option works correctly on Macs, but not on many UEFI-based
        PCs. On such systems, Shutdown reboots the computer. This should be
        fixed.</li>
 
@@ -261,6 +238,13 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        caused by a truncated DevicePath to the shell, which includes the
        shell's pathname but not the device identifier.</li>
 
+    <li>When specifying a volume by name in <tt>dont_scan_dirs</tt>,
+       slashes are converted to backslashes in the specification but not
+       in the actual volume name read from disk. Thus, you can't specify a
+       volume by name if it includes a slash (as in <tt>Fedora
+       /boot</tt>). Workarounds are to rename the volume to omit the slash
+       and to use a filesystem number rather than a volume label.</li>
+
     <li>The code is in need of review to search for memory leaks and
        similar problems.</li>
 
@@ -270,14 +254,6 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
     <ul>
 
-    <li>With the arrival of PCs preloaded with Windows 8 and with Secure
-       Boot enabled, some way to cope is in order. I'm thinking of adding
-       code to limit or prohibit booting of unsigned boot loaders if
-       rEFInd detects that Secure Boot is active, and link with the <a
-       href="http://mjg59.dreamwidth.org/18945.html">Shim</a>
-       pre-bootloader to help handle signing and authentication. I need to
-       research the technical details more, though.</li>
-
     <li>EFI supports network boots. rEFInd doesn't, but it would be nice if
        it would.</li>
 
@@ -300,22 +276,23 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        stanzas override auto-detected boot loader definitions for the same
        boot loader file.</li>
 
+    <li>I have thoughts about creating an EFI configuration tool and
+       information utility&mdash;something to tell you about your hard
+       disks, enable you to manage MOKs, adjust boot loader priority in
+       the NVRAM, and so on. This would be useful in system maintenance
+       and in recovering from boot problems.</li>
+
+    <li>An installation tool for the EFI environment would be useful.
+        A simple EFI shell script might work, but because this function
+       requires access to the <tt>bcfg</tt> command, this would work
+       only from a version 2 shell or if <tt>bcfg</tt> were implemented
+       as a standalone program. Another alternative would be a program
+       written in C.</li>
+
     <li>It should be possible to override specific auto-detected boot
        loader settings&mdash;say, to disable one specific boot loader or
        change its icon.</li>
 
-    <li>A way to read boot options set via <tt>efibootmgr</tt>,
-       <tt>bless</tt>, or similar options from NVRAM to add to the boot
-       set would be useful.</li>
-
-    <li>A way to examine and change the NVRAM settings could be useful.
-       This would enable a CD-based boot of rEFInd to fix a broken disk
-       boot. Perhaps this could be done via a separate tool that could be
-       launched much like the shell or <tt>gptsync</tt>.</li>
-
-    <li>I'd like to give the user the ability to set custom options on a
-       single-boot basis, similar to what's possible in GRUB.</li>
-
     <li>A way to set the color of the font would be useful for theming
         purposes.</li>
 
@@ -327,20 +304,15 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        written in a cross-platform GUI toolkit, so that a single code base
        can be used on any of the major OSes.</li>
 
-    <li>A way to "source" one configuration file from another one would be
-       helpful for some types of configuration scripts. (This would enable
-       overriding options in a secondary file without modifying the
-       default original file, for instance.)</li>
-
     </ul></li> <!-- New features -->
 
-    <li><b>Improvements to the EFI drivers:</b>
+<li><b>Improvements to the EFI drivers:</b>
 
     <ul>
 
-    <li>Drivers for additional filesystems are required. Given the recent
-       shift to ext4fs, that should be the priority; however, other Linux
-       filesystems, UDF, and perhaps others would all be welcome
+    <li>Drivers for additional filesystems are desirable. Given the talk of
+       shifting to Btrfs, that should be the priority; however, other
+       Linux filesystems, UDF, and perhaps others would all be welcome
        additions. Also along these lines, adding drivers for Linux LVM and
        RAID setups would be useful, too.</li>
 
@@ -359,13 +331,21 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        to have the drivers access files (like a Linux loopback mount) is
        desirable.</li>
 
+    <li>When built with the GNU-EFI package, an attempt to load more than
+        one driver on my 32-bit Mac Mini causes the computer to hang. I do
+       <i>not</i> have this problem with 64-bit drivers on my UEFI-based
+       computers. I don't know if this is a 32-bit issue or a Mac issue.
+       This is <i>not</i> relevant if you're using my binary package,
+       since I build it with the TianoCore EDK2, and the drivers built in
+       that way don't exhibit this bug.</li>
+
     </ul></li> <!-- Drivers -->
 
 </ul>
 
 <hr />
 
-<p>copyright &copy; 2012 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2013 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>