Updated information about reproducibility and Linux kernel sr lock

This commit is contained in:
2025-04-24 11:46:04 +02:00
parent 972bca87ff
commit bc0c639ec8
9 changed files with 261 additions and 182 deletions

View File

@ -50,7 +50,7 @@
@c man .\" First parameter, NAME, should be all caps
@c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
@c man .\" other parameters are allowed: see man(7), man(1)
@c man .TH XORRECORD 1 "Version 1.5.7, Apr 19, 2024"
@c man .TH XORRECORD 1 "Version 1.5.7, Apr 24, 2025"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -753,21 +753,21 @@ while a xorrecord burn run is going on.
@cindex Drive, Linux device type, drive_scsi_dev_family
GNU/Linux specific:
@*
By default, cdrskin tries to map Linux drive addresses to /dev/sr* before
By default, xorrecord tries to map Linux drive addresses to /dev/sr* before
they get opened for operating the drive. This coordinates well with
other use cases of optical drives, like mount(8). But since year 2010
all /dev/sr* share a global lock which allows only one drive to process
an SCSI command while all others have to wait for its completion.
This yields awful throughput if more than one drive is writing or reading
other use cases of optical drives, like mount(8). But between year 2010 and
2020 all /dev/sr* shared a global lock which allowed only one drive to process
an SCSI command while all others had to wait for its completion.
This yielded awful throughput if more than one drive was writing or reading
simultaneously.
@*
The global lock is not applied to device files /dev/sg* and also not with
the system calls read(2), write(2). But ioctl(SG_IO) is affected, which is
The global lock was never applied to device files /dev/sg* and also not with
the system calls read(2), write(2). But ioctl(SG_IO) was affected, which is
needed to perform the SCSI commands for optical burning.
@*
So for simultaneous burn runs on modern GNU/Linux it is advisable to use
So for simultaneous burn runs on GNU/Linux 2.6 to 5.5 it is advisable to use
drive_scsi_dev_family="sg". The drive addresses may then well be given as
/dev/sr* but will nevertheless get used as /dev/sg*.
/dev/sr*, but will nevertheless get used as /dev/sg*.
@c man .TP
@item @minus{}@minus{}grow_overwriteable_iso
@kindex @minus{}@minus{}grow_overwriteable_iso emulate ISO 9660 multi-session
@ -1223,7 +1223,7 @@ Thomas Schmitt <scdbackup@@gmx.net>
for libburnia-project.org
@c man .SH COPYRIGHT
@section Copyright
Copyright (c) 2011 - 2024 Thomas Schmitt
Copyright (c) 2011 - 2025 Thomas Schmitt
@*
Permission is granted to distribute this text freely. It shall only be
modified in sync with the technical properties of xorriso. If you make use