search for: modules_head

Displaying 7 results from an estimated 7 matches for "modules_head".

2015 Oct 13
0
[PATCH 2/2] core: Fix stack overflow when reloading config
...rtions(+), 1 deletion(-) diff --git a/core/elflink/load_env32.c b/core/elflink/load_env32.c index 492cc09..db19c7a 100644 --- a/core/elflink/load_env32.c +++ b/core/elflink/load_env32.c @@ -55,7 +55,7 @@ void init_module_subsystem(struct elf_module *module) list_add(&module->list, &modules_head); } -__export int start_ldlinux(int argc, char **argv) +static int _start_ldlinux(int argc, char **argv) { int rv; @@ -96,6 +96,62 @@ again: return rv; } +__export int start_ldlinux(int argc, char **argv) +{ + /* These variables are static to survive the longjmp. */ + static int has_jm...
2016 Jan 15
0
Debugging with Qemu
...long" errors. I guess the "set architecture" has to appear after the "target" command. Then if you want the debugging symbols of the COM32 modules things get a bit trickier, and that's where the python scripts get very useful. In the main file you have a symbol named modules_head which is a linked list of struct elf_module. You'll have to load the .elf file with the add-symbol-file command. Unfortunately, this command will only load the the .text section at the precise address given while syslinux load the full ELF file at the base address module->base_address. But...
2016 Jan 13
2
Debugging with Qemu
On Wed, Jan 13, 2016 at 01:22:17AM +0100, Celelibi wrote: > 2016-01-12 22:21 UTC+01:00, Tal Lubko: > > On Mon, Jan 11, 2016 at 07:20:20PM -0500, Shao Miller wrote: > >> > >> Yes, you can print debug-output from custom builds. > >> > > > > Regarding my other question (debugging). > > I know it is possible to use prints for debugging. > > I
2015 Oct 13
5
[PATCH 0/2] Stack overflows when running commands
From: Sylvain Gault <sylvain.gault at gmail.com> Hello there, I propose 2 patches that fix two possible stack overflows either when running a COM32 module or when loading a new config file. I didn't find a better way to do this than to use the infamous setjmp/longjmp functions to restore the stack to a previous state. This makes the logic a bit more complex, but the behavior is not
2012 Mar 23
19
[PATCH 00/19][elflink] Improve compatibility with 4.x
From: Matt Fleming <matt.fleming at intel.com> The following patch series is available at, git://git.zytor.com/users/mfleming/syslinux.git elflink All patches are against the 'elflink' branch. This series fixes a few serious bugs and some behavioural incompatibilities with the 4.x series. Matt Fleming (19): ldlinux: Initialise 'p' before using it. ldlinux: Parse
2013 Oct 15
23
[PATCH 00/21] Upgrade to Lua 5.2.2, add filesystem module and get_key binding
Hi, This series targets automatic boot menu generation, but most of it is the Lua upgrade, because I got tired reading deprecated API docs. It's mostly a straightforward forward port of the earlier Syslinux specific changes to Lua 5.1, except that: * I chose the add a stub getenv() implementation to the COM32 API instead of #ifdefing out all the references in Lua, and * I kept oslib
2012 Apr 17
2
[GIT PULL] elflink warning fixes and auto extension support
...void (*constructor_t) (void); -constructor_t __ctors_start[], __ctors_end[]; - extern char __dynstr_start[]; extern char __dynstr_len[], __dynsym_len[]; extern char __dynsym_start[]; @@ -62,15 +59,6 @@ void init_module_subsystem(struct elf_module *module) list_add(&module->list, &modules_head); } -/* call_constr: initializes sme things related */ -static void call_constr(void) -{ - constructor_t *p; - - for (p = __ctors_start; p < __ctors_end; p++) - (*p) (); -} - int start_ldlinux(char **argv) { int rv; @@ -116,12 +104,12 @@ again: } /* note to self: do _*NOT*_ use stati...