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
607a39f9f0
* include/grub/efi/api.h: Rename protocol and interface to avoid
...
conflict.
2013-12-14 21:48:46 +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
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
Andrey Borzenkov
9f2f979bcf
always define config_directory and config_file as full pathname
...
If configfile is relative pathname, extend it with current ($root) so its
interpretation does not change if $root is changed later.
Suggested by Vladimir Serbienko.
2013-12-10 09:55:27 +04: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
Vladimir Serbinenko
78b2b0a1a0
* grub-core/kern/ia64/efi/init.c (grub_arch_sync_caches): Move to ...
...
* grub-core/kern/ia64/cache.c (grub_arch_sync_caches): ... here.
2013-12-08 18:27:40 +01:00
Vladimir Serbinenko
d14772c455
* grub-core/kern/emu/main.c: Silence missing prototypes to allow emu
...
compilation with GCC <= 4.2.
* grub-core/kern/emu/argp_common.c: Likewise.
2013-12-08 18:21:10 +01:00
Vladimir Serbinenko
11e4167a35
* grub-core/osdep/windows/emuconsole.c: Remove unsigned comparison >= 0.
...
But ensure that the variables in question are indeed unsigned.
2013-12-08 18:16:32 +01:00
Vladimir Serbinenko
fa7eb63dec
* grub-core/kern/emu/lite.c: Add missing include of ../ia64/dl_helper.c.
2013-12-08 18:14:32 +01:00
Vladimir Serbinenko
50b3a68db9
Remove grub_memalign on emu.
2013-12-08 18:12:20 +01:00
Vladimir Serbinenko
fbbfb6ab11
* grub-core/kern/ia64/efi/init.c: Fix alignment code so it doesn't
...
truncate incomplete lines but instead flushes them.
2013-12-08 18:10:05 +01:00
Vladimir Serbinenko
a19293cb75
Move OS-dependent mprotect for module loading to grub-core/osdep/*/dl.c
...
and implement windows variant.
2013-12-08 18:08:23 +01:00
Vladimir Serbinenko
d5c14e1e26
Fix mips-emu compilation.
2013-12-08 17:49:02 +01:00
Vladimir Serbinenko
c311ced5d7
Make arm-emu work.
2013-12-08 02:59:21 +01:00
Andrey Borzenkov
bb05e313eb
use light-gray as default color in normal.mod for consistency
...
Defalut font color on PC console seems to be light-gray; this is
what user also gets in rescue prompt and what is defined as
GRUB_TERM_DEFAULT_NORMAL_COLOR. But normal.mod defaults to white.
This makes unpleasant visual effect as colors are changed after kernel
is booted.
Use the same color eveywhere for consistency and default to light-gray
as this is also what at least Linux kernel is using by default.
2013-12-07 20:00:48 +04:00
Vladimir Serbinenko
8c534b85f1
Revamp relocation handling.
...
Move more code to common dl.c. Add missing veneers for arm and arm64.
Decreases kernel size by 70 bytes on i386-pc (40-50 compressed)
2013-12-06 09:18:55 +01:00
Colin Watson
59b38922a1
Pacify compiler warning
...
* grub-core/osdep/linux/hostdisk.c
(grub_util_find_partition_start_os): Initialise start to avoid
spurious compiler warning.
2013-12-05 15:48:27 +00:00
Colin Watson
0480665b9d
On Linux, read partition start offsets from sysfs if possible
...
This lets us cope with block device drivers that don't implement
HDIO_GETGEO. Fixes Ubuntu bug #1237519 .
* grub-core/osdep/linux/hostdisk.c (sysfs_partition_path): New
function.
(sysfs_partition_start): Likewise.
(grub_util_find_partition_start_os): Try sysfs_partition_start
before HDIO_GETGEO.
2013-12-05 13:51:52 +00:00
Leif Lindholm
bbeee1c4a3
grub-core/lib/fdt.c: correctly update size_dt_struct in add_subnode()
2013-12-05 11:44:41 +00:00
Vladimir Serbinenko
e5ed2f6947
Handle unaligned .bss on sparc64.
...
Current code improperly assumes that both __bss_start and _end are
aligned to 8-bytes. Eliminating this assumption and explicitly align
modules.
2013-12-05 06:35:19 +01:00
Vladimir Serbinenko
4a73746a04
* grub-core/boot/sparc64/ieee1275/boot.S [CDBOOT]: Move scratchpad
...
so it doesn't land in the middle of loaded image.
2013-12-04 19:54:37 +01:00
Vladimir Serbinenko
8a3f0a24b5
* grub-core/kern/emu/main.c: Ignore missing prototype for main.
2013-12-04 10:28:23 +01:00
Vladimir Serbinenko
6f07c4e407
Pass font config to config.h and not by TARGET_CFLAGS as adding
...
arguments doesn't work if TARGET_CFLAGS is specified on command
line.
2013-12-04 10:25:53 +01:00
Vladimir Serbinenko
cd15c394cc
* grub-core/osdep/windows/emuconsole.c (grub_console_putchar):
...
Remove variable length arrays.
* grub-core/term/efi/console.c (grub_console_putchar): Likewise.
2013-12-04 10:05:33 +01:00
Vladimir Serbinenko
bb6e299ccb
* grub-core/kern/i386/qemu/init.c: Remove variable length arrays.
2013-12-04 09:48:36 +01:00
Vladimir Serbinenko
47f88cc94e
* grub-core/kern/efi/efi.c: Remove variable length arrays.
2013-12-04 08:39:22 +01:00
Vladimir Serbinenko
40b5739ff9
* grub-core/kern/uboot/init.c (uboot_timer_ms): Fix overflow after 71
...
minutes.
2013-12-04 08:26:39 +01:00
Vladimir Serbinenko
234d93464a
* grub-core/disk/ieee1275/ofdisk.c: Remove variable length arrays.
...
* grub-core/net/drivers/ieee1275/ofnet.c: Likewise.
2013-12-04 08:10:01 +01:00
Colin Watson
0c0eab527f
* grub-core/Makefile.core.def (setjmp): Distribute
...
lib/arm64/setjmp.S.
2013-12-03 18:11:18 +00:00
Colin Watson
44d4884779
Merge branch 'cjwatson/timeout-style'
2013-12-03 16:15:45 +00:00
Colin Watson
f315b508ae
Reduce nesting level.
2013-12-03 16:11:00 +00:00
Andrey Borzenkov
5037aa9a7b
fix libgrub.pp build post arm64 merge
...
grub-core/kern/arm64/dl_helper.c:26:28: fatal error: grub/cpu/reloc.h: No such file or directory
2013-11-30 22:36:10 +04:00
Leif Lindholm
b29b77fee2
New port arm64-efi
2013-11-30 16:50:31 +01:00
Vladimir Serbinenko
35de6d4bac
* grub-core/lib/libgcrypt/mpi/longlong.h: Fix compilation error with
...
-march=armv3.
2013-11-30 11:19:06 +01:00
Vladimir Serbinenko
ce55ed0389
Remove leftover GRUB_IA64_DL_TRAMP_SIZE.
2013-11-30 11:14:30 +01:00
Vladimir Serbinenko
eec893ae49
* grub-core/kern/emu/hostfs.c (is_dir): Remove variable length arrays.
2013-11-29 05:52:20 +01:00
Vladimir Serbinenko
d54f647a4a
* grub-core/osdep/linux/ofpath.c: Check return value of read.
2013-11-29 05:46:19 +01:00
Vladimir Serbinenko
469021b4b3
Remove libgnulib.a and use its sources in dependencies directly.
...
This was the only instance of "library" in core config. A bug was
reported that -fno-stack-protector wasn't passed to it. Instead of
figuring out why it failed just remove this construction used
needlessly.
2013-11-29 03:36:50 +01:00
Vladimir Serbinenko
83c256ba42
* grub-core/osdep/unix/password.c (grub_password_get): Check that
...
fgets succeeded.
2013-11-29 03:32:57 +01:00
Colin Watson
8f236c1419
Revamp hidden timeout handling
...
Add a new timeout_style environment variable and a corresponding
GRUB_TIMEOUT_STYLE configuration key for grub-mkconfig. This
controls hidden-timeout handling more simply than the previous
arrangements, and pressing any hotkeys associated with menu entries
during the hidden timeout will now boot the corresponding menu entry
immediately.
GRUB_HIDDEN_TIMEOUT=<non-empty> + GRUB_TIMEOUT=<non-zero> now
generates a warning, and if it shows the menu it will do so as if
the second timeout were not present. Other combinations are
translated into reasonable equivalents.
2013-11-28 02:29:15 +00:00
Vladimir Serbinenko
2d76b4d81e
Eliminate variable length arrays in grub_vsnprintf_real.
...
A bit tricky because this function has to continue to work without
heap for short strings. Fixing prealloc to 32 arguments is reasonable
but make all stack references use 32-bit offset rather than 8-bit one.
So split va_args preparsing to separate function and put the prealloc
into the caller.
2013-11-27 15:16:09 +01:00
Vladimir Serbinenko
4f9541226c
Introduce grub_util_file_sync and use it instead of fsync(fileno(f)).
...
Fixes build for windows.
2013-11-27 14:13:50 +01:00
Colin Watson
16ef26fd3a
* grub-core/osdep/unix/exec.c (grub_util_exec_redirect): Remove
...
references to mdadm from otherwise generic code.
(grub_util_exec_pipe): Likewise.
(grub_util_exec_pipe_stderr): Likewise.
* grub-core/osdep/unix/getroot.c (grub_util_pull_lvm_by_command):
This function calls vgs, not mdadm; adjust variable names
accordingly.
2013-11-27 11:22:31 +00:00
Colin Watson
5c7206e45e
Speed up test suite by avoiding fsync
...
Add grub_util_disable_fd_syncs call to turn grub_util_fd_sync calls into
no-ops, and use it in programs that copy files but do not need to take
special care to sync writes (grub-mknetdir, grub-rescue,
grub-mkstandalone).
On my laptop, this reduces partmap_test's runtime from 1236 seconds to
204 seconds.
2013-11-27 10:10:22 +00:00
Vladimir Serbinenko
1e4b358720
Add PCI command activation to all PCI drivers as required for coreboot
...
and maybe some other firmwares.
2013-11-26 14:21:11 +01:00
Vladimir Serbinenko
9208367d3f
* grub-core/Makefile.am: Reduce gratuituous differences between Apple
...
and non-Apple variants of efiemu compile.
2013-11-26 11:38:12 +01:00
Andrey Borzenkov
c2b70d0981
Explicitly check for linking format to use for efiemu64 module
...
Similar to check for target linking format, also check for efiemu64
instead of hardcoding -melf_x86_64. This fixes compilation on *BSD
variants. We cannot easily reuse main target check because platforms
are different (main target is 32 bit and efiemu64 - 64 bit).
This commit adds EFIEMU64_LINK_FORMAT that contains detected
link option and is used in efiemu64.o linking instead of hardcoded
value.
Reported-By: Beeblebrox <zaphod@berentweb.com>
2013-11-25 22:32:55 +04:00
Vladimir Serbinenko
d2f7902af0
Make arm64 compileable with clang
2013-11-25 13:06:56 +01:00
Vladimir Serbinenko
1005bed722
Use b.ge form for instructions
2013-11-25 13:04:44 +01:00
Vladimir Serbinenko
d6c92cdc34
Merge branch 'master' into leiflindholm/arm64
...
Conflicts:
include/grub/util/install.h
2013-11-25 13:02:27 +01:00
Vladimir Serbinenko
61e1b9a49d
* grub-core/osdep/unix/platform.c (get_ofpathname): Trim ending newline.
...
Don't rely on PATH_MAX.
2013-11-25 07:34:49 +01:00
Vladimir Serbinenko
c98dd165b0
* grub-core/genmoddep.awk: Use more portable && rather than and.
2013-11-25 07:32:51 +01:00
Vladimir Serbinenko
5c066a81c2
Apple assembly doesn't handle symbol arithmetic well. So define an
...
offset symbol in boot.S and use it.
2013-11-24 07:12:12 +01:00
Vladimir Serbinenko
78f961efe9
Apple assembly doesn't handle symbol arithmetic well. So instead
...
of getting addres of kernel_sector + 4 define kernel_sector_high.
It also makes code more readable.
2013-11-24 07:11:00 +01:00
Vladimir Serbinenko
09bc0a577d
With Apple assembly in .macro environvemnt you have to use $$ instead
...
of $. So introduce new preprocessor macro MACRO_DOLLAR(x) which expands
to $$x on Apple and to $x on everything else.
2013-11-24 07:08:18 +01:00
Vladimir Serbinenko
b700a427d2
* grub-core/Makefile.am: Use correct TARGET_OBJCONV rather than
...
OBJCONV.
2013-11-24 05:27:20 +01:00
Vladimir Serbinenko
4480b95dcd
* grub-core/gdb/i386/machdep.S: Use xorl %eax, %eax on both Apple
...
and non-Apple. This instruction is shorter and faster,
so no reason not to use it on both.
2013-11-24 05:17:24 +01:00
Vladimir Serbinenko
e77c81f6f8
* grub-core/lib/reed_solomon.c: Use section _text, _text rather than
...
.text when compiling for Apple.
2013-11-24 05:14:11 +01:00
Vladimir Serbinenko
971dbee521
* grub-core/term/arc/console.c: Add missing cast to silence warning.
2013-11-24 05:05:34 +01:00
Vladimir Serbinenko
6f2e82be3a
* grub-core/boot/i386/pc/boot.S: Fix floppy probe. Due to missing
...
%dx restore the probe worked on non-existant drive. Reorganize the
code a little bit to free 2 bytes necessary for push/pop.
2013-11-24 05:05:33 +01:00
Vladimir Serbinenko
9eec9699b9
* grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
...
Add missing cast to silence warning.
2013-11-23 15:35:01 +01:00
Vladimir Serbinenko
1bba40f578
Move common BIOS/coreboot memory map declarations to
...
include/grub/i386/memory_raw.h and eliminate duplicate declarations.
2013-11-23 12:39:21 +01:00
Vladimir Serbinenko
a92b5cb8d8
* grub-core/lib/libgcrypt/mpi/longlong.h: Use C version with mips
...
clang.
2013-11-23 00:36:13 +01:00
Vladimir Serbinenko
e1c22419ac
* grub-core/kern/xen/init.c: Do not map more pages than we can address.
2013-11-22 13:04:29 +01:00
Vladimir Serbinenko
189090cee9
* grub-core/kern/efi/mm.c: Limit allocations to 2GiB when not compiling
...
with -mcmodel=large.
2013-11-22 13:03:19 +01:00
Vladimir Serbinenko
1a5b7b404f
* grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Add
...
range-checking for 32-bit quantities.
2013-11-22 13:01:14 +01:00
Vladimir Serbinenko
4a0aaad022
clang emits calls to abort () under some unknown conditions.
...
Export abort () when compiling with clang.
2013-11-22 12:42:58 +01:00
Vladimir Serbinenko
ddb3efc906
* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Ensure
...
at compile time that enough of scratch size is available.
2013-11-22 12:00:10 +01:00
Vladimir Serbinenko
4e42521d8c
* grub-core/kern/x86_64/efi/callwrap.S: Fix stack alignment.
...
Previously we misaligned stack by 8 in startup.S and compensated
for it in callwrap.S. According to ABI docs (EFI and sysv amd64)
right behaviour is to align stack in startup.S and keep it aligned
in callwrap.S. startup.S part was committed few commits before. This
takes care of callwrap.S.
Reported by: Gary Lin.
2013-11-22 05:40:32 +01:00
Vladimir Serbinenko
054efe541f
* grub-core/boot/mips/startup_raw.S: Handle the case of gap between
...
.data and .bss. May happen if compiler and assembly use different
alignment.
2013-11-22 05:07:32 +01:00
Vladimir Serbinenko
a0e1befb57
On MIPS handle got16 relocations to local symbols in an ABI-compliant
...
way.
2013-11-22 05:03:17 +01:00
Vladimir Serbinenko
c36c73f681
Add support for a new magic symbol _gp_disp on mips to handle PIC
...
binaries.
2013-11-22 04:56:10 +01:00
Vladimir Serbinenko
6f4a19f59f
Use $t9 for indirect calls from asm to C as PIC ABI requires.
2013-11-22 04:45:05 +01:00
Vladimir Serbinenko
0d8f04cd83
Remove -march=mips3 from TARGET_CCASFLAGS as it creates linking problem
...
when rest of GRUB is compiled for hisher stepping. Instead use
.set mips3/.set mips1 around cache and sync opcodes.
2013-11-22 04:36:53 +01:00
Vladimir Serbinenko
4906052019
Unify GOT/trampoline handling between PPC, MIPS and IA64 as they
...
do essentially the same thing, do it in similar way.
2013-11-21 21:54:33 +01:00
Colin Watson
b7f9aedfac
* grub-core/normal/progress.c: Remove unused file.
2013-11-21 15:37:57 +00:00
Vladimir Serbinenko
7dd0a30361
* grub-core/lib/crypto.c (grub_crypto_hash): Remove variable length
...
array.
2013-11-20 20:09:18 +01:00
Josh Triplett
7960d3e182
* grub-core/kern/x86_64/efi/startup.S (_start): Align the stack to a
...
16-byte boundary, as required by the x86-64 ABI, before calling
grub_main. In some cases, GCC emits code that assumes this
alignment, which crashes if not aligned. The EFI firmware is also
entitled to assume that stack alignment without checking.
2013-11-19 14:31:40 +01:00
Leif Lindholm
8a07b55a04
arm64: cache maintenance code rework + bugfix
2013-11-19 10:05:23 +00:00
Josh Triplett
d53f4900d7
* grub-core/mmap/efi/mmap.c (grub_mmap_register): Round up/down to
...
4k page boundaries as expected by firmware rather than 1k
boundaries.
(grub_mmap_malign_and_register): Likewise.
2013-11-18 18:00:52 +01:00
Vladimir Serbinenko
96fa2d9d02
Merge branch 'master' into leiflindholm/arm64
2013-11-18 17:51:28 +01:00
Vladimir Serbinenko
45bf8b3a75
* grub-core/kern/mm.c (grub_real_malloc): Decrease cut-off of moving the
...
pointer to 32K. This is the size of cache element which is the most
common allocation >1K. This way the pointer is always around blocks
of 32K and so we keep performance while decreasing fragmentation.
2013-11-18 17:41:37 +01:00
Vladimir Serbinenko
39ff43c579
* grub-core/kern/mm.c (grub_real_malloc): Don't update the pointer to
...
current memory when allocating large chunks. This significantly
decreases memory fragmentation.
2013-11-18 16:58:55 +01:00
Vladimir Serbinenko
74e632fea8
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Update
...
clock frequency to 200 MHz,
2013-11-18 16:39:45 +01:00
Vladimir Serbinenko
4d5b72cdb4
Merge branch 'master' of git.sv.gnu.org:/srv/git/grub
2013-11-18 14:54:01 +01:00
Vladimir Serbinenko
ea7c1a7d90
* grub-core/tests/videotest_checksum.c: Don't reload unifont if it's
...
already loaded. This saves memory needed for tests,
2013-11-18 14:38:31 +01:00
Vladimir Serbinenko
5e3cb8a747
* grub-core/term/terminfo.c (grub_cmd_terminfo): Fix a typo to make -g
...
work again.
2013-11-18 14:35:18 +01:00
Colin Watson
3bf4088b8b
* grub-core/osdep/unix/hostdisk.c (grub_util_make_temporary_file):
...
Handle errors from mkstemp.
(grub_util_make_temporary_dir): Handle errors from mkdtemp.
2013-11-18 12:27:44 +00:00
Vladimir Serbinenko
f8b4c3b6b3
* grub-core/tests/gfxterm_menu.c: Skip high-resolution tests on
...
low-memory platforms where we don't have enough memory for them.
* grub-core/tests/videotest_checksum.c: Likewise.
2013-11-18 11:48:07 +01:00
Vladimir Serbinenko
4bf703206d
* grub-core/tests/cmdline_cat_test.c: Don't reload unifont if it's
...
already loaded. This saves memory needed for tests,
2013-11-18 11:45:55 +01:00
Vladimir Serbinenko
2df8f43d3e
* grub-core/lib/sparc64/setjmp.S: Force spilling of current window.
2013-11-18 10:01:36 +01:00
Vladimir Serbinenko
6f1bc8bc0f
On i386-ieee1275 we run in paged mode. So we need to explicitly map
...
the devices before accessing them.
2013-11-18 04:32:33 +01:00
Vladimir Serbinenko
04f39f6df8
* grub-core/lib/relocator.c (grub_mm_check_real): Accept const char *
...
as file argument.
2013-11-18 02:45:25 +01:00
Vladimir Serbinenko
35d4761ce2
* grub-core/normal/cmdline.c (grub_cmdline_get): Plug memory leak.
2013-11-18 02:43:29 +01:00
Vladimir Serbinenko
33d02a42d6
* grub-core/kern/file.c (grub_file_open): Free file->name on failure.
...
(grub_file_close): Free file->name.
2013-11-18 02:41:42 +01:00
Vladimir Serbinenko
7bbb60cfbd
* grub-core/commands/verify.c (free_pk): Plug memory leak.
...
(grub_load_public_key): Likewise.
(grub_verify_signature_real): Likewise.
(grub_cmd_verify_signature): Likewise.
2013-11-18 02:40:17 +01:00
Vladimir Serbinenko
da93d6753b
* grub-core/commands/legacycfg.c (grub_legacy_check_md5_password): Plug
...
memory leak.
2013-11-18 02:37:46 +01:00
Vladimir Serbinenko
59c943ecf6
* grub-core/lib/powerpc/setjmp.S (grub_setjmp): Save r31.
...
(grub_longjmp): Restore r31.
* include/grub/powerpc/setjmp.h (grub_jmp_buf): Reserve space for r31.
2013-11-18 02:35:32 +01:00
Ian Campbell
7d400406a7
* grub-core/disk/uboot/ubootdisk.c: Include SCSI disks.
2013-11-17 15:38:09 +01:00
Vladimir Serbinenko
0ab8e025c1
* grub-core/tests/cmdline_cat_test.c (cmdline_cat_test): Ignore errors
...
of loading gfxterm as gfxterm is embed in kernel on some platforms.
* grub-core/tests/gfxterm_menu.c (gfxterm_menu): Likewise.
Load gfxmenu.
2013-11-17 02:13:33 +01:00
Leif Lindholm
15a463d742
ARM 64 port by Leif Lindholm
2013-11-16 20:52:55 +01:00
Vladimir Serbinenko
cd46aa6cef
Rewrite grub-install, grub-mkrescue, grub-mkstandalone and grub-mknetdir
...
the function of these files exceeds what can be sanely handled in shell
in posix-comaptible way. Also writing it in C extends the functionality
to non-UNIX-like OS and minimal environments.
2013-11-16 20:21:16 +01:00
Vladimir Serbinenko
9ef81064a3
* grub-core/kern/arm/cache.S: Don't switch back to ARM mode when
...
compiling to thumb2.
* grub-core/kern/arm/cache_armv7.S: Likewise.
* grub-core/lib/arm/setjmp.S: Likewise.
2013-11-16 17:37:06 +01:00
Leif Lindholm
11a7793221
arm: delete superflouous save of r8 in grub_uboot_syscall
2013-11-16 15:56:09 +00:00
Vladimir Serbinenko
080603f0b0
Decrease stack usage in lexer.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/script/yylex.l (yyalloc), (yyfree), (yyrealloc): Declare
as macros so that compiler would remove useless structure on stack.
Better solution would be to fix flex not to put this structure on
the stack but flex is external program.
2013-11-16 16:37:59 +01:00
Vladimir Serbinenko
4f84ae0ec8
Decrease stack usage in signature verification.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/commands/verify.c (grub_load_public_key): Allocate on heap
rather than stack.
(grub_verify_signature_real): Likewise.
2013-11-16 16:34:51 +01:00
Vladimir Serbinenko
e6a6182d95
Decrease stack usage in mdraid 0.9x.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Allocate on heap
rather than stack.
2013-11-16 16:16:48 +01:00
Vladimir Serbinenko
1a454efe89
Decrease stack usage in BtrFS.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Allocate on heap
rather than stack.
2013-11-16 16:15:26 +01:00
Vladimir Serbinenko
7b5d51d837
Decrease stack usage in JFS.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/fs/jfs.c (getblk): Allocate on heap rather than on
stack. Note: this function is recursive.
(grub_jfs_read_inode): Read only part we care about.
2013-11-16 16:00:42 +01:00
Leif Lindholm
593865b907
arm: fix u-boot port syscall interface va_arg handling
...
Commit c9cd02c
broke the u-boot syscall API for va_args that spill over
to the stack, causing the disk support to stop working. This patch
resolves the problem, while keeping the new, cleaner transition_space
handling.
2013-11-16 14:12:12 +00:00
Andrey Borzenkov
9e18dfe277
MIPS grub_machine_get_bootlocation arguments are used
2013-11-16 16:59:07 +04:00
Vladimir Serbinenko
6fcec43954
Replace libgcc version of ctz with our own.
...
On upcoming arm64 port libgcc ctz* are not usable in standalone
environment. Since we need ctz* for this case and implementation is
in C we may as well use it on all concerned platforms.
2013-11-15 03:28:34 +01:00
Vladimir Serbinenko
a9f25a0819
* configure.ac: Probe for linking format rather than guessing it based
...
on target_os.
2013-11-14 23:17:18 +01:00
Vladimir Serbinenko
c7995256e4
* grub-core/disk/xen/xendisk.c (grub_xendisk_fini): Set state to
...
"1" prior to handoff.
Reported by: M A Young.
2013-11-14 22:42:54 +01:00
Vladimir Serbinenko
e1aa5b6620
* grub-core/kern/xen/init.c (grub_xenstore_write_file): Don't add
...
\0 to all files.
Reported by: M A Young.
2013-11-14 22:40:50 +01:00
Vladimir Serbinenko
da5ed5cf6b
* grub-core/osdep/bsd/hostdisk.c (grub_util_get_fd_size_os): Fix
...
compilation on NetBSD.
2013-11-14 22:38:36 +01:00
Andrey Borzenkov
a5986276ec
add grub-core/tests/signatures.h to distfiles
2013-11-15 00:51:30 +04:00
Matthew Garrett
1fe26ab4a0
* grub-core/kern/main.c (grub_set_prefix_and_root): Set variable
...
cmdpath to firmware directory.
2013-11-14 15:53:32 +01:00
Vladimir Serbinenko
83e9c273e5
* grub-core/kern/efi/efi.c (grub_efi_get_filename): Reset the pointer
...
at the start of second iteration.
2013-11-14 15:50:43 +01:00
Vladimir Serbinenko
ec525c18e1
* grub-core/Makefile.am (efiemu64.o): Explicitly set link format.
2013-11-14 12:05:48 +01:00
Vladimir Serbinenko
1d912bd3c9
Merge branch 'master' of git.sv.gnu.org:/srv/git/grub
...
Conflicts:
ChangeLog
2013-11-14 10:05:54 +01:00
Vladimir Serbinenko
57ffe93485
* grub-core/kern/arm/cache_armv6.S: Remove special handling for
...
clang (not necessarry with -no-integrated-as).
* include/grub/symbol.h [__arm__]: Likewise.
2013-11-14 10:05:19 +01:00
Colin Watson
5da5517288
* grub-core/fs/ext2.c (grub_ext2_read_block): Factor out common code for indirect block handling.
...
Saves 185 bytes on compressed image.
2013-11-14 08:13:06 +00:00
Leif Lindholm
035a26c16a
* grub-core/kern/arm/misc.S: Make thumb2-compatible.
2013-11-14 01:33:06 +01:00
Colin Watson
81a2e438dc
* grub-core/kern/misc.c: Don't redirect divisions in the
...
GRUB_UTIL case.
* include/grub/misc.h: Likewise.
2013-11-13 14:47:23 +00:00
Colin Watson
9b45c0733e
* grub-core/osdep/unix/emuconsole.c (put): Pacify the compiler on
...
systems that require checking the return value of write.
2013-11-13 13:34:57 +00:00
Vladimir Serbinenko
2bdd07195c
* grub-core/kern/arm/cache.c (probe_caches): Move asm part to ...
...
* grub-core/kern/arm/cache_armv6.S: ... here. This allows this
asm to stay in arm even if surrounding is thumb.
2013-11-13 09:58:52 +01:00
Vladimir Serbinenko
5e77d9cfc1
* grub-core/kern/arm/misc.S: Add __muldi3 and __aeabi_lmul. Those
...
helper functions are needed for thumb.
2013-11-13 09:52:33 +01:00
Vladimir Serbinenko
7d5116251d
* grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Make
...
level / 3 division explicitly unsigned. Saves few bytes.
2013-11-13 09:40:16 +01:00
Vladimir Serbinenko
81023dbdbd
* grub-core/fs/zfs/zfs.c (ZAP_LEAF_NUMCHUNKS): Use unsigned arithmetics.
2013-11-13 09:27:36 +01:00
Vladimir Serbinenko
b2e9294fb9
* grub-core/normal/datetime.c (grub_get_weekday): Use if rather than
...
division.
2013-11-13 09:26:13 +01:00
Vladimir Serbinenko
16a22c3851
* grub-core/kern/uboot/init.c: Move grub_uboot_machine_type and
...
grub_uboot_boot_data to asm part.
2013-11-13 06:28:15 +01:00
Vladimir Serbinenko
c9cd02c965
* grub-core/kern/arm/uboot/startup.S: Remove = by replacing with
...
literal load.
(grub_uboot_syscall): Save/restore r9 and align stack.
2013-11-13 06:27:03 +01:00
Vladimir Serbinenko
8149861554
* grub-core/kern/arm/cache.S: Replace = with explicit litteral load.
2013-11-13 06:23:32 +01:00
Vladimir Serbinenko
ea57de18f8
* include/grub/symbol.h (END) [__arm__]: New macros. Replace all .end
...
occurencies with END.
2013-11-13 05:19:30 +01:00
Josh Triplett
46d8a2033b
* grub-core/normal/term.c (grub_set_more): Use bool logic rather than
...
increment/decrement.
2013-11-13 02:27:11 +01:00
Vladimir Serbinenko
c773faf05e
Revert " * include/grub/symbol.h (ADDR): New macro. Replace all occurences of"
...
This reverts commit 286551b4eb
.
2013-11-13 02:17:20 +01:00
Vladimir Serbinenko
513eeb61dd
* grub-core/kern/arm/cache_armv6.S [__clang__]: Don't add .armv6 when
...
compiling with clang.
2013-11-13 01:08:47 +01:00
Vladimir Serbinenko
bc379c1aa1
* grub-core/kern/arm/uboot/startup.S: Use .org rather than assigning
...
".".
2013-11-13 01:06:30 +01:00
Vladimir Serbinenko
286551b4eb
* include/grub/symbol.h (ADDR): New macro. Replace all occurences of
...
=x with ADDR(x) in arm assembly.
(END): New macro. Replace all .end with END.
2013-11-13 01:04:56 +01:00
Vladimir Serbinenko
16057d6bbb
Redirect all divisions to grub_divmod64.
2013-11-13 00:53:53 +01:00
Vladimir Serbinenko
f649a6a8fd
* grub-core/term/tparm.c (tparam_internal): Use unsigned divisions.
2013-11-13 00:51:06 +01:00
Vladimir Serbinenko
ef28ee8bc1
Add missing includes of loader.h.
2013-11-13 00:43:03 +01:00
Vladimir Serbinenko
0c62a5b28e
* grub-core/term/at_keyboard.c: Don't poll non-functional AT controller
...
until it becomes operational.
2013-11-12 19:30:46 +01:00
Vladimir Serbinenko
b0720b4988
* grub-core/Makefile.core.def (legacy_password_test): Disable
...
on platforms where no legacycfg is compiled.
* grub-core/tests/lib/functional_test.c: Tolerate failure to
load legacy_password_test.
2013-11-12 18:44:58 +01:00
Vladimir Serbinenko
d5bab2c0e1
* grub-core/loader/i386/bsd.c: Remove variable length arrays.
2013-11-12 16:14:33 +01:00
Vladimir Serbinenko
3ea0ccb319
* grub-core/efiemu/prepare.c: Remove variable length arrays.
2013-11-12 16:12:28 +01:00
Vladimir Serbinenko
08772054e9
* grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror): Silence
...
strict-aliasing warning.
(fsync): Silence cast warning.
2013-11-12 16:09:42 +01:00
Vladimir Serbinenko
1dcb27157d
* grub-core/commands/verify.c: Remove variable length arrays.
...
Load gcry_dsa/gcry_rsa automatically.
2013-11-12 16:07:30 +01:00
Vladimir Serbinenko
61c22fdf36
* grub-core/tests/signature_test.c: New test.
2013-11-12 16:05:57 +01:00
Vladimir Serbinenko
431e57a797
* grub-core/disk/cryptodisk.c (luks_script_get): Adapt to new procfs
...
API.
2013-11-12 16:01:19 +01:00
Vladimir Serbinenko
b521bb816d
* grub-core/tests/legacy_password_test.c (vectors): Make static.
...
* grub-core/tests/pbkdf2_test.c (vectors): Likewise.
2013-11-12 15:59:58 +01:00
Vladimir Serbinenko
7d06b24eac
* grub-core/tests/setjmp_test.c: Reset counter to 0 before starting.
2013-11-12 15:58:50 +01:00
Vladimir Serbinenko
3bbeade41d
* grub-core/fs/proc.c: Allow \0 in proc files.
2013-11-12 15:57:09 +01:00
Vladimir Serbinenko
ba82db7a0d
* grub-core/tests/xnu_uuid_test.c: Fix assert message.
2013-11-12 14:11:34 +01:00
Vladimir Serbinenko
801564c804
* grub-core/tests/xnu_uuid_test.c: Fix copyright year.
2013-11-12 14:07:34 +01:00
Vladimir Serbinenko
ac8cac1dac
* grub-core/fs/ext2.c: Remove variable length arrays.
2013-11-12 03:04:19 +01:00
Vladimir Serbinenko
4b85f1228a
* grub-core/lib/crypto.c (grub_crypto_cbc_decrypt): Remove variable
...
length arrays.
2013-11-12 02:49:17 +01:00
Vladimir Serbinenko
c35fcdc0b7
* grub-core/disk/AFSplitter.c: Remove variable length arrays.
...
* grub-core/disk/cryptodisk.c: Likewise.
* grub-core/disk/geli.c: Likewise.
* grub-core/disk/luks.c: Likewise.
2013-11-12 02:48:02 +01:00
Vladimir Serbinenko
15decd26cc
* grub-core/tests/legacy_password_test.c: New test.
...
* grub-core/commands/legacycfg.c: Remove variable length arrays.
2013-11-12 02:38:33 +01:00
Vladimir Serbinenko
9c6482b8d6
* grub-core/lib/pbkdf2.c: Remove variable length arrays.
2013-11-12 01:52:55 +01:00
Vladimir Serbinenko
41f26e0ebc
* grub-core/tests/pbkdf2_test.c: New test.
2013-11-12 01:51:36 +01:00
Vladimir Serbinenko
2def66169e
* grub-core/lib/xzembed/xz_dec_stream.c: Remove variable length arrays.
2013-11-12 01:26:56 +01:00
Vladimir Serbinenko
9e34a34e44
* grub-core/io/lzopio.c: Remove variable length arrays.
2013-11-12 01:25:03 +01:00
Vladimir Serbinenko
44a387e0ea
* grub-core/commands/xnu_uuid.c: Remove variable length arrays.
2013-11-12 01:19:34 +01:00
Vladimir Serbinenko
a388e25576
* grub-core/tests/xnu_uuid_test.c: New test.
2013-11-12 01:18:27 +01:00
Vladimir Serbinenko
a1ef7718c9
* grub-core/commands/hashsum.c: Remove unneeded memset (zalloc already
...
covers it).
2013-11-12 00:58:46 +01:00
Vladimir Serbinenko
65ddb30016
* grub-core/commands/hashsum.c: Remove variable length arrays.
2013-11-12 00:52:54 +01:00
Vladimir Serbinenko
31747dd521
* grub-core/tests/gfxterm_menu.c (gfxterm_menu): Handle out-of-memory
...
condition.
* tests/grub_func_test.in: Increase memory allocation.
2013-11-12 00:44:00 +01:00
Vladimir Serbinenko
6a74c4dfff
* grub-core/osdep/unix/getroot.c [HAVE_STRUCT_STATFS_F_FSTYPENAME
...
&& HAVE_STRUCT_STATFS_F_MNTFROMNAME]: Include sys/param.h and
sys/mount.h.
2013-11-11 23:10:30 +01:00
Vladimir Serbinenko
394c3e0ac2
* grub-core/osdep/apple/hostdisk.c (grub_util_get_fd_size): Rename to ..
...
(grub_util_get_fd_size_os): ...this.
(grub_hostdisk_flush_initial_buffer): New empty function.
2013-11-11 23:08:51 +01:00
Vladimir Serbinenko
60d31116c2
* grub-core/gensyminfo.sh.in: Handle the case of portable output
...
without --defined-only.
2013-11-11 23:05:53 +01:00
Vladimir Serbinenko
8445b0115f
* grub-core/lib/i386/relocator_common.S [__APPLE__ && __x86_64__]: Use
...
rip-relative addressing in prologue.
2013-11-11 23:02:51 +01:00
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
87d62d7d29
* grub-core/loader/i386/coreboot/chainloader.c (load_segment): Use
...
right buffer for temporary load.
2013-11-11 00:06:52 +01:00
Vladimir Serbinenko
5460cfeba8
* grub-core/loader/i386/coreboot/chainloader.c: Support tianocore.
2013-11-10 23:26:25 +01:00
Vladimir Serbinenko
8997730612
* grub-core/loader/i386/coreboot/chainloader.c: Support lzma-compressed
...
payload.
2013-11-10 20:53:27 +01:00
Vladimir Serbinenko
3617c59bab
* include/grub/lib/LzmaDec.h: Fix to include LzmaTypes.h and
...
not Types.h.
* grub-core/lib/LzmaDec.c: Fix prologue to make it compileable in GRUB
environment.
(LzmaDec_InitDicAndState): Make static.
2013-11-10 20:37:01 +01:00
Vladimir Serbinenko
2024ade285
* grub-core/term/ieee1275/escc.c (GRUB_MOD_INIT): Fix order of channels.
...
Reported by: Aaro Koskinen <aaro.koskinen@iki.fi>
2013-11-10 17:53:11 +01:00
Vladimir Serbinenko
33690255c5
Fix grub_machine_fini bitrot.
...
Reported by: Glenn Washburn.
2013-11-10 13:33:26 +01:00
Vladimir Serbinenko
54da019fdb
* grub-core/Makefile.am (efiemu): Remove leftover -DAPPLE_CC and
...
-DELF.
* grub-core/efiemu/runtime/config.h: Use __i386__ and __x86_64__
instead of ELF*.
2013-11-10 13:13:41 +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
1a46a3a4b3
* grub-core/loader/i386/multiboot_mbi.c: Handle space in command line.
...
* grub-core/loader/multiboot_mbi2.c: Likewise.
2013-11-09 17:32:37 +01:00
Vladimir Serbinenko
2df1255117
* grub-core/lib/cmdline.c (grub_loader_cmdline_size): Fix empty cmdline
...
handling.
2013-11-09 17:31:21 +01:00
Vladimir Serbinenko
3c98038174
* grub-core/commands/i386/cmostest.c: Add new command "cmosset".
...
Tested by: Denis 'GNUtoo' Carikli.
2013-11-09 17:27:49 +01:00
Vladimir Serbinenko
800f63d38f
* grub-core/normal/datetime.c (grub_get_weekday): Use unsigned types.
2013-11-08 19:14:03 +01:00
Vladimir Serbinenko
5620eb5332
* grub-core/gfxmenu/gui_circular_progress.c (parse_angle):
...
Use to get rounded angle rather than truncated.
2013-11-08 19:13:15 +01:00
Vladimir Serbinenko
9f8acdaa5d
* grub-core/term/serial.c: Add option for enabling/disabling
...
RTS/CTS flow control.
2013-11-08 18:20:20 +01:00
Vladimir Serbinenko
2dc1eb6cbf
* grub-core/lib/libgcrypt/cipher/idea.c (mul_inv): Remove signed
...
divisions.
2013-11-08 18:10:07 +01:00
Vladimir Serbinenko
b9563c9451
* grub-core/lib/libgcrypt/mpi/mpih-div.c (_gcry_mpih_divrem):
...
Use grub_fatal rather than divide by zero.
* grub-core/lib/libgcrypt/mpi/mpi-pow.c (gcry_mpi_powm): Likewise.
2013-11-08 16:33:48 +01:00
Vladimir Serbinenko
d6d8e9a93e
* include/grub/gui.h (grub_fixed_sfs_divide): Round rather than
...
truncate.
(grub_fixed_fsf_divide): Likewise.
2013-11-08 16:17:29 +01:00
Vladimir Serbinenko
d06de6c871
* grub-core/gfxmenu/gui_list.c (draw_scrollbar): Avoid
...
division by-zero and senseless negative divisions.
2013-11-08 15:44:39 +01:00
Vladimir Serbinenko
6af7d49b92
* grub-core/gfxmenu/gui_circular_progress.c (circprog_paint): Avoid
...
division by-zero and senseless negative divisions.
(circprog_set_property): Don't accept negative num_ticks.
2013-11-08 15:43:07 +01:00
Vladimir Serbinenko
bcfa6d72e3
* grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Avoid
...
division by-zero and senseless negative divisions.
2013-11-08 15:38:58 +01:00
Vladimir Serbinenko
d061fda7e9
* grub-core/tests/div_test.c: New test.
2013-11-08 15:01:59 +01:00
Vladimir Testov
4db2250000
* grub-core/gfxmenu/gui_box.c: Updated to work with area status.
...
* grub-core/gfxmenu/gui_canvas.c: Likewise.
* grub-core/gfxmenu/view.c: Likewise.
* grub-core/video/fb/video_fb.c: Introduce new functions:
grub_video_set_area_status, grub_video_get_area_status,
grub_video_set_region, grub_video_get_region.
* grub-core/video/bochs.c: Likewise.
* grub-core/video/capture.c: Likewise.
* grub-core/video/video.c: Likewise.
* grub-core/video/cirrus.c: Likewise.
* grub-core/video/efi_gop.c: Likewise.
* grub-core/video/efi_uga.c: Likewise.
* grub-core/video/emu/sdl.c: Likewise.
* grub-core/video/radeon_fuloong2e.c: Likewise.
* grub-core/video/sis315pro.c: Likewise.
* grub-core/video/sm712.c: Likewise.
* grub-core/video/i386/pc/vbe.c: Likewise.
* grub-core/video/i386/pc/vga.c: Likewise.
* grub-core/video/ieee1275.c: Likewise.
* grub-core/video/i386/coreboot/cbfb.c: Likewise.
* include/grub/video.h: Likewise.
* include/grub/video_fb.h: Likewise.
* include/grub/fbfill.h: Updated render_target structure.
grub_video_rect_t viewport, region, area
int area_offset_x, area_offset_y, area_enabled
* include/grub/gui.h: New helper function
grub_video_bounds_inside_region.
* docs/grub-dev.texi: Added information about new functions.
2013-11-08 15:42:38 +04: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
e2a6810069
* grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Add
...
missing attribute.
* grub-core/gdb/cstub.c (grub_gdb_trap): Likewise.
2013-11-08 09:27:56 +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
47dcf7b176
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_module): Fix
...
NULL pointer dereference.
2013-11-08 04:59:46 +01:00
Vladimir Serbinenko
d59849b2e7
* grub-core/Makefile.am: Do not include libgcc.h when compiling with
...
clang.
2013-11-07 19:33:54 +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
7f084087b2
* grub-core/net/net.c (grub_net_route_unregister): Remove unused
...
function.
* grub-core/loader/i386/xnu.c (hextoval): Likewise.
* grub-core/disk/geli.c (ascii2hex): Likewise.
2013-11-07 19:31:22 +01:00
Vladimir Serbinenko
d5524ca87b
* configure.ac: Run linker tests without -Werror.
...
Define TARGET_LDFLAGS_STATIC_LIBGCC and TARGET_LIBGCC.
Change all occurences of -static-libgcc resp -lgcc to
TARGET_LDFLAGS_STATIC_LIBGCC resp TARGET_LIBGCC.
2013-11-07 18:21:22 +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
d1307d873a
Import libgcrypt 1.5.3.
2013-11-07 06:35:50 +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
40a5bfde36
* grub-core/lib/arg.c (grub_arg_parse): Remove nested function.
2013-11-07 02:46:23 +01:00
Vladimir Serbinenko
a67c755ef1
* grub-core/normal/cmdline.c (grub_cmdline_get):
...
Remove nested functions.
2013-11-07 02:42:38 +01:00
Vladimir Serbinenko
c03995d297
* grub-core/normal/charset.c (bidi_line_wrap): Eliminate nested
...
functions.
(grub_bidi_line_logical_to_visual): Likewise.
2013-11-07 02:31:31 +01:00
Vladimir Serbinenko
ec0ebb3fc2
Remove vestiges of -Wunsafe-loop-optimisations.
...
* conf/Makefile.common (CFLAGS_GNULIB): Remove
-Wno-unsafe-loop-optimisations.
* grub-core/commands/legacycfg.c: Remove -Wunsafe-loop-optimisations
pragma.
* grub-core/io/gzio.c: Likewise.
* grub-core/script/parser.y: Likewise.
* grub-core/script/yylex.l: Likewise.
* util/grub-mkfont.c: Likewise.
2013-11-07 02:25:31 +01:00
Vladimir Serbinenko
6d5a4ceefe
* grub-core/net/bootp.c (OFFSET_OF): Explicitly cast to grub_size_t.
2013-11-07 01:11:36 +01:00
Vladimir Serbinenko
f06c2172c0
* grub-core/net/bootp.c (set_env_limn_ro): Make pointer const.
...
(parse_dhcp_vendor): Likewise.
2013-11-07 01:09:19 +01:00
Vladimir Serbinenko
f30c692c1f
* grub-core/gettext/gettext.c (main_context), (secondary_context):
...
Define after defining type and not before.
2013-11-07 01:01:47 +01:00
Vladimir Serbinenko
8b66bb5d8d
* grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Return right error
...
type.
(grub_gcm_decrypt): Likewise.
(algo_decrypt): Likewise.
(grub_zfs_decrypt_real): Transform error type.
2013-11-07 00:59:44 +01:00
Vladimir Serbinenko
5d17fd0fec
* grub-core/disk/geli.c (geli_rekey): Fix error return type.
2013-11-07 00:57:21 +01:00
Vladimir Serbinenko
ac35a0f792
* grub-core/disk/usbms.c (grub_usbms_cbi_cmd): Fix error type.
...
(grub_usbms_cbi_reset): Likewise.
(grub_usbms_bo_reset): Likewise.
(grub_usbms_reset): Likewise.
(grub_usbms_attach): Likewise.
(grub_usbms_transfer_cbi): Likewise.
2013-11-07 00:55:17 +01:00
Vladimir Serbinenko
3ee0869734
* grub-core/io/lzopio.c (test_header): Simplify code and remove useless
...
"checksum = checksum;".
2013-11-07 00:51:28 +01:00
Vladimir Serbinenko
70bb6c855e
* grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix type of
...
entry_type.
2013-11-07 00:48:04 +01:00
Vladimir Serbinenko
c7f34744c6
* grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel): Fix
...
BIOS disk check.
2013-11-07 00:46:44 +01:00
Vladimir Serbinenko
3f63b4d89f
* grub-core/bus/usb/ehci.c (grub_ehci_restore_hw): Return right enum
...
type.
(grub_ehci_fini_hw): Likewise.
* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
2013-11-07 00:45:15 +01:00
Vladimir Serbinenko
dac6ce73be
* include/grub/usb.h (grub_usb_controller_dev): Make portstatus
...
return grub_usb_err_t for cosistency. All users updated.
2013-11-07 00:35:56 +01:00
Gustavo Luiz Duarte
9e236169e9
issue separate DNS queries for ipv4 and ipv6
...
Adding multiple questions on a single DNS query is not supportted by
most DNS servers. This patch issues two separate DNS queries
sequentially for ipv4 and then for ipv6.
Fixes: https://savannah.gnu.org/bugs/?39710
* grub-core/net/bootp.c (parse_dhcp_vendor): Add DNS option.
* grub-core/net/dns.c (grub_dns_qtype_id): New enum.
* (grub_net_dns_lookup): Now using separated dns packages.
* (grub_cmd_nslookup): Add error condition.
* (grub_cmd_list_dns): Print DNS option.
* (grub_cmd_add_dns): Add four parameters: --only-ipv4,
* --only-ipv6, --prefer-ipv4, and --prefer-ipv6.
* include/grub/net.h (grub_dns_option_t): New enum.
* (grub_net_network_level_address): option added.
Also-by: Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
Signed-off-by: Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
2013-11-05 17:41:16 -02:00
Vladimir Testov
339eacce1b
* grub-core/video/fb/video_fb.c: Merge two blit functions
...
into one.
2013-11-05 21:46:16 +04:00
Vladimir Serbinenko
810f991b9e
* grub-core/term/terminfo.c: Add sequences for home and end.
2013-11-05 02:44:31 +01:00
Vladimir Serbinenko
386571a24b
* grub-core/lib/legacy_parse.c: Fix handling of hercules and add
...
graphics console.
2013-11-05 02:43:27 +01:00
Vladimir Serbinenko
3fe63754d2
* grub-core/video/i386/pc/vga.c: Fix double bufferring and
...
add mode 0x12.
2013-11-05 02:41:50 +01:00
Vladimir Serbinenko
46522fb7bd
* grub-core/commands/i386/nthibr.c (GRUB_MOD_INIT): Fix typo in command
...
name.
2013-11-04 14:27:09 +01:00
Andrey Borzenkov
e7d09ac4f7
enable emuusb and emupci on emu platform only
...
Also explicitly disable them in configure unless built for emu platform.
Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
2013-11-04 16:53:39 +04:00
Peter Lustig
9b5d4eed31
* grub-core/commands/i386/nthibr.c: New command.
2013-11-04 01:47:37 +01:00
Vladimir Serbinenko
79054c1d1e
* grub-core/tests/video_checksum.c: Add 2560x1440 mode to testing.
2013-11-04 00:40:14 +01:00
Vladimir Serbinenko
1106c3f072
* grub-core/commands/verify.c: Add RSA support.
2013-11-03 18:50:01 +01:00
Vladimir Serbinenko
bed78ef4e6
Revert "Attempts at ZFS options"
...
It was accidently committed to wrong branch
This reverts commit 0ee5cdfe9f
.
2013-11-03 16:52:33 +01:00
Vladimir Serbinenko
0ee5cdfe9f
Attempts at ZFS options
2013-11-03 16:40:32 +01:00
Vladimir Serbinenko
a1dcc2cb98
* grub-core/disk/ahci.c (grub_ahci_pciinit): Detect ATAPI devices.
...
* grub-core/disk/ata.c (grub_ata_identify): Use atapi_identify if
device is known to be ATAPI.
2013-11-03 13:52:36 +01:00
Vladimir Serbinenko
5ade4a4248
* grub-core/commands/loadenv.c (grub_cmd_save_env): Remove unset
...
variables.
2013-11-03 06:17:31 +01:00
Vladimir Serbinenko
6cd660435e
* grub-core/gettext/gettext.c (grub_gettext_init_ext): Ignore errors
...
if language is English.
2013-11-03 05:42:02 +01:00
Vladimir Serbinenko
090d7c81cf
* grub-core/osdep/linux/getroot.c: Fix cast-align problems.
2013-11-03 00:43:49 +01:00
neil
a86865891a
* grub-core/osdep/linux/blocklist.c: Include linux/types.h for some
...
broken linux headers.
2013-11-02 22:19:34 +01:00
Vladimir Serbinenko
e25f8e1f37
* grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Don't do
...
Reed-Solomon recovery if more than half of redundancy info is 0.
2013-11-02 21:28:03 +01:00
Vladimir Serbinenko
1397f0b520
* grub-core/fs/fshelp.c (find_file): Save ctx->next when calling
...
find_file recursively for symlink.
2013-11-02 20:29:02 +01:00
Vladimir Serbinenko
e7b66a28de
* grub-core/loader/sparc64/ieee1275/linux.c (get_physbase): Fix
...
signature.
2013-11-02 18:57:35 +01:00
Vladimir Serbinenko
203f53fbbe
* grub-core/disk/efi/efidisk.c (grub_efidisk_readwrite): Remove unused
...
variable.
2013-11-02 18:50:39 +01:00
Vladimir Serbinenko
f169f65e75
* grub-core/fs/hfspluscomp.c (hfsplus_read_compressed_real): Call
...
file_progress_read_hook.
* grub-core/fs/ntfscomp.c (hfsplus_read_compressed_real): Likewise.
2013-11-02 16:30:53 +01:00
Vladimir Serbinenko
bf0f3a8c3e
* grub-core/fs/tar.c (grub_cpio_read): Add read_hook.
2013-11-01 23:33:59 +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
896f913571
* grub-core/term/serial.c (options), (grub_cmd_serial): Fix handling
...
of SI suffixes.
2013-11-01 19:46:30 +01:00
Vladimir Serbinenko
89295a0628
Support --base-clock for serial command to handle weird cards with
...
non-standard base clock.
2013-11-01 19:33:22 +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
8fbe5c7df7
* grub-core/fs/zfs/zfs.c (nvpair_name): Use correct type for size.
...
(check_pool_label): Likewise. Fixes overflow.
(nvlist_find_value): Fix comparison.
2013-11-01 18:41:52 +01:00
Vladimir Serbinenko
e54b8f536b
* include/grub/misc.h (grub_strcat): Removed. All users changed to
...
more appropriate functions.
2013-11-01 16:27:37 +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
a602dc5425
* grub-core/io/gzio.c (huft_build): Use zalloc for safety.
...
(initialize_tables): reset tl and td to NULL after freeing.
2013-10-30 11:58:00 +01:00
Vladimir Serbinenko
93c120754a
* grub-core/loader/multiboot_mbi2.c: Implement network tag.
2013-10-28 15:53:39 +01:00
Vladimir Serbinenko
1ca4b75ec2
* grub-core/loader/multiboot_mbi2.c: Add EFI memory map to the list
...
of supported tags.
2013-10-28 15:40:34 +01:00
Vladimir Serbinenko
329550c4a9
* grub-core/loader/multiboot_mbi2.c: Implement EFI memory map.
2013-10-28 15:37:00 +01:00
Vladimir Serbinenko
00bfa988fc
* grub-core/loader/multiboot.c: Add support for multiboot kernels
...
quirks.
2013-10-28 15:23:46 +01:00
Vladimir Serbinenko
81afc5cce6
* grub-core/loader/i386/linux.c (allocate_pages): Allocate at least
...
a page in protected space.
2013-10-28 14:30:29 +01:00
Vladimir Serbinenko
cb3c4a4722
* grub-core/loader/multiboot.c (grub_cmd_module): Don't attempt to
...
allocate space for zero-sized modules.
2013-10-28 14:27:19 +01:00
Vladimir Serbinenko
954f7bf5ec
* grub-core/loader/xnu_resume.c (grub_xnu_resume): Reject empty images.
2013-10-28 14:25:22 +01:00
Francesco Lavra
526d3d25e2
* grub-core/lib/fdt.c: Fix miscellaneous bugs.
2013-10-28 13:52:32 +01:00
Vladimir Serbinenko
74124c344c
* grub-core/lib/progress.c (grub_file_progress_hook_real): Add missing
...
safeguards. Fixes a crash with i386/pc/console.c.
2013-10-28 13:37:40 +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
effe203677
* grub-core/osdep/linux/getroot.c: Add new btrfs defines.
2013-10-28 01:45:06 +01:00
Vladimir Serbinenko
82591fa6e7
Make / in btrfs refer to real root, not the default volume.
...
Modify mkrelpath to work even if device is mounted with subvolid option.
2013-10-28 01:37:19 +01:00
Andrey Borzenkov
e11cb7268e
Add grub-core/kern/disk_common.c to extra_dist
2013-10-27 22:55:11 +04:00
Vladimir Serbinenko
c430e00b80
* grub-core/net/tftp.c: Retransmit ack when rereceiving old packet.
...
Try to handle more than 0xFFFF packets.
Reported by: Bernhard Übelacker <bernhardu>.
He also spotted few overflows in first version of this patch.
2013-10-27 19:15:57 +01:00
Vladimir Serbinenko
cf8d6bbd9e
* grub-core/net/tftp.c: Retransmit ack when rereceiving old packet.
...
Try to handle more than 0xFFFF packets.
2013-10-27 19:15:37 +01:00
Vladimir Serbinenko
8b46b0ea36
* grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Accept "sd", "cd",
...
"vnd", "rd" and "fd" disks.
2013-10-27 18:59:27 +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
03dcac7f76
* grub-core/lib/legacy_parse.c: Add support for "nd" disk.
2013-10-27 02:50:31 +02: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
Vladimir Serbinenko
2a8a75855c
* grub-core/fs/iso9660.c: Replace strncat with memcpy.
...
* include/grub/misc.h: Remove strncat.
* grub-core/lib/posix_wrap/string.h: Likewise.
2013-10-26 12:49:51 +02:00
Vladimir Serbinenko
10bafa1c38
* grub-core/normal/datetime.c (grub_unixtime2datetime): Fix mishandling
...
of first three years after start of validity of unixtime.
2013-10-26 02:47:40 +02:00