> On Tue, Jun 14, 2016 at 12:33 PM, Ady via Syslinux <syslinux at zytor.com> wrote: > > > >> > kernel.c:new_linux_kernel() to load_linux.c:bios_boot_linux() because > >> > there is no convenient way in new_linux_kernel() to control the boot > >> > flags value. > >> > >> This is the part that has me questioning things and trying to recall > >> if any other KERNEL-like directives ever utilize keeppxe. > >> > > > > @Gene, > > > > Not being a developer myself, I don't understand this "other > > KERNEL-like directives" sentence. I do know what "kernel-like > > Those directives which acts like KERNEL, specifying a binary to > execute. BOOT BSS COM32 COMBOOT CONFIG FDIMAGE LINUX LOCALBOOT PXE. > > > directives" means, but I do not know which one is the one you are > > referring to here, and why "_other_ KERNEL-like directives" would be a > > I'm referring to all of the above collectively. > > > concern. I mean, other than the behavior regarding file name > > extensions, shouldn't the KERNEL-like directives relevant in this case > > be equivalent to each other? (FWIW, I say "relevant" because I am > > assuming that the "CONFIG" and the "LOCALBOOT" directives are not so > > relevant in this context; are they?). > > KERNEL guesses what the proper loading method is and should generally > be avoided. A few years back, a distribution had a kernel that ended > in ".0" while using KERNEL resulting in PXE behavior instead of LINUX. >Perhaps I wasn't clear in my question. As I said, I _do_ know what "KERNEL-like directives" means, which ones they are, and their behavior regarding file name extensions. The part that I did _not_ understand is (other than not being able to understand the code itself, since I am not a dev.): "...if any other KERNEL-like directives ever utilize keeppxe." When you wrote "any other..." I took it as "there is (at least) _one_ kernel-like directive that is related or used or mentioned in the code you were referring to, and then there are _other_ kernel-like directives that were not explicitly related / used / mentioned in the code, and that you were not sure whether any (one) of these _other_ kernel-like directives ever use / parse keeppxe (too). So my thought (or my understanding from your wording) was that there seems to be possible that one kernel-like directive might have one behavior (or capabilities) regarding keeppxe and other kernel-like directives might behave differently than the first one. If my interpretation (of your wording) were to be correct, then it would imply that there are differences between some kernel-like directives (other than the different behaviors regarding file name extensions). If such different behavior (in response or in relation to using the keeppxe option) exists in some kernel-like directives, I wasn't aware of it and your sentence confused me. I was asking for clarification, because my aforementioned interpretation of your words seems to be contradicting my prior understanding of kernel-like directives. Hopefully, this email clarifies my question. TIA, Ady. PS: Considering that linux.c32 is based on the LINUX directive (which is a kernel-like directive) with some additions, perhaps linux.c32 should (also) get the capability of parsing / using keeppxe?
On Wed, Jun 15, 2016 at 1:02 PM, Ady via Syslinux <syslinux at zytor.com> wrote:> >> On Tue, Jun 14, 2016 at 12:33 PM, Ady via Syslinux <syslinux at zytor.com> wrote: >> > >> >> > kernel.c:new_linux_kernel() to load_linux.c:bios_boot_linux() because >> >> > there is no convenient way in new_linux_kernel() to control the boot >> >> > flags value. >> >> >> >> This is the part that has me questioning things and trying to recall >> >> if any other KERNEL-like directives ever utilize keeppxe. >> >> >> > >> > @Gene, >> > >> > Not being a developer myself, I don't understand this "other >> > KERNEL-like directives" sentence. I do know what "kernel-like >> >> Those directives which acts like KERNEL, specifying a binary to >> execute. BOOT BSS COM32 COMBOOT CONFIG FDIMAGE LINUX LOCALBOOT PXE. >> >> > directives" means, but I do not know which one is the one you are >> > referring to here, and why "_other_ KERNEL-like directives" would be a >> >> I'm referring to all of the above collectively. >> >> > concern. I mean, other than the behavior regarding file name >> > extensions, shouldn't the KERNEL-like directives relevant in this case >> > be equivalent to each other? (FWIW, I say "relevant" because I am >> > assuming that the "CONFIG" and the "LOCALBOOT" directives are not so >> > relevant in this context; are they?). >> >> KERNEL guesses what the proper loading method is and should generally >> be avoided. A few years back, a distribution had a kernel that ended >> in ".0" while using KERNEL resulting in PXE behavior instead of LINUX. >> > > Perhaps I wasn't clear in my question. > > As I said, I _do_ know what "KERNEL-like directives" means, which ones > they are, and their behavior regarding file name extensions. > > The part that I did _not_ understand is (other than not being able to > understand the code itself, since I am not a dev.): > > "...if any other KERNEL-like directives ever utilize keeppxe." > > When you wrote "any other..." I took it as "there is (at least) _one_ > kernel-like directive that is related or used or mentioned in the code > you were referring to, and then there are _other_ kernel-like > directives that were not explicitly related / used / mentioned in the > code, and that you were not sure whether any (one) of these _other_ > kernel-like directives ever use / parse keeppxe (too).Just glancing at file names and function names, I believe this patch makes it ONLY used for the loader method of LINUX.> So my thought (or my understanding from your wording) was that there > seems to be possible that one kernel-like directive might have one > behavior (or capabilities) regarding keeppxe and other kernel-like > directives might behave differently than the first one. If my > interpretation (of your wording) were to be correct, then it would > imply that there are differences between some kernel-like directives > (other than the different behaviors regarding file name extensions). If > such different behavior (in response or in relation to using the > keeppxe option) exists in some kernel-like directives, I wasn't aware > of it and your sentence confused me. > > I was asking for clarification, because my aforementioned > interpretation of your words seems to be contradicting my prior > understanding of kernel-like directives. > > Hopefully, this email clarifies my question. > > TIA, > Ady. > > PS: Considering that linux.c32 is based on the LINUX directive (which > is a kernel-like directive) with some additions, perhaps linux.c32 > should (also) get the capability of parsing / using keeppxe?Actually, reverse. There was an older LINUX method but, instead of outright replacement, someone choose to implement the C-based loader functions with linux.c32 then later move/copy that code into the core. This allowed testing/debugging of the new C-based functions and comparison against the old ASM code. So the loader method of LINUX is based off of the linux.c32 module. -- -Gene
> On Wed, Jun 15, 2016 at 1:02 PM, Ady via Syslinux <syslinux at zytor.com> wrote: > > > >> On Tue, Jun 14, 2016 at 12:33 PM, Ady via Syslinux <syslinux at zytor.com> wrote: > >> > > >> >> > kernel.c:new_linux_kernel() to load_linux.c:bios_boot_linux() because > >> >> > there is no convenient way in new_linux_kernel() to control the boot > >> >> > flags value. > >> >> > >> >> This is the part that has me questioning things and trying to recall > >> >> if any other KERNEL-like directives ever utilize keeppxe. > >> >> > >> > > >> > @Gene, > >> > > >> > Not being a developer myself, I don't understand this "other > >> > KERNEL-like directives" sentence. I do know what "kernel-like > >> > >> Those directives which acts like KERNEL, specifying a binary to > >> execute. BOOT BSS COM32 COMBOOT CONFIG FDIMAGE LINUX LOCALBOOT PXE. > >> > >> > directives" means, but I do not know which one is the one you are > >> > referring to here, and why "_other_ KERNEL-like directives" would be a > >> > >> I'm referring to all of the above collectively. > >> > >> > concern. I mean, other than the behavior regarding file name > >> > extensions, shouldn't the KERNEL-like directives relevant in this case > >> > be equivalent to each other? (FWIW, I say "relevant" because I am > >> > assuming that the "CONFIG" and the "LOCALBOOT" directives are not so > >> > relevant in this context; are they?). > >> > >> KERNEL guesses what the proper loading method is and should generally > >> be avoided. A few years back, a distribution had a kernel that ended > >> in ".0" while using KERNEL resulting in PXE behavior instead of LINUX. > >> > > > > Perhaps I wasn't clear in my question. > > > > As I said, I _do_ know what "KERNEL-like directives" means, which ones > > they are, and their behavior regarding file name extensions. > > > > The part that I did _not_ understand is (other than not being able to > > understand the code itself, since I am not a dev.): > > > > "...if any other KERNEL-like directives ever utilize keeppxe." > > > > When you wrote "any other..." I took it as "there is (at least) _one_ > > kernel-like directive that is related or used or mentioned in the code > > you were referring to, and then there are _other_ kernel-like > > directives that were not explicitly related / used / mentioned in the > > code, and that you were not sure whether any (one) of these _other_ > > kernel-like directives ever use / parse keeppxe (too). > > Just glancing at file names and function names, I believe this patch > makes it ONLY used for the loader method of LINUX. >OK, now I am starting to understand your original wording. Considering that the KERNEL directive used to be thought as "generic" (and, in some cases, it used to be recommended by some people, exactly for the same reasons we usually see its use being discouraged), then we should consider making "keeppxe" available at least for the KERNEL directive, if not for all the group, as it would reduce potential confusions. That is, if the proposed patch / concept is actually implemented.> > So my thought (or my understanding from your wording) was that there > > seems to be possible that one kernel-like directive might have one > > behavior (or capabilities) regarding keeppxe and other kernel-like > > directives might behave differently than the first one. If my > > interpretation (of your wording) were to be correct, then it would > > imply that there are differences between some kernel-like directives > > (other than the different behaviors regarding file name extensions). If > > such different behavior (in response or in relation to using the > > keeppxe option) exists in some kernel-like directives, I wasn't aware > > of it and your sentence confused me. > > > > I was asking for clarification, because my aforementioned > > interpretation of your words seems to be contradicting my prior > > understanding of kernel-like directives. > > > > Hopefully, this email clarifies my question. > > > > TIA, > > Ady. > > > > PS: Considering that linux.c32 is based on the LINUX directive (which > > is a kernel-like directive) with some additions, perhaps linux.c32 > > should (also) get the capability of parsing / using keeppxe? > > Actually, reverse. There was an older LINUX method but, instead of > outright replacement, someone choose to implement the C-based loader > functions with linux.c32 then later move/copy that code into the core. > This allowed testing/debugging of the new C-based functions and > comparison against the old ASM code. So the loader method of LINUX is > based off of the linux.c32 module. >Yes, I knew that :). But, nowadays, after several years from that initial testing / debugging period, I decided to simplify my wording. The fact that, originally, the initial development was slowly introduced to linux.c32 and only then it was copied / moved / ported to the LINUX directive, instead of the other way around, should not change the main idea: if the LINUX directive would be capable of using / parsing "keeppxe", then it might make sense to have the same capability in linux.c32 (in addition to mboot.c32 and chain.c32). FWIW, in Syslinux v.4.05, the entry for booting Reactos from pxelinux.0 with chain.c32 is: COM32 chain.c32 APPEND file=freeldr.sys seg=0x0F80 keeppxe which has been failing since Syslinux v.5.+.> -- > -GeneTIA, Ady.