bug-xorriso
[Top][All Lists]
Advanced

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

Re: [no subject]


From: Thomas Schmitt
Subject: Re: [no subject]
Date: Wed, 14 Apr 2021 14:23:51 +0200

Hi,

895553893@qq.com wrote:
> At first, I didn't know xorriso can burn in windows??meanwhile??

That's new to me, too. Up to now i thought it would just be able to
write ISO 9660 filesystems to files.


>  I know xorriso use cdrecord ??

No. xorriso uses libburn, which is independent of cdrecord.


>     $ ./xorriso.exe -devices
>     GNU zfburn 1.5.5 : RockRidge filesystem manipulator, libburnia project.
>     ...
>     zflibburn : NOTE : Write start address is  660 * 32768

Huh ? "zfburn" ? "zflibburn" ?
The messages seem to stem from my software. But the module names should be
"xorriso" and "libburn", rather than "zfburn" and "zflibburn".


>     $ ./xorriso.exe -devices
>         ...
>         0  -dev '\\.\F:' rwr-r- :  'ASUS    ' 'SBW-06D2X-U'

This does not look like libburn underneath xorriso believes to be on Linux.
(You did not fulfill my wish to show the output of
   xorriso -version
So i still have to riddle about libburn's assessment of the environment.)


>     (when you install cygwin, libcdio should be installed)

This could be an explanation. libburn has an operating system adapter
which uses libcdio.
If xorriso.exe uses that adapter, then it is up to libcdio to give the list
of drives and to perform the SCSI transactions with the drive.

The adapter code is in
  libburn/sg-libcdio.c
Drive enumeration is done in
  static int sg_give_next_adr_raw()
by calling
  cdio_get_devices(DRIVER_DEVICE);
See
  
https://www.gnu.org/software/libcdio/doxygen/device_8h.html#ab079f667ac788005aab8ec430574c3ea
which says
  In some situations of drivers or OS's we can't find a CD device if there
  is no media in it [...]


> however which device I chose??it always burn to  the
> same one device(the low_namer device, e.g.  E,F  it burn to E)
> $ ./xorriso.exe -dev /dev/sr0 [...]

In the libcdio adapter of libburn, the drive gets addressed by
  p_cdio = cdio_open_am(d->libcdio_name, DRIVER_DEVICE, am_wanted);

d->libcdio_name is assigned when the drive gets enumerated.
xorriso command -dev sets the name "/dev/sr0" as the only desired one and
then lets libcdio enumerate in the expectation to get the drive with the
desired name.
So i would rather expect that lbcdio enumerates no drive for name "/dev/sr0"
and thus xorriso -command -dev /dev/sr0 should fail. The xorriso run should
stop then before image loading and burning begins.

But we see the loading of the existing session directory tree from the
medium:

>       zfburn: NOTE : Loading ISO image tree from LBA 0
>       zfburn: UPDATE :      24 nodes read in 1 seconds

and then a burn run, albeit with one strange message:

>       Media current: DVD-RW restricted overwrite
>       Media status : is written , is appendable
>       Media summary: 1 session, 10533 data blocks, 20.6m data, 4467m free
>       ...
>       zflibburn : NOTE : Write start address is  660 * 32768

The number 660 is strange. It should be 10533 rounded up to the next
multiple of 32. I.e. to 10560.

>       ISO image produced: 2437 sectors
>       Written to medium : 2592 sectors at LBA 10560
>       Writing to '/dev/sr0' completed successfully.

In the final message correctly tells the write start at LBA 10560.

The medium is now supposed to hold the files from the older sessions plus
the 24 files and directories copied in from /cygdrive/C/__22 .
If the first session was written by xorriso, then
  xorriso -outdev /dev/sr0 -toc
should show two sessions. If written by cdrecord or growisofs, then only
one session will be reported, because the superblock of session 1 had to be
overwritten.

Do you see all expected files from first and second session on the medium ?

-------------------------------------------------------------------------

More questions:

- From where did you get xorriso.exe ?
  If you compiled it yourself:
  - From where is the source code ?
  - What was your exact command line to build it ?
    (Especially: Which options did you give to the script ./configure ?)

- What operating system adapter does it use?
  Please show the output of this run:
    xorriso -version

- What do you get from
    xorriso -outdev /dev/sr0 -toc
  with only one drive attached and with both drives attached ?
  Is there a difference to see between media being in the drives and
  the drives being empty ?

- With both drives attached and loaded media in each of them:
  Does
    xorriso -outdev /dev/sr1 -toc
  yield a different result than with /dev/sr0 ?

- If both drives hold a medium, does
    xorriso -devices
  list them both ?

-------------------------------------------------------------------------

Have a nice day :)

Thomas




reply via email to

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