Bug#550898: DASD DIAG driver doesn't work for read-only minidisks (s390, s390x only)

View: New views
2 Messages — Rating Filter:   Alert me  

Bug#550898: DASD DIAG driver doesn't work for read-only minidisks (s390, s390x only)

by STEPHEN POWELL-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Package: linux-image-2.6.26-2-s390x
Version: 2.6.26-19
X-Debbugs-CC: debian-s390@...

This bug report applies to the s390 and s390x Linux kernel architectures only.
I am reasonably certain that this is not a Debian-specific bug but
applies to all distributions.  Nevertheless, since I am using Debian
I will report it to Debian.  Please call this bug report to the
attention of the appropriate upstream kernel development team.

When using the DASD DIAG driver with a read-only minidisk, the
initialize function of DIAG X'250' fails.  The error message produced
goes something like this:

dasd(diag) 0.0.0404: DIAG initialization failed (rc=4)
dasd_generic couldn't online device 0.0.0404 with discipline DIAG rc=-5

Consulting the IBM manual "CP Programming Services" for DIAG X'250',
I find the following explanation for return code 4 for the initialize
function:

 Initialization for DIAGNOSE code X'250'  
 to the specified virtual device is        
 complete. The virtual device is          
 read-only. The starting block number and  
 the ending block number have been stored  
 in the BIOPL.

In other words, this is a normal condition, not an error.  It is
simply a warning that this minidisk is read-only.  The correct
response by the program should be to treat a return code of 4
the same as a return code of 0, provided that the device really
is read-only.  A return code of 4 for a device that is supposedly
read-write is a sanity-check error that you might want to check
for.  Otherwise, a return code of 4 is a normal and expected
condition.

I don't claim to be a C programmer, but it appears to me that
the mdsk_init_io internal subroutine of /drivers/s390/block/dasd_diag.c
is the culprit.



--
To UNSUBSCRIBE, email to debian-s390-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...


Re: Bug#550898: DASD DIAG driver doesn't work for read-only minidisks (s390, s390x only)

by Peter Oberparleiter-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Stephen Powell wrote:
> When using the DASD DIAG driver with a read-only minidisk, the
> initialize function of DIAG X'250' fails.  The error message produced
> goes something like this:
>
> dasd(diag) 0.0.0404: DIAG initialization failed (rc=4)
> dasd_generic couldn't online device 0.0.0404 with discipline DIAG rc=-5

FYI: The DASD device driver maintainers are aware of this problem and
will provide a fix for the upstream version of the Linux kernel with the
next merge window (2.6.33). Should you need the fix for an earlier
version, someone at Debian will need to port that fix back to the
respective levels.


Regards,
   Peter Oberparleiter


--
To UNSUBSCRIBE, email to debian-s390-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...