Vladimir Serbinenko
25a7863d77
Add Yeeloong 3A reboot and halt.
2013-12-17 22:53:18 +01:00
Vladimir Serbinenko
184c61ddce
Add Radeon Yeeloong 3A support.
2013-12-17 22:52:04 +01:00
Vladimir Serbinenko
fd4650a556
Add bonito 3A support.
2013-12-17 22:49:27 +01:00
Vladimir Serbinenko
3e88fbfa6e
* grub-core/loader/machoXX.c: Fix compilation on non-i386.
2013-12-17 22:44:46 +01:00
Vladimir Serbinenko
1123bed944
* grub-core/loader/i386/xen_fileXX.c: Silence cast-align.
2013-12-17 20:47:31 +01:00
Vladimir Serbinenko
ebda165f3a
* grub-core/loader/macho.c: Fix compilation on non-i386.
2013-12-17 20:46:33 +01:00
Vladimir Serbinenko
fe7c20bf9e
Add missing format_arg attribute to check that printf with translated
...
messages has proper arguments.
2013-12-17 16:42:01 +01:00
Vladimir Serbinenko
f4dab3d1ac
Use grub_xasprintf to format translated error messages containing
...
64-bit quantity.
2013-12-17 16:41:09 +01:00
Jon McCune
24d5934daa
Fix double-free introduced by commit 33d02a42d6
...
To reproduce the problem, make sure you have a GPG public key available, build and install GRUB:
grub-install --debug --debug-image="all" --pubkey=/boot/pubkey.gpg --modules="serial terminfo gzio search search_label search_fs_uuid search_fs_file linux vbe video_fb video mmap relocator verify gcry_rsa gcry_dsa gcry_sha256 hashsum gcry_sha1 mpi echo loadenv boottime" /dev/sda
Sign all the files in /boot/grub/* and reboot.
'make check' results identical before and after this change.
TESTED: In a QEMU VM using an i386 target.
2013-12-17 07:32:07 -08:00
Vladimir Serbinenko
d6c2782a90
Unify message for unsupported relocation.
2013-12-17 16:17:46 +01:00
Vladimir Serbinenko
50d2e9596f
Mark miscompile error for translation.
2013-12-17 16:05:39 +01:00
Vladimir Serbinenko
18e76955be
Use %I64 and not %ll when using OS printf if compiling for windows.
2013-12-17 16:04:47 +01:00
Vladimir Serbinenko
d218ec9738
Update Mac code to match new register_efi prototype.
2013-12-17 16:02:36 +01:00
Vladimir Serbinenko
b8765fa082
Implement better integration with Mac firmware.
2013-12-17 15:21:02 +01:00
Vladimir Serbinenko
1f032575bb
* grub-core/loader/multiboot_mbi2.c: Implement special value for load_addr.
2013-12-17 15:14:50 +01:00
Vladimir Serbinenko
1482975549
Include serial module in default_payload.elf.
2013-12-17 14:52:36 +01:00
Vladimir Serbinenko
d45067a290
Add explicit thumb interwork bx in asm files.
...
Shouldn't matter for armv >= 5 but let's be safe.
2013-12-17 14:50:44 +01:00
Vladimir Serbinenko
3086175489
Implement Truecrypt ISO loader.
2013-12-17 14:45:46 +01:00
Vladimir Serbinenko
e14d409b6f
* grub-core/lib/arg.c: Ensure at least a single space between commands.
2013-12-17 14:42:02 +01:00
Vladimir Serbinenko
ec824e0f2a
Implement grub_file tool and use it to implement generating of config
...
in separate root.
2013-12-17 14:39:48 +01:00
Vladimir Serbinenko
296f76068d
Change to v1 xen grants.
2013-12-17 13:55:47 +01:00
Vladimir Serbinenko
2c384f1e6e
* grub-core/lib/i386/xen/relocator.S: Fix hypercall ABI violation.
...
GRUB relied on %ebx being preserved across hypercall which isn't true.
2013-12-17 13:40:52 +01:00
Vladimir Serbinenko
d16ff5897f
* grub-core/lib/x86_64/xen/relocator.S: Fix hypercall ABI violation.
...
GRUB relied on %rdi being preserved across hypercall which isn't true.
2013-12-17 13:19:58 +01:00
Vladimir Serbinenko
71669c3b76
Implement XEN VFB support.
2013-12-17 13:07:26 +01:00
Vladimir Serbinenko
60d1dd3d72
Remove grub_bios_interrupt on coreboot.
...
It's not used currently and cannot be used safely currently.
2013-12-17 12:54:11 +01:00
Vladimir Serbinenko
a82010503e
Update exclude.pot and mark few strings for translation.
2013-12-17 01:18:09 +01:00
Vladimir Serbinenko
6cc8959712
* util/grub-mkrescue.c: Fix incorrect file usage in fallback code.
...
Reported by: Jon McCune
2013-12-17 00:33:55 +01:00
Vladimir Serbinenko
dd05b91f6b
Merge branch 'master' of git.sv.gnu.org:/srv/git/grub
2013-12-16 20:33:19 +01:00
Vladimir Serbinenko
2a123f4c58
* grub-core/tests/sleep_test.c: Silence spurious warning.
2013-12-16 20:32:43 +01:00
Andrey Borzenkov
840a2c0592
add verbose information to linux platform check
...
As suggested by Vladimir Serbienko, add additional verbose output to inform
why we selected this specific platform.
2013-12-16 23:17:40 +04:00
Andrey Borzenkov
35248820ea
ChangeLog for previous two commits.
2013-12-16 22:56:48 +04:00
Vladimir Serbinenko
316c8d9a18
Make grub_xen_hypercall on i386 cdecl rather than stdcall to avoid
...
linker trying to "fixup" the code.
2013-12-16 18:10:50 +01:00
Vladimir Serbinenko
8fcce8d50f
* grub-core/kern/x86_64/xen/startup.S: Align stack.
2013-12-16 17:44:10 +01:00
Vladimir Serbinenko
6f1f6a0c82
Add support for converting PE+ to Elf64.
2013-12-16 15:30:50 +01:00
Vladimir Serbinenko
66a07ce2f8
* grub-core/commands/minicmd.c (grub_mini_cmd_dump): Handle LLP case.
2013-12-16 15:28:07 +01:00
Vladimir Serbinenko
cc6fb517de
Remove practice of assigning random const pointers to device id.
...
This is not required as cache code already checks driver id as well.
2013-12-16 14:49:11 +01:00
Vladimir Serbinenko
f009f07c95
* include/grub/x86_64/types.h: Define sizeof (long) as 4 when compiling
...
with mingw.
2013-12-16 14:41:12 +01:00
Vladimir Serbinenko
9fdec226ff
* include/grub/efi/api.h: Don't use call wrappers when compiled with
...
mingw or cygwin as API already matches.
2013-12-16 14:39:06 +01:00
Vladimir Serbinenko
d87cb3ae3c
* grub-core/lib/posix_wrap/errno.h: Undefine errno before redefining.
2013-12-16 14:36:48 +01:00
Vladimir Serbinenko
3e38c31a4b
* include/grub/efi/api.h: Define (u)intn_t based on pointer size and
...
not on long.
2013-12-16 14:34:23 +01:00
Vladimir Serbinenko
f4171ebd34
Handle X86_64_PC64 relocation.
...
Those are generated by some cygwin compilers.
2013-12-16 14:24:19 +01:00
Vladimir Serbinenko
252a289cb3
Determine the need for mingw-related stubs at compile time rather than
...
using not very significant $target_os.
2013-12-16 14:18:15 +01:00
Vladimir Serbinenko
fadddc260a
Merge branch 'master' of git.sv.gnu.org:/srv/git/grub
...
Conflicts:
ChangeLog
2013-12-16 14:15:37 +01:00
Vladimir Serbinenko
23d2abc33c
* grub-core/genmod.sh.in: Strip before converting to ELF as strip
...
may not work with ELF.
2013-12-16 13:18:48 +01:00
Vladimir Serbinenko
4f979ccbf1
Use unix functions for temporary files and special files on cygwin.
2013-12-16 13:16:37 +01:00
Vladimir Serbinenko
37378f748a
Define functions explicitly rather than using --defsym in tests
...
whenever possible. Respect locality in remaining cases.
2013-12-16 13:07:28 +01:00
Vladimir Serbinenko
6a09d83e12
* grub-core/genmoddep.awk: Remove explicit getline < /dev/stdin.
2013-12-16 13:02:19 +01:00
Andrey Borzenkov
e477187bf4
small fixes for Windows EFI install code
...
Fix potential crash caused by signed vs. unsigned comparison. Negative
length compares as very large unsigned number causing subsequent NULL access.
Make exhaustive search for all BootNNNN variables to find one matching
requested efi_distributor.
2013-12-15 22:00:15 +04:00
Ian Campbell
80b865bdc8
* grub-core/kern/uboot/init.c: Fix units of uboot timer.
2013-12-15 17:59:40 +01:00
Vladimir Serbinenko
04b0285701
New functional test for sleep function.
...
This test allows to check sleep without qemu. Keep qemu version as
well as functional test won't notice if all clocks are going too fast
or too slow.
2013-12-15 17:57:58 +01:00
Vladimir Serbinenko
39711101fd
Add explicit sysv_abi on amd64 asm routines.
2013-12-15 14:48:42 +01:00
Vladimir Serbinenko
d99af4f0e8
* grub-core/commands/efi/lsefisystab.c: Use %lld to show num_table_entries.
2013-12-15 14:42:19 +01:00
Vladimir Serbinenko
7104368446
* include/grub/test.h: Use gnu_printf rather than printf on GRUB
...
functions.
2013-12-15 14:39:21 +01:00
Vladimir Serbinenko
111bf5db8b
* grub-core/loader/i386/linux.c: Use grub_addr_t rather than long when
...
appropriate.
2013-12-15 14:37:12 +01:00
Vladimir Serbinenko
24ca71c93b
* grub-core/loader/i386/linux.c: Use %p rather than %lx for pointers.
2013-12-15 14:35:18 +01:00
Vladimir Serbinenko
48ba5c0c86
* grub-core/kern/elfXX.c: Use grub_addr_t rather than long when
...
appropriate.
2013-12-15 14:33:22 +01:00
Vladimir Serbinenko
8ae6704517
* grub-core/disk/loopback.c: Use sequential IDs rather than pointer.
...
In case of quick removal of loopback and adding another one it may
get same ID, confusing the cache system.
2013-12-15 14:31:21 +01:00
Vladimir Serbinenko
ed55931073
* grub-core/commands/acpi.c: Use grub_addr_t rather than long when
...
appropriate.
2013-12-15 14:27:04 +01:00
Vladimir Serbinenko
8fa2627942
* grub-core/kern/i386/coreboot/cbtable.c: Use char * arithmetic rather
...
than converting to long.
2013-12-15 14:24:34 +01:00
Vladimir Serbinenko
6f5f3337d8
* grub-core/disk/cryptodisk.c: Rename "n" to "last_cryptodisk_id".
2013-12-15 14:21:14 +01:00
Vladimir Serbinenko
e7c418c58f
* util/grub-mkimagexx.c (relocate_addresses): Display offset rather
...
than almost useless pointer.
2013-12-15 14:18:30 +01:00
Vladimir Serbinenko
7e47e27bd8
Add gcc_struct to all packed structures when compiling with mingw.
...
Just "packed" doesn't always pack the way we expect.
2013-12-15 14:14:30 +01:00
Vladimir Serbinenko
ae8159b9ca
* include/grub/i386/coreboot/lbio.h: Add missing attribute (packed).
2013-12-15 00:56:11 +01:00
Vladimir Serbinenko
74e7ad6604
* util/grub-pe2elf.c: Fix handling of .bss.
2013-12-15 00:55:17 +01:00
Vladimir Serbinenko
814442ba69
Implement windows flavour of EFI install routines.
2013-12-14 23:35:58 +01:00
Vladimir Serbinenko
5f5bb10748
* conf/Makefile.extra-dist: Adjust path to conf/i386-cygwin-img-ld.sc.
2013-12-14 23:33:05 +01:00
Vladimir Serbinenko
a24725cc6e
Change grub_install_register_efi interface to pass GRUB device.
...
This allows grub_install_register_efi to request partition info
directly.
2013-12-14 23:31:56 +01:00
Vladimir Serbinenko
38933cee85
Workaround cygwin bug when using \\?\Volume{GUID} syntax.
2013-12-14 23:28:34 +01:00
Vladimir Serbinenko
6d3cfe5063
Do not use TCHAR string functions as they are not available on cygwin.
2013-12-14 23:25:30 +01:00
Vladimir Serbinenko
4bad23a15f
Workaround windows bug when querying EFI system partition parameters.
2013-12-14 23:23:11 +01:00
Vladimir Serbinenko
6a5fe1328b
* grub-core/kern/i386/qemu/init.c (resource): Decrease struct size
...
by using bitfields.
2013-12-14 23:15:47 +01:00
Vladimir Serbinenko
bc8fcf4bd3
* grub-core/boot/i386/qemu/boot.S: Add missing EXT_C.
2013-12-14 23:13:42 +01:00
Vladimir Serbinenko
60b967be7e
Make i386-* other than i386-pc compileable under cygwin.
2013-12-14 23:12:53 +01:00
Vladimir Serbinenko
6dc3337774
Fix definition of grub_efi_hard_drive_device_path. Take care that
...
existing code would work even if by some reason bogus definition is
used by EFI implementations.
2013-12-14 22:04:02 +01:00
Vladimir Serbinenko
f2c6ff15e5
* grub-core/osdep/windows/hostdisk.c: Fix cygwin compilation.
2013-12-14 21:55:44 +01:00
Vladimir Serbinenko
6b8a162516
* grub-core/osdep/windows/blocklist.c: Add missing cast in printf
...
invocation.
2013-12-14 21:54:37 +01:00
Vladimir Serbinenko
954c723acc
* util/config.c: Remove trailing newline from distributor in simple
...
parsing.
2013-12-14 21:50:36 +01:00
Vladimir Serbinenko
607a39f9f0
* include/grub/efi/api.h: Rename protocol and interface to avoid
...
conflict.
2013-12-14 21:48:46 +01:00
Vladimir Serbinenko
df6fedcab1
* .gitignore: Add .exe variants. Add missing files. Remove few outdated
...
entries.
2013-12-14 21:45:17 +01:00
Vladimir Serbinenko
f684d7e1a9
* grub-core/osdep/exec.c: Use unix version on cygwin.
2013-12-14 21:39:03 +01:00
Vladimir Serbinenko
0df77d793c
Implement multiboot2 EFI BS specification.
2013-12-13 12:56:14 +01:00
Vladimir Serbinenko
dafff9ce44
* grub-core/normal/charset.c: Fix premature line wrap and crash.
...
Crash happened only in some cases like a string starting at the
half of the screen of same length.
2013-12-11 17:06:00 +01:00
Vladimir Serbinenko
6644d9733d
* include/grub/efiemu/efiemu.h: Sync configuration table declaration
...
with EFI counterpart.
2013-12-11 16:16:21 +01:00
Vladimir Serbinenko
44bbfa33b8
Propagate the EFI commits to x86-efi specific parts.
2013-12-11 16:11:17 +01:00
Vladimir Serbinenko
3e3dff249f
* grub-core/commands/efi/lssal.c: Fix terminating condition.
2013-12-11 15:59:12 +01:00
Vladimir Serbinenko
316dda716c
Introduce grub_efi_packed_guid and use it where alignment is not
...
guaranteed.
2013-12-11 15:57:08 +01:00
Vladimir Serbinenko
219401b8b9
* include/grub/efi/api.h (grub_efi_device_path): Define length as
...
unaligned u16 rather than u8[2].
2013-12-11 15:54:01 +01:00
Vladimir Serbinenko
30d0053799
* grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Add checks
...
for relocation range.
2013-12-11 11:29:35 +01:00
Vladimir Serbinenko
979742bc7e
* grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Handle
...
non-function pcrel21b relocation. It happens with .text.unlikely
section.
2013-12-11 11:28:48 +01:00
Leif Lindholm
16c8f78513
efi: mm: make MAX_USABLE_ADDRESS platform-specific
2013-12-10 18:05:29 +00:00
Leif Lindholm
3f1423e789
* grub-core/lib/fdt.c: change memcpy => grub_memcpy
2013-12-10 16:51:10 +00:00
Vladimir Serbinenko
0341da6019
Merge branch 'master' of git.sv.gnu.org:/srv/git/grub
2013-12-10 09:24:37 +01:00
Jon McCune
dd73313cba
Add --no-rs-codes flag to optionally disable reed-solomon codes in grub-install and grub-bios-setup for x86 BIOS targets.
2013-12-09 16:52:12 -08:00
Vladimir Serbinenko
eaf01c25fe
Add missing compile and link options for sparc64-emu.
2013-12-10 00:05:28 +01:00
Vladimir Serbinenko
7a148da6dd
Implement sparc64 trampolines (needed for sparc64-emu).
2013-12-10 00:01:27 +01:00
Vladimir Serbinenko
21eee750b7
* grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Check
...
range of R_SPARC_HI22.
Implement R_SPARC_LM22.
2013-12-09 15:51:12 +01:00
Vladimir Serbinenko
7b54b62682
* grub-core/kern/powerpc/dl_helper.c (grub_arch_dl_get_tramp_got_size):
...
Do not explicitly check for symbol table as it's already checked in
platform-independent layer.
2013-12-09 15:43:27 +01:00
Vladimir Serbinenko
9a945e2a24
* grub-core/kern/emu/cache.c [__ia64__]: Use our cache cleaning routine
...
on ia64 as __clear_cache is a dummy on ia64.
2013-12-09 14:24:56 +01:00
Vladimir Serbinenko
4f4ea1b449
* grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
...
Do not explicitly check for symbol table as it's already checked in
platform-independent layer.
2013-12-09 14:22:31 +01:00
Colin Watson
fe4ae21331
* util/grub-mkconfig.in: Add missing newline to output.
2013-12-09 00:14:59 +00:00