Yes, it's a tradeoff:-). Putting it to MdeModulePkg will need carefully review its modularity/interface/layer design. Putting it to a new package could enable this feature quickly.
That's why I am asking UDF device path related question if Paulo want to put into MdeModulePkg:-). I saw the code is using a self-defined UDF device path and my personal idea is it's not suggested. And another concern is about if we can refer to PartitionDxe and EnhancedFatDxe to split to two layers. Ni, Ruiyu and I could provide consultant on this if Paulo needed. I never used IRC before... Just login but don't know how to use it. For the issue " for some disk image formats, if the current PartitionDxe driver starts before his UdfDxe driver, then it may prevent UdfDxe from working.", I guess it might be because the DVD Rom is a UDF bridge disc, which means the disc contains both UDF and ISO9660(Eltorito) file system. So if PartitionDxe driver runs before UdfDxe, the BlockIo protocol will be opened by PartitionDxe driver exclusively and cause UdfDxe fail. Thanks Feng -----Original Message----- From: Jordan Justen [mailto:jljus...@gmail.com] Sent: Thursday, August 21, 2014 14:18 To: edk2-devel@lists.sourceforge.net Subject: Re: [edk2] [PATCH RFC 0/4] UDF filesystem driver On Wed, Aug 20, 2014 at 7:31 PM, Tian, Feng <feng.t...@intel.com> wrote: > Hi, Paulo > > Thanks for the great job! > > My personal thought likes the idea to add a new package to place your > UDF driver, but let's see if there is different opinion. I think a FileSystemPkg could make sense to encourage development of other filesystem drivers, and to prevent MdeModulePkg from growing too large. But, MdeModulePkg will possibly make the driver more widely available. (Since it is part of UDK.) > And I am not sure if we can split it to two layers, one is in > PartitionDxe driver to parse UDF volume descriptor, On irc, Paulo mentioned that for some disk image formats, if the current PartitionDxe driver starts before his UdfDxe driver, then it may prevent UdfDxe from working. Would what you mention be able to solve this? If so, maybe you and Paulo can discuss it further. (Maybe you can join the #edk2 irc channel? :) > another layer is like FatDxe to parse UDF file system format. > Formalizing UDF device path may be another concern. Could you provide more details on this? Who else may have input for it? Thanks, -Jordan > -----Original Message----- > From: Paulo Alcantara [mailto:pca...@gmail.com] > Sent: Thursday, August 21, 2014 09:25 > To: edk2-devel@lists.sourceforge.net > Subject: [edk2] [PATCH RFC 0/4] UDF filesystem driver > > 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 <pca...@zytor.com> > -- > > 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 > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel > > ---------------------------------------------------------------------- > -------- > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel