Colin Watson
25239370fd
Remove nested functions from device iterators.
...
* include/grub/arc/arc.h (grub_arc_iterate_devs_hook_t): New type.
(grub_arc_iterate_devs): Add hook_data argument.
* include/grub/ata.h (grub_ata_dev_iterate_hook_t): New type.
(struct grub_ata_dev.iterate): Add hook_data argument.
* include/grub/device.h (grub_device_iterate_hook_t): New type.
(grub_device_iterate): Add hook_data argument.
* include/grub/disk.h (grub_disk_dev_iterate_hook_t): New type.
(struct grub_disk_dev.iterate): Add hook_data argument.
(grub_disk_dev_iterate): Likewise.
* include/grub/gpt_partition.h (grub_gpt_partition_map_iterate):
Likewise.
* include/grub/msdos_partition.h (grub_partition_msdos_iterate):
Likewise.
* include/grub/partition.h (grub_partition_iterate_hook_t): New
type.
(struct grub_partition_map.iterate): Add hook_data argument.
(grub_partition_iterate): Likewise.
* include/grub/scsi.h (grub_scsi_dev_iterate_hook_t): New type.
(struct grub_scsi_dev.iterate): Add hook_data argument.
Update all callers.
2013-01-20 15:52:15 +00:00
Colin Watson
ca3a74469a
Remove nested functions from PCI iterators.
...
* grub-core/bus/pci.c (grub_pci_iterate): Add hook_data argument,
passed to hook. Update all callers to pass appropriate hook data.
* grub-core/bus/emu/pci.c (grub_pci_iterate): Likewise.
* include/grub/pci.h (grub_pci_iteratefunc_t): Add data argument.
Remove NESTED_FUNC_ATTR from here and from all users.
(grub_pci_iterate): Update prototype.
* grub-core/bus/cs5536.c (grub_cs5536_find: hook): Make static
instead of nested. Rename to ...
(grub_cs5536_find_iter): ... this.
* grub-core/kern/efi/mm.c (stop_broadcom: find_card): Likewise.
* grub-core/kern/mips/loongson/init.c (init_pci: set_card):
Likewise.
* grub-core/kern/vga_init.c (grub_qemu_init_cirrus: find_card):
Likewise.
* grub-core/video/bochs.c (grub_video_bochs_setup: find_card):
Likewise.
* grub-core/video/cirrus.c (grub_video_cirrus_setup: find_card):
Likewise.
* grub-core/video/efi_uga.c (find_framebuf: find_card): Likewise.
* grub-core/video/radeon_fuloong2e.c
(grub_video_radeon_fuloong2e_setup: find_card): Likewise.
* grub-core/video/sis315pro.c (grub_video_sis315pro_setup:
find_card): Likewise.
* grub-core/video/sm712.c (grub_video_sm712_setup: find_card):
Likewise.
2013-01-13 01:10:41 +00:00
Vladimir 'phcoder' Serbinenko
10ca8645cc
* grub-core/disk/diskfilter.c (grub_diskfilter_write): Call
...
grub_error properly.
* grub-core/disk/ieee1275/nand.c (grub_nand_write): Likewise.
* grub-core/disk/loopback.c (grub_loopback_write): Likewise.
2013-01-05 15:10:46 +01:00
Vladimir 'phcoder' Serbinenko
ce96d01c93
* grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Strip brackets
...
around device name if necessarry.
2012-12-10 19:15:51 +01:00
Vladimir 'phcoder' Serbinenko
592fd0e4d6
* grub-core/disk/diskfilter.c (free_array) [GRUB_UTIL]: Fix memory leak.
...
* util/getroot.c (grub_find_device): Likewise.
(get_mdadm_uuid): Likewise.
(grub_util_is_imsm): Likewise.
(grub_util_pull_device): Likewise.
* util/grub-probe.c (probe): Likewise.
2012-09-11 07:53:26 +02:00
Vladimir 'phcoder' Serbinenko
64498f2538
* grub-core/disk/ieee1275/ofdisk.c (scan): Check function return value.
...
* grub-core/lib/ieee1275/datetime.c (grub_get_datetime): Likewise.
(grub_set_datetime): Likewise.
2012-09-05 08:56:08 +02:00
Vladimir 'phcoder' Serbinenko
754ad9ebbe
* grub-core/disk/diskfilter.c (scan_disk) [GRUB_UTIL]: Put more
...
informative verbose message.
(read_lv): Handle 64-bit segment size.
2012-06-25 17:54:46 +02:00
Vladimir 'phcoder' Serbinenko
315654c269
* grub-core/disk/lvm.c (grub_lvm_getvalue): Handle 64-bit values.
2012-06-25 17:52:20 +02:00
Vladimir 'phcoder' Serbinenko
36498496a0
* include/grub/diskfilter.h (grub_raid5_recover_func_t): Use proper
...
type for size.
(grub_raid6_recover_func_t): Likewise.
* grub-core/disk/raid5_recover.c (grub_raid5_recover): Likewise.
* grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
2012-06-25 17:36:50 +02:00
Vladimir 'phcoder' Serbinenko
538478d082
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix double
...
increment.
2012-06-21 21:59:52 +02:00
Vladimir 'phcoder' Serbinenko
436575581e
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Escape commas.
2012-06-20 23:37:24 +02:00
Vladimir 'phcoder' Serbinenko
4abde34671
Revert usb-quiesce since it's wrong.
...
* grub-core/disk/ieee1275/ofdisk.c (quiesce): Removed.
(grub_ofdisk_init): Don't do quiesce.
2012-06-13 22:44:45 +02:00
Vladimir 'phcoder' Serbinenko
a176740446
* grub-core/disk/efi/efidisk.c (find_parent_device): Return the parent
...
even if it's used.
(name_devices): Replace #if 0 with #ifdef DEBUG_NAMES.
Skip if parent is unused.
2012-06-09 10:43:24 +02:00
Vladimir 'phcoder' Serbinenko
3d2de9a7ba
* grub-core/disk/efi/efidisk.c (name_devices): Don't make disks
...
out of partitions containing other partitions.
2012-06-07 21:55:55 +02:00
Vladimir 'phcoder' Serbinenko
7bc06a4995
* grub-core/disk/ieee1275/ofdisk.c (quiesce): New function.
...
(grub_ofdisk_fini): Quiesce USB devices.
2012-06-06 19:00:04 +02:00
Vladimir 'phcoder' Serbinenko
5b25873518
* grub-core/disk/pata.c (grub_pata_pio_read)
...
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't byteswap even on mipseb.
(grub_pata_pio_write) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise.
2012-06-06 12:38:49 +02:00
Vladimir 'phcoder' Serbinenko
b7b4ab33ae
* grub-core/commands/hdparm.c (le16_to_char): Always byte-swap strings.
...
(grub_ata_strncpy): Likewise.
(grub_ata_identify): Add missing byteswaps.
2012-06-06 12:22:32 +02:00
Vladimir 'phcoder' Serbinenko
bf293dece0
* grub-core/disk/ieee1275/ofdisk.c (scan): Support vscsi on IBM
...
machines.
Tested by: Paulo Flabiano Smorigo.
Crucial information about API supplied by: Coleen <Last name unknown>.
Reviewed by: Coleen <Last name unknown>.
2012-06-06 02:31:27 +02:00
Vladimir 'phcoder' Serbinenko
5560e9d6e1
* grub-core/disk/ieee1275/ofdisk.c (scan): Don't scan device tree if
...
GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS is set.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS on IBM hardware.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS.
2012-05-13 20:29:23 +02:00
Vladimir 'phcoder' Serbinenko
ee618bd491
Don't scan into non-diskfilter devices having diskfilter names.
...
* grub-core/disk/diskfilter.c (is_valid_diskfilter_name): New function.
(scan_disk): New argument accept_diskfilter. Fix recursion depth
handling.
(scan_disk_hook): New function.
2012-05-01 14:59:30 +02:00
Vladimir 'phcoder' Serbinenko
4a3594c9b1
* grub-core/disk/diskfilter.c (read_segment): Fix the case when disknr
...
falls on Q syndrom.
2012-04-26 12:51:03 +02:00
Bean
1501ac21b0
* grub-core/disk/ata.c (grub_ata_strncpy): Put terminating zero at right
...
place.
2012-04-18 23:21:38 +02:00
Vladimir 'phcoder' Serbinenko
b72d44a11a
Scan mdraid before LVM.
...
* include/grub/diskfilter.h (grub_diskfilter_register): Renamed to ..
(grub_diskfilter_register_front): ... this.
(grub_diskfilter_register_back): New function.
All users of grub_diskfilter_register updated.
2012-04-18 23:11:33 +02:00
Vladimir 'phcoder' Serbinenko
505e41dc36
* grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add
...
TRANSLATORS comment.
(grub_diskfilter_print_partmap): Propagate changing of error into
warning.
2012-04-04 14:33:38 +02:00
Vladimir 'phcoder' Serbinenko
5d1182a66b
* grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Degrade
...
the error when some elements are missing into a warning.
2012-03-28 17:56:45 +02:00
Vladimir 'phcoder' Serbinenko
22e6a774f9
Handle big-endian mdraid.
...
* Makefile.util.def (libgrubkern): Add mdraid_linux_be.c.
* grub-core/Makefile.core.def (mdraid09_be): New module.
* grub-core/disk/mdraid_linux.c: Use grub_md_to_cpu* and grub_cpu_to_md*
rather than grub_le_to_cpu* and grub_cpu_to_le*.
* grub-core/disk/mdraid_linux_be.c: New file.
2012-03-26 16:10:40 +02:00
Vladimir 'phcoder' Serbinenko
1f49313672
* grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add scanning
...
of diskfilter for diskfilter on diskfilter support.
2012-03-10 13:07:39 +01:00
Vladimir 'phcoder' Serbinenko
6a0295e205
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing
...
byte-swap on big-endian.
Reported by: Lennart Sorensen
2012-03-08 18:42:03 +01:00
Vladimir 'phcoder' Serbinenko
49de079bbe
* grub-core/disk/diskfilter.c (is_lv_readable): New argument "easily".
...
All users updated. If easily=1 require raid-5/-6 to be full.
(is_node_readable): Likewise.
(scan_devices): Scan incomplete but readable LVs at the end.
(grub_diskfilter_memberlist): Pull missing devices.
(insert_array): Skip scanning until device is complete or scan is
done otherwise.
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix wrong
check.
* include/grub/diskfilter.h (grub_diskfilter_lv): New member scanned.
* util/raid.c (grub_util_raid_getmembers): Handle "removed" disks.
2012-03-04 01:33:09 +01:00
Vladimir 'phcoder' Serbinenko
8f95d002fe
* grub-core/commands/date.c (GRUB_MOD_INIT): Remove non-uniform
...
"Command for ...".
* grub-core/commands/hdparm.c (options): Use "Display" rather than
"Check" since we don't check anything.
* grub-core/commands/i386/cpuid.c (options): Clarify that long mode
is 64-bit one.
* grub-core/commands/search_wrap.c (options): Clarify the conditions.
* grub-core/disk/geli.c (grub_md_sha256_real): Fix typo.
(grub_md_sha512_real): Likewise.
2012-03-03 13:09:14 +01:00
Vladimir 'phcoder' Serbinenko
40211ab884
* grub-core/commands/acpihalt.c: Add TRANSLATORS comments.
...
* grub-core/commands/keystatus.c: Likewise.
* grub-core/commands/loadenv.c: Likewise.
* grub-core/commands/probe.c: Likewise.
* grub-core/commands/regexp.c: Likewise.
* grub-core/commands/true.c: Likewise.
* grub-core/commands/videoinfo.c: Likewise.
* grub-core/disk/cryptodisk.c: Likewise.
* grub-core/disk/ldm.c: Likewise.
* grub-core/disk/loopback.c: Likewise.
* grub-core/disk/luks.c: Likewise.
* grub-core/fs/zfs/zfsinfo.c: Likewise.
* grub-core/kern/disk.c: Likewise.
* grub-core/kern/emu/hostdisk.c: Likewise.
2012-03-03 12:59:28 +01:00
Vladimir 'phcoder' Serbinenko
a121c9648e
Use the common size routine in hostfs so we can read disks as well.
...
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Rename to ..
(grub_util_get_fd_size): ... this. Return size in bytes.
All users updated.
* grub-core/kern/emu/hostfs.c (grub_hostfs_open): Use
grub_util_get_fd_size.
2012-02-29 15:23:31 +01:00
Vladimir 'phcoder' Serbinenko
32eb6ee157
* grub-core/disk/diskfilter.c (read_segment): Initialise err
...
before loops.
2012-02-29 14:57:59 +01:00
Vladimir 'phcoder' Serbinenko
8cb17de77b
* grub-core/disk/ldm.c (make_vg): Init part.name.
...
(grub_ldm_detect): Silence spurious warning.
(grub_util_is_ldm): Likewise.
2012-02-29 14:55:09 +01:00
Vladimir 'phcoder' Serbinenko
ebd17d6f51
* grub-core/disk/pata.c (grub_pata_readwrite): Fix ATAPI protocol error.
2012-02-29 12:45:32 +01:00
Colin Watson
e3c78337c3
* include/grub/partition.h (grub_partition_map): Change prototype of
...
embed to take a maximum value for nsectors.
* include/grub/emu/hostdisk.h (grub_util_ldm_embed): Likewise.
* include/grub/fs.h (grub_fs): Likewise.
* grub-core/partmap/msdos.c (embed_signatures): New array.
(pc_partition_map_embed): Check for and avoid sectors matching any
of the signatures in embed_signatures, up to max_nsectors.
* grub-core/partmap/gpt.c (gpt_partition_map_embed): Restrict
returned sector map to max_nsectors.
* grub-core/disk/ldm.c (grub_util_ldm_embed): Likewise.
* grub-core/fs/btrfs.c (grub_btrfs_embed): Likewise.
* grub-core/fs/zfs/zfs.c (grub_zfs_embed): Likewise.
* util/grub-setup.c (setup): Allow for the embedding area being
split into multiple blocklists. Tell dest_partmap->embed the
maximum number of sectors we care about.
2012-02-27 22:25:39 +01:00
Vladimir 'phcoder' Serbinenko
fb312cd9da
* grub-core/disk/diskfilter.c (grub_diskfilter_iterate): Fix off-by-one
...
error.
2012-02-27 11:39:15 +01:00
Vladimir 'phcoder' Serbinenko
1e9a9a3faf
* grub-core/disk/diskfilter.c (insert_array): Choose the smallest
...
device.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Reject too
small devices.
2012-02-27 00:46:08 +01:00
Vladimir 'phcoder' Serbinenko
d5534665ff
Make nand a prefix for nand devices.
...
* grub-core/disk/ieee1275/nand.c (grub_nand_open): Use prefix nand.
2012-02-26 23:59:00 +01:00
Vladimir 'phcoder' Serbinenko
50159add1e
* grub-core/disk/diskfilter.c (grub_diskfilter_open): Remove useless
...
grub_dprintf.
2012-02-26 23:39:21 +01:00
Vladimir 'phcoder' Serbinenko
b2582b84f2
* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Remove useless
...
grub_errors.
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Simplify by
not reloading whole superblock but only the part which is really needed.
Remove useless grub_errors.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Remove useless
grub_errors.
2012-02-26 23:36:12 +01:00
Vladimir 'phcoder' Serbinenko
6cf1363b8f
* grub-core/disk/diskfilter.c (insert_array): Remove scanner_name
...
argument since it can be deduced from diskfilter. All users updated.
2012-02-26 22:53:21 +01:00
Vladimir 'phcoder' Serbinenko
67093bc0ed
Another round of string clarification and adding TRANSLATORS comments.
2012-02-26 17:28:05 +01:00
Vladimir 'phcoder' Serbinenko
0ec820904e
* grub-core/disk/ieee1275/ofdisk.c (scan): Fix improper use of device
...
name as if it was an alias.
2012-02-26 16:51:25 +01:00
Vladimir 'phcoder' Serbinenko
4e27343fb0
* conf/Makefile.common (CFLAGS_GNULIB): Add
...
-Wno-unsafe-loop-optimizations.
* configure.ac: Remove -Wmissing-declarations and -Wmissing-prototypes
on tools.
* grub-core/commands/legacycfg.c: Add pragma to skip
-Wunsafe-loop-optimizations.
(check_password_md5_real): Fix loop counter type.
* grub-core/commands/testload.c (grub_cmd_testload): Fix over the EOF
reading.
* grub-core/disk/ldm.c (grub_util_get_ldm): Fix logic error.
* grub-core/fs/zfs/zfs_sha256.c (zio_checksum_SHA256): Add safety
loop condition.
* grub-core/io/gzio.c: Add pragma to skip -Wunsafe-loop-optimizations.
* grub-core/lib/LzmaEnc.c (GetOptimum): Avoid possible infinite loop.
* grub-core/net/net.c (grub_net_route_address): Add safety loop
condition.
* grub-core/normal/charset.c (bidi_line_wrap): Likewise.
* grub-core/normal/cmdline.c (grub_set_history): Fix loop types and
avoid possible infinite loops.
* grub-core/script/parser.y: Add pragma to skip -Wmissing-declarations
and -Wunsafe-loop-optimizations.
* grub-core/script/yylex.l: Likewise.
* util/grub-mkfont.c: Add pragma to skip -Wunsafe-loop-optimizations.
(print_glyphs): Avoid infinite loops.
* util/grub-mkimage.c (compress_kernel_xz): Fix format security.
2012-02-24 12:30:32 +01:00
Vladimir 'phcoder' Serbinenko
d61386e21d
Improve string. Gettextize.
2012-02-12 15:25:25 +01:00
Vladimir 'phcoder' Serbinenko
4786a90fee
* grub-core/disk/diskfilter.c (grub_diskfilter_print_partmap)
...
[GRUB_UTIL]: New function.
(insert_array) [GRUB_UTIL]: Store partmaps.
* include/grub/diskfilter.h (grub_diskfilter_pv) [GRUB_UTIL]: New member
partmaps.
(grub_diskfilter_print_partmap) [GRUB_UTIL]: New proto.
* util/grub-probe.c (probe_partmap): Call grub_diskfilter_print_partmap.
(probe_abstraction): Print diskfilter and not raid.
Reported by: Lennart Sorensen
2012-02-11 11:57:47 +01:00
Vladimir 'phcoder' Serbinenko
7e94d044ad
* grub-core/disk/geli.c (grub_md_sha256_real): Respect format security.
...
(grub_md_sha512_real): Likewise.
(grub_util_get_geli_uuid): Likewise.
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Likewise.
(grub_util_biosdisk_open): Fix format specification.
Respect format security.
* grub-core/kern/emu/misc.c (xmalloc): Respect format security.
(xrealloc): Likewise.
(xasprintf): Likewise.
2012-02-10 14:01:53 +01:00
Vladimir 'phcoder' Serbinenko
6fa679671e
* grub-core/disk/ldm.c (grub_util_get_ldm): Remove unused variables.
...
(grub_util_ldm_embed): Likewise.
2012-02-10 12:36:02 +01:00
Vladimir 'phcoder' Serbinenko
7b5784d4d3
* grub-core/disk/cryptodisk.c (grub_cryptodisk_endecrypt): Rename
...
argument from encrypt to do_encrypt to avoid shadowing.
2012-02-10 12:11:50 +01:00