Large SCSI Disks and XL1201

TL;DR:

  • SCSI disks with 20M 1280-byte blocks work
  • SCSI disks with 25M 1280-byte blocks work
  • SCSI disks with 28M 1280-byte blocks work
  • SCSI disks with 28,870,145 1280-byte blocks works

Both Narrow and Wide single-ended SCSI drives work - the wide ones with appropriate

Chances are I was having problems with the full ~28.9M blocks initially because I didn't power-off reboot the XL1201 after the full .

Details

I have a Seagate Barracuda ST336918N, a 50-pin narrow SCSI drive which is formatted at 1,280 byte blocks. Unfortunately, the XL1201 cannot create an FEP filesystem.

I also have a Seagate Cheetah ST318451LW, a 68-pin wide differential SCSI drive that boots and runs Genera just fine.

I wonder if there is some sort of cutoff in the FEP filesystem that indicates a certain maximum size, or if it's in the SCSI interface hardware, or what.

DriveBlocks
ST336918N28,870,145
ST318451LW15,260,674

One obvious cutoff point here is 2^24 blocks (16,777,216) if there is a block count limit. That would be 3 bytes to specify any block number.

(By the way, the Linux sg3_utils is the ultimate tool for working with these drives.)

As a first test, I'm going to try 20,000,000 blocks and see if that works.

linux:~# sg_format --resize --count=20000000 -vvv /dev/sdc  
...
lots of output  
...
Resize operation seems to have been successful  

We can check with sg_readcap and indeed, it looks good. Now it says:

...
   Last logical block addresss=19999999 (0x1312cff), Number of blocks=20000000
   Logical block length=1280 bytes
Hence  
   Device size: 25600000000 bytes, 24414.1 MiB, 25.60 GB

Now, I have to put the drive back into the Symbolics XL1201 and test it.

Booting Genera 8.3 it shows up as:

SCSI address 1 on controller 0: SEAGATE ST336918N 0003, direct access, 20000000 blocks of 1280 bytes (24G bytes  
                                total).

Then, I'm able to create a FEP filesystem with no problem! Let's see what the Show Directory says. Note that this takes a very long time you first access a FEP filesystem with Disk Wait and a flashing underline in the status bar; I assume it's caching details about the FEP filesystem in RAM as subsequent Show Directory commands run very quickly.

Command: Create Initial Fep Filesystem (FEP unit number) 8  
Command: Show Directory (...) FEP8:>*.*.newest

FEP8:>*.*.newest  
  19997910 free, 2090/20000000 used (0%)
...

So, evidently 20M blocks works but ~28.9M blocks doesn't. So, let's try again with 25M blocks.

It seems to have worked with 25M blocks (but I forgot to take a picture). One difference is that it warned me that I already had an FEP filesystem before allowing me to overwrite it.

So, let's try a third time with 28M (exactly) blocks. This one worked this time (and I took pics). So, let's try one more time with the full disk size restored...

linux:~# sg_format --resize --count=-1 -vvv /dev/sdb  

(Yes, I changed other devices on the SCSI chain in Linux so it became /dev/sdb.)

Well, the full disk size Create Initial FEP Filesystem command worked too.

TODO: PICS

Douglas Fields

Writing LISP and Haskell since 1990