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
ModePageDevice::ModeSelect() is unimplemented but called by ScsiController::XferOutBlockOriented() #1397
Comments
kkaempf
added a commit
to kkaempf/piscsi
that referenced
this issue
Dec 26, 2023
and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes PiSCSI#1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
kkaempf
added a commit
to kkaempf/piscsi
that referenced
this issue
Dec 26, 2023
and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes PiSCSI#1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
kkaempf
added a commit
to kkaempf/piscsi
that referenced
this issue
Jan 5, 2024
and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes PiSCSI#1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
kkaempf
added a commit
to kkaempf/piscsi
that referenced
this issue
Jan 6, 2024
and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes PiSCSI#1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
kkaempf
added a commit
to kkaempf/piscsi
that referenced
this issue
Jan 7, 2024
and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes PiSCSI#1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
rdmark
pushed a commit
that referenced
this issue
Jan 9, 2024
* Make ModeSelect() non-const Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Implement ModeSelect for scsicd and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes #1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Test sector size setting via ModeSelect in SCSICD Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Re-calculate total blocks when sector size changes Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Reset CD data tracks after sector size change The track calculation is based on sector size and must be reset after change of sector size. Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * resize cache after change of sector size The disk cache is based on sector size and must be resized when the sector size changes. Disk::ResizeCache needs a `raw` parameter, make this value accessible from the current cache. Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Make GetRawMode const Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> --------- Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
Merged. Thanks for contributing! |
kkaempf
added a commit
to kkaempf/piscsi
that referenced
this issue
Apr 2, 2024
* Make ModeSelect() non-const Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Implement ModeSelect for scsicd and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes PiSCSI#1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Test sector size setting via ModeSelect in SCSICD Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Re-calculate total blocks when sector size changes Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Reset CD data tracks after sector size change The track calculation is based on sector size and must be reset after change of sector size. Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * resize cache after change of sector size The disk cache is based on sector size and must be resized when the sector size changes. Disk::ResizeCache needs a `raw` parameter, make this value accessible from the current cache. Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Make GetRawMode const Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> --------- Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
rdmark
pushed a commit
that referenced
this issue
May 1, 2024
* Make ModeSelect() non-const Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Implement ModeSelect for scsicd and honor sector size setting. DEC's VMS can't handle 2k sector sizes and uses ModeSelect6 to set the sector size to 512 bytes. Fixes #1397 Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Test sector size setting via ModeSelect in SCSICD Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Re-calculate total blocks when sector size changes Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Reset CD data tracks after sector size change The track calculation is based on sector size and must be reset after change of sector size. Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * resize cache after change of sector size The disk cache is based on sector size and must be resized when the sector size changes. Disk::ResizeCache needs a `raw` parameter, make this value accessible from the current cache. Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> * Make GetRawMode const Signed-off-by: Klaus Kämpf <kkaempf@gmail.com> --------- Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Info
Describe the issue
While hard disk emulation works nicely, mounting a CDROM ISO results in "fatal controller error" from VAX/VMS.
Running
piscsi
in trace mode reveals-> illegal_request, invalid_command_operation_code
Looking through the code (and adding a respective
LogTrace
call) reveals thatModePageDevice::ModeSelect - which is not implemented and always throws - is called from ScsiController::XferOutBlockOriented.
It looks like an incomplete implementation ?!
The text was updated successfully, but these errors were encountered: