*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> rqsall (1)              
Title
Content
Arch
Section
 

Contents


RQSALL(1)							     RQSALL(1)


NAME    [Toc]    [Back]

     rqsall - requickstarts out-of-sync	ELF shared objects/executables on a
     system

SYNOPSIS    [Toc]    [Back]

     rqsall [ options ]	ifile

DESCRIPTION    [Toc]    [Back]

     The rqsall	command	is used	to requickstart	ELF files that are out of sync
     on	a system. This command reads a description of the ELF files that have
     been recorded (in an undocumented plain text format) in ifile. Those
     descriptions are generated	using the rqsread command.  Using those
     descriptions this command determines which	ELF files will not quickstart
     when executed. For	each of	those files, this command will normally
     execute the command /usr/etc/rqs or /usr/etc/rqs64	(as appropriate) on
     that file to resynchronize	that file with the ELF files that it depends
     on	(ie. the objects that are on that files	liblist).  This	command	is
     normally invoked whenever software	is installed using inst	or swmgr.  The
     ifile that	it is invoked on is /var/inst/.rqsfiles.  At most one
     so_locations file per ABI can possibly be read.  At most one so_locations
     file per ABI can possibly be updated.  By default so_locations files
     found are updated (though the contents may	not change the files will
     still be rewritten).

     rqsall uses only the $range entry from any	so_locations file entry	to
     help determine what address range should be assigned if the DSO named in
     that entry	needs to be moved.  If no $range entry is found	for a DSO that
     must be moved, a default range is used.  The address assigned a DSO being
     moved is not allowed to conflict  with any	DSO previously processed in
     this execution of rqsall. Within any range	rqsall selects the highest
     available address.	 For 64	bit objects, the default address range is
     0x00400000	to 0x1000000000.  For 32 bit objects (both old and new 32bit
     ABIs) the default address range is	0x00400000 to 0x60000000.  If the dso
     cannot be moved to	that range (the	range is full from other DSOs or the
     range is too small) it is an error	(a warning is emitted on stderr) and
     the DSO will not be moved.

     Cycles of DSOs (where the DSO which references itself via its library
     list directly or indirectly) are not properly handled.

     -cmd rqs_cmd
	  Change the command to	be run on out-of-sync 32-bit file to be
	  rqs_cmd. By default the command that is executed is /usr/etc/rqs.

     -cmd64 rqs64_cmd
	  Change the command to	be run on out-of-sync 64-bit file to be
	  rqs64_cmd. By	default	the command that is executed is
	  /usr/etc/rqs64.

     -cmd_prefix path
	  Prepends path	to the name of the command to be run on	an out-of-sync
	  file.



									Page 1






RQSALL(1)							     RQSALL(1)



     -count
	  Prints to stdout on the total	number of files	that were
	  requickstarted, the number of	files that were	successfully
	  requickstarted, and the number of failed to be requickstarted.

     -debug noexec
	  Keeps	the out-of-sync	files from actually being requickstarted. This
	  is typically used as a debugging aid to determine which files	will
	  be requickstarted.  This option prevents requickstarting files and
	  also prevents	updating of any	so_locations file.

     -debug reason
	  Dumps	relocation information.	 Displays the reason why a file	needs
	  to be	requickstarted.

     -force
	  Without this flag, files that	are marked as non-quickstart will not
	  be requickstarted.

     -inst #filedesc or	-inst filename
	   A special flag used when calling this command from our installation
	  software. Causes status to be	written	out to either the file
	  descriptor given by filedesc (for example, to	write to file
	  descriptor 10, -inst #10 would be the	correct	option)	or to the file
	  given	by filename.  The output is appended if	specified by
	  #filedesc.  The output is written (not appended) if specified	by
	  filename.  The information written includes the count	of the files
	  that are going to be requickstarted and then for each	file that is
	  being	requickstarted,	the name of the	file, its original inst
	  checksum value, and an indication of success ('S') or	failure	('F').
	  The fields are separated by control A's.

     -o	outfile
	  Causes an updated version (after requickstarting) of the description
	  file to be written to	outfile. outfile can be	the same as the	input
	  file,	file.

     -prefix dir
	  Treats dir as	the prefix for the files being read. When the
	  description file is read, the	prefix is prepended to all file	names.
	  Similarly, when the output file is generated,	the prefix directory
	  is removed. This option, along with the -root	option,	is used	to
	  requickstart files that are located in a directory beginning at
	  other	than /.

     -rescan
	  Causes the descriptions of the files recorded	in file	to be
	  rescanned. This option would be used in the case where the files on
	  the system have been changed since the last time the descriptions
	  have been recorded.





									Page 2






RQSALL(1)							     RQSALL(1)



     -root dir
	  Passes dir down to rqs to adjust where that command will look	for
	  shared objects.

     -timestamp	value
	  Passes down value to rqs as the timestamp to be recorded in the
	  requickstarted file.

     -rld rldname
	  Supplies the name of the rld(1).  If this option is supplied,	the
	  address of the rld applicable	to the object is checked against the
	  rld address in the object (checked against
	  DT_MIPS_RLD_TEXT_RESOLVE_ADDR) and if	the addresses do not match,
	  the address of the rld given by rldname is passed to rqs with	the
	  -rld_addr option.  If	nothing	else is	to be changed in this object,
	  the -rld_addr_only option is also passed to rqs. This	option may not
	  work well for	32-bit objects since the rld address need not be
	  identical for	old 32-bit ABI and new 32-bit ABI rld but there	is no
	  way to separate the different	versions of rld	for the	different 32-
	  bit ABIs in this option.

     -check_registry location_file_for_32_bit_objects
	  Uses location_file_for_32_bit_objects	as the list of potential
	  shared object	locations. This	information is used when determining a
	  new location for a 32	bit shared object. The default is
	  /lib/so_locations for	old 32-bit ABI objects and /lib32/so_locations
	  for new 32-bit ABI objects.  This option is ignored (and the default
	  is used) if -check_registry_path is provided.

     -check_registry_64	location_file_for_64_bit_objects
	  Uses location_file_for_64_bit_objects	as the list of potential
	  shared object	locations. This	information is used when determining a
	  new location for a 64	bit shared object. The default is
	  /lib64/so_locations.	This option is ignored (and the	default	is
	  used)	if -check_registry_path	is provided.

     -check_registry_path pathname
	  Changes the default path of the registry file	to check to pathname.
	  The default value is /usr.

     -update_registry location_file_for_32_bit_objects
	  Uses location_file_for_32_bit_objects	as the list of potential
	  shared object	locations. This	information is used when determining a
	  new location for a 32	bit shared object. The default for this	is
	  /lib/so_locations for	old 32-bit ABI objects and /lib32/so_locations
	  for new 32-bit ABI objects.  This option is ignored (and the default
	  is used) if -update_registry_path is provided.

     -update_registry_64 location_file_for_64_bit_objects
	  Uses location_file_for_64_bit_objects	as the list of potential
	  shared object	locations. This	information is used when determining a
	  new location for a 64	bit shared object. The default for this	is



									Page 3






RQSALL(1)							     RQSALL(1)



	  /lib64/so_locations.	This option is ignored (and the	default	is
	  used)	if -update_registry_path is provided.

     -update_registry_path pathname
	  Changes the default path of the registry file	update to pathname.
	  The default value is /usr.

     -no_registry
	  No DEFAULT registry files should be used for checking.

     -file objname
	  Restricts the	object to actually be requickstarted to	this single
	  object.  The logic of	checking is identical whether this is present
	  or not, but other object requickstarting is suppressed with this
	  present.  If multiple	instances of this option are present only the
	  last is effective.

     -log logfilename
	  Writes a filename and	action letter (T for requickstarted) in	the
	  named	file for each file requickstarted.  The	file is	opened for
	  output (not append) so previous contents are erased.

     -no_timestamp
	  Stops	rqsall from passing the	-timestamp option to rqs.

     -no_echo
	  Turns	off echoing to standard	output of each rqs command to be
	  executed.

     -rqs_update_registry
	  Enables passing of -check_registry and/or -update_registry commands
	  to rqs using the file	names from the -check_registry,
	  -update_registry, -check_registry_64,	-update_registry_64 options.
	  Suppresses update of any so_locations	file by	rqsall and lets	rqs or
	  rqs64	do the update.

     -rqs_error_log rqslogname
	  Passes the rqslogname	to rqs via the -log command.

     -v	  Turns	on additional output. A	second -v turns	on even	more.
	  Primarily used for debugging rqsall.

     -same_age
	  Allows rqs to	run even if no dependent DSO changed (that is, the
	  library-list entries seem to have the	same identical checksums and
	  dates	as the actual referenced DSOs).

     -read_only_registry
	  Open registry	files read only. Useful	for rqs	testing.






									Page 4






RQSALL(1)							     RQSALL(1)



     -move
	  Reassign load	addresses for every DSO	listed in the description
	  file.	 Each DSO will be requickstarted using the -load_address
	  option of rqs.  Although slow, the use of this option	will
	  defragment virtual address ranges assigned to	each DSO and maximize
	  available contiguous heap.  See the example below for	a typical
	  invocation.

EXAMPLE    [Toc]    [Back]

     A typical invocation of this command would	look like:

     rqsall -force -o description_file -update_registry	/usr/lib/so_locations
     -update_registry_64 /usr/lib64/so_locations  description_file

EXAMPLE    [Toc]    [Back]

     With the -move option, a typical invocation of rqsall for every DSO
     listed in /var/inst/.rqsfiles and using the default so_locations files
     would look	like:

     rqsall -rescan -same_age -force -move -o /var/inst/.rqsfiles
     /var/inst/.rqsfiles

FILES    [Toc]    [Back]

     /usr/etc/rqsall
     /usr/etc/rqs
     /usr/etc/rqs32
     /usr/etc/rqs64
     /usr/lib/so_locations   (for old 32bit ABI)
     /usr/lib32/so_locations (for new 32bit ABI)
     /usr/lib64/so_locations
     /var/inst/.rqsfiles

NOTES    [Toc]    [Back]

     Ordinarily	only a single ifile is specified on the	command	line since
     rqsread only creates one file. Since this is the normal case (and the
     only case used in practice) the SYNOPSIS shows only one ifile.  If
     multiple files are	specified these	are logically concatenated together.
     However each ifile	must be	'complete'  on its own in the sense that the
     information (in the undocumented plain text format	used) must contain
     complete information sets for each	object.

SEE ALSO    [Toc]    [Back]

      
      
     rqs(1), rqs64(1), rqsread(1), rqsprint(1),	ld(1), rld(1), inst(1M),
     swmgr(1M)


									PPPPaaaaggggeeee 5555
[ Back ]
 Similar pages
Name OS Title
dh_strip Linux strip executables, shared libraries, and some static libraries
syncer HP-UX periodically sync for file system integrity
st_dyn_value Tru64 Access routines for dynamic header information in shared objects
st_dyn_next Tru64 Access routines for dynamic header information in shared objects
ldd Tru64 List dynamic dependencies of executable files or shared objects
st_dyn_start Tru64 Access routines for dynamic header information in shared objects
st_dyn_tag Tru64 Access routines for dynamic header information in shared objects
st_dyn_find_tag Tru64 Access routines for dynamic header information in shared objects
st_dyn_addr Tru64 Access routines for dynamic header information in shared objects
st_dyn_count Tru64 Access routines for dynamic header information in shared objects
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service