1 /* BEGIN INCLUDE FILE ... rldr_data_.incl.pl1 ... March 1976 */
  2 
  3 
  4 /****^  HISTORY COMMENTS:
  5   1) change(86-04-21,Fawcett), approve(86-04-21,MCR7383),
  6      audit(86-05-22,GWMay), install(86-07-18,MR12.0-1098):
  7      Add device_name to support the -pvname_device argument to reload.
  8   2) change(88-10-05,GWMay), approve(88-10-05,MCR8005), audit(88-10-12,Farley),
  9      install(88-10-17,MR12.2-1173):
 10      Added pointer and length values for use as an input_buffer for
 11      intermediate reads.
 12                                                    END HISTORY COMMENTS */
 13 
 14 
 15 /* Severely modified 3/1/83 by GA Texada to support multiple physical */
 16 /*          volume reloading.                                         */
 17 /*          Modified: 3/5/84 by GA Texada to make restart a per pv attribute */
 18 /*                    and add stranger flag.                          */
 19 
 20 /* format: style1,ind2,^inddcls,ifthenstmt,dclind2,declareind2,ifthendo,ifthen*/
 21 
 22 
 23 dcl rldr_datap           ptr,
 24   rldr_data_max_pvs      fixed bin,
 25 
 26   1 rldr_data_           aligned based (rldr_datap),
 27     2 common             like rldr_data_common,             /* only one of each needed                        */
 28     2 per_pv             (rldr_data_max_pvs refer (rldr_data_.npvs)) like rldr_data_perpv,
 29 
 30   1 rldr_data_common     aligned,
 31     2 bits,
 32     ( 3 save             bit (1),                           /* if on can use disk pack restored by BOS */
 33       3 first_volume     bit (1),                           /* if on indicates we are on first volume */
 34       3 rpv              bit (1),                           /* if on indicates we are reloading rpv */
 35       3 data_init        bit (1),                           /* if on data structure initialized to null state */
 36       3 arg_init         bit (1),                           /* on if arguments have been processed */
 37       3 disable_error_report bit (1),                       /* if on will disable error messages */
 38       3 no_object        bit (1),                           /* if on only vtoces will be reloaded */
 39       3 err_online       bit (1),                           /* if on error messages written to error output */
 40       3 detach           bit (1),                           /* if on attached media will  be detached */
 41       3 brief            bit (1),                           /* if on brief mode enabled */
 42       3 manual           bit (1),                           /* if on operator will select input volumes */
 43       3 restart          bit (1),                           /* -restart was supplied                          */
 44       3 stranger         bit (1),                           /* ON if the pv's do not belong to the mounted RPV*/
 45       3 pad0             bit (23)) unal,
 46       3 old_256K_switch  bit (2) aligned,                   /* state of 256KW connection switch before we came along*/
 47       (3 last_pvid,                                         /* pvid of last good object read                  */
 48       3 rpv_pvid,                                           /* rpv pvid */
 49       3 rpv_lvid)        bit (36),                          /* rpv lvid */
 50       3 last_valid_puid  (0:15) bit (36),                   /* last non-zero path uid read from input medium */
 51     2 chars,
 52     ( 3 sys_dir,                                            /* directory where vologs are */
 53       3 default_sys_dir) char (168),                        /* default directory where vologs are */
 54       (3 last_valid_vtoce_ename,                            /* last valid entry name from VTOCE */
 55       3 operator,                                           /* operator's name or initials */
 56       3 io_module)       char (32),                         /* name of io outer module used to read input */
 57       (3 input_volume_desc,                                 /* optional input medium attach description */
 58       3 output_volume_desc) char (256),                     /* optional output medium attach description */
 59     2 fixed,
 60     ( 3 num_abandoned,                                      /* count these as we go along                     */
 61       3 last_vtocx,                                         /* vtocx of last valid object read                */
 62       3 npvs,                                               /* the number of pv names given to the reload_volume command*/
 63       3 rpv_disk_type)   fixed bin,                         /* model index of rpv disk drive */
 64       (3 start_time,                                        /* time reload started */
 65       3 from_time)       fixed bin (71),                    /*  time from which dump tapes should be skipped */
 66       3 input_buffer_len fixed bin (21),                    /* length of the data in the read buffer */
 67       3 input_buffer_start fixed bin (21),                  /* position in read buffer where new data begins */
 68     2 ptrs,
 69     ( 3 inputvol_iocbp,                                     /* iocb ptr for input */
 70       3 error_iocbp,                                        /* iocb ptr for error output */
 71       3 skip,                                               /* ptr to skip list */
 72       3 volume_record_bp,                                   /* ptr to temp seg containing most recent volume record */
 73       3 infop,                                              /* ptr to temp seg containig tdump info */
 74       3 data_object_bp,                                     /* ptr to temp seg containing most recent object from input medium */
 75       3 input_vol_lstp  ptr,                                /* ptr to temp seg containing list of input media */
 76       3 input_buffer_ptr)  ptr,                             /* ptr to read buffer */
 77 
 78 
 79   1 rldr_data_perpv      aligned,                           /* one entry per physical volume to be reloaded   */
 80     2 flags,
 81       3 abandoned        bit (1) unal,                      /* we quit due to some error                      */
 82       3 restart          bit (1),                           /* if on unitialized volume ok and reload will restart */
 83       3 mbz0             bit (34) unal,                     /* beware, RFU                                    */
 84     (2 pvname,                                              /* physical volume name */
 85     2 lvname,                                               /* logical volume name of physical volume being reloaded */
 86     2 disk_model)        char (32),                         /* model name of disk drive */
 87     2 device_name        char (8),
 88     (2 lvid,                                                /* logical volume id of volume being reloaded */
 89     2 pvid)              bit (36),                          /* physical volume id of volume being reloaded */
 90     (2 prev_wordx,                                          /* index to fsmap */
 91     2 prev_bitx,                                            /* index to fsmap */
 92     2 disk_type,                                            /* model index of disk drive */
 93     2 usable_sectors,                                       /* usable sectors per cylinder of disk pack */
 94     2 unusable_sectors,                                     /* unusable sectors per cylinder of disk pack */
 95     2 n_vtoce)           fixed bin,                         /* number of vtoce on disk pack */
 96     (2 vtocbp,                                              /* ptr to vtoc buffer seg */
 97     2 vtoc_headerp,                                         /* ptr to temp seg containing the vtoc header */
 98     2 labelp,                                               /* ptr to temp seg containing pack label */
 99     2 bvlp,                                                 /* ptr to volume log */
100     2 outputvol_iocbp,                                      /* iocb ptr for output */
101     2 controlp,                                             /* ptr to seg containing reload control info about vtoc */
102     2 vol_mapp)          ptr,                               /* ptr to temp seg containing volume map */
103 
104   1 rldr_data_nulled_pv  aligned int static options (constant),
105     2 flags,
106       3 abandoned        bit (1) init ("0"b) unal,
107       3 restart          bit (1) init ("0"b) unal,
108       3 mbz0             bit (34) init ((34)"0"b) unal,
109       (2 pvname,
110     2 lvname,
111     2 disk_model)        char (32) init (""),
112     2 device_name        char (8) init (""),
113     (2 lvid,
114     2 pvid)              bit (36) init ("0"b),
115     (2 prev_wordx,
116     2 prev_bitx,
117     2 disk_type,
118     2 usable_sectors,
119     2 unusable_sectors,
120     2 n_vtoce)           fixed bin init (0),
121     (2 vtocbp,
122     2 vtoc_headerp,
123     2 labelp,
124     2 bvlp,
125     2 outputvol_iocbp,
126     2 controlp,
127     2 vol_mapp)          ptr init (null ());
128 
129 
130 /* END INCLUDE FILE rldr_data_.incl.pl1 */