Vladimir Serbinenko
ef02b4ca93
multiboot: Simplify to avoid confusing assignment.
...
Found by: Coverity scan.
2015-01-26 09:43:52 +01:00
Vladimir Serbinenko
1e0d718371
bsd: Add missing null-pointer check.
...
Found by: Coverity scan.
2015-01-26 09:42:42 +01:00
Vladimir Serbinenko
b666e01b9c
* grub-core/loader/i386/xnu.c (guessfsb): Avoid division by 0.
2015-01-21 17:42:14 +01:00
Vladimir Serbinenko
59d4036594
Replace explicit sizeof divisions by ARRAY_SIZE.
2015-01-21 17:37:31 +01:00
Andrei Borzenkov
3173c7501c
grub-core/loader/i386/xen_fileXX.c: memory leak in grub_xen_get_infoXX
...
CID: 73645, 73782
2014-12-01 21:23:54 +03:00
Andrei Borzenkov
9a67e1ac8e
Use full initializer for initrd_ctx to avoid fatal warnings with older GCC
...
struct ... foo = { 0, } is valid initializer, but older GCC emits
warning which is fatal error due to -Werror=missing-field-initializer.
So simply use full initializer to avoid these errors. This was fixed
probably in GCC 4.7.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36750
2014-10-14 20:12:15 +04:00
Andrey Borzenkov
954fe77163
cleanup: grub_cpu_to_XXX_compile_time for constants
...
This tries to catch all cases where grub_cpu_to_XXX was used for constant
expressions (including sizeof).
2014-09-22 20:47:10 +04:00
Peter Jones
631a820038
Initialized initrd_ctx so we don't free a random pointer from the stack.
...
Currently, if "linux" fails, the "goto fail;" in grub_cmd_initrd sends us
into grub_initrd_close() without grub_initrd_init() being called, and thus
it never clears initrd_ctx->components. grub_initrd_close() then frees that
address, which is stale data from the stack. If the stack happens to have a
stale *address* there that matches a recent allocation, then you'll get a
double free later.
So initialize the memory up front.
Signed-off-by: Peter Jones <pjones@redhat.com>
2014-09-21 10:36:42 +04:00
Stephane Rochoy
15bd333e10
* grub-core/loader/i386/bsd.c (grub_netbsd_boot): Pass pointer to
...
EFI system table.
2014-06-22 01:35:52 +02:00
Vladimir Serbinenko
8063ce197f
Replace few instances of memcmp/memcpy in the code that should be grub_memcmp/grub_memcpy.
2014-04-04 07:58:42 +02:00
Fu Wei
68f17b2b30
* grub-core/loader/arm64/linux.c: Remove redundant "0x".
2014-03-26 08:13:07 +01:00
Vladimir Serbinenko
86402b4e0f
* include/grub/i386/openbsd_bootarg.h: Add addr and frequency fields.
...
* grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Fill addr field.
Suggested by: Markus Müller.
2014-02-28 10:50:05 +01:00
Vladimir Serbinenko
4a70fed815
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi): Limit
...
location to 640K.
2014-02-28 09:48:57 +01:00
Vladimir Serbinenko
61c8482b20
Fix several translatable strings.
...
Suggested by: D. Prévot.
2014-01-24 18:20:27 +01:00
Andrey Borzenkov
f371dd5da8
fix include loop on MinGW due to libintl.h pulling stdio.h
...
In file included from ./include/grub/dl.h:23:0,
from grub-core/lib/libgcrypt-grub/cipher/rfc2268.c:3:
./include/grub/list.h:34:18: warning: conflicting types for 'grub_list_push' [en
abled by default]
void EXPORT_FUNC(grub_list_push) (grub_list_t *head, grub_list_t item);
^
./include/grub/symbol.h:68:25: note: in definition of macro 'EXPORT_FUNC'
# define EXPORT_FUNC(x) x
^
In file included from ./include/grub/fs.h:30:0,
from ./include/grub/file.h:25,
from ./grub-core/lib/posix_wrap/stdio.h:23,
from c:\mingw\include\libintl.h:314,
from ./include/grub/i18n.h:33,
from ./include/grub/misc.h:27,
from ./include/grub/list.h:25,
from ./include/grub/dl.h:28,
from grub-core/lib/libgcrypt-grub/cipher/rfc2268.c:3:
./include/grub/partition.h:106:3: note: previous implicit declaration of 'grub_l
ist_push' was here
grub_list_push (GRUB_AS_LIST_P (&grub_partition_map_list),
^
list.h needs just ATTRIBUTE_ERROR from misc.h; split compiler features
into separate file grub/compiler.h and include it instead.
2014-01-18 21:22:57 +04:00
Leif Lindholm
4d21c10199
arm64: set correct length of device path end entry
...
The length of the Device Path End entry in the grub_linux_boot()
function was incorrectly set to 0. This triggers an assert failure
in debug builds of Tianocore.
Set it to sizeof (grub_efi_device_path_t).
2014-01-07 17:52:50 +00:00
Vladimir Serbinenko
da98622662
Declare GRUB_EFI_VENDOR_APPLE_GUID.
2013-12-24 14:14:19 +01:00
Vladimir Serbinenko
74fa9ac1a6
* include/grub/arm64/linux.h: Remove leftovers. Add missing prefixes.
2013-12-23 05:56:31 +01:00
Vladimir Serbinenko
62956fe7b9
* grub-core/loader/arm64/linux.c: Add missing bracket.
2013-12-23 05:34:13 +01:00
Vladimir Serbinenko
bbc52c228f
Enable cache on ARM U-Boot port.
...
Without it the port is reidiculously slow.
2013-12-23 05:01:58 +01:00
Leif Lindholm
30a9ab952f
arm64: add EFI Linux loader
...
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
2013-12-22 18:38:44 +00:00
Vladimir Serbinenko
37f617c025
* grub-core/loader/arm/linux.c: Pass arguments through on ATAG
...
platforms.
2013-12-22 18:14:00 +01:00
Vladimir Serbinenko
0d8b81f89a
Fix ARM Linux Loader on non-FDT platforms.
2013-12-22 00:30:19 +01:00
Vladimir Serbinenko
bfdfeb2508
Clarify several translatable messages.
2013-12-21 01:41:16 +01:00
Vladimir Serbinenko
72c9a50773
Remove xen VFB.
...
Due to XEN bug it prevents Linux boot. Remove it at least, until
workaround is found.
2013-12-18 18:43:09 +01:00
Vladimir Serbinenko
64dd5fdc00
Add missing license section in macbless.mod and macho.mod.
2013-12-18 17:11:11 +01:00
Vladimir Serbinenko
9246d5c8a4
* grub-core/commands/fileXX.c: Silence cast-align.
...
* grub-core/loader/i386/xen_fileXX.c: Likewise.
2013-12-18 07:40:43 +01:00
Vladimir Serbinenko
bc8dd11952
* grub-core/loader/arm/linux.c: Use common initrd functions.
2013-12-18 07:34:28 +01:00
Vladimir Serbinenko
57a691b7e7
Decrease number of strings to translate.
2013-12-18 07:26:13 +01:00
Vladimir Serbinenko
184c61ddce
Add Radeon Yeeloong 3A support.
2013-12-17 22:52:04 +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
1f032575bb
* grub-core/loader/multiboot_mbi2.c: Implement special value for load_addr.
2013-12-17 15:14:50 +01:00
Vladimir Serbinenko
3086175489
Implement Truecrypt ISO loader.
2013-12-17 14:45:46 +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
71669c3b76
Implement XEN VFB support.
2013-12-17 13:07:26 +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
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
0df77d793c
Implement multiboot2 EFI BS specification.
2013-12-13 12:56:14 +01:00
Vladimir Serbinenko
44bbfa33b8
Propagate the EFI commits to x86-efi specific parts.
2013-12-11 16:11:17 +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
d5bab2c0e1
* grub-core/loader/i386/bsd.c: Remove variable length arrays.
2013-11-12 16:14:33 +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
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
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
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
e7b66a28de
* grub-core/loader/sparc64/ieee1275/linux.c (get_physbase): Fix
...
signature.
2013-11-02 18:57:35 +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
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
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 'phcoder' Serbinenko
2e4659b810
* grub-core/loader/i386/bsd.c: Remove variable length arrays.
2013-10-20 23:45:43 +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
6de9ee86bf
Pass-through unknown E820 types. It required reorganisation of mmap
...
module.
2013-10-14 16:33:44 +02:00
neil
71764dc8ca
* grub-core/loader/multiboot.c (grub_multiboot_set_console): Always use
...
video if no text is available.
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2013-09-23 13:35:33 +02:00
Vladimir 'phcoder' Serbinenko
f82d79c984
* include/grub/mm.h (grub_extend_alloc): Remove.
...
* grub-core/loader/i386/pc/plan9.c: Use own version of
grub_extend_alloc with appropriate types.
2013-08-22 16:44:20 +02:00
sutre@tahoe
ad1fe3f91f
Always fill bootdisk info and improve check for NetBSD disklabel.
2013-08-16 19:41:33 +02:00
Vladimir 'phcoder' Serbinenko
3719fbc57f
* grub-core/loader/arm/linux.c: Change printf to dprintf.
2013-08-02 22:52:51 +02:00
Vladimir 'phcoder' Serbinenko
ae27e4d323
Merge mainline into arm
2013-07-16 18:43:43 +02:00
Vladimir 'phcoder' Serbinenko
88f8d1463f
* grub-core/loader/multiboot_elfxx.c: Check eip after v2p translation
...
and not before.
Reported by: Leon Drugi.
2013-07-16 18:37:44 +02:00
Vladimir 'phcoder' Serbinenko
99c971afd3
Add support for processed coreboot payload chainloading.
2013-06-16 02:54:37 +02:00
Francesco Lavra
c6a8472baf
Own fdt parsing implementation
2013-05-17 13:45:22 +02:00
Vladimir 'phcoder' Serbinenko
8e71d87482
merge mainline into arm
2013-05-11 10:24:24 +02:00
Vladimir 'phcoder' Serbinenko
fb2666b560
Simplify few strings.
2013-05-07 11:44:15 +02:00
Vladimir 'phcoder' Serbinenko
d22840ec12
Mark few forgotten strings for translation.
2013-05-07 11:41:47 +02:00
Vladimir 'phcoder' Serbinenko
e34092fdf1
* grub-core/loader/linux.c: Use grub_dprintf for debug statements
...
rather than printf.
2013-05-07 11:38:49 +02:00
Vladimir 'phcoder' Serbinenko
095accd14b
* grub-core/loader/i386/linux.c (grub_linux_setup_video): Add
...
GRUB_VIDEO_ADAPTER_CAPTURE: to handled drived ids.
2013-05-02 18:06:39 +02:00
Vladimir 'phcoder' Serbinenko
02adbb932d
* grub-core/io/lzopio.c: Use GRUB_PROPERLY_ALIGNED_ARRAY.
...
* grub-core/loader/i386/bsd.c: Likewise.
2013-04-28 15:18:50 +02:00
Leon Drugi
43168646d8
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Fix cast in
...
BSS clearing.
2013-04-27 21:16:55 +02:00
Vladimir 'phcoder' Serbinenko
1a40f80c98
* grub-core/loader/i386/linux.c (grub_linux_boot): Default to
...
gfxpayload=keep if cbfb is active.
2013-04-24 14:53:00 +02:00
Vladimir 'phcoder' Serbinenko
45fbd9a23f
Add missing video ids to coreboot and ieee1275 video.
2013-04-24 14:44:15 +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
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
cc2fa5ec1e
* grub-core/loader/i386/linux.c: Remove useless leftover pointer.
2013-04-14 19:01:23 +02:00
Leif Lindholm
389b31cd71
Initial import of Leif's work
2013-04-07 02:41:07 +02: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
92750e4c60
Add ability to generate newc additions on runtime.
2013-03-22 21:01:28 +01:00
Vladimir 'phcoder' Serbinenko
46ecfc49b6
* grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Use
...
multiplication rather than division.
2013-03-10 20:37:41 +01:00
Vladimir 'phcoder' Serbinenko
a9c94590dd
* grub-core/loader/i386/pc/plan9.c (fill_disk): Fix types to use
...
intended shifts rather than division.
2013-03-10 19:27:50 +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
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
73bf57e2c8
Make elfload not use hooks. Opt for flags and iterators instead.
2013-03-02 16:45:57 +01:00
Vladimir 'phcoder' Serbinenko
e230377407
* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Fix compilation
...
for 64-bit platforms.
2013-03-01 10:39:41 +01:00
Vladimir 'phcoder' Serbinenko
0789b67232
Enable linux16 on non-BIOS systems for i.a. memtest.
...
* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Handle hole at 0
correctly.
* grub-core/Makefile.core.def (linux16): Enable on all x86 flavours.
2013-02-28 22:48:41 +01:00
Vladimir 'phcoder' Serbinenko
43c918828d
* grub-core/loader/machoXX.c: Remove nested functions.
2013-02-27 20:56:23 +01:00
C. Masloch
08bcec5020
Improve FreeDOS direct loading support compatibility.
...
* include/grub/i386/relocator.h (grub_relocator16_state):
New member ebp.
* grub-core/lib/i386/relocator.c (grub_relocator16_ebp): New extern
variable.
(grub_relocator16_boot): Handle %ebp.
* grub-core/lib/i386/relocator16.S: Likewise.
* grub-core/loader/i386/pc/freedos.c:
Load BPB to pass kernel which partition to load from.
Check that kernel file is not too large.
Set register dl to BIOS unit number as well.
2013-01-27 16:07:25 +01:00
Colin Watson
ed12a00309
Fix powerpc and sparc64 build failures caused by un-nesting memory
...
map iterators.
2013-01-21 14:41:06 +00: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
6a0debbd91
* grub-core/loader/i386/linux.c (grub_cmd_initrd): Don't add the
...
initrd size to addr_min, since the initrd will be allocated after
this address.
2013-01-20 23:03:35 +00:00