Reproducible crash StarWind/StarPort

Software-based VM-centric and flash-friendly VM storage + free version

Moderators: anton (staff), art (staff), Max (staff), Anatoly (staff)

Locked
mattsaccount
Posts: 2
Joined: Fri Dec 24, 2004 11:24 pm

Fri Dec 24, 2004 11:45 pm

Hello,

I am getting a 100% reproducible blue screen with the following.

Setup:
Pentium 2.4, 1024mb RAM
Windows XP Pro SP2
NEC 5700A DVD drive (rather old, but not ancient).
StarWind running (2.4.2, 0x20041108)

Athlon 1700, 1024mb RAM
Windows 2000 SP4
StarPort running (2.4.2, 0x20041104)

I setup the XP box to share the DVD drive (as "dvd") using StarWind. When I connect to it on from the Win 2000 computer, it sees "dvd" as expected, but upon clicking the "next" button to mount the drive, I get a blue screen (on this computer--the 2000 box). The XP computer continues to function without issue--as though nothing had happened. Here are the details of that crash:

KMODE_EXCEPTION_NOT_HANDLED
0x0000001E (0xC0000005, 0xEB081A59, 0x00000000, 0x00000028)
Address 0xEB081A59
Base at 0xEB080000
in CDR4_2K.SYS

So it looks like some code is throwing an exception in this kernel mode driver, and it's not being caught (bad! bad! :-p).

Interestingly, if I use the Microsoft iSCSI initiator on the 2000 box, I get the same problem (same blue screen) when trying to connect to the drive. This leads me to conjecture the problem is with StarWind, but who knows.

Here is my starwind.conf:

Code: Select all

#
# StarWind iSCSI server configuration file.
#
# This file contains list of SCSI devices that will be accessible to iSCSI.
# The device name should be placed in the first column followed by the target 
# name. The device name and the target name should be separated by at least 
# one space. 
#
# $Id: starwind.conf,v 1.18 2004/10/30 01:16:28 valery Exp $
#

[parameters]

#
# LogLevel values: (0-DIsabled, 1-Errors, 2-Warnings, 3-all messages)
#
LogLevel = "1"

#
# Don't change the LogMask if you have no idea what does it mean!
#
LogMask = "0x8000ffff"

#
# Port number for iSCSI connectons
#
Port = "3260"

#
# Interface to listen to. "0.0.0.0" corresponds to "listen to all interfaces".
#
Interface = "0.0.0.0"

#
# Macros:
#   $(host)  - host name
#   $(symid) - symbolic target id ('cdrom.z' for example)
#

#
# Uncomment the line below if you want to have global target id as part of 
# target name
#
DefTargetName = "iqn.2003-06.com.rocketdivision.starwind:$(host).$(symid)"

#
# Username and password used for the control connection.
#
Login = "test"
Password = "##CY9rzUYh03PK3k6DJie09g=="

#
# CHAP authentification for control connections
#
#CtlAuthMode = "chap"
#CtlAuthServerName = "srv"
#CtlAuthServerSecret = "123"
#CtlAuthClientName = "user"
#CtlAuthClientSecret = "345"

#
# 'Echo = yes' - enables echo in the telnet configuration connection.
#
Echo = "no"
  
#
# Minimal 'maximum transfer length' should be supported by all SPTI devices
#
MinBufferSize = "65536"

#
# 'Minimal' aligment mask for SPTI devices - all buffers passed to SPTI will 
# be aligned according to this mask at least. Sure if an adapter requests 
# bigger aligment target will supply correctly aligmned buffers.
#
AlignmentMask = "0x0000"

#
# Setting 'AllowOnlyRecordableCd' to 'yes' forces the target to filter out all but 
# recordable CD/DVD.
#
#AllowOnlyRecordableCd = "no"

#
# Auto Export some of the found Devices
#
#AutoExportDevices = "spti:disk,spti:cd/dvd"
#AutoExportDevices = "spti:cd/dvd"

#
# Length of iSCSI queue. (min 16, max 512)
#
MaxPendingRequests = "64"


[plugins]

#
# Plugins
#
# Parameters (mandatory):
#     -module  - plugin dll
#     -symlink - device name prefix for all devices managed by the plugin
#     -type    - type of devices managed by the plugin
#   (optional):
#     -loglevel:"n" (n=0-3) - override log level for a plugin (by default global LogLevel value is used)
#

#
# Ram Disk plugin
#
addplugin -module:"RamDisk.dll" -symlink:"RamDrive" -type:"RAM disk"

#
# ImageFile-specific parameters (mandatory):
#     imagedir  - image files directory. The plugin scans this directory for available images.
#     imagemask - image file mask. While scanning the directory (see above) the plugin will 
#         look only for files selected by this mask.
#
addplugin -module:"ImageFile.dll" -symlink:"ImageFile" -type:"Image file" -imagedir:"images" -imagemask:"*.img"

#
# VirtualDvd-specific parameters (optional):
#     share - sharing option flags. May be '', 'r', 'w' or 'rw'. 'r' means that device will be 
#         shared for reading. 'w' - for writing. Default is ''.
#     sessions - number of simultaneous iSCSI session allowed for this device. Default is 1.
#
addplugin -module:"VirtualDvd.dll" -symlink:"VirtualDvd" -type:"Virtual DVD"


# Experimental plugin
#addplugin -module:CdiImage.dll -symlink:CdiImage -type:"CD/DVD" -imagedir:"images" -imagemask:"*.img"


[devices]

#
# Hard drive accessible through SPTI
#
#add \\.\Physicaldrive0

#
# SPTI-specific device parameters (optional)
#   -timeout:nnn  - SCSI command execution timeout (in seconds). Default is 108000 (30 hours).
#   -share:"<rw|r>" - to allow multiple initiators to access the device (shared mode)
#   -sessions:nnn - set maximum number of initiators allowed to mount the device in shared mode
#

#
# CD-ROM accessible through SPTI
#
#add \\.\Z:

# Share a hard drive or a CD-ROM to multiple clients
#add \\.\F: -timeout:256 -share:"rw" -sessions:8

#
# ImageFile device parameters:
#   -file   - image files name. This name is relative to 'imagedir'. The file should exists. 
#              It can be created by means of 'mksparse' utility.
#   -header - if not 0 the plugin will not use given amoung of bytes in the beginning of the file,
#         This value should be sector aligned.
#   -asyncmode:<no|yes> - if 'yes' the image is opened in asyncronous mode (you can benefit from this on stripped volumes)
#
#add "ImageFile0" -file:"image.img" -asyncmode:"yes"
#add ImageFile1 -file:"\\.\X:" -header:65536

#
# RAM disk device parameters:
#   -size   - size of RAM disk to create (in MB).
#   -format - if 'yes' created disk will be formatted as FAT16 partition.
#   -useawe:<no|yes> - allows creating of huge ram drives (>1GB)
#	 But the AWE mode is a bit slower than not using AWE!
#   -speedtest:<no|yes> - can be used for network throughput tests.
#	 In the mode no data actually are written to or read from the ram disk.
#
#add RamDrive0 -size:16 -format:yes
#add RamDrive0 -size:16 -format:no -useawe:no -speedtest:yes

#
# Virtual DVD device parameters:
#   -file - image (iso or mds) file name.
#   -type - 'iso' or 'mds' depending on type of the image.
#
#add VirtualDvd0 -file:"D:\temp\iwin2k.iso" -type:"iso"


add "\\.\G:" "dvd"
[permissions]

#
# CHAP authentication
#

#allow -device:RamDrive0 -chapLocalName:"iqn.1991-05.com.microsoft:home.MSHOME.NET" -chapLocalSecret:"5432109876543210" -chapPeerSecret:"0123456789012345"
#allow -chapLocalName:"test" -chapLocalSecret:"5432109876543210" -chapPeerName:"" -chapPeerSecret:"0123456789012345"
And here is a link to the level 3 log output from starwind
Val (staff)
Posts: 496
Joined: Tue Jun 29, 2004 8:38 pm

Sat Dec 25, 2004 10:55 am

Hi,

Thank you for the feedback.

Looks like you have the Roxio Easy CD Creator installed on the Win2000 machine?
According to the log the BSOD was produced by cdr4_2k.sys driver. The driver is a part of the Roxio's software.

Do you have DaemonTools on the same machine?
About a year ago there was an issue in the DaemonTools driver that led to the same crash with the Easy CD Creator and our StarPort installed.

We'll try to reproduce the situation and fix it.

Merry Cristmas!
Best regards,
Valeriy
User avatar
anton (staff)
Site Admin
Posts: 4008
Joined: Fri Jun 18, 2004 12:03 am
Location: British Virgin Islands
Contact:

Sat Dec 25, 2004 10:59 am

The problem is with Roxio software you're running. The guy who's coding their filter drivers is complete *IDIOT*. This is well-known issue. So you'll have to decide -- either share CD/DVD drive (as client, no problem for server) or use Roxio junkware. There's no stable solution so you'll have this problem with ANY iSCSI initiator (Rocket Division, Microsoft, Cisco etc).
Regards,
Anton Kolomyeytsev

Chief Technology Officer & Chief Architect, StarWind Software

Image
Guest

Sat Dec 25, 2004 7:39 pm

Merry Christmas :)

This driver was the problem--I renamed the file and the problem went away. And yes, I do have Daemon tools on the win2000 machine.

Thanks for the fast reply!
mattsaccount
Posts: 2
Joined: Fri Dec 24, 2004 11:24 pm

Sat Dec 25, 2004 7:41 pm

That was me :)
User avatar
anton (staff)
Site Admin
Posts: 4008
Joined: Fri Jun 18, 2004 12:03 am
Location: British Virgin Islands
Contact:

Sat Dec 25, 2004 8:07 pm

See, I'm not sure this broken driver did not had any functionality. So I'd recommend you upgrading Daemon Tools instead of just mangling Roxio stuff :-)

And merry Xmas to you as well :-)
Anonymous wrote:Merry Christmas :)

This driver was the problem--I renamed the file and the problem went away. And yes, I do have Daemon tools on the win2000 machine.

Thanks for the fast reply!
Regards,
Anton Kolomyeytsev

Chief Technology Officer & Chief Architect, StarWind Software

Image
Tim
Posts: 93
Joined: Mon Jul 18, 2005 7:27 pm

Mon Jul 18, 2005 7:31 pm

The problem is with Roxio software you're running. The guy who's coding their filter drivers is complete *IDIOT*
LOL :lol: respect to Anton for really saying what he means :!:
User avatar
anton (staff)
Site Admin
Posts: 4008
Joined: Fri Jun 18, 2004 12:03 am
Location: British Virgin Islands
Contact:

Mon Jul 18, 2005 8:13 pm

:)
Tim wrote:
The problem is with Roxio software you're running. The guy who's coding their filter drivers is complete *IDIOT*
LOL :lol: respect to Anton for really saying what he means :!:
Regards,
Anton Kolomyeytsev

Chief Technology Officer & Chief Architect, StarWind Software

Image
Locked