Re: [PATCH] Call a module's init function only after the module is successfully added

2009-07-25 Thread Robert Millan
On Wed, Jul 22, 2009 at 02:25:14PM -0400, Pavel Roskin wrote: > On Wed, 2009-07-22 at 19:36 +0200, Robert Millan wrote: > > On Tue, Jul 21, 2009 at 04:02:48PM -0400, Pavel Roskin wrote: > > > > > > By the way, kern/dl.c have some unused functions (grub_dl_unload_all). > > > > grub_machine_fini()

Re: [PATCH] Call a module's init function only after the module is successfully added

2009-07-22 Thread Pavel Roskin
On Wed, 2009-07-22 at 19:36 +0200, Robert Millan wrote: > On Tue, Jul 21, 2009 at 04:02:48PM -0400, Pavel Roskin wrote: > > > > By the way, kern/dl.c have some unused functions (grub_dl_unload_all). > > grub_machine_fini() used to rely on this, but at some point we concluded it > wasn't useful to

Re: [PATCH] Call a module's init function only after the module is successfully added

2009-07-22 Thread Robert Millan
On Tue, Jul 21, 2009 at 04:02:48PM -0400, Pavel Roskin wrote: > > By the way, kern/dl.c have some unused functions (grub_dl_unload_all). grub_machine_fini() used to rely on this, but at some point we concluded it wasn't useful to change machine state when loading an OS, other than things specific

Re: [PATCH] Call a module's init function only after the module is successfully added

2009-07-21 Thread Pavel Roskin
On Tue, 2009-07-21 at 16:02 -0400, Pavel Roskin wrote: > By the way, kern/dl.c have some unused functions (grub_dl_unload_all). I was wrong, I didn't check assembler files. > Also, it looks like the memory for the module information (grub_dl_t) is > allocated twice - first in grub_dl_load_core(),

Re: [PATCH] Call a module's init function only after the module is successfully added

2009-07-21 Thread Pavel Roskin
On Mon, 2009-07-20 at 21:00 -0700, Joe Auricchio wrote: > Hi, > > * kern/dl.c (grub_dl_load_core): Call grub_dl_call_init only after > successful grub_dl_add > > With this patch the module's init function will no longer be called: > - if the module is already loaded > - if malloc fails in grub_dl

[PATCH] Call a module's init function only after the module is successfully added

2009-07-20 Thread Joe Auricchio
Hi, * kern/dl.c (grub_dl_load_core): Call grub_dl_call_init only after successful grub_dl_add With this patch the module's init function will no longer be called: - if the module is already loaded - if malloc fails in grub_dl_add - before the module is added to grub_dl_head The first two are er