/***************************************************************************/ /** **/ /** HPE CONFIDENTIAL. This software is confidential proprietary software **/ /** licensed by Hewlett-Packard Enterprise Development, LP, and is not **/ /** authorized to be used, duplicated OR disclosed to anyone without the **/ /** prior written permission of HPE. **/ /** © 2023 Copyright Hewlett-Packard Enterprise Development, LP **/ /** **/ /** VMS SOFTWARE, INC. CONFIDENTIAL. This software is confidential **/ /** proprietary software licensed by VMS Software, Inc., and is not **/ /** authorized to be used, duplicated or disclosed to anyone without **/ /** the prior written permission of VMS Software, Inc. **/ /** © 2023 Copyright VMS Software, Inc. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 9-Nov-2023 12:06:39 by OpenVMS SDL V3.7 */ /* Source: 08-JUL-2022 23:57:52 $1$DGA8345:[LIB_H.SRC]IRPDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $IRPDEF ***/ #ifndef __IRPDEF_LOADED #define __IRPDEF_LOADED 1 #pragma __nostandard /* This file uses non-ANSI-Standard features */ #pragma __member_alignment __save #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __save /* Save the previously-defined required ptr size */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif #ifdef __cplusplus extern "C" { #define __unknown_params ... #define __optional_params ... #else #define __unknown_params #define __optional_params ... #endif #ifndef __struct #if !defined(__VAXC) #define __struct struct #else #define __struct variant_struct #endif #endif #ifndef __union #if !defined(__VAXC) #define __union union #else #define __union variant_union #endif #endif /*+ */ /* IRP - I/O REQUEST PACKET */ /* */ /* I/O REQUEST PACKETS ARE CONSTRUCTED BY THE QUEUE I/O REQUEST SYSTEM */ /* SERVICE. THE CONTENT OF AN I/O REQUEST PACKET DESCRIBES A FUNCTION TO */ /* BE PERFORMED ON A DEVICE UNIT. */ /* */ /* NOTE: Several fields of the IRP must be at the same offsets as their */ /* corresponding fields in the IRPE and CDRP. The equivalency of these */ /* offsets is verified by ASSUME statements in the [LIB]VFY_IRP_A_LIKES.MAR */ /* module. These ASSUMEs may need to be altered as well whenever an IRP */ /* field is removed or altered. */ /*- */ #include /* Define the DIOBM type; IRP contains an embedded DIOBM type */ #include /* Define the IOBD type; IRP contains an embedded IOBD */ #define IRP$M_WLE_REUSE 0x1 #define IRP$M_WLE_SUPWL 0x2 #define IRP$M_WLE_READ_CONTID 0x4 #define IRP$M_WLE_WROTE_CONTID 0x8 #define IRP$M_HIST_LOGGED 0x10 #define IRP$M_ALLO_FAIL 0x20 #define IRP$M_HIST_LOST 0x40 #define IRP$M_TABFU 0x80 #define IRP$M_BUFIO 0x1 #define IRP$M_FUNC 0x2 #define IRP$M_PAGIO 0x4 #define IRP$M_COMPLX 0x8 #define IRP$M_VIRTUAL 0x10 #define IRP$M_CHAINED 0x20 #define IRP$M_SWAPIO 0x40 #define IRP$M_DIAGBUF 0x80 #define IRP$M_PHYSIO 0x100 #define IRP$M_TERMIO 0x200 #define IRP$M_MBXIO 0x400 #define IRP$M_EXTEND 0x800 #define IRP$M_FILACP 0x1000 #define IRP$M_MVIRP 0x2000 #define IRP$M_SRVIO 0x4000 #define IRP$M_CCB_LOOKED_UP 0x8000 #define IRP$M_CACHE_PAGIO 0x10000 #define IRP$M_FILL_BIT 0x20000 #define IRP$M_BUFOBJ 0x40000 #define IRP$M_TRUSTED 0x80000 #define IRP$M_FASTIO_DONE 0x100000 #define IRP$M_FASTIO 0x200000 #define IRP$M_FAST_FINISH 0x400000 #define IRP$M_DOPMS 0x800000 #define IRP$M_HIFORK 0x1000000 #define IRP$M_SRV_ABORT 0x2000000 #define IRP$M_LOCK_RELEASEABLE 0x4000000 #define IRP$M_DID_FAST_FDT 0x8000000 #define IRP$M_SYNCSTS 0x10000000 #define IRP$M_FINIPL8 0x20000000 #define IRP$M_FILE_FLUSH 0x40000000 #define IRP$M_BARRIER 0x80000000 #define IRP$M_READ_TO_EOF 0x80000000 #define IRP$M_START_PAST_HWM 0x1 #define IRP$M_END_PAST_HWM 0x2 #define IRP$M_ERASE 0x4 #define IRP$M_PART_HWM 0x8 #define IRP$M_LCKIO 0x10 #define IRP$M_SHDIO 0x20 #define IRP$M_CACHEIO 0x40 #define IRP$M_WLE 0x80 #define IRP$M_CACHE_SAFE 0x100 #define IRP$M_NOCACHE 0x200 #define IRP$M_ABORTIO 0x400 #define IRP$M_FORCEMV 0x800 #define IRP$M_HBRIO 0x1000 #define IRP$M_ON_ACT_Q 0x2000 #define IRP$M_MPDEV_RETRIED 0x4000 #define IRP$M_MPWIO 0x8000 #define IRP$M_FREE_STS2_16 0x10000 #define IRP$M_FREE_STS2_17 0x20000 #define IRP$M_FREE_STS2_18 0x40000 #define IRP$M_PVIRP 0x80000 #define IRP$M_USEALTDDT 0x100000 #define IRP$M_PID_S0_MV 0x200000 #define IRP$M_CACHE_RESUME 0x400000 #define IRP$M_FREE_STS2_23 0x800000 #define IRP$M_FREE_STS2_24 0x1000000 #define IRP$M_QSVD 0x2000000 #define IRP$M_PR_VREG 0x4000000 #define IRP$M_SKIP_BD_CDRP_CHECK 0x8000000 #define IRP$M_RWH 0x10000000 #define IRP$M_FREE_STS2_29 0x20000000 #define IRP$M_FREE_STS2_30 0x40000000 #define IRP$M_FREE_STS2_31 0x80000000 #define IRP$M_FREE_STS2_BITS -511246336 #define IRP$M_FCODE 0x3F #define IRP$K_CDRP 616 /* Offset to the CDRP within the IRP */ #define IRP$C_CDRP 616 /* Offset to the CDRP within the IRP */ #define IRP$M_PIO_ERROR 0x1 #define IRP$M_PIO_FANOUT 0x2 #define IRP$M_PIO_NOQUE 0x4 #define IRP$M_PIO_CANCEL 0x8 #define IRP$M_PIO_CTHRDOK 0x10 #define IRP$M_PIO_PHASEII 0x20 #define IRP$M_PIO_BBR 0x40 #define IRP$M_SHD_EXPEL_REMOVED 0x1 #define IRP$M_SHD_RETRY 0x2 #define IRP$M_CLN_READY 0x1 #define IRP$M_CLN_DONE 0x2 #define IRP$M_SHADOW_SERVER_FINI 0x4 #define IRP$M_RTN_ALT_SUCCESS 0x8 #define IRP$M_WBM_DELETE 0x10 #define IRP$M_WBM_LOGGED 0x20 #define IRP$M_CLN_SCB_WRITTEN 0x40 #define IRP$K_BT_LEN 712 #define IRP$C_BT_LEN 712 #define IRP$K_CD_LEN 760 #define IRP$C_CD_LEN 760 #ifdef __cplusplus /* Define structure prototypes */ struct _wcb; struct _ucb; struct _ctxb; struct _shad; struct _hrb; struct _bufio; struct _bod; struct _iocpt; struct _aib; struct _irpe; struct _fdt_context; struct _ddt; struct _arb; struct _kpb; struct _ccb; struct _fkb; struct _cdt; struct _psb; struct _cdrp; #endif /* #ifdef __cplusplus */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif typedef struct _irp { #pragma __nomember_alignment struct _irp *irp$l_ioqfl; /*I/O QUEUE FORWARD LINK */ struct _irp *irp$l_ioqbl; /*I/O QUEUE BACKWARD LINK */ unsigned short int irp$w_size; /*SIZE OF IRP IN BYTES */ unsigned char irp$b_type; /*STRUCTURE TYPE FOR IRP */ __union { unsigned char irp$b_rmod; /*ACCESS MODE OF REQUEST */ __struct { unsigned irp$v_mode : 2; /* MODE SUBFIELD */ unsigned irp$v_fill_24_ : 6; } irp$r_rmod_bits; } irp$r_rmod_overlay; unsigned int irp$l_pid; /*PROCESS ID OF REQUESTING PROCESS */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_param_0; /*For PAGEFAULT and IOCIOPOST */ __struct { int irp$l_acb64x_offset; /* Offset to ACB64X structure embedded in this IRP */ } irp$r_fill_1_; } irp$r_fill_0_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_param_1; /*For PAGEFAULT and IOCIOPOST */ __struct { unsigned int irp$l_acb_flags; /* ACB flags; valid only if ACB$M_FLAGS_VALID in RMOD set */ unsigned int irp$l_thread_pid; /* (Reserved for Kernel Threads) */ } irp$r_fill_3_; } irp$r_fill_2_; __union { struct _wcb *irp$l_wind; /*ADDRESS OF WINDOW BLOCK */ struct _irp *irp$l_mirp; /*LINK TO MASTER IRP */ void (*irp$l_kast)(); /*PIGGY BACK KERNEL AST ADDRESS */ } irp$r_wind_overlay; struct _ucb *irp$l_ucb; /*ADDRESS OF DEVICE UCB */ __union { #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void (*irp$pq_acb64_ast)(); /* 64-bit user AST routine address */ #else unsigned __int64 irp$pq_acb64_ast; #endif #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif struct _irp *irp$l_shd_iofl; /* Link to clone IRPs */ struct _ctxb *irp$l_ctxb; /* Link to CTXB */ int irp$l_iirp_p0; /* Generic parameter cell in internal IRPs */ } irp$r_acb64_ast_overlay; __union { #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif unsigned __int64 irp$q_acb64_astprm; /* 64-bit user AST parameter value */ #pragma __nomember_alignment struct _shad *irp$l_shad; /* SHAD address */ struct _hrb *irp$l_hrb; /* HRB address */ int irp$l_mv_tmo; /* Timeout value in internal mount verification IRPs */ int irp$l_iirp_p1; /* Generic parameter cell in internal IRPs */ } irp$r_acb64_astprm_overlay; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif unsigned __int64 irp$q_user_thread_id; /* Unique user thread identifier */ #pragma __nomember_alignment unsigned char irp$b_efn; /*EVENT FLAG NUMBER AND EVENT GROUP */ unsigned char irp$b_pri; /*BASE PRIORITY OF REQUESTING PROCESS */ unsigned char irp$b_cln_indx; /*Shadow Clone membership index */ __union { /* Write log flags. */ unsigned char irp$b_wlg_flags; /* These flags are shared by DUDRIVER and SHDRIVER and MSCP. */ __struct { /* Write log Flags Status Bits */ unsigned irp$v_wle_reuse : 1; /* Reuse writelog entry */ unsigned irp$v_wle_supwl : 1; /* Supplementary writelog */ unsigned irp$v_wle_read_contid : 1; /* Read the controller ID */ unsigned irp$v_wle_wrote_contid : 1; /* Controller ID recorded */ unsigned irp$v_hist_logged : 1; /* Write Log Successfully created or reused */ unsigned irp$v_allo_fail : 1; /* Allocation Failure Table successfully update */ unsigned irp$v_hist_lost : 1; /* Write log state lost */ unsigned irp$v_tabfu : 1; /* Write log table full */ } irp$r_wlg_flag_bits; /* */ } irp$r_wlg_flags_overlay; /* */ unsigned int irp$l_chan; /* Process I/O channel */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *irp$pq_iosb; /* 64-bit address of caller's IOSB */ #else unsigned __int64 irp$pq_iosb; #endif __struct { __union { unsigned int irp$l_cln_wle; /* write log entry */ __int64 irp$q_param_2; /* For PAGEFAULT and IOCIOPOST (Kthreads) */ int irp$l_iirp_p2; /* Generic parameter cell in internal IRPs */ } irp$r_iosb_overlay; } irp$r_fill_5_; } irp$r_fill_4_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment unsigned __int64 irp$q_status; /*Big time REQUEST STATUS */ __struct { __union { /* Create a union so that STS bits can be overloaded */ __union { unsigned int irp$l_sts; /* Status */ __struct { unsigned irp$v_bufio : 1; /* BUFFERED I/O FLAG ;THESE BITS */ unsigned irp$v_func : 1; /* 1=>READ FUNCTION ;MUST BE ADJACENT */ unsigned irp$v_pagio : 1; /* PAGING I/O FLAG ;AND IN ORDER */ unsigned irp$v_complx : 1; /* COMPLEX BUFFERED I/O */ unsigned irp$v_virtual : 1; /* VIRTUAL I/O FUNCTION */ unsigned irp$v_chained : 1; /* CHAINED BUFFERED I/O OPERATION */ unsigned irp$v_swapio : 1; /* SWAP OR MPW I/O OPERATION */ unsigned irp$v_diagbuf : 1; /* DIAGNOSTIC BUFFER ALLOCATED */ unsigned irp$v_physio : 1; /* PHYSICAL I/O */ unsigned irp$v_termio : 1; /* TERMINAL I/O (FOR SELECTING PRIORITY INC) */ unsigned irp$v_mbxio : 1; /* MAILBOX BUFFERED READ */ unsigned irp$v_extend : 1; /* AN IRPE IS LINKED TO THIS IRP */ unsigned irp$v_filacp : 1; /* FILE ACP I/O (BOTH DIOCNT AND BIOCNT) */ unsigned irp$v_mvirp : 1; /* MOUNT VERIFICATION IRP */ unsigned irp$v_srvio : 1; /* SERVER TYPE I/O (TRIGGER MOUNTVER ON ERROR BUT DON'T STALL) */ unsigned irp$v_ccb_looked_up : 1; /* Set if IRP$PS_CCB contains valid CCB address */ unsigned irp$v_cache_pagio : 1; /* Cached page i/o */ unsigned irp$v_fill_bit : 1; /* Unused */ unsigned irp$v_bufobj : 1; /* Set if buffer object I/O */ unsigned irp$v_trusted : 1; /* Set if trusted Component I/O */ unsigned irp$v_fastio_done : 1; /* Set if this is an available Fast-IO IRP */ unsigned irp$v_fastio : 1; /* Set if IRP created by $IO_SETUP -- special delete action */ unsigned irp$v_fast_finish : 1; /* Set if IPL8 completion is expected */ unsigned irp$v_dopms : 1; /* =1 if this IRP should call PMS$ logging routines */ unsigned irp$v_hifork : 1; /* Device fork IPL > IPL$C_SCS */ unsigned irp$v_srv_abort : 1; /* Server I/O should be aborted */ unsigned irp$v_lock_releaseable : 1; /* Forklock can be released in favor of PM spinlock on Start I/O */ unsigned irp$v_did_fast_fdt : 1; /* Fast-IO may have locked buffers via standard FDT dispatch */ unsigned irp$v_syncsts : 1; /* VIOC can return SS$_SYNC on HIT if set. */ unsigned irp$v_finipl8 : 1; /* Finish at IPL8 hook */ unsigned irp$v_file_flush : 1; /* Flush the file following this I/O */ unsigned irp$v_barrier : 1; /* Insert a barrier following this I/O */ } irp$r_fill_9_; } irp$r_fill_8_; __union { unsigned int irp$l_sts_overlay; __struct { unsigned irp$v_filler_1 : 31; /* Fill to overlay READ_TO_EOF with BARRIER */ unsigned irp$v_read_to_eof : 1; /* Reserved for Internal Use only. */ } irp$r_fill_11_; } irp$r_fill_10_; } irp$r_sts_bits; /* End of union */ __union { unsigned int irp$l_sts2; /* EXTENSION OF STATUS WORD */ __struct { unsigned irp$v_start_past_hwm : 1; /* I/O STARTS PAST HIGHWATER MARK */ unsigned irp$v_end_past_hwm : 1; /* I/O ENDS PAST HIGHWATER MARK */ unsigned irp$v_erase : 1; /* ERASE I/O FUNCTION */ unsigned irp$v_part_hwm : 1; /* PARTIAL HIGHWATER MARK UPDATE */ unsigned irp$v_lckio : 1; /* Locked I/O request (DECnet) */ unsigned irp$v_shdio : 1; /* This is a shadowing IRP */ unsigned irp$v_cacheio : 1; /* uses VBN cache buffers */ unsigned irp$v_wle : 1; /* I/O USES A WRITE LOG Phase I ENTRY */ unsigned irp$v_cache_safe : 1; /* this indicates that */ /* the request has been */ /* checked as regards */ /* caching. */ unsigned irp$v_nocache : 1; /* IO$M_NOVCACHE was */ /* set in QIO function */ unsigned irp$v_abortio : 1; /* set in EXE$ABORTIO */ unsigned irp$v_forcemv : 1; /* set to indicate forced MV in progress */ unsigned irp$v_hbrio : 1; /* This is a host based raid IRP. */ unsigned irp$v_on_act_q : 1; /* Set if application IRP has already been queued (for HBVS) */ unsigned irp$v_mpdev_retried : 1; /* Set if I/O on a multipath device will be tried on a different path */ unsigned irp$v_mpwio : 1; /* Set on, specifically, modified page writes and NOT on swapper I/O */ /* */ unsigned irp$v_free_sts2_16 : 1; /* STS2 bit #16 is free, available for debug or development */ /* */ unsigned irp$v_free_sts2_17 : 1; /* STS2 bit #17 is free, available for debug or development */ /* */ unsigned irp$v_free_sts2_18 : 1; /* STS2 bit #18 is free, available for debug or development */ unsigned irp$v_pvirp : 1; /* Set if a path verification IRP */ unsigned irp$v_usealtddt : 1; /* Set if IRP$PS_ALTDDT should be used instead of UCB$L_DDT */ unsigned irp$v_pid_s0_mv : 1; /* Set if normal MV desired for IRP$L_PID with S0/S1 address */ unsigned irp$v_cache_resume : 1; /* Set if cache needs to see IRP again */ /* */ unsigned irp$v_free_sts2_23 : 1; /* STS2 bit #23 is free, available for debug or development */ /* */ unsigned irp$v_free_sts2_24 : 1; /* STS2 bit #24 is free, available for debug or development */ unsigned irp$v_qsvd : 1; /* Obsolete QIOserver function bit that will never be set */ /* However, the pain to remove it exceeds the benefit, at this time. */ unsigned irp$v_pr_vreg : 1; /* Set if Persistent Registrations need to be verified on device */ unsigned irp$v_skip_bd_cdrp_check : 1; /* X-68b Inhibit BD/CDRP consistency check (MSCP.MAR X-77A1A1) */ unsigned irp$v_rwh : 1; /* X-68b Read/Write History attached to this IRP */ /* */ unsigned irp$v_free_sts2_29 : 1; /* STS2 bit #29 is free, available for debug or development */ /* */ unsigned irp$v_free_sts2_30 : 1; /* STS2 bit #30 is free, available for debug or development */ /* */ unsigned irp$v_free_sts2_31 : 1; /* STS2 bit #30 is free, available for debug or development */ } irp$r_fill_13_; } irp$r_fill_12_; /* Mask of all free bits that are available for debug or development */ } irp$r_fill_7_; } irp$r_fill_6_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _pte *irp$pq_va_pte; /* X-85a 64-bit process virtual addr of PTE */ #else unsigned __int64 irp$pq_va_pte; #endif __union { #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *irp$pq_void; /* Untyped 64b pointer */ #else unsigned __int64 irp$pq_void; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _bufio *irp$pq_bufio_pkt; /* 64-bit pointer to buffered I/O packet */ #else unsigned __int64 irp$pq_bufio_pkt; #endif /* X-85c */ #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif void *irp$ps_void; /* Untyped 32b pointer */ struct _bod *irp$ps_bod; /* Buffer Object Descriptor */ struct _iocpt *irp$ps_iocpt; /* I/O Cache Page Table */ struct _aib *irp$ps_aib; /* ACP I/O Buffer pointer */ struct _bufio *irp$ps_bufio_pkt; /* 32-bit pointer to buffered I/O packet */ } irp$r_svapte_overlay; unsigned int irp$l_bcnt; /*BYTE COUNT OF TRANSFER */ unsigned int irp$l_boff; /* Byte offset */ __union { unsigned int irp$l_oboff; /* Original BOFF, for segmented DIO */ unsigned int irp$l_aboff; /* "Ambient" BOFF, for NETDRIVER */ } irp$r_oboff_overlay; struct _irpe *irp$l_extend; /* ADDRESS OF IRPE */ __union { struct _fdt_context *irp$ps_fdt_context; /* Contains addr of the FDT Context structure */ struct _ddt *irp$ps_altddt; /* Pointer to DDT if IRP$V_USEALTDDT is set */ } irp$r_fdt_context_overlay; char irp$b_fill_25_ [4]; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif DIOBM irp$r_diobm; /* Embedded DIOBM to handle cross-process 32-bit PTE access */ /* X-82, X-85d */ IOBD irp$r_iobd; /* Embedded I/O Buffer Descriptor (IOBD) */ #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _ext *irp$pq_extent; /* Pointer to 1st buffer extent to reference */ #else unsigned __int64 irp$pq_extent; #endif #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _ext *irp$pq_orig_extent; /* Original EXTENT, for restoration after segmented I/O */ #else unsigned __int64 irp$pq_orig_extent; #endif __union { /* */ unsigned __int64 irp$q_extent_boffs; /* */ __struct { /* */ int irp$l_extent_boff; /* Byte offset into 1st buffer extent */ int irp$l_orig_extent_boff; /* Original EXTENT_BOFF, for restoration after segmented I/O */ } irp$r_extent_boff_struct; /* */ } irp$r_extent_boff_union; /* */ __union { unsigned __int64 irp$q_media; /* 64 bit LBN of request */ __struct { __union { unsigned int irp$l_iost1; /*FIRST I/O STATUS LONGWORD (FOR I/O POST) */ unsigned int irp$l_media; /*MEDIA ADDRESS */ } irp$r_iost1_overlay; __union { unsigned int irp$l_iost2; /*SECOND I/O STATUS LONGWORD */ __union { int irp$l_tt_term; /*ADDRESS OF READ TERMINATORS MASK */ unsigned char irp$b_carcon; /*CARRIAGE CONTROL */ } irp$r_tt_term_overlay; } irp$r_iost2_overlay; } irp$r_fill_15_; } irp$r_fill_14_; __union { unsigned __int64 irp$q_nt_prvmsk; /* PRIVILEGE MASK FOR DECNET */ unsigned __int64 irp$q_station; /* STATION FIELD FOR DECNET DRIVERS */ __union { unsigned __int64 irp$q_tt_state; /* TERMINAL STATE DEFINITIONS */ __struct { unsigned int irp$l_abcnt; /* ACCUMULATED BYTES TRANSFERED */ unsigned int irp$l_obcnt; /* ORIGINAL TRANSFER BYTE COUNT */ } irp$r_tt_state_fields; } irp$r_tt_state_overlay; } irp$r_nt_prvmsk_overlay; __union { unsigned int irp$l_func; /* I/O function code */ __struct { unsigned irp$v_fcode : 6; /* FUNCTION CODE FIELD */ unsigned irp$v_fmod : 10; /* FUNCTION MODIFIER FIELD */ } irp$r_func_bits; } irp$r_func_overlay; __union { unsigned int irp$l_dt_modifs; /* Disk modifiers */ __struct { __union { unsigned short int irp$w_dt_modifs; unsigned short int irp$w_shd_mscp_disk_modifier; /*FIELD FOR MODIFIERS */ } irp$r_dt_modifs_overlay; } irp$r_fill_17_; } irp$r_fill_16_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment unsigned __int64 irp$q_segvbn; /* 64-bit VBN */ unsigned int irp$l_segvbn; /* VIRTUAL BLOCK NUMBER OF CURRENT SEGMENT */ } irp$r_segvbn_overlay; __union { #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif void *irp$l_diagbuf; /* DIAGNOSTIC BUFFER ADDRESS */ void *irp$l_scb_buf; /* SCB BUFFER ADDRESS */ unsigned short int irp$w_tt_prmpt; /* PROMPT SIZE */ } irp$r_diagbuf_overlay; __union { unsigned int irp$l_seqnum; /* SEQUENCE NUMBER */ struct _ucb *irp$l_dcd_src_ucb; /* DISK COPY DATA SOURCE UCB */ } irp$r_seqnum_overlay; struct _arb *irp$l_arb; /* ACCESS RIGHTS BLOCK ADDRESS */ __union { void *irp$l_keydesc; /* ADDRESS OF ENCRYPTION DESCRIPTOR */ unsigned int irp$l_wle_ptr; /* Clone Write log index */ unsigned char irp$b_cpy_mode; /* Copy mode identifier */ } irp$r_keydesc_overlay; struct _kpb *irp$ps_kpb; /* Pointer to KP block */ struct _ccb *irp$ps_ccb; /* Pointer to CCB for this I/O */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_qio_p1; /* QIO argument #1 (64-bits) */ __struct { int irp$l_qio_p1; /* (low-order 32-bit) */ } irp$r_fill_19_; } irp$r_fill_18_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_qio_p2; /* QIO argument #2 (64-bits) */ __struct { int irp$l_qio_p2; /* (low-order 32-bit) */ } irp$r_fill_21_; } irp$r_fill_20_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_qio_p3; /* QIO argument #3 (64-bits) */ int irp$l_qio_p3; /* (low-order 32-bit) */ __int64 irp$q_param_3; /* (for PAGEFAULT and IOCIOPOST) */ } irp$r_qio_p3_overlay; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_qio_p4; /* QIO argument #4 (64-bits) */ int irp$l_qio_p4; /* (low-order 32-bit) */ } irp$r_qio_p4_overlay; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_qio_p5; /* QIO argument #5 (64-bits) */ __struct { int irp$l_qio_p5; /* (low-order 32-bit) */ } irp$r_fill_23_; } irp$r_fill_22_; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 irp$q_qio_p6; /* QIO argument #6 (64-bits) */ int irp$l_qio_p6; /* (low-order 32-bit) */ } irp$r_qio_p6_overlay; unsigned __int64 irp$q_lbn_64; /* 64-bit LBN */ /* ALL FIELDS INSERTED ABOVE THIS POINT IN THE IRP */ /* MUST BE CHANGED IN THE CDRPDEF.SDL FILE. */ /* Standard IRP must contain space for Class Driver CDRP fields. */ struct _fkb *irp$l_fqfl; /* Fork Queue FLINK */ struct _fkb *irp$l_fqbl; /* Fork Queue Blink */ unsigned short int irp$w_cdrpsize; /* Size field for positive section only */ unsigned char irp$b_cd_type; /* Type, always of interest */ unsigned char irp$b_flck; /* Fork Lock number */ void (*irp$l_fpc)(); /* Fork PC */ __int64 irp$q_fr3; /* Fork R3 */ __int64 irp$q_fr4; /* Fork R4 */ void (*irp$l_savd_rtn)(); /* Saved return address from level 1 JSB */ void *irp$l_msg_buf; /* Address of allocated MSCP buffer */ unsigned int irp$l_rspid; /* Allocated Request ID */ struct _cdt *irp$l_cdt; /* Address of Connection Descriptor Table */ unsigned __int64 irp$q_res_wait_state; /* SCS Resource Wait State */ int irp$l_scs_stall_data; /* Data cell used by SCS to save data over a stall */ void *irp$l_rwcptr; /* RWAITCNT pointer */ void *irp$l_bd_addr; /* Address of Buffer Descriptor that maps I/O buffer */ void *irp$l_rbun; /* Address of Resource Bundle */ void *irp$l_lbufh_ad; /* Local BUFfer Handle ADress */ struct _psb *irp$ar_psb; /* Pointer to PSB from which QIO was called. */ /* Extensions to the CDRP within the IRP */ __union { /* Host-Based Shadowing Extension */ __struct { unsigned char irp$b_shd_pio_cnt; /* Tot num phys IRPs assoc. */ unsigned char irp$b_shd_pio_act; /* Tot num phys IRPs active. */ /* Note Keep SHD_PIO_FLAGS, SHD_PIO_ERRCNT, contiguous. */ __union { unsigned char irp$b_shd_pio_flags; /* Master Flags Byte */ __struct { unsigned irp$v_pio_error : 1; /* Errant clone in Chain */ unsigned irp$v_pio_fanout : 1; /* Chained Clones. */ unsigned irp$v_pio_noque : 1; /* Don't queue to server */ unsigned irp$v_pio_cancel : 1; /* This master cancelled */ unsigned irp$v_pio_cthrdok : 1; /* Copy thread validated. */ unsigned irp$v_pio_phaseii : 1; /* Bi-phasic Phase II write */ unsigned irp$v_pio_bbr : 1; /* Bad Block Replacement has been attempted */ unsigned irp$v_fill_26_ : 1; } irp$r_pio_bits; } irp$r_pio_flags_overlay; unsigned char irp$b_shd_pio_errcnt; /* Number of errors in chain */ unsigned char irp$b_shd_pio_errindex; /* Index of erring device */ unsigned char irp$b_shd_pio_errsev; /* Relative error severity */ short int irp$w_shd_filler; unsigned __int64 irp$q_shd_lock_fr0; /* Lock fork R0 */ unsigned __int64 irp$q_shd_lock_fr1; /* Lock fork R1 */ unsigned __int64 irp$q_shd_lock_fr2; /* Lock fork R2 */ unsigned __int64 irp$q_shd_lock_fr4; /* Lock fork R4 */ unsigned __int64 irp$q_shd_lock_fr5; /* Lock fork R5 */ void (*irp$l_shd_lock_fpc)(); /* Lock fork PC */ __union { unsigned int irp$l_shd_pio_error; /* BCNT and Error Status (SS$_) */ unsigned int irp$l_wbm_rmtsnd_sts; /* In WBM, return status of ioc_std$remote_set_bits */ } irp$r_shd_wbm_overlay1; __union { struct _irp *irp$l_shd_pio_lnk; /* Link to clone IRP(s) */ unsigned int irp$l_wbm_refcnt; /* In WBM, count of IRP reference */ } irp$r_shd_wbm_overlay2; int (*irp$l_shdspc)(); /* Shadowing return PC */ struct _irp *irp$l_shd_control_irp; /* address of control IRP */ int irp$l_shd_temp; /* used for temporary storage */ unsigned __int64 irp$q_shd_saved_r1; /* second save area for WLG */ unsigned __int64 irp$q_shd_saved_r2; unsigned __int64 irp$q_shd_saved_r4; unsigned int irp$l_shd_svd_cnt_irp; /* save SHD_CONTROL_IRP */ unsigned int irp$l_shd_saved_status; /* save area for status */ unsigned int irp$l_shd_wlg_mode_fpc; /* saved PC for WLG_MODE fork */ unsigned int irp$l_shd_perlkid; /* holds sublock id for */ /* per-disk */ unsigned int irp$l_shd_expel_timer; /* Clone error timer */ __union { unsigned int irp$l_shd_expel_flags; /* Clone IRP flags */ __struct { unsigned irp$v_shd_expel_removed : 1; /* Device is expelled */ unsigned irp$v_shd_retry : 1; /* PACKACK the Member timeout seconds */ unsigned irp$v_fill_27_ : 6; } irp$r_expel_bits; } irp$r_expel_flags_overlay; unsigned int irp$l_shd_expel_mask; /* indicate units to be expelled in MIRP */ char irp$b_fill_28_ [4]; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment unsigned __int64 irp$q_datacheckretrycounter; /* For said purposes */ unsigned __int64 irp$q_shd_reserv_q8; /* will be needed for 64-bit saves */ } irp$r_shd_resvd_q8_overlay; __union { unsigned __int64 irp$q_current_clone; /* will be needed for 64-bit saves */ unsigned __int64 irp$q_shd_devdsc; /* */ __struct { /* used for finding/creating DSAxxx: */ unsigned int irp$l_shd_devdsc; /* */ __union { __struct { unsigned short int irp$w_shd_vun; /* virtual unit number */ unsigned short int irp$w_shd_dev_type; /* device type = DSA */ } irp$r_shd_dsa_stuff; unsigned short int irp$w_shd_copy_type; /* type of copy to perform */ } irp$r_shd_dev2_overlay; } irp$r_shd_dev_overlay; } irp$r_shd_resvd_q9_overlay; unsigned __int64 irp$q_shd_reserv_q10; /* will be needed for 64-bit saves */ __union { unsigned char irp$b_shd_flags; /* Shadow Clone Flags */ __struct { /* Clone Flags Status Bits */ unsigned irp$v_cln_ready : 1; /* Clone is ready for I/O */ unsigned irp$v_cln_done : 1; /* Clone has done I/O */ unsigned irp$v_shadow_server_fini : 1; /* Indicator on some IRPs to SHDRIVER that Shadow Server finished with I\ RP */ unsigned irp$v_rtn_alt_success : 1; /* Mini Copy Return status */ unsigned irp$v_wbm_delete : 1; /* Mini Copy WBM Delete bit map was called */ unsigned irp$v_wbm_logged : 1; /* Mini Copy Tracing Code */ unsigned irp$v_cln_scb_written : 1; /* Data Check recovery */ unsigned irp$v_fill_29_ : 1; } irp$r_shd_flag_bits; /* */ } irp$r_shd_flags_overlay; /* */ } irp$r_shadowing_extension; /* Block Transfer Extension */ __struct { unsigned int irp$l_lboff; /* Local Byte OFFset */ __union { void *irp$l_rbufh_ad; /* Remote BUFfer Handle ADress */ struct _cdrp *irp$l_cdrpfl; } irp$r_rbufh_ad_overlay; unsigned int irp$l_rboff; /* Remote Byte OFFset */ unsigned int irp$l_xct_len; /* Transfer length in bytes */ } irp$r_blk_xfer_extension; /* Class Driver Extension */ __struct { char irp$t_lbufhndl [12]; /* Local buffer handle */ unsigned int irp$l_ubarsrce; /* Scratch Cell used for DU/TUDRIVER convenience */ unsigned int irp$l_dutuflags; /* Class driver status flags: */ unsigned short int irp$w_dutucntr; /* General purpose counter */ unsigned short int irp$w_endmsgsiz; /* Size of most recent MSCP end message */ unsigned int irp$l_pdt; /* PDT for this CDRP */ unsigned int irp$l_walk_cddb; /* Current controller for connection walking */ unsigned int irp$l_walk_alcls; /* Allocation class for connection walking */ unsigned int irp$l_walk_svpc; /* Return address for resumption from connection walking */ unsigned int irp$l_lb_cddb; /* Load balancing CDDB */ char irp$b_fill_30_ [4]; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif unsigned int irp$l_dutu_rsvd1; #pragma __nomember_alignment unsigned int irp$l_dutu_rsvd2; unsigned int irp$l_dutu_rsvd3; unsigned int irp$l_dutu_rsvd4; } irp$r_cls_drv_extension; /* File system extensions */ __union { /* VBN to start HWM erase */ unsigned __int64 irp$q_erase_vbn; unsigned int irp$l_erase_vbn; } irp$r_erase_vbn_overlay; } irp$r_cdrp_extensions; char irp$b_fill_31_ [3]; char irp$b_fill_32_ [4]; } IRP; #if !defined(__VAXC) #define irp$b_rmod irp$r_rmod_overlay.irp$b_rmod #define irp$v_mode irp$r_rmod_overlay.irp$r_rmod_bits.irp$v_mode #define irp$q_param_0 irp$r_fill_0_.irp$q_param_0 #define irp$l_acb64x_offset irp$r_fill_0_.irp$r_fill_1_.irp$l_acb64x_offset #define irp$q_param_1 irp$r_fill_2_.irp$q_param_1 #define irp$l_acb_flags irp$r_fill_2_.irp$r_fill_3_.irp$l_acb_flags #define irp$l_thread_pid irp$r_fill_2_.irp$r_fill_3_.irp$l_thread_pid #define irp$l_wind irp$r_wind_overlay.irp$l_wind #define irp$l_mirp irp$r_wind_overlay.irp$l_mirp #define irp$l_kast irp$r_wind_overlay.irp$l_kast #define irp$pq_acb64_ast irp$r_acb64_ast_overlay.irp$pq_acb64_ast #define irp$l_shd_iofl irp$r_acb64_ast_overlay.irp$l_shd_iofl #define irp$l_ctxb irp$r_acb64_ast_overlay.irp$l_ctxb #define irp$l_iirp_p0 irp$r_acb64_ast_overlay.irp$l_iirp_p0 #define irp$q_acb64_astprm irp$r_acb64_astprm_overlay.irp$q_acb64_astprm #define irp$l_shad irp$r_acb64_astprm_overlay.irp$l_shad #define irp$l_hrb irp$r_acb64_astprm_overlay.irp$l_hrb #define irp$l_mv_tmo irp$r_acb64_astprm_overlay.irp$l_mv_tmo #define irp$l_iirp_p1 irp$r_acb64_astprm_overlay.irp$l_iirp_p1 #define irp$b_wlg_flags irp$r_wlg_flags_overlay.irp$b_wlg_flags #define irp$v_wle_reuse irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_wle_reuse #define irp$v_wle_supwl irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_wle_supwl #define irp$v_wle_read_contid irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_wle_read_contid #define irp$v_wle_wrote_contid irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_wle_wrote_contid #define irp$v_hist_logged irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_hist_logged #define irp$v_allo_fail irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_allo_fail #define irp$v_hist_lost irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_hist_lost #define irp$v_tabfu irp$r_wlg_flags_overlay.irp$r_wlg_flag_bits.irp$v_tabfu #define irp$pq_iosb irp$r_fill_4_.irp$pq_iosb #define irp$l_cln_wle irp$r_fill_4_.irp$r_fill_5_.irp$r_iosb_overlay.irp$l_cln_wle #define irp$q_param_2 irp$r_fill_4_.irp$r_fill_5_.irp$r_iosb_overlay.irp$q_param_2 #define irp$l_iirp_p2 irp$r_fill_4_.irp$r_fill_5_.irp$r_iosb_overlay.irp$l_iirp_p2 #define irp$q_status irp$r_fill_6_.irp$q_status #define irp$r_sts_bits irp$r_fill_6_.irp$r_fill_7_.irp$r_sts_bits #define irp$l_sts irp$r_sts_bits.irp$r_fill_8_.irp$l_sts #define irp$v_bufio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_bufio #define irp$v_func irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_func #define irp$v_pagio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_pagio #define irp$v_complx irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_complx #define irp$v_virtual irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_virtual #define irp$v_chained irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_chained #define irp$v_swapio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_swapio #define irp$v_diagbuf irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_diagbuf #define irp$v_physio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_physio #define irp$v_termio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_termio #define irp$v_mbxio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_mbxio #define irp$v_extend irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_extend #define irp$v_filacp irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_filacp #define irp$v_mvirp irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_mvirp #define irp$v_srvio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_srvio #define irp$v_ccb_looked_up irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_ccb_looked_up #define irp$v_cache_pagio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_cache_pagio #define irp$v_fill_bit irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_fill_bit #define irp$v_bufobj irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_bufobj #define irp$v_trusted irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_trusted #define irp$v_fastio_done irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_fastio_done #define irp$v_fastio irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_fastio #define irp$v_fast_finish irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_fast_finish #define irp$v_dopms irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_dopms #define irp$v_hifork irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_hifork #define irp$v_srv_abort irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_srv_abort #define irp$v_lock_releaseable irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_lock_releaseable #define irp$v_did_fast_fdt irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_did_fast_fdt #define irp$v_syncsts irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_syncsts #define irp$v_finipl8 irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_finipl8 #define irp$v_file_flush irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_file_flush #define irp$v_barrier irp$r_sts_bits.irp$r_fill_8_.irp$r_fill_9_.irp$v_barrier #define irp$l_sts_overlay irp$r_sts_bits.irp$r_fill_10_.irp$l_sts_overlay #define irp$v_read_to_eof irp$r_sts_bits.irp$r_fill_10_.irp$r_fill_11_.irp$v_read_to_eof #define irp$l_sts2 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$l_sts2 #define irp$v_start_past_hwm irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_start_past_hwm #define irp$v_end_past_hwm irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_end_past_hwm #define irp$v_erase irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_erase #define irp$v_part_hwm irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_part_hwm #define irp$v_lckio irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_lckio #define irp$v_shdio irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_shdio #define irp$v_cacheio irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_cacheio #define irp$v_wle irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_wle #define irp$v_cache_safe irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_cache_safe #define irp$v_nocache irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_nocache #define irp$v_abortio irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_abortio #define irp$v_forcemv irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_forcemv #define irp$v_hbrio irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_hbrio #define irp$v_on_act_q irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_on_act_q #define irp$v_mpdev_retried irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_mpdev_retried #define irp$v_mpwio irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_mpwio #define irp$v_free_sts2_16 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_16 #define irp$v_free_sts2_17 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_17 #define irp$v_free_sts2_18 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_18 #define irp$v_pvirp irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_pvirp #define irp$v_usealtddt irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_usealtddt #define irp$v_pid_s0_mv irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_pid_s0_mv #define irp$v_cache_resume irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_cache_resume #define irp$v_free_sts2_23 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_23 #define irp$v_free_sts2_24 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_24 #define irp$v_qsvd irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_qsvd #define irp$v_pr_vreg irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_pr_vreg #define irp$v_skip_bd_cdrp_check irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_skip_bd_cdrp_check #define irp$v_rwh irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_rwh #define irp$v_free_sts2_29 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_29 #define irp$v_free_sts2_30 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_30 #define irp$v_free_sts2_31 irp$r_fill_6_.irp$r_fill_7_.irp$r_fill_12_.irp$r_fill_13_.irp$v_free_sts2_31 #define irp$pq_void irp$r_svapte_overlay.irp$pq_void #define irp$pq_bufio_pkt irp$r_svapte_overlay.irp$pq_bufio_pkt #define irp$ps_void irp$r_svapte_overlay.irp$ps_void #define irp$ps_bod irp$r_svapte_overlay.irp$ps_bod #define irp$ps_iocpt irp$r_svapte_overlay.irp$ps_iocpt #define irp$ps_aib irp$r_svapte_overlay.irp$ps_aib #define irp$ps_bufio_pkt irp$r_svapte_overlay.irp$ps_bufio_pkt #define irp$l_oboff irp$r_oboff_overlay.irp$l_oboff #define irp$l_aboff irp$r_oboff_overlay.irp$l_aboff #define irp$ps_fdt_context irp$r_fdt_context_overlay.irp$ps_fdt_context #define irp$ps_altddt irp$r_fdt_context_overlay.irp$ps_altddt #define irp$q_extent_boffs irp$r_extent_boff_union.irp$q_extent_boffs #define irp$l_extent_boff irp$r_extent_boff_union.irp$r_extent_boff_struct.irp$l_extent_boff #define irp$l_orig_extent_boff irp$r_extent_boff_union.irp$r_extent_boff_struct.irp$l_orig_extent_boff #define irp$q_media irp$r_fill_14_.irp$q_media #define irp$l_iost1 irp$r_fill_14_.irp$r_fill_15_.irp$r_iost1_overlay.irp$l_iost1 #define irp$l_media irp$r_fill_14_.irp$r_fill_15_.irp$r_iost1_overlay.irp$l_media #define irp$l_iost2 irp$r_fill_14_.irp$r_fill_15_.irp$r_iost2_overlay.irp$l_iost2 #define irp$l_tt_term irp$r_fill_14_.irp$r_fill_15_.irp$r_iost2_overlay.irp$r_tt_term_overlay.irp$l_tt_term #define irp$b_carcon irp$r_fill_14_.irp$r_fill_15_.irp$r_iost2_overlay.irp$r_tt_term_overlay.irp$b_carcon #define irp$q_nt_prvmsk irp$r_nt_prvmsk_overlay.irp$q_nt_prvmsk #define irp$q_station irp$r_nt_prvmsk_overlay.irp$q_station #define irp$q_tt_state irp$r_nt_prvmsk_overlay.irp$r_tt_state_overlay.irp$q_tt_state #define irp$l_abcnt irp$r_nt_prvmsk_overlay.irp$r_tt_state_overlay.irp$r_tt_state_fields.irp$l_abcnt #define irp$l_obcnt irp$r_nt_prvmsk_overlay.irp$r_tt_state_overlay.irp$r_tt_state_fields.irp$l_obcnt #define irp$l_func irp$r_func_overlay.irp$l_func #define irp$v_fcode irp$r_func_overlay.irp$r_func_bits.irp$v_fcode #define irp$v_fmod irp$r_func_overlay.irp$r_func_bits.irp$v_fmod #define irp$l_dt_modifs irp$r_fill_16_.irp$l_dt_modifs #define irp$w_dt_modifs irp$r_fill_16_.irp$r_fill_17_.irp$r_dt_modifs_overlay.irp$w_dt_modifs #define irp$w_shd_mscp_disk_modifier irp$r_fill_16_.irp$r_fill_17_.irp$r_dt_modifs_overlay.irp$w_shd_mscp_disk_modifier #define irp$q_segvbn irp$r_segvbn_overlay.irp$q_segvbn #define irp$l_segvbn irp$r_segvbn_overlay.irp$l_segvbn #define irp$l_diagbuf irp$r_diagbuf_overlay.irp$l_diagbuf #define irp$l_scb_buf irp$r_diagbuf_overlay.irp$l_scb_buf #define irp$w_tt_prmpt irp$r_diagbuf_overlay.irp$w_tt_prmpt #define irp$l_seqnum irp$r_seqnum_overlay.irp$l_seqnum #define irp$l_dcd_src_ucb irp$r_seqnum_overlay.irp$l_dcd_src_ucb #define irp$l_keydesc irp$r_keydesc_overlay.irp$l_keydesc #define irp$l_wle_ptr irp$r_keydesc_overlay.irp$l_wle_ptr #define irp$b_cpy_mode irp$r_keydesc_overlay.irp$b_cpy_mode #define irp$q_qio_p1 irp$r_fill_18_.irp$q_qio_p1 #define irp$l_qio_p1 irp$r_fill_18_.irp$r_fill_19_.irp$l_qio_p1 #define irp$q_qio_p2 irp$r_fill_20_.irp$q_qio_p2 #define irp$l_qio_p2 irp$r_fill_20_.irp$r_fill_21_.irp$l_qio_p2 #define irp$q_qio_p3 irp$r_qio_p3_overlay.irp$q_qio_p3 #define irp$l_qio_p3 irp$r_qio_p3_overlay.irp$l_qio_p3 #define irp$q_param_3 irp$r_qio_p3_overlay.irp$q_param_3 #define irp$q_qio_p4 irp$r_qio_p4_overlay.irp$q_qio_p4 #define irp$l_qio_p4 irp$r_qio_p4_overlay.irp$l_qio_p4 #define irp$q_qio_p5 irp$r_fill_22_.irp$q_qio_p5 #define irp$l_qio_p5 irp$r_fill_22_.irp$r_fill_23_.irp$l_qio_p5 #define irp$q_qio_p6 irp$r_qio_p6_overlay.irp$q_qio_p6 #define irp$l_qio_p6 irp$r_qio_p6_overlay.irp$l_qio_p6 #define irp$b_shd_pio_cnt irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$b_shd_pio_cnt #define irp$b_shd_pio_act irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$b_shd_pio_act #define irp$b_shd_pio_flags irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$b_shd_pio_flags #define irp$v_pio_error irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_error #define irp$v_pio_fanout irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_fanout #define irp$v_pio_noque irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_noque #define irp$v_pio_cancel irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_cancel #define irp$v_pio_cthrdok irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_cthrdok #define irp$v_pio_phaseii irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_phaseii #define irp$v_pio_bbr irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_pio_flags_overlay.irp$r_pio_bits.irp$v_pio_bbr #define irp$b_shd_pio_errcnt irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$b_shd_pio_errcnt #define irp$b_shd_pio_errindex irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$b_shd_pio_errindex #define irp$b_shd_pio_errsev irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$b_shd_pio_errsev #define irp$q_shd_lock_fr0 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_lock_fr0 #define irp$q_shd_lock_fr1 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_lock_fr1 #define irp$q_shd_lock_fr2 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_lock_fr2 #define irp$q_shd_lock_fr4 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_lock_fr4 #define irp$q_shd_lock_fr5 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_lock_fr5 #define irp$l_shd_lock_fpc irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_lock_fpc #define irp$l_shd_pio_error irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_wbm_overlay1.irp$l_shd_pio_error #define irp$l_wbm_rmtsnd_sts irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_wbm_overlay1.irp$l_wbm_rmtsnd_sts #define irp$l_shd_pio_lnk irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_wbm_overlay2.irp$l_shd_pio_lnk #define irp$l_wbm_refcnt irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_wbm_overlay2.irp$l_wbm_refcnt #define irp$l_shdspc irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shdspc #define irp$l_shd_control_irp irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_control_irp #define irp$l_shd_temp irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_temp #define irp$q_shd_saved_r1 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_saved_r1 #define irp$q_shd_saved_r2 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_saved_r2 #define irp$q_shd_saved_r4 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_saved_r4 #define irp$l_shd_svd_cnt_irp irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_svd_cnt_irp #define irp$l_shd_saved_status irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_saved_status #define irp$l_shd_wlg_mode_fpc irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_wlg_mode_fpc #define irp$l_shd_perlkid irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_perlkid #define irp$l_shd_expel_timer irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_expel_timer #define irp$l_shd_expel_flags irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_expel_flags_overlay.irp$l_shd_expel_flags #define irp$v_shd_expel_removed irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_expel_flags_overlay.irp$r_expel_bits.irp$v_sh\ d_expel_removed #define irp$v_shd_retry irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_expel_flags_overlay.irp$r_expel_bits.irp$v_shd_retry #define irp$l_shd_expel_mask irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$l_shd_expel_mask #define irp$q_datacheckretrycounter irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q8_overlay.irp$q_datacheckretry\ counter #define irp$q_shd_reserv_q8 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q8_overlay.irp$q_shd_reserv_q8 #define irp$q_current_clone irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q9_overlay.irp$q_current_clone #define irp$q_shd_devdsc irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q9_overlay.irp$q_shd_devdsc #define irp$l_shd_devdsc irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q9_overlay.irp$r_shd_dev_overlay.irp$l_shd\ _devdsc #define irp$w_shd_vun irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q9_overlay.irp$r_shd_dev_overlay.irp$r_shd_de\ v2_overlay.irp$r_shd_dsa_stuff.irp$w_shd_vun #define irp$w_shd_dev_type irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q9_overlay.irp$r_shd_dev_overlay.irp$r_s\ hd_dev2_overlay.irp$r_shd_dsa_stuff.irp$w_shd_dev_type #define irp$w_shd_copy_type irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_resvd_q9_overlay.irp$r_shd_dev_overlay.irp$r_\ shd_dev2_overlay.irp$w_shd_copy_type #define irp$q_shd_reserv_q10 irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$q_shd_reserv_q10 #define irp$b_shd_flags irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$b_shd_flags #define irp$v_cln_ready irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_cln_ready #define irp$v_cln_done irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_cln_done #define irp$v_shadow_server_fini irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_\ shadow_server_fini #define irp$v_rtn_alt_success irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_rtn\ _alt_success #define irp$v_wbm_delete irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_wbm_dele\ te #define irp$v_wbm_logged irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_wbm_logg\ ed #define irp$v_cln_scb_written irp$r_cdrp_extensions.irp$r_shadowing_extension.irp$r_shd_flags_overlay.irp$r_shd_flag_bits.irp$v_cln\ _scb_written #define irp$l_lboff irp$r_cdrp_extensions.irp$r_blk_xfer_extension.irp$l_lboff #define irp$l_rbufh_ad irp$r_cdrp_extensions.irp$r_blk_xfer_extension.irp$r_rbufh_ad_overlay.irp$l_rbufh_ad #define irp$l_cdrpfl irp$r_cdrp_extensions.irp$r_blk_xfer_extension.irp$r_rbufh_ad_overlay.irp$l_cdrpfl #define irp$l_rboff irp$r_cdrp_extensions.irp$r_blk_xfer_extension.irp$l_rboff #define irp$l_xct_len irp$r_cdrp_extensions.irp$r_blk_xfer_extension.irp$l_xct_len #define irp$t_lbufhndl irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$t_lbufhndl #define irp$l_ubarsrce irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_ubarsrce #define irp$l_dutuflags irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_dutuflags #define irp$w_dutucntr irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$w_dutucntr #define irp$w_endmsgsiz irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$w_endmsgsiz #define irp$l_pdt irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_pdt #define irp$l_walk_cddb irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_walk_cddb #define irp$l_walk_alcls irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_walk_alcls #define irp$l_walk_svpc irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_walk_svpc #define irp$l_lb_cddb irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_lb_cddb #define irp$l_dutu_rsvd1 irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_dutu_rsvd1 #define irp$l_dutu_rsvd2 irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_dutu_rsvd2 #define irp$l_dutu_rsvd3 irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_dutu_rsvd3 #define irp$l_dutu_rsvd4 irp$r_cdrp_extensions.irp$r_cls_drv_extension.irp$l_dutu_rsvd4 #define irp$q_erase_vbn irp$r_cdrp_extensions.irp$r_erase_vbn_overlay.irp$q_erase_vbn #define irp$l_erase_vbn irp$r_cdrp_extensions.irp$r_erase_vbn_overlay.irp$l_erase_vbn #endif /* #if !defined(__VAXC) */ #define IRP$K_LENGTH 856 /* LENGTH OF STANDARD IRP */ #define IRP$C_LENGTH 856 /* LENGTH OF STANDARD IRP */ #define IRP$S_IRPDEF 856 /* OLD IRP SIZE FOR COMPATIBILITY */ #pragma __member_alignment __restore #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __restore /* Restore the previously-defined required ptr size */ #endif #ifdef __cplusplus } #endif #pragma __standard #endif /* __IRPDEF_LOADED */