Hi,
This patchset contains a read-only filesystem driver for UDF volumes found on
discs.
I've been testing the driver with OVMF and Microsoft Windows 7/8.1 OS images.
It can open, read and list files and directories on UDF filesystems
successfully. If the working directory contains a lot of entries, the listing
goes OK and fast -- however, if I cd /path/to/it and (TAB), it takes longer to
show the first directory entry. This performance issue might be worked around
by caching directory entries from open directories in UdfOpen() function -- that
doesn't affect functionality at all.
Its development was all under MdeModulePkg/Universal/Disk - which doesn't seem
right to me. So, I'm wondering if it would be possible to add a new package
called "FileSystemPkg" and put all filesystem drivers into it.
Since I wrote this driver only in my free time (which is usually short), the
write support is a future project of mine :-)
There is a public branch which contains all these patches and it's rebased
against master from mainline and can be clone at:
git://git.zytor.com/users/pcacjr/edk2.git (branch: for-upstream)
Thanks,
-pcacjr
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Paulo Alcantara <[email protected]>
--
Paulo Alcantara (4):
MdeModulePkg/UdfDxe: Initial implementation of UDF filesystem driver
MdeModulePkg/UdfDxe: Implement UdfOpen(), UdfClose() and UdfDelete()
MdeModulePkg/UdfDxe: Implement UdfGetInfo()
MdeModulePkg/UdfDxe: Implement UdfRead(), UdfSetPosition() and
UdfGetPosition()
MdeModulePkg/MdeModulePkg.dsc | 1 +
MdeModulePkg/Universal/Disk/UdfDxe/ComponentName.c | 185 ++
MdeModulePkg/Universal/Disk/UdfDxe/FileName.c | 190 ++
.../Universal/Disk/UdfDxe/FileSystemOperations.c | 1864 ++++++++++++++++++++
MdeModulePkg/Universal/Disk/UdfDxe/Udf.c | 349 ++++
MdeModulePkg/Universal/Disk/UdfDxe/Udf.h | 904 ++++++++++
MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf | 64 +
7 files changed, 3557 insertions(+)
create mode 100644 MdeModulePkg/Universal/Disk/UdfDxe/ComponentName.c
create mode 100644 MdeModulePkg/Universal/Disk/UdfDxe/FileName.c
create mode 100644 MdeModulePkg/Universal/Disk/UdfDxe/FileSystemOperations.c
create mode 100644 MdeModulePkg/Universal/Disk/UdfDxe/Udf.c
create mode 100644 MdeModulePkg/Universal/Disk/UdfDxe/Udf.h
create mode 100644 MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
--
1.9.3
------------------------------------------------------------------------------
Slashdot TV.
Video for Nerds. Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel