-
-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unsupported mode page $81 (actually $01) with SPARCstation IPC #614
Comments
@xelalexv I just noticed that I might have confused the ID numbers used by SunOs: 0,6,2 is this SCSI ID 6 LUN 2, or is the "2" the SCSI ID and not the LUN? In the latter case, i.e. if it is indeed the CD-ROM that is affected, do you have information on the layout of mode page $81? This is a vendor-specific page, which is not covered by the SCSI standard. |
@uweseimet |
@xelalexv The mode page layout may depend on the CD-ROM drive type. Can you add information about the CD-ROM model you were using for a successful boot attempt? |
@xelalexv I just checked the RASCSI implementation against the specification and found that RaSCSI does not correctly/fully log the mode page data. In your case the default values for mode page $01 were requested (and not mode page $81), which is something RaSCSI should be able to return. |
@uweseimet Sure, I'll gladly test! The CD-ROM drive is an external drive, labelled Plextor ULTRAPLEX 40max at the front, PX-40TSe at the bottom, and gets recognized by OpenBoot as this:
|
@xelalexv Can you please run a test with the "fix_mode_sense" branch? This branch contains updated logging on trace level, which should provide details on why RaSCSI returns a SCSI error. Mode page 1 is actually supported by RaSCSI, but for a yet unknown reason RaSCSI rejects the received command for this page. We just need the log for the MODE SENSE command. |
@uweseimet Here's the log output for MODE SENSE using the branch:
|
@xelalexv OK, so this is about the ALLOCATION LENGTH field in the CDB being less than the available data. Can you please try the latest fix_mode_sense branch? I just pushed an update. Regardless of the outcome I will have to double-check once more with the SCSI spec. |
Here's the error with latest commit:
|
@xelalexv This means that the original problem (with MODE SENSE) appears to be resolved. You have encountered a different issue now, related to MODE SELECT. I'm afraid I cannot provide any help with this. RaSCSI currently does not support any MODE SELECT functionality. |
@uweseimet Ah, didn't notice that the error this time happened with MODE SELECT. I'll open a new ticket. Thanks for resolving the MODE SENSE issue! |
@xelalexv Sounds good! Can you run one more test, please? Please start rascsi with the "-b 512" option for your emulated CD-ROM drive. This will set the block size to 512 bytes instead of the default size of 2048 bytes. Old SunOS versions require this. I doubt that it will make a difference in your case, but it is worth trying. |
You're right, and I'm already attaching the ISO with 512 bytes block size. For my very first try, I used the GUI to attach the ISO, and didn't notice that it uses 2048 bytes there. In that case it errored out much earlier. After realizing that, I've been using |
@xelalexv Which error is reported by RaSCSI when using 2048 bytes? 512 bytes is only required by old versions of SunOS as far as I know. Solaris should be fine with 2048 bytes. I would not be surprised if the failing MODE SELECT is dealing with trying to modify the CD-ROM's sector size setting from 512 to 2048 bytes. So maybe checking what goes wrong with 2048 bytes and assuming that 2048 bytes is actually the correct setting is more promising. It might be the case that with 2048 bytes per sector MODE SELECT is not even used at all, because no configuration change is required. |
@uweseimet I did not check for the RaSCSI logs during my first trial, but can re-run that test. It may be possible to access the CD-ROM with 2048 from SunOS, not sure, but I can check that too. But booting from CD-ROM definitely requires 512 bytes. That's a reason why I bought this particular Plextor drive, because it has a DIP switch in the back for switching between 512 and 2048. |
@xelalexv It has a DIP switch for that? I did not know/expect that. Which one is it (in case there are several)? It might be useful for me to know that because I have the same drive, this is why I am asking. My Atari might be able to boot from this drive with 512 byters per sector. Usually Ataris can only boot from hard disk drives, because the OS does not support other sector sizes than 512 bytes during the boot stage. |
@xelalexv Just found the jumper settings in the manual. Must be the BLOCK jumper. |
Yes, it's the
In the RaSCSI logs, there's this error:
If I try to boot with this setup, I get a complaint from OpenBoot:
No errors in the RaSCSI log. |
@xelalexv "data transfer overrun" most likely refers to the fact that without -b 512 RaSCSI wants to transfer more data (2048 bytes) than expected (512 bytes). So without a working MODE SELECT there appears to be no way indeed to boot Solaris from RaSCSI. |
Merged into develop branch. |
First off, great project! I'm still pretty stoked on how well this works!
Info
Describe the issue
I'm mounting a Solaris 2.3 install CD-ROM ISO at id 6. This essentially works, and I can mount the CD from within SunOS. However, when I try booting from the CD, the boot process starts, but after a short while errors out and triggers a reboot from the internal HDD:
When this happens, the rascsi logs have this to say:
I also burnt the ISO and tried with an actual CD-ROM drive, which works fine and boots up the installer as expected. I'm happy to provide more logs or test as required. Just let me know.
Again, thanks for a great project!
The text was updated successfully, but these errors were encountered: