--- /dev/null
+=head1 NAME
+
+fssync-debug - Introduction to the fssync-debug command suite
+
+=head1 DESCRIPTION
+
+B<fssync-debug> command suite allows low-level inspection and
+control of the file server volume packages.
+
+This command suite is only supported on the demand-attach file server.
+It operates at an extremely low-level and hence requires detailed
+knowledge of the OpenAFS architecture and code.
+
+An understanding of the OpenAFS volume finite-state machine is
+required before the state of a volume should be manipulated.
+Indiscriminate use of B<fssync-debug> in control mode can lead to
+extremely bad things occurring. Use with care.
+
+=head1 OPTIONS
+
+The following arguments and flags are available on many commands in the
+B<fssync-debug> suite. The reference page for each command also lists them,
+but they may be described here in greater detail.
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_apropos(8)>,
+L<fssync-debug_attach(8)>,
+L<fssync-debug_callback(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_error(8)>,
+L<fssync-debug_header(8)>,
+L<fssync-debug_help(8)>,
+L<fssync-debug_leaveoff(8)>,
+L<fssync-debug_list(8)>,
+L<fssync-debug_mode(8)>,
+L<fssync-debug_move(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_query(8)>,
+L<fssync-debug_stats(8)>,
+L<fssync-debug_vgcadd(8)>,
+L<fssync-debug_vgcdel(8)>,
+L<fssync-debug_vgcquery(8)>,
+L<fssync-debug_vgcscan(8)>,
+L<fssync-debug_vgcscanall(8)>,
+L<fssync-debug_vnode(8)>,
+L<fssync-debug_volop(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_attach - Forces full volume attachment (FSYNC_VOL_ATTACH opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug attach> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug at> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug attach> command forces full attachment of
+a volume.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_detach(8)>,
+L<fssync-debug_callback(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_callback - Breaks callbacks for a volume (FSYNC_VOL_BREAKCBKS opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug callback> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug ca> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+B<fssync-debug cbk> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug callback> command breaks callbacks for a volume.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_leaveoff(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_detach - Detaches a volume (FSYNC_VOL_DONE opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug detach> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug d> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug detach> command detaches a volume.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_callback(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_error - Forces volume into hard error state (FSYNC_VOL_FORCE_ERROR opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug error> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug e> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug error> command forces a volume into
+hard error state.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_leaveoff(8)>,
+L<fssync-debug_callback(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_header - Retrieves volume disk data structure (FSYNC_VOL_QUERY_HDR opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug header> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug hea> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+B<fssync-debug hdr> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug header> command retrieves volume disk
+data structure.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_query(8)>,
+L<fssync-debug_stats(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_leaveoff - Leaves a volume offline (FSYNC_VOL_LEAVE_OFF opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug leaveoff> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug le> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug leaveoff> command leaves a volume offline.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_list - Historical sync command (FSYNC_VOL_LISTVOLUMES opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug list> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug li> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+B<fssync-debug ls> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug list> does nothing but return success, assuming
+the fileserver is available. The opcode it calls exists for
+historical reasons, and now does nothing.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_header(8)>,
+L<fssync-debug_stats(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_mode - Changes volume attach mode (FSYNC_VOL_NEEDVOLUME opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug mode> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug mod> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+B<fssync-debug needvolume> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+B<fssync-debug n> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug mode> command changes volume attach mode.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_callback(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_move - Sets volume moved flag (FSYNC_VOL_MOVE opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug move> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug mov> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug move> command sets volume moved flag.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_leaveoff(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_offline - Brings a volume offline (FSYNC_VOL_OFF opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug offline> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug of> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug offline> command brings a volume offline.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_callback(8)>,
+L<fssync-debug_online(8)>,
+L<fssync-debug_leaveoff(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_online - Brings a volume online (FSYNC_VOL_ON opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug online> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug on> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug online> command brings a volume online.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_attach(8)>,
+L<fssync-debug_detach(8)>,
+L<fssync-debug_callback(8)>,
+L<fssync-debug_offline(8)>,
+L<fssync-debug_leaveoff(8)>,
+L<fssync-debug_error(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_query - Displays volume structure (FSYNC_VOL_QUERY opcode)
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug query> S<<< B<-volumeid> <I<volume ID>> >>>
+ S<<< [B<-partition> <I<exact partition name>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug q> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+B<fssync-debug qry> S<<< B<-v> <I<volume ID>> >>>
+ S<<< [B<-pa> <I<exact partition name>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-pr> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug query> command displays volume structure.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-volumeid> <I<volume ID>>
+
+Specifies the numeric volume ID. Volume names are not permitted.
+
+=item B<-partition> <I<exact partition name>>
+
+Specifies the exact partition name (e.g. I</vicepa>). Abbreviations
+are not permitted.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_header(8)>,
+L<fssync-debug_stats(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.
--- /dev/null
+=head1 NAME
+
+fssync-debug_stats - Displays various statistics
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fssync-debug stats> S<<< B<-cmd> <I<subcommand>> >>>
+ S<<< [B<-arg1> <I<arg1>>] >>>
+ S<<< [B<-arg2> <I<arg2>>] >>>
+ S<<< [B<-reason> <I<sync protocol reason code>>] >>>
+ S<<< [B<-programtype> <I<program type code>>] >>>
+ [B<-help>]
+
+B<fssync-debug s> S<<< B<-c> <I<subcommand>> >>>
+ S<<< [B<-arg1> <I<arg1>>] >>>
+ S<<< [B<-arg2> <I<arg2>>] >>>
+ S<<< [B<-r> <I<sync protocol reason code>>] >>>
+ S<<< [B<-p> <I<program type code>>] >>>
+ [B<-h>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+The B<fssync-debug stats> command displays statistics
+according to the value of the option B<-cmd>.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-cmd> <I<subcommand>>
+
+Specifies statistics subcommand. Available subcommands are:
+
+=over 4
+
+=item *
+
+B<pkg> -- general volume package statistics
+
+=item *
+
+B<vicep> -- vice partition statistics
+
+=item *
+
+B<hash> -- volume hash chain statistics
+
+=item *
+
+B<hdr> -- volume header cache statistics
+
+=item *
+
+B<vlru> -- vlru generation statistics
+
+=item *
+
+B<help> -- display list of available subcommands
+
+=back
+
+=item B<-arg1> <I<arg1>>
+
+Specifies first optional argument, in the context of the
+chosen subcommand. For I<vicep> statistics, it specifies
+partition name; for I<hash> statistics, it specifies
+hash bucket number; for I<vlru> statistics it specifies
+vlru generation number.
+
+=item B<-arg2> <I<arg2>>
+
+Specifies second optional argument, in the context of
+the chose subcommand. Currently, none of the subcommands
+use it.
+
+=item B<-reason> <I<sync protocol reason code>>
+
+Specifies numeric sync protocol reason code.
+Available codes are listed in OpenAFS source file
+F<src/vol/fssync_inline.h>. For SYNC_REASON_NONE,
+use B<-reason I<0>>.
+
+=item B<-programtype> <I<program type code>>
+
+Specifies program type code. Permitted values are
+I<fileServer>,
+I<volumeUtility>,
+I<salvager>,
+I<salvageServer>,
+I<volumeServer> and
+I<volumeSalvager>.
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have write access to the file server.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fssync-debug_header(8)>,
+L<fssync-debug_query(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Davor Ocelic for OpenAFS, based on documentation
+from Steven Jenkins, Tom Keiser and Simon Wilkinson.