CRC errors?

  • VolkerHalle
  • Topic Author
  • Visitor
  • Visitor
14 years 8 months ago #4770 by VolkerHalle
Replied by VolkerHalle on topic RE: CRC errors?
Absolutely easy to reproduce:

OpenVMS E8.4, FreeAXP .283, Lenovo ThinkPad, MATSHITA DVD-RAM UJ862AC, OpenVMS Alpha V7.1-2 Operating System CD.


$ MOUNT/NOCACHE/OVER=ID dka600:

Create the following DCL procedure (updated 6-JUN-2010):

< class='quote'>
$ test_file = "dka600:&lt;vms$common.sysexe&gt;opcom.exe"
$!
$ vers = F$EXTRACT(1,3,F$GETSYI("VERSION"))
$ SHOW SYMB vers
$ IF vers .LTS. "8.2"
$ THEN
$ WRITE SYS$OUTPUT "cannot use /BLOCK_SIZE qualifier"
$ ENDIF
$!
$ nn=120 ! start with /BLOCK_SIZE=120
$ set noon
$loop:
$ bs = ""
$ IF vers .GES. "8.2" THEN $ bs = "/BLOCK_SIZE=''nn'"
$ WRITE SYS$OUTPUT "Using $ COPY''bs' ..."
$ copy/log'bs' 'test_file' x.x;0
$ backup/log/compare 'test_file' x.x;0
$ IF $STATUS
$ THEN
$ IF vers .GES. "8.2"
$ THEN
$ RENAME/NOLOG x.x.0 x_'nn'.good
$ ELSE
$ DELETEE/NOCONF/LOG x.x;0
$ ENDIF
$ ELSE
$ RENAME/LOG x.x;0 x_'nn'.bad
$ ENDIF
$ if nn .LT. 128 .AND. vers .GES. "8.2" ! only for V8.2 and higher
$ THEN
$ nn=nn+1
$ GOTO loop
$ ENDIF



then execute it (NOTE: the problem starts with nn=121 and does NOT occur with nn=127 and nn=128).

$ @x
NN = 120 Hex = 00000078 Octal = 00000000170
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;1 (404 blocks)
NN = 121 Hex = 00000079 Octal = 00000000171
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;2 (404 blocks)
%BACKUP-E-VERIFYERR, verification error for block 118 of SYS$SYSROOT:[SYSMGR]X.X
;2
%BACKUP-E-VERIFYERR, verification error for block 119 of SYS$SYSROOT:[SYSMGR]X.X
;2
NN = 122 Hex = 0000007A Octal = 00000000172
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;3 (404 blocks)
%BACKUP-E-VERIFYERR, verification error for block 118 of SYS$SYSROOT:[SYSMGR]X.X
;3
%BACKUP-E-VERIFYERR, verification error for block 119 of SYS$SYSROOT:[SYSMGR]X.X
;3
%BACKUP-E-VERIFYERR, verification error for block 362 of SYS$SYSROOT:[SYSMGR]X.X
;3
%BACKUP-E-VERIFYERR, verification error for block 363 of SYS$SYSROOT:[SYSMGR]X.X
;3
NN = 123 Hex = 0000007B Octal = 00000000173
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;4 (404 blocks)
%BACKUP-E-VERIFYERR, verification error for block 118 of SYS$SYSROOT:[SYSMGR]X.X
;4
%BACKUP-E-VERIFYERR, verification error for block 119 of SYS$SYSROOT:[SYSMGR]X.X
;4
%BACKUP-E-VERIFYERR, verification error for block 242 of SYS$SYSROOT:[SYSMGR]X.X
;4
NN = 124 Hex = 0000007C Octal = 00000000174
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;5 (404 blocks)
%BACKUP-E-VERIFYERR, verification error for block 118 of SYS$SYSROOT:[SYSMGR]X.X
;5
%BACKUP-E-VERIFYERR, verification error for block 119 of SYS$SYSROOT:[SYSMGR]X.X
;5
%BACKUP-E-VERIFYERR, verification error for block 242 of SYS$SYSROOT:[SYSMGR]X.X
;5
%BACKUP-E-VERIFYERR, verification error for block 243 of SYS$SYSROOT:[SYSMGR]X.X
;5
%BACKUP-E-VERIFYERR, verification error for block 366 of SYS$SYSROOT:[SYSMGR]X.X
;5
%BACKUP-E-VERIFYERR, verification error for block 367 of SYS$SYSROOT:[SYSMGR]X.X
;5
NN = 125 Hex = 0000007D Octal = 00000000175
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;6 (404 blocks)
%BACKUP-E-VERIFYERR, verification error for block 118 of SYS$SYSROOT:[SYSMGR]X.X
;6
%BACKUP-E-VERIFYERR, verification error for block 119 of SYS$SYSROOT:[SYSMGR]X.X
;6
NN = 126 Hex = 0000007E Octal = 00000000176
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;7 (404 blocks)
%BACKUP-E-VERIFYERR, verification error for block 118 of SYS$SYSROOT:[SYSMGR]X.X
;7
%BACKUP-E-VERIFYERR, verification error for block 119 of SYS$SYSROOT:[SYSMGR]X.X
;7
%BACKUP-E-VERIFYERR, verification error for block 370 of SYS$SYSROOT:[SYSMGR]X.X
;7
%BACKUP-E-VERIFYERR, verification error for block 371 of SYS$SYSROOT:[SYSMGR]X.X
;7
NN = 127 Hex = 0000007F Octal = 00000000177
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;8 (404 blocks)
NN = 128 Hex = 00000080 Octal = 00000000200
%COPY-S-COPIED, DKA600:&lt;VMS$COMMON.SYSEXE&gt;OPCOM.EXE;1 copied to SYS$SYSROOT:[SYS
MGR]X.X;9 (404 blocks)


Interesting VBN number patterns...

Volker.<hr>

Please Log in or Create an account to join the conversation.

  • malmberg
  • Topic Author
  • Visitor
  • Visitor
14 years 8 months ago #4771 by malmberg
Replied by malmberg on topic RE: CRC errors?
I can not reproduce this issue with logical disks as I posted earlier.

Please Log in or Create an account to join the conversation.

  • VolkerHalle
  • Topic Author
  • Visitor
  • Visitor
14 years 7 months ago #4772 by VolkerHalle
Replied by VolkerHalle on topic RE: CRC errors?
I've now also verified, that this problem does NOT happen with PersonalAlpha V2.0.17 and E8.4. Neither by COPYing a file with /BLOCK_SIZE=124 from a real CD nor from an .ISO file.

The problem also cannot be reproduced on FreeAXP .283 against an .ISO file copy of a CD with E8.4.

Using FreeAXP .283 and OpenVMS V7.3-2 also works fine.

This seems to be some FreeAXP 'internal state' problem, because the following makes the problem go away:

- start FreeAXP .283
- Boot V7.3-2
- execute test -&gt; success
- shutdown V7.3-2
- boot E8.4 (NOTE: do NOT stop FreeAXP)
- execute test -&gt; success !!!

If you stop and start FreeAXP after running V7.3-2 and boot E8.4 as the first thing after starting FreeAXP, the problem shows up again !

And another observation:

the 'bad' data in block 118 and 119 seems to come from blocks 358 and 359, block-offset = 2 x 120. COPY/Block_size UP TO 120 does work !

NOTE: when testing this operation with FreeAXP, watch out:

If you copy a file from CD, which is mounted with /CACHE (this is the default) and use a smaller /BLOCK_SIZE first, then subsequent tests with larger /BLOCK_SIZE may seem to work, as the file data is still in the XFC cache !

So for testing this problem, either use MOUNT/NOCACHE cd: or set VCC_MAX_IO_SIZE to 120 or less (default is 127). This will cause IOs with this size to bypass the XFC file cache !

Volker,<hr>

Please Log in or Create an account to join the conversation.

  • johncookson
  • Topic Author
  • Visitor
  • Visitor
14 years 7 months ago #4773 by johncookson
Replied by johncookson on topic RE: CRC errors?
Volker

Your analysis is spot on.

I performed the test you requested with FreeAXP whereby I unzipped the archive directly from the hobbyist CD without first performing a DCL copy operation. As you can see below, no errors were generated using this method.


$
$ mount dka200:
_Label: ALPHA083
_Log name:
%MOUNT-I-WRITELOCK, volume is write locked
%MOUNT-I-MOUNTED, ALPHA083 mounted on _HOBBY$DKA200:
$
$
$
$
$ UNZIP -t DKA200:[KITS]BASIC016.ZIP
Archive: DKA200:[KITS]BASIC016.ZIP;1
testing: basic016/documentation/ OK
testing: basic016/kit/ OK
testing: basic016/documentation/basic016_cover.ps OK
testing: basic016/documentation/basic016_cover.txt OK
testing: basic016/documentation/basic016_iguide.ps OK
testing: basic016/documentation/basic016_iguide.txt OK
testing: basic016/documentation/basic016_spd.ps OK
testing: basic016/documentation/basic016_spd.txt OK
testing: basic016/kit/basic016.a OK
testing: basic016/kit/basic016.b OK
testing: basic016/kit/basic016.c OK
testing: basic016/kit/basic016.d OK
testing: basic016/kit/basic016.e OK
testing: basic016/kit/basic016.f OK
testing: basic016/kit/basic016.g OK
testing: basic016/kit/basic016.h OK
testing: basic016/kit/basic016.i OK
No errors detected in compressed data of DKA200:[KITS]BASIC016.ZIP;1.
$

JohnC

Please Log in or Create an account to join the conversation.

  • Bruce Claremont
  • Topic Author
  • Visitor
  • Visitor
14 years 7 months ago #4774 by Bruce Claremont
Replied by Bruce Claremont on topic RE: CRC errors?
Problem confirmed, we are working on it.

Please Log in or Create an account to join the conversation.

Moderators: iamcamiel
Time to create page: 0.190 seconds
Powered by Kunena Forum