[syslinux] [PULL 0/8] MultiFS suppport for BIOS and EFI
Paulo Alcantara
pcacjr at gmail.com
Wed Jul 22 16:27:22 PDT 2015
So last week I was wondering if XFS was still working -- even with its
last on-disk structure changes -- and it _suprisingly_ worked as
expected. Right, now I can finally get rid of GRUB and use Syslinux to
boot my Linux on EFI from a rootfs with xfs. Shit, I have two
partitions (the first one being the required ESP) so there is no way to
access the other partitions since because Syslinux does not support
multiple disk and/or partitions -- yet.
I completly refused to accept that and then looked at the current status
of MultiFS support; its original implementation only worked on BIOS.
Therefore I started working on EFI support and -- luckily enough -- I
also had Raphael to help me with development and testing.
(I'm really glad to hack Syslinux again. What a great project...)
The MultiFS syntax is basically "(hdX,Y)/path/to/file", where X is disk
number and Y is partition number.
Please test it and report to us if any issue found.
Signed-off-by: Paulo Alcantara <pcacjr at zytor.com>
---
The following changes since commit 8702009fc7a6689432d17d4ea05d9c878452c57a:
efi: rename pxe_handle to image_device_handle (2015-07-19 08:09:10 -0400)
are available in the git repository at:
git://git.zytor.com/users/pcacjr/syslinux.git multifs-for-upstream
for you to fetch changes up to b8ca887baec49b6375e12a2ef5847dd4f2017232:
efi/multifs: fix misuse of static private information (2015-07-22 19:20:43 -0300)
----------------------------------------------------------------
Paulo Alcantara (5):
ldlinux/kernel: contemplate multifs path syntax
efi: add MultiFS support
sys/common: handle multifs paths in findpath()
multifs: add support for both UEFI and BIOS firmware
efi/multifs: fix misuse of static private information
Raphael S. Carvalho (3):
Move partiter from com32/chain to com32/lib/syslinux
core: MultiFS infrastructure added.
Wire up MultiFS support.
com32/chain/Makefile | 2 +-
com32/chain/chain.c | 4 +-
com32/chain/mangle.c | 4 +-
com32/chain/mangle.h | 2 +-
com32/chain/options.c | 4 +-
com32/elflink/ldlinux/kernel.c | 9 ++
com32/elflink/ldlinux/ldlinux.c | 9 ++
com32/include/syslinux/multifs_utils.h | 32 ++++
com32/{chain => include/syslinux}/partiter.h | 0
com32/{chain => include/syslinux}/utility.h | 3 +-
com32/lib/sys/module/common.c | 7 +-
com32/lib/syslinux/multifs_utils.c | 91 +++++++++++
com32/{chain => lib/syslinux}/partiter.c | 6 +-
com32/{chain => lib/syslinux}/utility.c | 2 +-
core/bios.c | 11 ++
core/fs/cache.c | 2 +-
core/fs/diskio.c | 28 +++-
core/fs/diskio_bios.c | 40 ++---
core/fs/fs.c | 21 ++-
core/fs/readdir.c | 8 +-
core/include/multifs.h | 50 ++++++
core/multifs.c | 221 +++++++++++++++++++++++++++
core/multifs_bios.c | 75 +++++++++
efi/diskio.c | 32 ++--
efi/main.c | 26 +++-
efi/multifs.c | 166 ++++++++++++++++++++
efi/multifs_utils.h | 52 +++++++
mk/lib.mk | 3 +-
28 files changed, 845 insertions(+), 65 deletions(-)
create mode 100644 com32/include/syslinux/multifs_utils.h
rename com32/{chain => include/syslinux}/partiter.h (100%)
rename com32/{chain => include/syslinux}/utility.h (97%)
create mode 100644 com32/lib/syslinux/multifs_utils.c
rename com32/{chain => lib/syslinux}/partiter.c (99%)
rename com32/{chain => lib/syslinux}/utility.c (99%)
create mode 100644 core/include/multifs.h
create mode 100644 core/multifs.c
create mode 100644 core/multifs_bios.c
create mode 100644 efi/multifs.c
create mode 100644 efi/multifs_utils.h
--
2.1.0
More information about the Syslinux
mailing list