[Pkg-mc-devel] Bug#805495: mc: Very slow opening of an ISO file

Brian Potkin claremont102 at gmail.com
Thu Nov 19 17:51:23 UTC 2015


On Wed 18 Nov 2015 at 22:22:38 +0100, Thomas Schmitt wrote:

> Hi,
> 
> as the developer of xorriso i am unhappy to see that
> its mere existence makes mc slow with ISOs.
> Even if it is not to blame directly.
> 
> So i would propose to just disable for now the use of
> xorriso for inspecting ISO filesystems by mc.
> 
> In general xorriso would be well suited for such a job
> only if run in dialog mode. It has the habit to load 
> the whole directory tree into memory before it performs
> commands like -lsl. The more such commands it performs
> in one run, the more beneficial is the pre-loading.
> 
> If xorriso is used as 1:1 replacement of isoinfo, then you
> need quite a simple ISO or quite a fast computer to get
> a comparable performance.
> 
> 
> (See xorriso-tcltk for an example of dialog-under-GUI:
>   http://libburnia-project.org/export/head/libisoburn/trunk/frontend/xorriso-tcltk
>  Needs Tcl and Tk >= 8.4, optionally: Tcl/Tk package BWidget.
>  Start without any arguments.
>  Click on the "Help" button in the upper right corner.)
> 
> 
> Have a nice day :)

My workaround is to replace

  case "$cmd" in
    list)
      xorriso_list "$@" || {
          test_iso "$@";
          mcisofs_list "$@";
      }
      exit 0
      ;;

in /usr/lib/mc/extfs.d/iso9660 to use isoinfo:

  case "$cmd" in
    list)
          test_iso "$@";
          mcisofs_list "$@";
      exit 0
      ;;

I also looked at the behaviour of copyout. With isoinfo the time to copy
the pool directory from debian-8.2.0-i386-netinst.iso is about 26s. This
is within my previous experience.

Using xorriso the time taken is about 40s. But

  xorriso -osirrox on -indev debian-8.2.0-i386-netinst.iso -extract pool DESTINATION

takes a mere 2s.

I could understand isoinfo being slowish because I think it copies files
one by one, but surely xorriso is capable of better integration into mc?

Regards,

Brain.



More information about the Pkg-mc-devel mailing list