No description
8516d2a8e1
This fixes a performance issue when pc & gpt partmap iterators didn't abort iteration even after our hook found what it was looking for (often causing expensive probes of non-existant drives). Some callers relied on previous buggy behaviour, since they would rise an error when their own hooks caused early abortion of its iteration. * kern/device.c (grub_device_open): Improve error message. * disk/lvm.c (grub_lvm_open): Likewise. * disk/raid.c (grub_raid_open): Likewise. * partmap/pc.c (pc_partition_map_iterate): Abort parent iteration when hook requests it, independently of grub_errno. (pc_partition_map_probe): Do not fail when find_func() caused early abortion of pc_partition_map_iterate(). * partmap/gpt.c (gpt_partition_map_iterate): Abort parent iteration when hook requests it, independently of grub_errno. (gpt_partition_map_probe): Do not fail when find_func() caused early abortion of gpt_partition_map_iterate(). * kern/partition.c (grub_partition_iterate): Abort parent iteration when hook requests it, independently of grub_errno. Do not fail when part_map_iterate_hook() caused early abortion of p->iterate(). * util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Do not fail when grub_partition_iterate() returned with non-zero. |
||
---|---|---|
boot/i386/pc | ||
bus | ||
commands | ||
conf | ||
disk | ||
docs | ||
font | ||
fs | ||
hello | ||
include | ||
io | ||
kern | ||
loader | ||
normal | ||
partmap | ||
term | ||
util | ||
video | ||
.cvsignore | ||
aclocal.m4 | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.ac | ||
COPYING | ||
DISTLIST | ||
gencmdlist.sh | ||
gendistlist.sh | ||
genfslist.sh | ||
geninit.sh | ||
geninitheader.sh | ||
genkernsyms.sh.in | ||
genmk.rb | ||
genmoddep.awk | ||
genmodsrc.sh | ||
genpartmaplist.sh | ||
gensymlist.sh.in | ||
INSTALL | ||
install-sh | ||
Makefile.in | ||
mkinstalldirs | ||
NEWS | ||
README | ||
stamp-h.in | ||
THANKS | ||
TODO |
This is GRUB 2, the second version of the GRand Unified Bootloader. GRUB 2 is rewritten from scratch to make GNU GRUB cleaner, safer, more robust, more powerful, and more portable. See the file NEWS for a description of recent changes to GRUB 2. See the file INSTALL for instructions on how to build and install the GRUB 2 data and program files. Please visit the official web page of GRUB 2, for more information. The URL is <http://www.gnu.org/software/grub/grub.html>. For now, there is not much documentation yet. Please look at the GRUB Wiki <http://grub.enbug.org> for testing procedures.