From e6ab962663da93bb5c27e586f0d3485bc5d7833c Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Tue, 8 Apr 2014 09:18:14 +0000 Subject: [PATCH] New -stdio_sync option "end", -as mkisofs default is now --stdio_sync "off" --- xorriso/base_obj.c | 1 + xorriso/emulators.c | 6 +- xorriso/opts_d_h.c | 2 +- xorriso/opts_p_z.c | 26 ++++---- xorriso/text_io.c | 4 +- xorriso/xorriso.1 | 10 ++-- xorriso/xorriso.h | 2 +- xorriso/xorriso.info | 116 +++++++++++++++++++----------------- xorriso/xorriso.texi | 10 ++-- xorriso/xorriso_private.h | 2 + xorriso/xorriso_timestamp.h | 2 +- xorriso/xorrisofs.1 | 15 +++-- xorriso/xorrisofs.info | 98 +++++++++++++++--------------- xorriso/xorrisofs.texi | 15 +++-- 14 files changed, 168 insertions(+), 141 deletions(-) diff --git a/xorriso/base_obj.c b/xorriso/base_obj.c index 81f9a9fc..ca1bc81e 100644 --- a/xorriso/base_obj.c +++ b/xorriso/base_obj.c @@ -239,6 +239,7 @@ int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag) m->do_stream_recording= 0; m->dvd_obs= 0; m->stdio_sync= 0; + m->stdio_sync_is_default= 1; m->keep_boot_image= 0; m->boot_image_cat_path[0]= 0; m->boot_image_cat_hidden= 0; diff --git a/xorriso/emulators.c b/xorriso/emulators.c index c5f0c460..e28b737c 100644 --- a/xorriso/emulators.c +++ b/xorriso/emulators.c @@ -82,7 +82,7 @@ int Xorriso_cdrskin_help(struct XorrisO *xorriso, int flag) "\twrite_start_address=#\t\twrite to byte address on DVD+RW, BD-RE", "\tstream_recording=on|number\ttry to get full speed on DVD-RAM, BD", "\tdvd_obs=default|32k|64k\t\tbytes per DVD/BD write operation", -"\tstdio_sync=on|off|number\twhether to fsync output to \"stdio:\"", +"\tstdio_sync=on|off|end|number\twhether to fsync output to \"stdio:\"", "\t--no_rc\t\tDo not execute xorriso startup files", "\t-help\t\tprint this text to stderr and exit emulation", "Actually this is the integrated ISO RockRidge filesystem manipulator xorriso", @@ -1156,6 +1156,10 @@ int Xorriso_genisofs_path_pecul(struct XorrisO *xorriso, int *was_path, /* mkisofs records mtime in ECMA-119 and Joliet */ Xorriso_relax_compliance(xorriso, "rec_mtime", 0); + /* mkisofs is substantially faster than xorriso by not fsyncing + */ + if(xorriso->stdio_sync_is_default) + Xorriso_option_stdio_sync(xorriso, "off", 0); Xorriso_free_meM(sfe); ret= 1; diff --git a/xorriso/opts_d_h.c b/xorriso/opts_d_h.c index 98fa1432..df7517c3 100644 --- a/xorriso/opts_d_h.c +++ b/xorriso/opts_d_h.c @@ -1961,7 +1961,7 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag) " Try to circumvent slow checkread on DVD-RAM, BD-RE, BD-R.", " -dvd_obs \"default\"|\"32k\"|\"64k\"", " Set number of bytes per DVD/BD write operation.", -" -stdio_sync \"on\"|\"off\"|number", +" -stdio_sync \"on\"|\"off\"|\"end\"|number", " Set number of bytes after which to force output to stdio", " pseudo drives. \"on\" is the same as 16m.", " -fs number[\"k\"|\"m\"]", diff --git a/xorriso/opts_p_z.c b/xorriso/opts_p_z.c index 155e04f4..7bd8091b 100644 --- a/xorriso/opts_p_z.c +++ b/xorriso/opts_p_z.c @@ -1,7 +1,7 @@ /* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images. - Copyright 2007-2013 Thomas Schmitt, + Copyright 2007-2014 Thomas Schmitt, Provided under GPL version 2 or later. @@ -1445,26 +1445,28 @@ int Xorriso_option_status_history_max(struct XorrisO *xorriso, int num, } -/* Option -stdio_sync "on"|"off"|size */ +/* Option -stdio_sync "on"|"off"|"end"|size */ int Xorriso_option_stdio_sync(struct XorrisO *xorriso, char *rythm, int flag) { double num; - if(strcmp(rythm, "default") == 0 || strcmp(rythm, "on") == 0) + if(strcmp(rythm, "default") == 0 || strcmp(rythm, "on") == 0) { num= 0; - if(strcmp(rythm, "off") == 0) + } else if(strcmp(rythm, "off") == 0) { num= -1; - else - num = Scanf_io_size(rythm, 0); - if(num > 0) - num /= 2048; - if(num != -1 && num != 0 && (num < 32 || num > 512 * 1024)) { + } else if(strcmp(rythm, "end") == 0) { + num= 1; + } else { + num = Scanf_io_size(rythm, 0) / 2048; + if(num < 32 || num > 512 * 1024) { sprintf(xorriso->info_text, - "-stdio_sync : Bad size. Acceptable are -1, 0, 32k ... 1g"); + "-stdio_sync : Bad size. Use: 64k to 1g, \"on\", \"off\", \"end\""); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "SORRY", 0); return(0); - } else - xorriso->stdio_sync= num; + } + } + xorriso->stdio_sync= num; + xorriso->stdio_sync_is_default= 0; return(1); } diff --git a/xorriso/text_io.c b/xorriso/text_io.c index 5eed360f..eb6744f4 100644 --- a/xorriso/text_io.c +++ b/xorriso/text_io.c @@ -1,7 +1,7 @@ /* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images. - Copyright 2007-2013 Thomas Schmitt, + Copyright 2007-2014 Thomas Schmitt, Provided under GPL version 2 or later. @@ -3107,6 +3107,8 @@ int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag) strcat(line, "off"); else if(xorriso->stdio_sync == 0) strcat(line, "on"); + else if(xorriso->stdio_sync == 1) + strcat(line, "end"); else if(xorriso->stdio_sync % 512) { Sfile_off_t_text(line+strlen(line), (off_t) (xorriso->stdio_sync * 2048), 0); diff --git a/xorriso/xorriso.1 b/xorriso/xorriso.1 index cbae40da..ce22589b 100644 --- a/xorriso/xorriso.1 +++ b/xorriso/xorriso.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISO 1 "Version 1.3.7, Apr 04, 2014" +.TH XORRISO 1 "Version 1.3.7, Apr 07, 2014" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -2811,11 +2811,12 @@ or BD media. A number of 64 KB may improve throughput with bus systems which show latency problems. The default depends on media type, on command \-stream_recording , and on compile time options. .TP -\fB\-stdio_sync\fR "on"|"off"|number +\fB\-stdio_sync\fR "on"|"off"|"end"|number Set the number of bytes after which to force output to stdio: pseudo drives. This forcing keeps the memory from being clogged with lots of pending data for slow devices. Default "on" is the same as "16m". -Forced output can be disabled by "off". +Forced output can be disabled by "off", or be delayed by "end" until all +data are produced. If a number is chosen, then it must be at least 64k. .TP \fB\-dummy\fR "on"|"off" If "on" then simulate burning or refuse with FAILURE event if @@ -4300,7 +4301,8 @@ will be applied only to files which are present in the ISO image when the command \-as ends. If you use several \-as mkisofs commands in the same run, then consider to put such options into the last \-as command. .br -\-pacifier gets set to "mkisofs" if files are added to the image. +If files are added to the image, then \-pacifier gets set to "mkisofs" and +\-stdio_sync is defaulted to "off" if no such setting was made yet. .br \-graft\-points is equivalent to \-pathspecs on. Note that pathspecs without "=" are interpreted differently than with \fBxorriso\fR command \-add. diff --git a/xorriso/xorriso.h b/xorriso/xorriso.h index 9cb04634..7f102695 100644 --- a/xorriso/xorriso.h +++ b/xorriso/xorriso.h @@ -1887,7 +1887,7 @@ int Xorriso_option_status(struct XorrisO *xorriso, char *mode, int flag); int Xorriso_option_status_history_max(struct XorrisO *xorriso, int num1, int flag); -/* Command -stdio_sync "on"|"off"|size */ +/* Command -stdio_sync "on"|"off"|"end"|size */ int Xorriso_option_stdio_sync(struct XorrisO *xorriso, char *rythm, int flag); /* Command -stream_recording */ diff --git a/xorriso/xorriso.info b/xorriso/xorriso.info index d8e1ce58..47adc578 100644 --- a/xorriso/xorriso.info +++ b/xorriso/xorriso.info @@ -2476,11 +2476,13 @@ according to the setting of command -acl. The default depends on media type, on command -stream_recording , and on compile time options. --stdio_sync "on"|"off"|number +-stdio_sync "on"|"off"|"end"|number Set the number of bytes after which to force output to stdio: pseudo drives. This forcing keeps the memory from being clogged with lots of pending data for slow devices. Default "on" is the - same as "16m". Forced output can be disabled by "off". + same as "16m". Forced output can be disabled by "off", or be + delayed by "end" until all data are produced. If a number is + chosen, then it must be at least 64k. -dummy "on"|"off" If "on" then simulate burning or refuse with FAILURE event if no @@ -3782,7 +3784,9 @@ said programs trigger comparable actions. ISO image when the command -as ends. If you use several -as mkisofs commands in the same run, then consider to put such options into the last -as command. - -pacifier gets set to "mkisofs" if files are added to the image. + If files are added to the image, then -pacifier gets set to + "mkisofs" and -stdio_sync is defaulted to "off" if no such setting + was made yet. -graft-points is equivalent to -pathspecs on. Note that pathspecs without "=" are interpreted differently than with `xorriso' command -add. Directories get merged with the root directory of @@ -4932,7 +4936,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -chown sets ownership in ISO image: Manip. (line 49) * -chown_r sets ownership in ISO image: Manip. (line 54) * -clone copies ISO directory tree: Insert. (line 181) -* -close controls media closing: SetWrite. (line 357) +* -close controls media closing: SetWrite. (line 359) * -close_damaged closes damaged track and session: Writing. (line 170) * -close_filter_list bans filter registration: Filter. (line 52) * -commit writes pending ISO image: Writing. (line 29) @@ -4959,7 +4963,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top (line 60) * -drive_class controls drive accessability: Loading. (line 78) * -du show directory size in ISO image: Navigate. (line 89) -* -dummy controls write simulation: SetWrite. (line 346) +* -dummy controls write simulation: SetWrite. (line 348) * -dus show directory size in ISO image: Navigate. (line 93) * -dusx show directory size on disk: Navigate. (line 102) * -dux show directory size on disk: Navigate. (line 97) @@ -4981,7 +4985,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -follow softlinks and mount points: SetInsert. (line 76) * -for_backup -acl,-xattr,-hardlinks,-md5: Loading. (line 212) * -format formats media: Writing. (line 91) -* -fs sets size of fifo: SetWrite. (line 350) +* -fs sets size of fifo: SetWrite. (line 352) * -getfacl shows ACL in ISO image: Navigate. (line 70) * -getfacl_r shows ACL in ISO image: Navigate. (line 77) * -getfattr shows xattr in ISO image: Navigate. (line 81) @@ -5042,8 +5046,8 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -out_charset sets output character set: SetWrite. (line 276) * -outdev acquires a drive for output: AqDrive. (line 31) * -overwrite enables overwriting in ISO: SetInsert. (line 127) -* -pacifier controls pacifier text form: Emulation. (line 163) -* -padding sets amount or mode of image padding: SetWrite. (line 382) +* -pacifier controls pacifier text form: Emulation. (line 165) +* -padding sets amount or mode of image padding: SetWrite. (line 384) * -page set terminal geometry: DialogCtl. (line 19) * -paste_in copies file into disk file: Restore. (line 124) * -path_list inserts paths from disk file: Insert. (line 80) @@ -5064,7 +5068,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -quoted_not_list sets exclusions: SetInsert. (line 72) * -quoted_path_list inserts paths from disk file: Insert. (line 85) * -read_mkisofsrc searches and reads .mkisofsrc file: Emulation. - (line 151) + (line 153) * -read_speed set read speed: Loading. (line 11) * -reassure enables confirmation question: DialogCtl. (line 32) * -report_about controls verbosity: Exception. (line 55) @@ -5079,7 +5083,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -rom_toc_scan searches for sessions: Loading. (line 238) * -rr_reloc_dir sets name of relocation directory: SetWrite. (line 145) -* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 177) +* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 179) * -scsi_log reports SCSI commands: Scripting. (line 158) * -session_log logs written sessions: Scripting. (line 149) * -session_string composes session info line: Inquiry. (line 78) @@ -5118,7 +5122,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -volid sets volume id: SetWrite. (line 164) * -volset_id sets volume set id: SetWrite. (line 185) * -volume_date sets volume timestamp: SetWrite. (line 212) -* -write_type chooses TAO or SAO/DAO: SetWrite. (line 374) +* -write_type chooses TAO or SAO/DAO: SetWrite. (line 376) * -x enables automatic execution order of arguments: ArgSort. (line 16) * -xattr controls handling of xattr (EA): Loading. (line 178) @@ -5148,12 +5152,12 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Backslash Interpretation, _definition: Processing. (line 52) * Backup, enable fast incremental, -disk_dev_ino: Loading. (line 217) * Backup, enable features, -for_backup: Loading. (line 212) -* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 177) +* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 179) * Blank media, _definition: Media. (line 29) * Blind growing, _definition: Methods. (line 40) * Bootability, control, -boot_image: Bootable. (line 26) * Bugs, reporting: Bugreport. (line 6) -* cdrecord, Emulation: Emulation. (line 116) +* cdrecord, Emulation: Emulation. (line 118) * Character Set, _definition: Charset. (line 6) * Character Set, for input, -in_charset: Loading. (line 116) * Character Set, for input/output, -charset: Charset. (line 54) @@ -5201,10 +5205,10 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * EFI system partition, _definition: Bootable. (line 169) * El Torito, _definition: Extras. (line 19) * Emulation, -as: Emulation. (line 13) -* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 151) -* Emulation, cdrecord, -as: Emulation. (line 116) +* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 153) +* Emulation, cdrecord, -as: Emulation. (line 118) * Emulation, mkisofs, -as: Emulation. (line 16) -* Emulation, pacifier form, -pacifier: Emulation. (line 163) +* Emulation, pacifier form, -pacifier: Emulation. (line 165) * Examples: Examples. (line 6) * extattr, _definition: Extras. (line 65) * Filter, _definition: Filter. (line 6) @@ -5397,22 +5401,22 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Write, block size, -dvd_obs: SetWrite. (line 333) * Write, bootability, -boot_image: Bootable. (line 26) * Write, buffer syncing, -stdio_sync: SetWrite. (line 340) -* Write, close media, -close: SetWrite. (line 357) +* Write, close media, -close: SetWrite. (line 359) * Write, compliance to specs, -compliance: SetWrite. (line 58) * Write, defect management, -stream_recording: SetWrite. (line 321) * Write, disable Rock Ridge, -rockridge: SetWrite. (line 52) * Write, enable HFS+, -hfsplus: SetWrite. (line 14) * Write, enable Joliet, -joliet: SetWrite. (line 10) -* Write, fifo size, -fs: SetWrite. (line 350) +* Write, fifo size, -fs: SetWrite. (line 352) * Write, free space, -tell_media_space: Inquiry. (line 104) * Write, log problematic disk files, -errfile_log: Scripting. (line 129) * Write, log written sessions, -session_log: Scripting. (line 149) -* Write, padding image, -padding: SetWrite. (line 382) +* Write, padding image, -padding: SetWrite. (line 384) * Write, pending ISO image, -commit: Writing. (line 29) * Write, predict image size, -print_size: Inquiry. (line 91) * Write, set speed, -speed: SetWrite. (line 302) -* Write, simulation, -dummy: SetWrite. (line 346) -* Write, TAO or SAO/DAO, -write_type: SetWrite. (line 374) +* Write, simulation, -dummy: SetWrite. (line 348) +* Write, TAO or SAO/DAO, -write_type: SetWrite. (line 376) * xattr, _definition: Extras. (line 65) * xattr, control handling, -xattr: Loading. (line 178) * xattr, set in ISO image, -setfattr: Manip. (line 118) @@ -5444,40 +5448,40 @@ Node: CmdFind76563 Node: Filter93164 Node: Writing97720 Node: SetWrite107851 -Node: Bootable128436 -Node: Jigdo144902 -Node: Charset149149 -Node: Exception152464 -Node: DialogCtl158584 -Node: Inquiry161182 -Node: Navigate167499 -Node: Verify175797 -Node: Restore185061 -Node: Emulation192148 -Node: Scripting202450 -Node: Frontend210221 -Node: Examples219828 -Node: ExDevices221006 -Node: ExCreate221672 -Node: ExDialog222957 -Node: ExGrowing224222 -Node: ExModifying225027 -Node: ExBootable225531 -Node: ExCharset226083 -Node: ExPseudo226975 -Node: ExCdrecord227873 -Node: ExMkisofs228190 -Node: ExGrowisofs229530 -Node: ExException230665 -Node: ExTime231119 -Node: ExIncBackup231578 -Node: ExRestore235558 -Node: ExRecovery236491 -Node: Files237061 -Node: Seealso238360 -Node: Bugreport239083 -Node: Legal239664 -Node: CommandIdx240675 -Node: ConceptIdx257337 +Node: Bootable128557 +Node: Jigdo145023 +Node: Charset149270 +Node: Exception152585 +Node: DialogCtl158705 +Node: Inquiry161303 +Node: Navigate167620 +Node: Verify175918 +Node: Restore185182 +Node: Emulation192269 +Node: Scripting202657 +Node: Frontend210428 +Node: Examples220035 +Node: ExDevices221213 +Node: ExCreate221879 +Node: ExDialog223164 +Node: ExGrowing224429 +Node: ExModifying225234 +Node: ExBootable225738 +Node: ExCharset226290 +Node: ExPseudo227182 +Node: ExCdrecord228080 +Node: ExMkisofs228397 +Node: ExGrowisofs229737 +Node: ExException230872 +Node: ExTime231326 +Node: ExIncBackup231785 +Node: ExRestore235765 +Node: ExRecovery236698 +Node: Files237268 +Node: Seealso238567 +Node: Bugreport239290 +Node: Legal239871 +Node: CommandIdx240882 +Node: ConceptIdx257544  End Tag Table diff --git a/xorriso/xorriso.texi b/xorriso/xorriso.texi index 4c31d1f3..792bcf0d 100644 --- a/xorriso/xorriso.texi +++ b/xorriso/xorriso.texi @@ -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 XORRISO 1 "Version 1.3.7, Apr 04, 2014" +@c man .TH XORRISO 1 "Version 1.3.7, Apr 07, 2014" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -3309,13 +3309,14 @@ or BD media. A number of 64 KB may improve throughput with bus systems which show latency problems. The default depends on media type, on command -stream_recording , and on compile time options. @c man .TP -@item -stdio_sync "on"|"off"|number +@item -stdio_sync "on"|"off"|"end"|number @kindex -stdio_sync controls stdio buffer @cindex Write, buffer syncing, -stdio_sync Set the number of bytes after which to force output to stdio: pseudo drives. This forcing keeps the memory from being clogged with lots of pending data for slow devices. Default "on" is the same as "16m". -Forced output can be disabled by "off". +Forced output can be disabled by "off", or be delayed by "end" until all +data are produced. If a number is chosen, then it must be at least 64k. @c man .TP @item -dummy "on"|"off" @kindex -dummy controls write simulation @@ -5025,7 +5026,8 @@ will be applied only to files which are present in the ISO image when the command -as ends. If you use several -as mkisofs commands in the same run, then consider to put such options into the last -as command. @* --pacifier gets set to "mkisofs" if files are added to the image. +If files are added to the image, then -pacifier gets set to "mkisofs" and +-stdio_sync is defaulted to "off" if no such setting was made yet. @* -graft-points is equivalent to -pathspecs on. Note that pathspecs without "=" are interpreted differently than with @command{xorriso} command -add. diff --git a/xorriso/xorriso_private.h b/xorriso/xorriso_private.h index 68b57bde..0d53a46a 100644 --- a/xorriso/xorriso_private.h +++ b/xorriso/xorriso_private.h @@ -363,7 +363,9 @@ struct XorrisO { /* the global context of xorriso */ >=16 means yes with number as start LBA */ int dvd_obs; /* DVD write chunk size: 0, 32k or 64k */ + int stdio_sync; /* stdio fsync interval: -1, 0, >=32 */ + int stdio_sync_is_default; /* 1= is still default , 0= has been set */ int keep_boot_image; char boot_image_cat_path[SfileadrL]; diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 0948e0cc..001aa0d0 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2014.04.04.153505" +#define Xorriso_timestamP "2014.04.08.091745" diff --git a/xorriso/xorrisofs.1 b/xorriso/xorrisofs.1 index 64dd0f39..44e83522 100644 --- a/xorriso/xorrisofs.1 +++ b/xorriso/xorrisofs.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISOFS 1 "Version 1.3.7, Mar 04, 2014" +.TH XORRISOFS 1 "Version 1.3.7, Apr 07, 2014" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -338,11 +338,14 @@ Default is standard output (/dev/fd/1) which may also be set by disk_path "\-". \fB\-output\fR disk_path Alias of \-o. .TP -\fB--stdio_sync\fR "on"|"off"|number +\fB--stdio_sync\fR "on"|"off"|"end"|number Set the number of bytes after which to force output to disk in order to keep the memory from being clogged with lots of -pending data for slow devices. Default "on" is the same as "16m". -Forced output can be disabled by "off". +pending data for slow devices. "on" is the same as "16m". +Forced output can be disabled by "off", or be delayed by "end" until all +data are produced. If a number is chosen, then it must be at least 64k. +.br +The default with xorriso mkisofs emulation is \-\-stdio_sync "off". .br xorriso uses an inner fifo buffer with default size 4 MiB. So forcing the operating system i/o cache to disk does not necessarily block the @@ -1154,7 +1157,7 @@ outside the HFS+ partition. .TP \fB\-chrp-boot-part\fR Mark the block range of the whole emerging ISO image as MBR partition of type -0x41. This is not compatible with any other feature that produces MBR +0x96. This is not compatible with any other feature that produces MBR partition entries. It makes GPT unrecognizable. .br CHRP is used in conjunction with HFS. It is not yet tested whether HFS+ @@ -1162,7 +1165,7 @@ filesystems produced with option \-hfsplus would boot on any CHRP capable machin .TP \fB\-prep-boot-part\fR disk_path Copy a file from disk into the emerging ISO image and mark it by a MBR -partition entry of type 0x96. PReP boot firmware is supposed to read +partition entry of type 0x41. PReP boot firmware is supposed to read the content of the partition as single ELF executable file. This option is compatible with other MBR partitions and with GPT. .TP diff --git a/xorriso/xorrisofs.info b/xorriso/xorrisofs.info index 2f93b111..742cb299 100644 --- a/xorriso/xorrisofs.info +++ b/xorriso/xorrisofs.info @@ -358,11 +358,13 @@ File: xorrisofs.info, Node: SetProduct, Next: SetCompl, Prev: SetInsert, Up: -output disk_path Alias of -o. ---stdio_sync "on"|"off"|number +--stdio_sync "on"|"off"|"end"|number Set the number of bytes after which to force output to disk in order to keep the memory from being clogged with lots of pending - data for slow devices. Default "on" is the same as "16m". Forced - output can be disabled by "off". + data for slow devices. "on" is the same as "16m". Forced output + can be disabled by "off", or be delayed by "end" until all data + are produced. If a number is chosen, then it must be at least 64k. + The default with xorriso mkisofs emulation is --stdio_sync "off". xorriso uses an inner fifo buffer with default size 4 MiB. So forcing the operating system i/o cache to disk does not necessarily block the simultaneous production of more image @@ -1132,7 +1134,7 @@ and also not combinable with MBR, GPT, or APM. -chrp-boot-part Mark the block range of the whole emerging ISO image as MBR - partition of type 0x41. This is not compatible with any other + partition of type 0x96. This is not compatible with any other feature that produces MBR partition entries. It makes GPT unrecognizable. CHRP is used in conjunction with HFS. It is not yet tested whether @@ -1141,7 +1143,7 @@ and also not combinable with MBR, GPT, or APM. -prep-boot-part disk_path Copy a file from disk into the emerging ISO image and mark it by a - MBR partition entry of type 0x96. PReP boot firmware is supposed + MBR partition entry of type 0x41. PReP boot firmware is supposed to read the content of the partition as single ELF executable file. This option is compatible with other MBR partitions and with GPT. @@ -1791,7 +1793,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 114) * --efi-boot El Torito EFI boot image: Bootable. (line 58) * --embedded-boot Fill System Area e.g. by MBR: SystemArea. (line 35) -* --emul-toc enable table-of-content emulation: SetProduct. (line 35) +* --emul-toc enable table-of-content emulation: SetProduct. (line 37) * --for_backup Enable backup fidelity: SetExtras. (line 67) * --grub2-boot-info Patch El Torito boot image: Bootable. (line 99) * --grub2-mbr Install modern GRUB2 MBR: SystemArea. (line 38) @@ -1799,11 +1801,11 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * --hardlinks Recording of hardlink relations: SetExtras. (line 92) * --md5 Recording of MD5 checksums: SetExtras. (line 84) * --modification-date set ISO image timestamps: ImageId. (line 82) -* --no-emul-toc no table-of-content emulation: SetProduct. (line 44) +* --no-emul-toc no table-of-content emulation: SetProduct. (line 46) * --no_rc do not execute startup files: Miscellaneous. (line 19) * --norock disable Rock Ridge production: SetExtras. (line 25) * --old-empty old block addresses for empty files: SetProduct. - (line 107) + (line 109) * --old-root-devno enable disk idevno with -old-root: SetInsert. (line 97) * --old-root-no-ino disable disk ino with -old-root: SetInsert. @@ -1815,11 +1817,11 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 13) * --scdbackup_tag Recording of MD5 checksum: SetExtras. (line 101) * --sort-weight set block address sorting weight: SetProduct. - (line 49) + (line 51) * --sort-weight-list set block address sorting weight: SetProduct. - (line 61) + (line 63) * --sort-weight-patterns set block address sorting weight: SetProduct. - (line 82) + (line 84) * --stdio_sync control forced output to disk files: SetProduct. (line 25) * --xattr Recording of xattr: SetExtras. (line 77) @@ -1846,7 +1848,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -D allow deep directory hierachies: SetExtras. (line 31) * -d omit trailing dot in ISO file names: SetCompl. (line 56) * -dev set path for loading existing ISO image: Loading. (line 25) -* -dir-mode permissions for all directories: SetProduct. (line 86) +* -dir-mode permissions for all directories: SetProduct. (line 88) * -disable-deep-relocation allow deep directory hierachies: SetExtras. (line 44) * -disallow_dir_id_ext enforce ISO level 1 directory names: SetCompl. @@ -1864,7 +1866,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -exclude-list exclude disk files from inserting: SetInsert. (line 51) * -f follow symbolic links on disk: SetInsert. (line 24) -* -file-mode permissions for all data files: SetProduct. (line 92) +* -file-mode permissions for all data files: SetProduct. (line 94) * -follow-links follow symbolic links on disk: SetInsert. (line 28) * -full-iso9660-filenames allow 31 characters in ISO file names: SetCompl. (line 66) @@ -1931,7 +1933,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -mipsel-boot MIPS Little Endian boot image: SystemArea. (line 178) * -N omit version number in ISO file names: SetCompl. (line 73) * -no-emul-boot El Torito boot image emulation: Bootable. (line 72) -* -no-pad do not add zeros to ISO tree: SetProduct. (line 102) +* -no-pad do not add zeros to ISO tree: SetProduct. (line 104) * -o set output file address: SetProduct. (line 8) * -old-exclude exclude disk files from inserting: SetInsert. (line 48) @@ -1945,7 +1947,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 21) * -p set Preparer Id: ImageId. (line 54) * -P set Publisher Id: ImageId. (line 30) -* -pad add 300 KiB of zeros to ISO tree: SetProduct. (line 95) +* -pad add 300 KiB of zeros to ISO tree: SetProduct. (line 97) * -partition_cyl_align Image size alignment: SystemArea. (line 116) * -partition_hd_cyl MBR heads per cylinder: SystemArea. (line 99) * -partition_offset Make mountable by partition 1: SystemArea. @@ -2004,11 +2006,11 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Backup, enable fidelity, --for_backup: SetExtras. (line 67) * Biblio File, set path, -biblio: ImageId. (line 72) * Block address, set sorting weight, --sort-weight: SetProduct. - (line 49) + (line 51) * Block address, set sorting weight, --sort-weight-list: SetProduct. - (line 61) + (line 63) * Block address, set sorting weight, --sort-weight-patterns: SetProduct. - (line 82) + (line 84) * Bootability, boot catalog hidden, --boot-catalog-hide: Bootable. (line 114) * Bootability, boot catalog name, -c, -eltorito-catalog: Bootable. @@ -2153,15 +2155,15 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top (line 87) * Options, list, -help: Miscellaneous. (line 23) * Output file, set address, -o, -output: SetProduct. (line 8) -* Padding, 300 KiB, -pad: SetProduct. (line 95) -* Padding, disable, --old-empty: SetProduct. (line 107) -* Padding, disable, -no-pad: SetProduct. (line 102) +* Padding, 300 KiB, -pad: SetProduct. (line 97) +* Padding, disable, --old-empty: SetProduct. (line 109) +* Padding, disable, -no-pad: SetProduct. (line 104) * pathspec, _definition: Insert. (line 12) * pathspec, enable target=source, -graft-points: SetInsert. (line 31) * pathspec, read list of, --quoted_path_list: SetInsert. (line 13) * pathspec, read list of, -path-list: SetInsert. (line 8) -* Permissions, for all data files, -file-mode: SetProduct. (line 92) -* Permissions, for all directories, -dir-mode: SetProduct. (line 86) +* Permissions, for all data files, -file-mode: SetProduct. (line 94) +* Permissions, for all directories, -dir-mode: SetProduct. (line 88) * Preparer Id, set, -p: ImageId. (line 54) * Problems, reporting: Bugreport. (line 6) * Program version, report, -version: Miscellaneous. (line 46) @@ -2178,8 +2180,8 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Startup files, suppress, --no_rc: Miscellaneous. (line 19) * System Area, _definition: SystemArea. (line 6) * System Id, set, -sysid: ImageId. (line 49) -* Table-of-content, emulation off, --no-emul-toc: SetProduct. (line 44) -* Table-of-content, emulation, --emul-toc: SetProduct. (line 35) +* Table-of-content, emulation off, --no-emul-toc: SetProduct. (line 46) +* Table-of-content, emulation, --emul-toc: SetProduct. (line 37) * UTF-16, for Joliet paths, -joliet-utf16: SetExtras. (line 124) * Verbosity, high, -v, -verbose: Miscellaneous. (line 40) * Volume Id, set, -V, -volid: ImageId. (line 13) @@ -2202,28 +2204,28 @@ Node: Options6709 Node: Loading7436 Node: SetInsert9732 Node: SetProduct14148 -Node: SetCompl19142 -Node: SetExtras21738 -Node: SetHide30412 -Node: ImageId31720 -Node: Bootable35888 -Node: SystemArea40882 -Node: Charset51179 -Node: Jigdo52205 -Node: Miscellaneous56472 -Node: Examples58116 -Node: ExSimple58602 -Node: ExGraft59081 -Node: ExMkisofs60328 -Node: ExGrowisofs61581 -Node: ExIncBackup62753 -Node: ExIncBckAcc65861 -Node: ExBootable67537 -Node: Files69629 -Node: Seealso70703 -Node: Bugreport71359 -Node: Legal71940 -Node: CommandIdx72835 -Node: ConceptIdx87537 +Node: SetCompl19321 +Node: SetExtras21917 +Node: SetHide30591 +Node: ImageId31899 +Node: Bootable36067 +Node: SystemArea41061 +Node: Charset51358 +Node: Jigdo52384 +Node: Miscellaneous56651 +Node: Examples58295 +Node: ExSimple58781 +Node: ExGraft59260 +Node: ExMkisofs60507 +Node: ExGrowisofs61760 +Node: ExIncBackup62932 +Node: ExIncBckAcc66040 +Node: ExBootable67716 +Node: Files69808 +Node: Seealso70882 +Node: Bugreport71538 +Node: Legal72119 +Node: CommandIdx73014 +Node: ConceptIdx87716  End Tag Table diff --git a/xorriso/xorrisofs.texi b/xorriso/xorrisofs.texi index 4a2970cf..4e9aafba 100644 --- a/xorriso/xorrisofs.texi +++ b/xorriso/xorrisofs.texi @@ -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 XORRISOFS 1 "Version 1.3.7, Mar 04, 2014" +@c man .TH XORRISOFS 1 "Version 1.3.7, Apr 07, 2014" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -513,13 +513,16 @@ Default is standard output (/dev/fd/1) which may also be set by disk_path "-". @kindex -output set output file address Alias of -o. @c man .TP -@item @minus{}@minus{}stdio_sync "on"|"off"|number +@item @minus{}@minus{}stdio_sync "on"|"off"|"end"|number @kindex @minus{}@minus{}stdio_sync control forced output to disk files @cindex Forced output, control, @minus{}@minus{}stdio_sync Set the number of bytes after which to force output to disk in order to keep the memory from being clogged with lots of -pending data for slow devices. Default "on" is the same as "16m". -Forced output can be disabled by "off". +pending data for slow devices. "on" is the same as "16m". +Forced output can be disabled by "off", or be delayed by "end" until all +data are produced. If a number is chosen, then it must be at least 64k. +@* +The default with xorriso mkisofs emulation is @minus{}@minus{}stdio_sync "off". @* xorriso uses an inner fifo buffer with default size 4 MiB. So forcing the operating system i/o cache to disk does not necessarily block the @@ -1558,7 +1561,7 @@ outside the HFS+ partition. @kindex -chrp-boot-part CHRP partition @cindex Bootability, for CHRP, -chrp-boot-part Mark the block range of the whole emerging ISO image as MBR partition of type -0x41. This is not compatible with any other feature that produces MBR +0x96. This is not compatible with any other feature that produces MBR partition entries. It makes GPT unrecognizable. @* CHRP is used in conjunction with HFS. It is not yet tested whether HFS+ @@ -1568,7 +1571,7 @@ filesystems produced with option -hfsplus would boot on any CHRP capable machine @kindex -prep-boot-part PReP partition @cindex Bootability, for PReP, -prep-boot-part Copy a file from disk into the emerging ISO image and mark it by a MBR -partition entry of type 0x96. PReP boot firmware is supposed to read +partition entry of type 0x41. PReP boot firmware is supposed to read the content of the partition as single ELF executable file. This option is compatible with other MBR partitions and with GPT. @c man .TP