[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-xorriso] About run xorriso under Win32

From: gary jiang
Subject: Re: [Bug-xorriso] About run xorriso under Win32
Date: Fri, 21 Nov 2014 11:18:50 +0800
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0

Hi Thomas,
On 2014/11/20 17:10, Thomas Schmitt wrote:

libisofs_DEBUG: size=24576, ret=24541, 0x5FDD
As expected, a short result of read(2).

But the reason is still a riddle. If it was some Cygwin limit
on the size of a read(2) then i would have expected a number
which is aligned to some block size.
But the number of requested bytes is a neat number (2 exp 13 * 3)
and the reply 24541 (11 * 23 * 97) is not a multiple of any
plausible block size.

The disk file in question is

What do you get from
   ls -l isolinux/isolinux.bin
   wc isolinux/isolinux.bin
Please see the below:

$ ls -l isolinux/isolinux.bin
----------+ 1 gary None 24576 Nov 17 14:51 isoliux/isolinux.bin
$wc isolinux/isolinux.bin
  171   940 24576 isolinux/isolinux.bin

Actually, I had tried mkisofs (schily-cdrtools-3.01a25) [...]
-eltorito-platform 0xEF -no-emul-boot -b "boot/grub/efi.img" [...]
However the generated iso can't boot EFI machine due to some reason even it
can boot BIOS machine.
Let's hope it is a flaw of mkisofs and not of your EFI.
What do you get from an inspection of the resulting ISO ?
(The command -report_el_torito is known only to xorriso-1.3.8
  or later)

   ..\xorriso -indev ..\a.iso -report_el_torito plain
I got the following output with above command:

xorriso : NOTE : Loading ISO image tree from LBA 0
libisofs: WARNING : More than one catalog node has been found. We can continue,
but that could lead to problems
xorriso : UPDATE : 33 nodes read in 1 seconds
xorriso : NOTE : Detected EI-Torito boot information which currently is set to be discarded
Drive current: -indev '..\a.iso'
Media current: stdui file, overwriteable
Media status : is written , is appendable
Boot record  : EI Torito
Media summay : 1 session, 149758 data block, 292m data, 38.4g free
Volume id    : 'CDROM'
EI Torito catalog  : 48 1
EI Torito cat path : /isolinux/boot.cat
EI Torito images   : N Pltf B Emul Ld_seg Hdpt Ldsiz      LBA
EI Torito boot img : 1 BIOS y none 0x0000 0x00     4     1217
EI Torito boot img : 2 UEFI y none 0x0000 0x00  4672       49
EI Torito img path : 1 /isolinux/isolinux.bin
EI Torito img opts : 1 boot-info-table isohybrid-suitable
EI Torito img path : 2 /boot/grub/efi.img
EI Torito img opts : 2 boot-info-table
Here is example output from an Archlinux ISO for BIOS and (U)EFI:

   El Torito catalog  : 42  1
   El Torito cat path : /isolinux/boot.cat
   El Torito images   :   N  Pltf  B   Emul  Ld_seg  Hdpt  Ldsiz         LBA
   El Torito boot img :   1  BIOS  y   none  0x0000  0x00      4       20078
   El Torito boot img :   2  UEFI  y   none  0x0000  0x00  63488       21108
   El Torito img path :   1  /isolinux/isolinux.bin
   El Torito img opts :   1  boot-info-table isohybrid-suitable
   El Torito img path :   2  /EFI/archiso/efiboot.img

What happens about EFI booting if you leave out the BIOS
boot options in your xorriso run ? I.e.:

   ..\xorriso -as mkisofs -U -A centos65 -V centos65 -volset centos65 -J 
-joliet-long -r -v -T -o ../centos65.iso -c isolinux/boot.cat -e 
boot/grub/efi.img -no-emul-boot .

(No -boot-info-table causes no read attempt for patching. So
  the code part which throws the error will not be executed.
  The lfs_read() calls for copying file content into the
  emerging ISO image request smaller chunk sizes than the
  call for patching the BIOS boot image.)
Thanks for suggestion, the iso generated with only efi boot option still can't boot efi machine, and seems it has some relationship with the libisofs/util.c since I did the
following change:

//tzoffset = ( - timezone / 60 / 15 ) + 4 * tm.tm_isdst;
    fprintf(stderr, "here is the second compile error\n");

And the debug info is displayed lots of time when generate iso, please help
to fix the compile errors if possible, thanks a lot.

Do you have some suggestions about it?
Hopefully i augmented lfs_read() so that it tries to read
the missing bytes if read(2) delivers not the expected amount.
This still needs some testing here, because it is a very central
function of libisofs.

In the course of this day i will prepare and upload a new
development snapshot xorriso-1.3.9.tar.gz and give you a note.
(Do not download an existing xorriso-1.3.9.tar.gz now, because
  it is not yet on the newest state.)
Thanks for your effort!

Best Regards,

Have a nice day :)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]