summaryrefslogtreecommitdiff
path: root/core/runkernel.inc
Commit message (Collapse)AuthorAgeFilesLines
* core: fix "sector size" confusionsyslinux-4.00-pre45H. Peter Anvin2010-05-141-2/+2
| | | | | | | | | | | Fix the case where the "sector size" used by the pm filesystem driver isn't the same thing as the SECTOR_SIZE/SECTOR_SHIFT macros used in the assembly code. This is a per-device property, and in the particular case of isolinux hybrid, they are not even currently the same (for all others, they are the same for now, but not necessarily in the future.) Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* core: get rid of unmangle_name completelysyslinux-4.00-pre31H. Peter Anvin2010-02-281-9/+4
| | | | | | | | | | | | The notion of "mangle name" is now restricted to producing a canonical representation, e.g. changing \ -> / for FAT filesystems. However, the resulting mangled name is now always human-readable, so there never is any reason to unmangle a name. Get rid of not just the mangling, but of the resulting unmangled-name buffers and so on. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* core: let xfer_buf_seg, real_mode_seg be assigned by the linkerH. Peter Anvin2010-02-211-3/+3
| | | | | | Use the linker to assign xfer_bug_seg and real_mode_seg. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* config: allow a chdir at the time a new configuration file is loadedH. Peter Anvin2010-02-141-6/+4
| | | | | | | | If a directory name/path prefix is appended to a loaded configuration file, do a chdir at that point. We finally have all the mechanism to do this right. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* fs: move to a chdir()-based mechanism for managing cwdsyslinux-4.00-pre19H. Peter Anvin2010-02-131-1/+1
| | | | | | | | | | | | Introduce a chdir() system and a way to obtain absolute pathnames. This should allow us to set the current base directory (filename prefix for PXE) without breaking access to the configuration file. As a side benefit, for the "normal" filesystems we no longer need magic hacks to figure out where we should set our current working directory. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Merge commit 'origin/master' into fscH. Peter Anvin2010-02-011-4/+6
|\
| * core: set QUIET_FLAG if we load Linux "quiet"H. Peter Anvin2010-02-011-4/+6
| | | | | | | | | | | | | | | | If we see the "quiet" flag for the Linux kernel, also suppress the early Linux kernel messages; for people who want a completely clean boot. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Merge branch 'master' into fscsyslinux-4.00-pre12H. Peter Anvin2010-01-271-4/+4
|\ \ | |/ | | | | | | | | | | Resolved Conflicts: core/ldlinux.asm Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * runkernel: we only look at the first letter in vga=...H. Peter Anvin2010-01-251-4/+4
| | | | | | | | | | | | | | | | We only look at the first letter in the handling of the special vga= strings, make that manifest in the assembly code so we don't end up with unnecessary warnings. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Merge commit 'origin/master' into fscH. Peter Anvin2010-01-241-5/+11
|\ \ | |/
| * Add support for "vga=current"H. Peter Anvin2010-01-221-4/+7
| | | | | | | | | | | | "vga=current" is a user-friendly synonym for "vga=0x0f04". Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * core: don't reset the video mode when invoking the kernelH. Peter Anvin2010-01-221-1/+4
| | | | | | | | | | | | | | | | Don't reset the video mode when invoking the kernel if we're booting quiet -- it breaks "vga=current" which some distros use for a smooth graphical transition all the way into the kernel. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Merge branch 'master' into fscH. Peter Anvin2009-11-061-2/+0
|\ \ | |/ | | | | | | | | | | | | | | | | | | Conflicts: com32/modules/Makefile core/pxelinux.asm core/serirq.inc Note: hardwired options will need to be re-implemented in PXELINUX. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Merge branch 'master' into fscH. Peter Anvin2009-09-041-0/+2
|\ \
| * | core: add missing calls to cleanup_hardwaresyslinux-3.83-pre10H. Peter Anvin2009-09-041-0/+2
| |/ | | | | | | | | | | | | As we're starting to rely more and more on a modified hardware state, it is really important to clean up on all exit paths. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Core: unmangle_name convertedLiu Aleaxander2009-08-081-1/+1
| | | | | | | | Signed-off-by: Liu Aleaxander <Aleaxander@gmail.com>
* | Core:EXTLINUX: convert mangle name to CLiu Aleaxander2009-06-071-1/+1
| |
* | Core:EXTLINUX: convert the getfssec function to CLiu Aleaxander2009-06-061-1/+1
| | | | | | | | | | | | the main file read function (getfssec) has been converted to C. Fow now, abort 90% stuff have been converted to C. The next is to clean the code and convert the rest.
* | Core: Convert the searchdir function to CLiu Aleaxander2009-06-051-1/+1
| | | | | | | | | | | | | | | | | | for now, almost all the stuff related to EXT have been converted to C, and fow my (limit) test, it works well. The getfssec function haven't converted to C, because it also be called from asm file, and I find it's a bit hard to convert it to C. But however, it's my next plan.
* | Avoid clobbering PM code when loading the kernelH. Peter Anvin2009-05-241-7/+7
| | | | | | | | | | | | | | We can't safely use 1 MB to directly load the kernel, so shift the kernel just as we do when loading low. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | core: rename .text, .data and .bss to .text16, .data16, .bss16unify-pmH. Peter Anvin2009-05-131-2/+2
|/ | | | | | | | Rename the .text, .data and .bss sections to .text16, .data16 and .bss16, in anticipation of being linked with compiler-generated 32-bit code, which presumably would like to use the standard section names. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Merge branch 'syslinux-3.7x'H. Peter Anvin2009-04-141-7/+1
|\ | | | | | | | | | | | | | | Conflicts: core/bootsect.inc version Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
| * pxelinux: fix the handling of KeepPXEH. Peter Anvin2009-04-141-7/+1
| | | | | | | | | | | | | | | | KeepPXE was broken in 3.74, because we tried to use both bits 0 and 1, but failed to actually test both bits. Instead, just use bit 0, but move the place where we clear the bits. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | Merge branch 'new-shuffler'H. Peter Anvin2009-04-081-3/+1
|\ \ | |/ |/|
| * Merge branch 'master' into new-shufflerH. Peter Anvin2009-04-041-0/+1
| |\ | | | | | | | | | | | | | | | | | | Conflicts: com32/lib/syslinux/memmap.c Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * | shuffler: first cut of a simpler shuffle routineH. Peter Anvin2009-03-311-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Impact: major restructuring New shuffler routine which runs entirely in protected mode, unlike the old one which would enter PM for the bcopy phase only. This is not only faster, but it greatly reduces the size of the shuffler "critical area". The interfaces to this new shuffler are not yet implemented, so this is a non-functional checkpoint. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | | ipappend: clean up ipappend code; add ipappend to plain cmdlineH. Peter Anvin2009-04-061-7/+2
| |/ |/| | | | | | | | | | | | | ipappend information is needed for the plain cmdline too, since it may be used by linux.c32. While we're at it, clean up the handling of ipappend lines -- we can rather obviously use a loop for them. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Update copyright notices; add Intel notices where appropriateH. Peter Anvin2009-04-041-0/+1
|/ | | | | | | Update copyright notices. Per agreement with my new employer, Intel Corporation, add Intel copyright notices where appropriate. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Fix the new kernel command-line parsersyslinux-3.74-pre14H. Peter Anvin2009-03-301-2/+3
| | | | | | | | | Impact: bug fix We were incorrectly looking at [ds:di] instead of [es:di] for verifying that a command was properly terminated. Fix. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* runkernel: further simplify the command-line parsersyslinux-3.74-pre8H. Peter Anvin2009-03-181-38/+33
| | | | | Further simplifications to the command-line parser, both from a code size and a usability perspective.
* Refactor command line parsing; support "quiet" optionsyslinux-3.74-pre7H. Peter Anvin2009-03-181-81/+138
| | | | | | | | Refactor the command line parser to be more of a general parser instead of treating each option as an ad hoc feature. Suppress the Loading... prompt if "quiet" is specified on the command line. Some messed-up people want it this way.
* runkernel: when computing initrd address, skip fractional pagesH. Peter Anvin2009-03-111-1/+7
| | | | | | | Make sure no part of the initrd extends into memory that is in a fractional page at the end of memory. The kernel may not be able to map such a fractional page, and therefore will be unable to access that memory.
* core/runkernel.inc: remove dead codesyslinux-3.71-pre16Sergey Vlasov2008-07-221-6/+0
| | | | | Signed-off-by: Sergey Vlasov <vsu@altlinux.ru> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Fix initrd overwriting the kernel for some kernel sizesSergey Vlasov2008-07-221-0/+2
| | | | | | | | | | | | | The address in EDI returned by the load_high call used to load the kernel needs to be passed to parse_load_initrd, but the code which clears memory after setup sectors for 1.2.x kernels was corrupting low 16 bits of EDI. In most cases this corruption was not noticed, because with usual setup sizes DI was set to 0xf800, therefore the chance of getting the kernel size such that initrd would actually overwrite the kernel was about 3%. Signed-off-by: Sergey Vlasov <vsu@altlinux.ru> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Fix loading of *.lkrn images from gPXESergey Vlasov2008-07-221-7/+6
| | | | | | | | | | | Attempts to load *.lkrn images were failing with "Not enough memory to load specified image". These images have the su_ramdisk_max header field set to zero, and the code in core/runkernel.inc was limiting MyHighMemSize too early (before the load_high call used to load the main part of the kernel). Signed-off-by: Sergey Vlasov <vsu@altlinux.ru> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Allow the initrd to be specified on a separate linesyslinux-3.71-pre4H. Peter Anvin2008-07-031-0/+7
| | | | | Allow the initrd to be specified on a separate line from command-line options (append). This apparently can help certain tools.
* Mechanically rename the writestr functionsH. Peter Anvin2008-06-151-9/+9
| | | | | | | | | | Mechanically rename the writestr functions: writestr -> writestr_early cwritestr -> writestr ... to reflect which function is more appropriate to call in normal circumstances.
* Whitespace cleanupH. Peter Anvin2008-06-091-1/+1
|
* Move files out of root into core, dos, and utilsH. Peter Anvin2008-05-291-0/+634
Move source files out of the root directory; the root is a mess and has become virtually unmaintainable. The Syslinux core now lives in core/; the Linux and generic utilities has moved into utils/, and copybs.com has moved into dos/; it had to go somewhere, and it seemed as good a place as any.