Vladimir Serbinenko
8506a64149
* include/grub/misc.h [__APPLE__]: Do not add regparm(0) on x86_64.
...
* grub-core/kern/misc.c (__bzero) [__APPLE__]: New function.
2013-11-11 22:53:30 +01:00
Vladimir Serbinenko
631187be8c
Add missing includes of loader.h.
2013-11-11 02:30:09 +01:00
Vladimir Serbinenko
33690255c5
Fix grub_machine_fini bitrot.
...
Reported by: Glenn Washburn.
2013-11-10 13:33:26 +01:00
Vladimir Serbinenko
9612ebc00e
Add new ports: i386-xen and x86_64-xen. This allows running GRUB in
...
XEN PV environment and load kernels.
2013-11-09 21:29:11 +01:00
Vladimir Serbinenko
c6b755df45
* grub-core/kern/mm.c (grub_real_malloc): Use AND rather than MOD
...
for alignment.
2013-11-08 09:43:26 +01:00
Vladimir Serbinenko
c4f11a2a99
* grub-core/kern/misc.c (grub_divmod64): Don't fallback to
...
simple division on arm and ia64.
2013-11-08 09:07:33 +01:00
Vladimir Serbinenko
e0a7bffa1e
* grub-core/kern/arm/misc.S (__aeabi_unwind_cpp_pr0): Add dummy to
...
link with libgcc.
2013-11-08 07:35:13 +01:00
Vladimir Serbinenko
7a3f4a18d1
* grub-core/kern/powerpc/dl.c: Add missing pragma to silence cast-align
...
warnings.
2013-11-07 19:33:00 +01:00
Vladimir Serbinenko
60375a88fe
Allow compiling with clang (not really supported though).
...
* conf/Makefile.common (CFLAGS_PLATFORM): Don't add -mrtd -mregparm=3
unconditionally.
* configure.ac: Add -no-integrated-as when using clangfor asm files.
Add -mrtd -mregparm=3 on i386 when not using clang.
* grub-core/kern/misc.c (grub_memset): Add volatile when on clang.
2013-11-07 11:44:40 +01:00
Vladimir Serbinenko
dd07e0c4cf
* grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm
...
bindings.
* grub-core/lib/reed_solomon.c: Likewise.
* include/grub/i386/gdb.h: Likewise.
* include/grub/i386/pc/int.h: Likewise.
* include/grub/i386/pc/pxe.h: Likewise.
* include/grub/ieee1275/ieee1275.h: Likewise.
2013-11-07 10:30:32 +01:00
Vladimir Serbinenko
ac319fbc90
* grub-core/kern/parser.c (grub_parser_split_cmdline): Remove nested
...
function.
2013-11-07 02:53:43 +01:00
Vladimir Serbinenko
4bfe934cd1
* grub-core/kern/misc.c (grub_vsnprintf_real): Remove nested functions.
2013-11-07 02:49:50 +01:00
Vladimir Serbinenko
cb72aa1809
Rewrite blocklist functions in order to get progress when
...
reading large extents and decrease amount of blocklist hook calls.
2013-11-01 23:28:03 +01:00
Vladimir Serbinenko
eb03ede014
* grub-core/fs/ext2.c (grub_ext2_read_symlink): Use memcpy rather
...
strncpy.
* grub-core/fs/jfs.c (grub_jfs_lookup_symlink): Likewise.
* grub-core/kern/misc.c (grub_strncpy): Move from here ...
* include/grub/misc.h (grub_strncpy): ... to here. Make inline.
* grub-core/net/net.c (grub_net_addr_to_str): Use COMPILE_TIME_ASSERT
+ strcpy rather than strncpy.
2013-11-01 18:44:46 +01:00
Vladimir Serbinenko
fa9b3dcae2
* grub-core/kern/efi/efi.c (grub_efi_get_filename): Avoid inefficient
...
realloc.
2013-11-01 16:06:51 +01:00
Vladimir Serbinenko
80e8b13ac4
* grub-core/kern/dl.c: Unify section-finding algorithm. Saves 30 bytes
...
on core size.
2013-11-01 15:20:14 +01:00
Vladimir Serbinenko
b61599aca4
* grub-core/kern/mm.c (grub_realloc): Don't copy more data than we have.
2013-11-01 14:39:33 +01:00
Vladimir Serbinenko
5177391ebe
* include/grub/emu/hostdisk.h: Add proper declaration for grub_host_init
...
and grub_hostfs_init.
2013-10-28 13:33:12 +01:00
Vladimir Serbinenko
64db14b0cb
* grub-core/kern/emu/hostdisk.c (grub_util_check_file_presence): Use
...
windows method on other platforms without good stat as well.
2013-10-28 02:17:56 +01:00
Vladimir Serbinenko
442b86de32
Move grub_disk_write out of kernel into disk.mod.
2013-10-27 15:44:55 +01:00
Vladimir Serbinenko
04dea7e6c2
* grub-core/kern/misc.c (grub_vsnprintf_real): Unify int and wchar
...
handling.
2013-10-27 14:47:04 +01:00
Vladimir Serbinenko
a8f15bceea
* grub-core/kern/misc.c (grub_abort): Make static
2013-10-27 14:13:39 +01:00
Vladimir Serbinenko
a60dae7e4e
* grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
...
transform invalid unicode codepoints.
2013-10-27 13:34:46 +01:00
Vladimir Serbinenko
891b713be3
* grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
...
\0 checking.
2013-10-27 13:20:50 +01:00
Vladimir Serbinenko
c81acb7ff3
Consolidate cpuid code.
2013-10-27 00:02:01 +02:00
Vladimir Serbinenko
c1bee64676
Move cpuid code to cpuid.h and TSC code to tsc.c.
2013-10-26 23:39:10 +02:00
Paulo Flabiano Smorigo
84a0e9699f
Add progress module to display load progress of files.
...
* grub-core/lib/progress.c: New file.
* grub-core/Makefile.core.def (progress): New module.
* grub-core/kern/file.c (grub_file_open): File name added.
* (grub_file_read): Progress hook added.
* grub-core/fs/cbfs.c (grub_cbfs_read): Likewise.
* grub-core/fs/cpio_common.c (grub_cpio_read): Likewise.
* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
* include/grub/file.h (struct grub_file): Add progress module
* members.
* include/grub/term.h (struct grub_term_output): Likewise.
* grub-core/osdep/unix/emuconsole.c (grub_console_term_output):
Terminal velocity added.
* grub-core/osdep/windows/emuconsole.c (grub_console_term_output):
* Likewise.
* grub-core/term/arc/console.c (grub_console_term_output): Likewise.
* grub-core/term/efi/console.c (grub_console_term_output): Likewise.
* grub-core/term/gfxterm.c (grub_video_term): Likewise.
* grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output):
* Likewise.
* grub-core/term/i386/pc/console.c (grub_console_term_output):
* Likewise.
* grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise.
* grub-core/term/ieee1275/console.c (grub_console_term_output):
* Likewise.
* grub-core/term/morse.c (grub_audio_term_output): Likewise.
* grub-core/term/serial.c (grub_serial_term_output): Likewise.
* grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise.
* grub-core/term/uboot/console.c (uboot_console_term_output):
* Likewise.
2013-10-22 16:42:20 -02:00
Vladimir 'phcoder' Serbinenko
f8401f760c
* grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
...
\0 checking.
Saves 70 bytes on compressed image.
2013-10-21 14:02:24 +02:00
Vladimir 'phcoder' Serbinenko
ac1feb61d2
* grub-core/kern/misc.c (grub_strtoull): Remove needless *ptr != 0
...
check.
Saves 10 bytes on compressed image.
2013-10-21 13:40:05 +02:00
Vladimir 'phcoder' Serbinenko
00f72e890b
* grub-core/kern/misc.c (grub_isprint): Move to ...
...
* include/grub/misc.h (grub_isprint): ... here. Make inline.
Saves 20 bytes on compressed image due to remving exporting.
2013-10-21 13:25:56 +02:00
Vladimir 'phcoder' Serbinenko
2cc679adae
* grub-core/kern/disk.c (grub_disk_write): Use malloc/free instead of
...
variable length arrays.
Saves 50 bytes on compressed image.
2013-10-21 00:10:34 +02:00
Vladimir 'phcoder' Serbinenko
e89c2d48a9
Lift 255x255 erminal sie restriction to 65535x65535. Also change from
...
bitmasks to small structures of size chosen to fit in registers.
2013-10-19 23:59:32 +02:00
Vladimir 'phcoder' Serbinenko
bbd2b5396b
* grub-core/kern/misc.c (grub_vsnprintf_real): Fix formatting of
...
"(null)" string.
Simplify expressions to save around 256 bytes in kernel.img.
* tests/printf_unit_test.c (printf_test): Add "(null)" tests.
2013-10-19 23:52:09 +02:00
Vladimir 'phcoder' Serbinenko
887c0bb61a
* grub-core/kern/emu/hostdisk.c: Remove few leftover includes.
2013-10-19 16:32:28 +02:00
Vladimir 'phcoder' Serbinenko
fc3182c799
* grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Pass
...
unknown types through.
2013-10-19 01:01:36 +02:00
Vladimir 'phcoder' Serbinenko
3cd910a212
* grub-core/disk/ldm.c: Rename variables and arguments to prevent
...
shadowing.
* grub-core/kern/disk.c: Likewise.
* grub-core/kern/misc.c: Likewise.
* include/grub/parser.h: Likewise.
* include/grub/script_sh.h: Likewise.
* include/grub/zfs/zfs.h: Likewise.
2013-10-18 16:54:57 +02:00
Vladimir 'phcoder' Serbinenko
df1e64c98e
Define grub_util_is_directory/regular/special_file and
...
use OS-dependent versions rather than to rely on stat().
2013-10-15 20:27:58 +02:00
Vladimir 'phcoder' Serbinenko
f4e0adc0f9
Remove leftover references to some of the system headers.
2013-10-15 17:59:54 +02:00
Vladimir 'phcoder' Serbinenko
148f100768
* grub-core/kern/misc.c (grub_vsnprintf_real): Handle %% properly.
...
* tests/printf_unit_test.c (printf_test): Add %% tests.
Reported by: Paulo Flabiano Smorigo.
2013-10-15 15:12:15 +02:00
Vladimir 'phcoder' Serbinenko
f6a81f0aaf
Add wrappers around rename, unlink, mkdir, opendir, readdir and
...
closedir to handle filename charset translation.
2013-10-15 14:11:34 +02:00
Vladimir 'phcoder' Serbinenko
23934da26e
* grub-core/kern/emu/error.c: Removed.
...
* grub-core/Makefile.core.def (kernel): Don't add error.c and progname.c
explicitly as it's already in libgnu.a.
2013-10-15 12:46:06 +02:00
Vladimir 'phcoder' Serbinenko
b73249d260
Make grub_util_fd_seek match behaviour of other grub_util_fd_* and
...
fseeko.
2013-10-14 12:47:09 +02:00
Vladimir 'phcoder' Serbinenko
6de292cb9b
Define GRUB_UTIL_FD_O_* and always use them with grub_util_fd_open.
2013-10-14 02:11:59 +02:00
Vladimir 'phcoder' Serbinenko
21d85db12f
* grub-core/Makefile.core.def: Add osdep/init.c on emu.
...
* grub-core/kern/emu/main.c: Add missing include.
* grub-core/osdep/basic/init.c (grub_util_host_init) [!GRUB_UTIL]:
Don't call grub_util_init_nls.
* grub-core/osdep/windows/init.c (grub_util_host_init) [!GRUB_UTIL]:
Likewise.
2013-10-14 02:06:43 +02:00
Vladimir 'phcoder' Serbinenko
bb338aaf24
Add a wrapper for fopen. On unix-like systems just pass-through. On
...
windows use unicode version.
2013-10-13 20:36:28 +02:00
Vladimir 'phcoder' Serbinenko
ae5540d3d4
Move set_program_name and init_nls to host_init. On windows
...
fix in this fuction console and argument charset as well.
2013-10-13 20:03:42 +02:00
Vladimir 'phcoder' Serbinenko
ff2d4dc41c
* grub-core/kern/arm/dl_helper.c: Use more proper %p for pointer.
2013-10-12 07:50:26 +02:00
Vladimir 'phcoder' Serbinenko
caca1c70cf
Move OS-specific driver configuration to grub_util_fd_open. This
...
moves OS-dependent parts from kern/emu/hostdisk.c to
grub-core/osdep/*/hostdisk.c.
2013-10-09 07:04:25 +02:00
Vladimir 'phcoder' Serbinenko
2112fb3fef
* grub-core/kern/emu/misc.c (fsync) [__MINGW32__]: Move to ...
...
* grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: ... here.
2013-10-08 20:05:24 +02:00
Vladimir 'phcoder' Serbinenko
c2e6f70589
* grub-core/kern/emu/misc.c (grub_get_rtc): Remove (it's a leftover).
2013-10-08 19:53:57 +02:00
Vladimir 'phcoder' Serbinenko
620b52bf47
Couple missed files from previous commits.
2013-10-08 19:17:46 +02:00
Vladimir 'phcoder' Serbinenko
672fa55e81
Move OS-dependent files to grub-core/osdep and document it.
2013-10-08 17:30:22 +02:00
Vladimir 'phcoder' Serbinenko
a5b0365ab2
* grub-core/kern/emu/misc.c (canonicalize_file_name): Move to ...
...
* grub-core/kern/emu/hostdisk_*.c (canonicalize_file_name): ... here.
2013-10-08 17:04:46 +02:00
Vladimir 'phcoder' Serbinenko
29072e994e
* grub-core/kern/arm/misc.S: Remove leftover ARM and THUMB.
2013-10-08 17:03:19 +02:00
Vladimir 'phcoder' Serbinenko
a5f6ade676
* grub-core/kern/arm/efi/startup.S: Remove thumb leftover.
2013-10-07 20:04:54 +02:00
Vladimir 'phcoder' Serbinenko
3b0f3aa2a7
* grub-core/kern/arm/efi/init.c: Rewrite timer fucntion.
2013-10-07 19:23:14 +02:00
Vladimir 'phcoder' Serbinenko
47345010a4
Add AROS hostdisk and getroot routines.
2013-10-04 02:35:03 +02:00
Vladimir 'phcoder' Serbinenko
c7c177f07f
* grub-core/kern/arm/dl.c (do_relocations): Accept and ignore
...
R_ARM_V4BX.
2013-10-03 23:55:06 +02:00
Vladimir 'phcoder' Serbinenko
17c8bc378f
* grub-core/kern/arm/cache.c: Add v5 write-through cache support.
2013-10-03 23:29:57 +02:00
Vladimir 'phcoder' Serbinenko
30b7f58f4e
* grub-core/kern/emu/hostdisk_unix.c: Declare AROS as non-unix.
...
* grub-core/kern/emu/hostfs.c: Likewise.
* util/getroot_unix.c: Likewise.
2013-09-24 19:19:31 +02:00
Vladimir 'phcoder' Serbinenko
bab7b1ebeb
* include/grub/emu/hostdisk.h (GRUB_FD_STAT_IS_FUNTIONAL): New define.
...
Migrate all explicit defines to this new one.
2013-09-24 19:17:24 +02:00
Vladimir 'phcoder' Serbinenko
43b1c99d53
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Use
...
grub_util_fd_strerror when using grub_util_fd_*.
(grub_util_fd_open_device): Likewise.
(grub_util_biosdisk_read): Likewise.
(grub_util_biosdisk_write): Likewise.
* grub-core/kern/emu/hostdisk_unix.c (grub_util_fd_open): New function.
(grub_util_fd_strerror): Likewise.
(grub_util_fd_sync): Likewise.
(grub_util_fd_close): Likewise.
* grub-core/kern/emu/hostdisk_windows.c (grub_util_fd_sync): Likewise.
(grub_util_fd_close): Likewise.
(grub_util_fd_strerror): Likewise.
* include/grub/emu/hostdisk.h (grub_util_fd_close): Make into real
function proto rather than macro.
(grub_util_fd_sync): Likewise.
(grub_util_fd_open): Likewise.
(grub_util_fd_strerror): New proto.
2013-09-24 19:08:34 +02:00
Vladimir 'phcoder' Serbinenko
bf645fda03
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Move struct
...
stat immediately to where it's used.
2013-09-24 18:57:19 +02:00
Vladimir 'phcoder' Serbinenko
9db826e149
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_close): Fix
...
disk closing logic.
2013-09-24 18:36:51 +02:00
Vladimir 'phcoder' Serbinenko
3fff48ab45
* grub-core/kern/emu/hostdisk_windows.c (grub_util_get_windows_path):
...
Always return full path. Fixes a problem with mkrelpath.
2013-09-23 22:49:20 +02:00
Vladimir 'phcoder' Serbinenko
7e518ca84f
Use Winapi on both cygwin and mingw32 to share more code between both.
2013-09-23 11:21:09 +02:00
Vladimir 'phcoder' Serbinenko
3ff4063dd3
* grub-core/kern/emu/hostdisk.c: Disentagle into a series of OS-specific
...
files rather than one file with loads of #if's.
* util/getroot.c: Likewise.
2013-09-22 07:36:17 +02:00
Leif Lindholm
e70d6736ff
* kern/arm/cache.S: Correct access to ilinesz/dlinesz variables.
...
Clean up stack manipulation (sync_caches_armv*)
2013-09-19 09:21:24 +02:00
Vladimir 'phcoder' Serbinenko
386701a8fe
Handle the case of partitioned LVM properly.
...
* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
Stop on meeting LVM, mpath or DMRAID.
(grub_hostdisk_os_dev_to_grub_drive): Canonicalize os device.
(read_device_map): Likewise.
* util/getroot.c (convert_system_partition_to_system_disk): Assume that
device is full disk rather than erroring out on LVM and similar cases.
2013-09-19 08:48:54 +02:00
Vladimir 'phcoder' Serbinenko
1bc783bd39
* grub-core/kern/mm.c (grub_mm_init_region): Skip regions less than
...
4K before the end.
Reported by: Leif Lindholm
2013-09-18 20:23:47 +02:00
Vladimir 'phcoder' Serbinenko
7b780018f5
Handle grub-pe2elf and grub-mkfont for cases when build != host.
...
* Makefile.am (build-grub-mkfont): Don't include gnulib.
(build-grub-gen-asciih): Likewise.
(build-grub-gen-widthspec): Likewise.
* Makefile.util.def (grub-pe2elf): Remove.
* config.h.in [GRUB_BUILD]: Use build rather than host constants.
* configure.ac: Separate tests for build.
Move ./build-grub-pe2elf to grub-core.
Fix typo.
* grub-core/Makefile.am (build-grub-pe2elf): New target.
* grub-core/kern/emu/misc.c (xasprintf): Don't compile if GRUB_BUILD is
defined.
* include/grub/types.h [GRUB_BUILD]: Use build rather than host
constants.
* util/grub-mkfont.c [GRUB_BUILD]: Simplify not to rely on argp.
* util/grub-pe2elf.c: Simplify not to rely on getopt.
* util/misc.c (program_name) [GRUB_BUILD]: Define to static string.
2013-08-22 17:00:59 +02:00
Vladimir 'phcoder' Serbinenko
984cfd8a79
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size): Adapt for
...
mingw32 as well based on grub_util_get_disk_size.
* util/misc.c (grub_util_get_disk_size): Removed. all users switched to
grub_util_get_fd_size.
(sync): Removed.
(fsync): Moved to ...
* grub-core/kern/emu/misc.c (fsync): ... here.
2013-08-22 16:50:12 +02:00
Vladimir 'phcoder' Serbinenko
ed7fbf43c2
* grub-core/kern/emu/mm.c (grub_memalign): Don't define if there is no
...
implementation available to cause compile-time rather than runtime
error.
2013-08-22 16:16:29 +02:00
Ilya Bakulin
0031b22993
* grub-core/kern/emu/hostdisk.c: Add conditionals for OpenBSD.
...
* util/getroot.c: Likewise.
2013-08-21 21:05:01 +02:00
Vladimir 'phcoder' Serbinenko
f0b94ded6d
* grub-core/kern/emu/misc.c (grub_device_mapper_supported): Move from
...
here ...
* grub-core/kern/emu/hostdisk.c (grub_device_mapper_supported): ... to
here.
2013-08-14 17:55:15 +02:00
Vladimir 'phcoder' Serbinenko
7c9d0c39af
Fix handling of build-time grub-bin2h and grub-mkfont when doing
...
full Canadian cross. Tested with build=x86_64, host=arm,
target=ppc-ieee1275.
2013-08-14 10:56:55 +02:00
Vladimir 'phcoder' Serbinenko
2af2353b0a
* grub-core/kern/i386/coreboot/init.c: Fix compilation on
...
i386-multiboot.
2013-08-14 10:43:10 +02:00
Vladimir 'phcoder' Serbinenko
797abd0a23
* grub-core/kern/vga_init.c: Fix compilation on qemu-mips.
...
* grub-core/kern/mips/qemu_mips/init.c: Likewise.
2013-08-14 09:50:57 +02:00
Vladimir 'phcoder' Serbinenko
ae27e4d323
Merge mainline into arm
2013-07-16 18:43:43 +02:00
Vladimir 'phcoder' Serbinenko
3f42504c15
* grub-core/kern/powerpc/ieee1275/startup.S: Handle unaligned bss.
...
Reported by: Paulo Flabiano Smorigo.
2013-07-16 07:41:53 +02:00
Vladimir 'phcoder' Serbinenko
e6930a454d
Enable coreboot information commands even when not loaded as
...
coreboot payload (e.g. when loaded from SeaBIOS-as-payload).
2013-06-16 01:57:55 +02:00
Andrey Borzenkov
63c2984922
* grub-core/kern/corecmd.c (grub_core_cmd_set): Use grub_env_get
...
to fetch values when listing.
2013-06-07 18:25:19 +02:00
Francesco Lavra
d60c9a81ac
Fix ARM cpuid probing
2013-06-07 16:56:24 +02:00
Francesco Lavra
b8578da640
* grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix handling of paths
...
without a device name.
2013-06-07 16:28:13 +02:00
Vladimir 'phcoder' Serbinenko
fc4c4fddf6
Detach optional parts of gfxterm and integrate in with coreboot init.
2013-05-31 00:42:33 +02:00
Vladimir 'phcoder' Serbinenko
470038745c
Fix a bug and stick nearer to the specification, introduce armv6_unified.
2013-05-17 13:05:28 +02:00
Vladimir 'phcoder' Serbinenko
390df92f0b
Detect cache type on runtime rather than compile time
2013-05-17 01:33:22 +02:00
Leif Lindholm
c59fe1d776
Leif's BSS fix
2013-05-16 16:30:41 +02:00
Leif Lindholm
72a21cf09b
Leif's ARMv6 cache support
2013-05-16 16:23:31 +02:00
Vladimir 'phcoder' Serbinenko
5bac5d9ad6
* grub-core/partmap/dfly.c: New partition map.
2013-05-16 16:18:37 +02:00
Vladimir 'phcoder' Serbinenko
1359e4740a
* grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix empty path
...
checking.
Reported by: Francesco Lavra.
2013-05-15 10:11:25 +02:00
Leif Lindholm
854f383c28
Move common function to dl_helper.c
2013-05-11 10:42:11 +02:00
Vladimir 'phcoder' Serbinenko
8e71d87482
merge mainline into arm
2013-05-11 10:24:24 +02:00
Vladimir 'phcoder' Serbinenko
0f7e980b29
Redirect xasprintf to grub_xvasprintf rather than having #ifdef's
...
for vasprintf presence.
2013-05-10 20:57:32 +02:00
Vladimir 'phcoder' Serbinenko
85002bf34a
Agglomerate more mallocs to speed-up gfxterm.
2013-05-04 22:23:23 +02:00
Leif Lindholm
b385e0723b
Leif's API fixes
2013-05-03 15:07:39 +02:00
Leif Lindholm
bb9f92b9b1
Leif's build fixes
2013-05-03 14:41:08 +02:00
Vladimir 'phcoder' Serbinenko
583e5b645c
* include/grub/arc/arc.h: Account for missing "other" peripheral on
...
ARCS. All users updated.
2013-04-30 17:40:31 +02:00
Vladimir 'phcoder' Serbinenko
aa7bcb99df
* grub-core/kern/mips/loongson/init.c: Support halt for loongson 2E.
2013-04-30 17:37:37 +02:00
Vladimir 'phcoder' Serbinenko
96f33fed86
Make PCI init in i386-qemu port more robust.
2013-04-29 15:09:39 +02:00
Vladimir 'phcoder' Serbinenko
0e90dee8e8
* grub-core/kern/mips/arc/init.c: Fix prefix detection.
2013-04-29 11:59:18 +02:00
Vladimir 'phcoder' Serbinenko
7cd0df84f1
New command `nativedisk'.
2013-04-28 15:31:33 +02:00
Vladimir 'phcoder' Serbinenko
178c276419
* grub-core/kern/file.c: Use const char * rather than casting to
...
non-const.
2013-04-28 14:06:57 +02:00
Vladimir 'phcoder' Serbinenko
17f9fd29d3
Implement grub_machine_get_bootlocation for ARC.
2013-04-27 19:12:11 +02:00
Vladimir 'phcoder' Serbinenko
a6393224c4
Make 'make check' work on emu.
2013-04-27 02:00:16 +02:00
Vladimir 'phcoder' Serbinenko
b04b5990df
Add serial on ARC platform.
2013-04-25 22:40:03 +02:00
Vladimir 'phcoder' Serbinenko
cdeb832472
* grub-core/kern/dl.c (grub_dl_resolve_symbols): Handle malloc failure.
2013-04-24 13:58:31 +02:00
Vladimir 'phcoder' Serbinenko
8528c879e3
Move mips-arc link address. Previous link address was chosen
...
in belief that RAM on SGI platforms grows down while in fact it
grows up from an unusual base.
2013-04-24 13:54:17 +02:00
Vladimir 'phcoder' Serbinenko
fe4c3e7e67
* grub-core/kern/mm.c (grub_mm_init_region): Fix condition for
...
detecting too small regions.
2013-04-20 17:39:49 +02:00
Vladimir 'phcoder' Serbinenko
90ec4b7f6c
* grub-core/kern/ieee1275/init.c (grub_claim_heap): Improve handling
...
of GRUB_IEEE1275_FLAG_FORCE_CLAIM.
* grub-core/loader/powerpc/ieee1275/linux.c
(grub_linux_claimmap_iterate): Handle GRUB_IEEE1275_FLAG_FORCE_CLAIM.
2013-04-19 15:27:09 +02:00
Vladimir 'phcoder' Serbinenko
f32555dd93
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
...
Look for /boot-rom as well as /rom/boot-rom.
2013-04-19 15:14:28 +02:00
Vladimir 'phcoder' Serbinenko
aeace7f71c
* grub-core/kern/elfXX.c (grub_elfXX_load): Handle
...
GRUB_ELF_LOAD_FLAGS_30BITS and GRUB_ELF_LOAD_FLAGS_62BITS.
* grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32),
(grub_linux_load64): Mask out 2 high bits.
2013-04-19 15:05:11 +02:00
Vladimir 'phcoder' Serbinenko
cbe57a487b
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_devalias_next): Make
...
source and destination differ.
2013-04-15 00:40:19 +02:00
Vladimir 'phcoder' Serbinenko
87206f2cf1
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
...
Inline name defines used only once.
2013-04-14 16:52:49 +02:00
Vladimir 'phcoder' Serbinenko
c86c39abef
Add uboot net
2013-04-12 16:55:38 +02:00
Vladimir 'phcoder' Serbinenko
28af3d867c
Relocations cleanup
2013-04-12 16:53:58 +02:00
Vladimir 'phcoder' Serbinenko
4e13e84e56
Fix timer units
2013-04-12 16:51:33 +02:00
Vladimir 'phcoder' Serbinenko
b624c94856
Simplify init assembly
2013-04-12 16:50:58 +02:00
Vladimir 'phcoder' Serbinenko
053cfcddf1
Import new gnulib.
2013-04-11 21:12:46 +02:00
Vladimir 'phcoder' Serbinenko
49818a594a
Fix missing PVs if they don't contain "interesting" LV. Closes #38677 .
...
Fix few warining messages and leaks while on it.
2013-04-11 00:08:27 +02:00
Vladimir 'phcoder' Serbinenko
d5e2a158e1
Fix ia64-efi image generation on big-endian machines. Deduplicate
...
some code while on it.
Reported by: Leif Lindholm.
2013-04-09 19:19:19 +02:00
Leif Lindholm
389b31cd71
Initial import of Leif's work
2013-04-07 02:41:07 +02:00
Vladimir 'phcoder' Serbinenko
f75835bdad
Use TSC as a possible time source on i386-ieee1275.
2013-04-04 09:55:44 +02:00
Vladimir 'phcoder' Serbinenko
e75fdee420
* grub-core/kern/efi/mm.c (grub_efi_finish_boot_services):
...
Try terminating EFI services several times due to quirks in some
implementations.
2013-03-26 11:34:56 +01:00
Vladimir 'phcoder' Serbinenko
6a7fb94bfb
Replace the region at 0 from coreboot tables to available in BSD
...
memory map.
2013-03-25 10:23:04 +01:00
Vladimir 'phcoder' Serbinenko
cc19857a2a
New commands cbmemc, lscoreboot, coreboot_boottime to inspect
...
coreboot tables content. Support for cbmemc.
2013-03-20 17:13:31 +01:00
Vladimir 'phcoder' Serbinenko
d745dda77e
Fix USB devices not being detected when requested
...
due to delayed attach.
2013-03-19 20:35:21 +01:00
Vladimir 'phcoder' Serbinenko
e744219bb6
Implement boot time analysis framework.
2013-03-19 20:25:09 +01:00
Vladimir 'phcoder' Serbinenko
5341c0fbfc
Avoid costly 64-bit division in grub_get_time_ms on most platforms.
2013-03-10 17:45:38 +01:00
Vladimir 'phcoder' Serbinenko
774683685f
Lift up core size limits on some platforms. Fix potential memory
...
corruption with big core on small memory systems. Document remaining
limits.
2013-03-07 08:17:24 +01:00
Vladimir 'phcoder' Serbinenko
19ce697dfd
Remove all trampoline support. Add -Wtrampolines when
...
present. Remove symbols used for trampolines to make
link fail if trampolines are present.
2013-03-03 15:57:30 +01:00
Vladimir 'phcoder' Serbinenko
3188131f72
* grub-core/kern/env.c, include/grub/env.h: Change iterator through
...
all vars to a macro. All users updated.
2013-03-03 01:34:27 +01:00
Vladimir 'phcoder' Serbinenko
6e4146c41e
Move to more hookless approach in IEEE1275 devices handling.
2013-03-02 23:51:19 +01:00
Vladimir 'phcoder' Serbinenko
99fcda8a7b
* grub-core/kern/term.c (grub_term_normal_color),
...
(grub_term_highlight_color): Add back lost defaults.
2013-03-02 23:23:51 +01:00
Vladimir 'phcoder' Serbinenko
73bf57e2c8
Make elfload not use hooks. Opt for flags and iterators instead.
2013-03-02 16:45:57 +01:00
Vladimir 'phcoder' Serbinenko
ca9c260868
* grub-core/kern/emu/hostdisk.c (read_device_map): Remove nested
...
function.
2013-03-01 13:46:24 +01:00
Vladimir 'phcoder' Serbinenko
be174e5ef3
* grub-core/kern/main.c (grub_set_prefix_and_root): Strip trailing
...
platform from firmware path.
2013-03-01 10:35:51 +01:00
Vladimir 'phcoder' Serbinenko
005a9c32df
* grub-core/kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate):
...
Fix end of table condition.
2013-02-28 13:16:39 +01:00
Colin Watson
4eb8b75659
Remove nested functions from disk and file read hooks.
...
* include/grub/disk.h (grub_disk_read_hook_t): New type.
(struct grub_disk): Add read_hook_data member.
* include/grub/file.h (struct grub_file): Likewise.
* include/grub/fshelp.h (grub_fshelp_read_file): Add read_hook_data
argument.
Update all callers.
2013-02-27 17:19:15 +01:00
Vladimir 'phcoder' Serbinenko
bc1369732f
Make color variables global instead of it being per-terminal.
2013-01-21 17:53:41 +01:00
Colin Watson
fc524edf65
Remove nested functions from filesystem directory iterators.
...
* include/grub/fs.h (grub_fs_dir_hook_t): New type.
(struct grub_fs.dir): Add hook_data argument.
Update all implementations and callers.
2013-01-21 01:33:46 +00:00
Colin Watson
6c724b85b4
Remove nested functions from ELF iterators.
2013-01-20 15:54:09 +00:00
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
Vladimir 'phcoder' Serbinenko
b78d6c32e3
New terminal outputs using serial: morse and spkmodem.
2013-01-16 20:39:54 +01:00
Colin Watson
09fd6d8293
Remove nested functions from script reading and parsing.
...
* grub-core/kern/parser.c (grub_parser_split_cmdline): Add
getline_data argument, passed to getline.
* grub-core/kern/rescue_parser.c (grub_rescue_parse_line): Add
getline_data argument, passed to grub_parser_split_cmdline.
* grub-core/script/lexer.c (grub_script_lexer_yywrap): Pass
lexerstate->getline_data to lexerstate->getline.
(grub_script_lexer_init): Add getline_data argument, saved in
lexerstate->getline_data.
* grub-core/script/main.c (grub_normal_parse_line): Add getline_data
argument, passed to grub_script_parse.
* grub-core/script/script.c (grub_script_parse): Add getline_data
argument, passed to grub_script_lexer_init.
* include/grub/parser.h (grub_parser_split_cmdline): Update
prototype. Update all callers to pass appropriate getline data.
(struct grub_parser.parse_line): Likewise.
(grub_rescue_parse_line): Likewise.
* include/grub/reader.h (grub_reader_getline_t): Add void *
argument.
* include/grub/script_sh.h (struct grub_lexer_param): Add
getline_data member.
(grub_script_parse): Update prototype. Update all callers to pass
appropriate getline data.
(grub_script_lexer_init): Likewise.
(grub_normal_parse_line): Likewise.
* grub-core/commands/legacycfg.c (legacy_file_getline): Add unused
data argument.
* grub-core/kern/parser.c (grub_parser_execute: getline): Make
static instead of nested. Rename to ...
(grub_parser_execute_getline): ... this.
* grub-core/kern/rescue_reader.c (grub_rescue_read_line): Add unused
data argument.
* grub-core/normal/main.c (read_config_file: getline): Make static
instead of nested. Rename to ...
(read_config_file_getline): ... this.
(grub_normal_read_line): Add unused data argument.
* grub-core/script/execute.c (grub_script_execute_sourcecode:
getline): Make static instead of nested. Rename to ...
(grub_script_execute_sourcecode_getline): ... this.
* util/grub-script-check.c (main: get_config_line): Make static
instead of nested.
2013-01-15 12:03:25 +00:00
Colin Watson
d0d4b8a063
Remove nested functions from memory map iterators.
...
* grub-core/efiemu/mm.c (grub_efiemu_mmap_iterate): Add hook_data
argument, passed to hook.
* grub-core/kern/i386/coreboot/mmap.c
(grub_linuxbios_table_iterate): Likewise.
(grub_machine_mmap_iterate: iterate_linuxbios_table): Make static
instead of nested.
(grub_machine_mmap_iterate): Add hook_data argument.
* grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_iterate):
Add hook_data argument, passed to hook.
* grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/mips/arc/init.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/mips/loongson/init.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/mmap/efi/mmap.c (grub_efi_mmap_iterate): Likewise.
(grub_machine_mmap_iterate): Likewise.
* grub-core/mmap/mmap.c (grub_mmap_iterate): Likewise.
* include/grub/efiemu/efiemu.h (grub_efiemu_mmap_iterate): Update
prototype.
* include/grub/memory.h (grub_memory_hook_t): Add data argument.
Remove NESTED_FUNC_ATTR from here and from all users.
(grub_mmap_iterate): Update prototype.
(grub_efi_mmap_iterate): Update prototype. Update all callers to
pass appropriate hook data.
(grub_machine_mmap_iterate): Likewise.
* grub-core/commands/acpi.c (grub_acpi_create_ebda: find_hook): Make
static instead of nested.
* grub-core/commands/lsmmap.c (grub_cmd_lsmmap: hook): Likewise.
Rename to ...
(lsmmap_hook): ... this.
* grub-core/efiemu/mm.c (grub_efiemu_mmap_init: bounds_hook):
Likewise.
(grub_efiemu_mmap_fill: fill_hook): Likewise.
* grub-core/kern/i386/coreboot/init.c (grub_machine_init:
heap_init): Likewise.
* grub-core/kern/i386/pc/init.c (grub_machine_init: hook): Likewise.
Rename to ...
(mmap_iterate_hook): ... this.
* grub-core/kern/ieee1275/init.c (grub_claim_heap: heap_init):
Likewise.
* grub-core/lib/ieee1275/relocator.c
(grub_relocator_firmware_get_max_events: count): Likewise.
(grub_relocator_firmware_fill_events: fill): Likewise. Rename
to ...
(grub_relocator_firmware_fill_events_iter): ... this.
* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align:
hook): Likewise. Rename to ...
(grub_relocator_alloc_chunk_align_iter): ... this.
* grub-core/loader/i386/bsd.c (generate_e820_mmap: hook): Likewise.
Rename to ...
(generate_e820_mmap_iter): ... this.
* grub-core/loader/i386/linux.c (find_mmap_size: hook): Likewise.
Rename to ...
(count_hook): ... this.
(grub_linux_boot: hook): Likewise. Rename to ...
(grub_linux_boot_mmap_find): ... this.
(grub_linux_boot: hook_fill): Likewise. Rename to ...
(grub_linux_boot_mmap_fill): ... this.
* grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap:
hook): Likewise. Rename to ...
(grub_fill_multiboot_mmap_iter): ... this.
* grub-core/loader/multiboot.c (grub_get_multiboot_mmap_count:
hook): Likewise. Rename to ...
(count_hook): ... this.
* grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap:
hook): Likewise. Rename to ...
(grub_fill_multiboot_mmap_iter): ... this.
* grub-core/loader/powerpc/ieee1275/linux.c
(grub_linux_claimmap_iterate: alloc_mem): Likewise.
* grub-core/loader/sparc64/ieee1275/linux.c (alloc_phys: choose):
Likewise. Rename to ...
(alloc_phys_choose): ... this.
(determine_phys_base: get_physbase): Likewise.
* grub-core/mmap/i386/mmap.c (grub_mmap_malign_and_register:
find_hook): Likewise.
* grub-core/mmap/i386/pc/mmap.c (preboot: fill_hook): Likewise.
(malloc_hook: count_hook): Likewise.
* grub-core/mmap/i386/uppermem.c (grub_mmap_get_lower: hook):
Likewise. Rename to ...
(lower_hook): ... this.
(grub_mmap_get_upper: hook): Likewise. Rename to ...
(upper_hook): ... this.
(grub_mmap_get_post64: hook): Likewise. Rename to ...
(post64_hook): ... this.
* grub-core/mmap/mips/uppermem.c (grub_mmap_get_lower: hook):
Likewise. Rename to ...
(lower_hook): ... this.
(grub_mmap_get_upper: hook): Likewise. Rename to ...
(upper_hook): ... this.
* grub-core/mmap/mmap.c (grub_mmap_iterate: count_hook): Likewise.
(grub_mmap_iterate: fill_hook): Likewise.
(fill_mask): Pass addr and mask within a single struct.
(grub_cmd_badram: hook): Make static instead of nested. Rename
to ...
(badram_iter): ... this.
(grub_cmd_cutmem: hook): Likewise. Rename to ...
(cutmem_iter): ... this.
2013-01-15 12:02:35 +00:00
Vladimir 'phcoder' Serbinenko
22099030ad
* grub-core/kern/emu/hostdisk.c (read_device_map): Explicitly
...
delimit path in strings using quotes.
* util/getroot.c (grub_guess_root_devices): Likewise.
(grub_make_system_path_relative_to_its_root): Likewise.
* util/grub-probe.c (probe): Likewise.
* util/ieee1275/ofpath.c (find_obppath): Likewise.
(xrealpath): Likewise.
2013-01-13 22:45:16 +01: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
5e3b8dcbb5
Import gcrypt public-key cryptography and implement signature checking.
2013-01-11 21:32:42 +01:00
Vladimir 'phcoder' Serbinenko
4dedb13f51
* grub-core/kern/disk.c (grub_disk_write): Fix sector number on 4K
...
sector devices.
2013-01-10 08:09:26 +01:00
Colin Watson
45d26abb40
Fix failing printf test.
...
* grub-core/kern/misc.c (grub_vsnprintf_real): Parse '-', '.', and
'$' in the correct order when collecting type information.
2013-01-02 12:48:31 +00:00
Colin Watson
5c67ea6cd9
Remove several trivially-unnecessary uses of nested functions.
...
* grub-core/commands/i386/pc/sendkey.c
(grub_cmd_sendkey: find_key_code, find_ascii_code): Make static
instead of nested.
* grub-core/commands/legacycfg.c (legacy_file: getline): Likewise.
Rename to ...
(legacy_file_getline): ... this.
* grub-core/commands/loadenv.c (grub_cmd_load_env: set_var):
Likewise.
* grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise.
* grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise. Rename
to ...
(probe_dummy_iter): ... this.
* grub-core/kern/i386/coreboot/mmap.c
(grub_linuxbios_table_iterate: check_signature): Likewise.
* grub-core/kern/parser.c (grub_parser_split_cmdline:
check_varstate): Likewise. Mark inline.
* grub-core/lib/arg.c (find_short: fnd_short): Likewise. Pass
an additional parameter.
(find_long: fnd_long): Likewise. Pass two additional parameters.
* grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise.
* grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise.
* grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook):
Likewise. Rename to ...
(grub_cmos_find_port_iter): ... this.
* grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise.
Rename to ...
(find_rtc_iter): ... this.
* grub-core/normal/menu_entry.c (run): Fold nested editor_getsource
function directly into the function body, since it is only called
once.
2012-12-31 17:31:38 +00:00
Paulo Flabiano Smorigo
64ebd2f4b9
* grub-core/kern/ieee1275/init.c (grub_machine_get_bootlocation): Use
...
dynamic allocation for the bootpath buffer.
2012-12-10 16:23:16 +01:00
Vladimir 'phcoder' Serbinenko
7ddffdadea
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
...
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN on mac.
* grub-core/term/ieee1275/console.c (grub_console_init_lately): Use
ieee1275-nocursor if GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN is set.
* grub-core/term/terminfo.c (grub_terminfo_set_current): Add new type
ieee1275-nocursor.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN.
2012-09-18 11:52:19 +02:00
Peter Jones
c5052c81ab
* grub-core/Makefile.core.def (efifwsetup): New module.
...
* grub-core/commands/efi/efifwsetup.c: New file.
* grub-core/kern/efi/efi.c (grub_efi_set_variable): New function
* include/grub/efi/api.h (GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI):
New define.
* include/grub/efi/efi.h (grub_efi_set_variable): New proto.
2012-09-08 09:40:24 +02:00
Vladimir 'phcoder' Serbinenko
42d0867ff7
* grub-core/kern/mips/arc/init.c (grub_machine_init): Set clock
...
frequency to 150 MHz.
2012-06-26 23:28:23 +02:00
Grégoire Sutre
650cfcfea2
Fix overflow in grub_util_get_fd_size for NetBSD.
2012-06-25 10:09:57 +02:00
Vladimir 'phcoder' Serbinenko
0f92dca7ef
* grub-core/kern/mm.c (grub_free): Fix agglomerating of free regions.
2012-06-23 00:39:10 +02:00
Vladimir 'phcoder' Serbinenko
3988c4a09f
* grub-core/kern/mm.c (get_header_from_pointer): Put a more informative
...
message on double free. Put the value of magic in case of mismatch.
2012-06-22 23:54:43 +02:00
Vladimir 'phcoder' Serbinenko
ed24c31201
Avoid flushing the same line multiple times on loongson.
...
* grub-core/kern/mips/cache.S [GRUB_MACHINE_MIPS_LOONGSON]:
Step in 32 bytes and not 1 byte.
* grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]:
Likewise.
2012-06-22 23:36:33 +02:00
Vladimir 'phcoder' Serbinenko
f35abd8190
* grub-core/kern/main.c (grub_set_prefix_and_root): Fix memory leak.
...
* grub-core/net/drivers/ieee1275/ofnet.c
(grub_ieee1275_net_config_real): Likewise.
2012-06-22 11:51:48 +02:00
Vladimir 'phcoder' Serbinenko
eb6d0dd3a1
* grub-core/kern/main.c (grub_set_prefix_and_root): Skip escaped commas
...
when looking for partition separator.
2012-06-20 23:33:34 +02:00
Vladimir 'phcoder' Serbinenko
3123054474
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
...
Escape commas.
2012-06-20 23:31:59 +02:00
Vladimir 'phcoder' Serbinenko
9f1d654e67
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
...
GRUB_IEEE1275_FLAG_BROKEN_REPEAT.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
GRUB_IEEE1275_FLAG_BROKEN_REPEAT on PowerBook3,3.
* include/grub/terminfo.h (grub_terminfo_input_state) [__powerpc__]:
New fields last_key and last_key_time.
* grub-core/term/terminfo.c (grub_terminfo_getkey): Transform
extended key-esc into extended key-extended key.
2012-06-20 22:19:26 +02:00
Vladimir 'phcoder' Serbinenko
0494408e7e
* include/grub/net.h (grub_net_card): New member txbufsize.
...
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum values
GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN.
* grub-core/net/drivers/efi/efinet.c (grub_efinet_findcards): Use
txbufsize.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Use
compatible property to check for macs. Set
GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN on macs.
* grub-core/net/drivers/ieee1275/ofnet.c (card_open): Don't add suffix
if GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX is set.
(send_card_buffer): Use txbuf.
(grub_ofnet_findcards): Allocate txbuf. Simplify code flow and move
nested function out of the parent while on it.
2012-06-19 11:34:52 +02:00
Vladimir 'phcoder' Serbinenko
970a0a09dd
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Extend
...
filename parsing to non-block devices.
2012-06-19 11:23:13 +02:00
Vladimir 'phcoder' Serbinenko
3e19bf879f
* grub-core/kern/device.c (grub_device_open): Remove dead code.
2012-06-19 11:20:34 +02:00
Vladimir 'phcoder' Serbinenko
c62d1a0c64
* include/grub/elf.h: Rename R_PPC to GRUB_R_PPC to avoid collisions.
...
All users updated.
2012-06-18 21:09:57 +02:00
Vladimir 'phcoder' Serbinenko
61f1d93b09
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Apply
...
PowerMac workaround to Xserves as well.
Information supplied by: Benjamin Herrenschmidt.
2012-06-13 01:38:40 +02:00
Vladimir 'phcoder' Serbinenko
7da036bbcb
Remove non-functional EFI grub_get_rtc. Put a better fatal message
...
than current grub_get_rtc() not implemented when booted with
coreboot without TSC.
* grub-core/Makefile.am: Exclude efi/time.h from kernel headers.
Add machine/time.h to kernel headers on loongson.
* grub-core/Makefile.core.def (kernel): Remove
kern/generic/rtc_get_time_ms.c on qemu-multiboot-coreboot.
* grub-core/kern/efi/efi.c (grub_rtc_get_time_ms): Removed.
(grub_get_rtc): Likewise.
* grub-core/kern/generic/rtc_get_time_ms.c: Include grub/machine/time.h.
* grub-core/kern/i386/coreboot/init.c (grub_get_rtc): Removed.
* grub-core/kern/i386/pc/init.c: Include grub/machine/init.h.
* grub-core/kern/i386/tsc.c (grub_tsc_init)
[!GRUB_MACHINE_PCBIOS && !GRUB_MACHINE_IEEE1275]: Call grub_fatal
rather than installing known non-working time source.
* grub-core/kern/ieee1275/init.c (grub_get_rtc): Removed.
* grub-core/kern/mips/loongson/init.c: Include grub/machine/time.h.
* include/grub/time.h: Don't include machine/time.h.
* include/grub/efi/time.h: Removed.
* include/grub/i386/efi/time.h: Likewise.
* include/grub/i386/ieee1275/time.h: Likewise.
* include/grub/powerpc/ieee1275/time.h: Likewise.
* include/grub/sparc64/ieee1275/time.h: Likewise.
* include/grub/x86_64/efi/time.h: Likewise.
2012-06-11 20:44:38 +02:00
Vladimir 'phcoder' Serbinenko
9e5e66d15e
Use ITC on IA64 rather than broken routine based on daytime.
...
* grub-core/kern/efi/efi.c (grub_rtc_get_time_ms) [__ia64__]: Remove on
ia64.
(grub_get_rtc) [__ia64__]: Likewise.
* grub-core/kern/ia64/efi/init.c (divisor): New variable.
(get_itc): New function.
(grub_rtc_get_time_ms): Likewise.
(grub_machine_init): Calibrate ITC.
* include/grub/efi/time.h (grub_get_rtc), (GRUB_TICKS_PER_SECOND):
Keep only on non-ia64. Don't export since it's broken and used only
if TSC is unavailable.
2012-06-09 10:52:39 +02:00
Vladimir 'phcoder' Serbinenko
558d3a6023
* util/getroot.c (grub_util_get_dm_node_linear_info): Moved from here...
...
* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
to here. New return value start. All users updated.
Recursively scan linear mappings.
* include/grub/emu/hostdisk.h (grub_util_get_dm_node_linear_info): New
proto.
* grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start):
Use grub_util_get_dm_node_linear_info.
* util/getroot.c (convert_system_partition_to_system_disk): Use
grub_util_info rather than grub_dprintf.
(grub_util_biosdisk_get_grub_dev): Add a new grub_util_info.
2012-06-07 14:24:48 +02:00
Vladimir 'phcoder' Serbinenko
004be2cd95
* grub-core/kern/mips/qemu_mips/init.c (grub_exit): Implement.
...
(grub_halt): Likewise.
* grub-core/lib/mips/qemu_mips/reboot.c (grub_reboot): Likewise.
2012-06-06 12:28:25 +02:00
Vladimir 'phcoder' Serbinenko
6d8db94786
* grub-core/kern/parser.c (grub_parser_state_transitions): Handle \t.
...
(grub_parser_cmdline_state): Likewise.
(grub_parser_split_cmdline): Likewise.
2012-06-02 14:39:35 +02:00
Vladimir 'phcoder' Serbinenko
6297e19736
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write) [__linux__]:
...
Fix MBR remapping workaround.
(grub_util_biosdisk_read) [__linux__]: Likewise.
2012-06-02 13:48:44 +02:00
Vladimir 'phcoder' Serbinenko
84e1569ee4
* grub-core/kern/i386/pc/startup.S [__APPLE__]: Add a workaround for
...
objconv bug.
2012-05-29 13:54:33 +02:00
Vladimir 'phcoder' Serbinenko
f7143efe1b
* grub-core/boot/i386/pc/startup_raw.S [__APPLE__]: Add Apple assembly
...
version.
* grub-core/commands/i386/pc/drivemap_int13h.S [__APPLE__]: Likewise.
* grub-core/kern/i386/pc/startup.S [__APPLE__]: Likewise.
* grub-core/lib/i386/relocator16.S [__APPLE__]: Likewise.
* grub-core/lib/i386/relocator_common.S [__APPLE__]: Likewise.
* grub-core/mmap/i386/pc/mmap_helper.S [__APPLE__]: Likewise.
2012-05-28 17:51:57 +02:00
Vladimir 'phcoder' Serbinenko
e6ad0555e4
* grub-core/efiemu/runtime/efiemu.c: Replace APPLE_CC with __APPLE__.
...
* grub-core/kern/misc.c: Likewise.
* grub-core/loader/i386/xnu.c: Likewise.
* include/grub/i386/tsc.h: Likewise.
* include/grub/symbol.h: Likewise.
2012-05-28 17:49:18 +02:00
Vladimir 'phcoder' Serbinenko
f7194551c4
* include/grub/misc.h (memcmp) [__APPLE__]: Mark as regparm 0.
...
(memmove) [__APPLE__]: Likewise.
(memcpy) [__APPLE__]: Likewise.
(memset) [__APPLE__]: Likewise.
* grub-core/kern/misc.c (memcmp) [__APPLE__]: Likewise.
(memmove) [__APPLE__]: Likewise.
(memcpy) [__APPLE__]: Likewise.
(memset) [__APPLE__]: Likewise.
2012-05-28 17:37:18 +02:00
Vladimir 'phcoder' Serbinenko
1d80c62a8f
* grub-core/kern/emu/hostdisk.c (open_device): Set dest->dev to 0 after
...
freeing.
2012-05-27 13:19:09 +02:00
Benjamin Herrenschmidt
dcaaae9dbe
* grub-core/kern/powerpc/dl.c (trampoline_template): Use r12 instead
...
of r0.
2012-05-21 22:40:34 +02:00
Vladimir 'phcoder' Serbinenko
4e46148696
* grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as
...
a bad FS.
2012-05-21 22:02:56 +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
bfb320c644
* grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as
...
a bad FS.
2012-05-13 20:23:02 +02:00
Vladimir 'phcoder' Serbinenko
5eae317511
* grub-core/kern/emu/hostdisk.c (read_device_map): Improve TRANSLATORS
...
comment.
2012-05-12 14:15:45 +02:00
Vladimir 'phcoder' Serbinenko
f1a6254cf1
Flush block cache on adding disk to device map.
...
* grub-core/kern/emu/hostdisk.c (flush_initial_buffer): New function.
(grub_hostdisk_os_dev_to_grub_drive): Call flush_initial_buffer on
adding.
(read_device_map): Likewise.
(open_device): Flush on opening.
2012-05-11 21:03:47 +02:00
Vladimir 'phcoder' Serbinenko
ce41ab7aab
* grub-core/kern/misc.c (grub_strcmp): Use unsigned comparison as
...
per common usage and preffered in several parts of code.
(grub_memcmp): Likewise.
(grub_strncmp): Likewise.
* include/grub/misc.h (grub_strcasecmp): Likewise.
(grub_strncasecmp): Likewise.
* Makefile.util.def (cmp_test): New test.
(grub_script_strcmp): Likewise.
* tests/cmp_unit_test.c: New file.
* tests/grub_script_strcmp.in: Likewise.
* grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Add a comment.
2012-05-04 12:08:22 +02:00
Vladimir 'phcoder' Serbinenko
076aeb5022
* grub-core/kern/fs.c (grub_fs_probe) [GRUB_UTIL]: Add workaround for
...
btrfs.
2012-05-04 00:36:23 +02:00
Vladimir 'phcoder' Serbinenko
5f6ac15e84
* grub-core/kern/emu/hostdisk.c (read_device_map): Skip invalid Fedora
...
entries.
2012-05-04 00:07:55 +02:00
Vladimir 'phcoder' Serbinenko
11858300e9
* grub-core/commands/menuentry.c: Add TRANSLATORS comments.
...
* grub-core/kern/emu/hostdisk.c: Likewise.
2012-05-03 23:43:59 +02:00
Matthew Garrett
9d34bb85da
Suspend broadcom cards in order to stop their DMA.
...
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add pci.h on x86 EFI.
* grub-core/Makefile.core.def (kernel): Add pci.c on x86 EFI.
(pci): Don't build on x86 EFI.
* grub-core/bus/pci.c (grub_pci_find_capability): New function.
* grub-core/kern/efi/mm.c (stop_broadcom) [__i386__ || __x86_64__]:
New function.
(grub_efi_finish_boot_services) [__i386__ || __x86_64__]: Call
stop_broadcom if running on EFI.
* include/grub/pci.h (GRUB_PCI_CLASS_NETWORK): New enum value.
(GRUB_PCI_CAP_POWER_MANAGEMENT): Likewise.
(GRUB_PCI_VENDOR_BROADCOM): Likewise.
(grub_pci_find_capability): New proto.
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2012-05-03 17:26:55 +02:00
Vladimir 'phcoder' Serbinenko
a188012e6c
* grub-core/kern/file.c (grub_file_read): Read nothing if len = 0.
...
Special behaviour for len = 0 to read whole file isn't used anywhere and
can cause buffer ovewrflows in several places.
2012-05-01 15:08:29 +02:00
Vladimir 'phcoder' Serbinenko
e3282399ad
* grub-core/kern/emu/hostdisk.c (read_device_map): Reject non-standard
...
disk names.
* docs/grub.texi: Update device.map parts.
2012-05-01 15:02:34 +02:00
Vladimir 'phcoder' Serbinenko
385f9abbe3
* grub-core/kern/emu/hostdisk.c (map): Make static.
2012-04-23 17:14:48 +02:00
Samuel Thibault
524b5d3a7c
Fix hurd build.
...
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size) [__GNU__]: Do
not define nr variable.
2012-04-22 18:44:19 +02:00
Vladimir 'phcoder' Serbinenko
9a06490c07
Fix kfreebsd compile and behaviour.
...
* grub-core/kern/emu/hostdisk.c (grub_util_follow_gpart_up): Fix
format-security.
* util/getroot.c: Fix wait.h include.
(grub_guess_root_devices): Error if grub_find_device fails.
(grub_util_get_geom_abstraction): Fix shadowing and format-security.
(grub_util_get_dev_abstraction): Likewise.
(grub_util_pull_device): Likewise.
(grub_util_get_grub_dev): Likewise.
* util/lvm.c (grub_util_lvm_isvolume): Likewise.
2012-04-21 16:49:56 +02:00
Vladimir 'phcoder' Serbinenko
ebbd24f3eb
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix opening
...
mode.
2012-04-19 20:35:06 +02:00
Vladimir 'phcoder' Serbinenko
59e2651a06
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix message
...
disunification.
2012-04-18 23:48:52 +02:00
Vladimir 'phcoder' Serbinenko
cb7f944e44
* grub-core/kern/emu/hostdisk.c (open_device): New argument max. All
...
users updated.
(grub_util_biosdisk_read): Handle Linux partitions not exactly
corresponding to GRUB partitions.
(grub_util_biosdisk_write): Likewise.
2012-04-18 23:18:51 +02:00
Vladimir 'phcoder' Serbinenko
e1bd676b4e
Fix tab and wide character handling in editor and menu.
...
* grub-core/normal/charset.c (grub_unicode_aglomerate_comb): Don't
agglomerate control characters with combining marks.
(bidi_line_wrap): Allow break on tab.
(grub_unicode_get_comb_start): New function.
* grub-core/normal/menu_entry.c: Restructure to handle wide characters
and tab correctly.
* grub-core/normal/menu_text.c (print_entry): Replace \n, \r, \b and \e
with a space.
* grub-core/normal/term.c (print_ucs4_terminal): New argument
fixed_tab_size. All users updated.
* include/grub/term.h (GRUB_TERM_TAB_WIDTH): New const.
(grub_term_getcharwidth): Handle \t.
* include/grub/unicode.h (grub_unicode_glyph_dup): Fix allocation
and copy.
2012-03-27 17:07:26 +02:00