[Info-vax] QIO Writes to a mailbox

Louis Krupp lkrupp at nospam.indra.com.invalid
Fri Nov 4 15:33:13 EDT 2011


On Fri, 4 Nov 2011 09:52:08 -0700 (PDT), Steve Bainbridge
<stephen_bainbridge at yahoo.co.uk> wrote:

>On Nov 4, 2:46 pm, Steven Schweda <sms.antin... at gmail.com> wrote:
>> On Nov 4, 5:04 am, Steve Bainbridge <stephen_bainbri... at yahoo.co.uk>
>> wrote:
>>
>> > I have a very simple question, but when looking at the Alpha internals
>> > manual and talking to colleagues the answer does not seem so obvious.
>> > [...]
>> > Unfortunately the writer does not check or report what value the IOSB
>> > returns [...]
>>
>>    I'm confused.  You _know_ that you're ignoring the IOSB
>> status, and, rather than fixing that, you're looking at "the
>> Alpha internals manual"?  Really?
>>
>> > Is it QIO or QIOW? [...]
>>
>>    Another fair question.
>>
>>    Why not start by fixing the obvious problems, and then
>> move on to the obscure stuff (if necessary)?
>
>Hi,
>
>This code was written several years ago and I've been dumped on to
>investigate and correct the issue we now very occasionally see. I'm
>aware of the obvious missing check on the IOSB, but I can't say with
>any certainty that this is causing the problem.
>
>Whilst it's simple to change the code, replicating the problem has
>proved impossible and releasing into production onto many tens of
>systems takes a long time with a lot of effort - especially when we
>don't know if the problem has been resolved. So we would prefer to try
>and understand why we are seeing the problem, rather than just
>incrementally trying to correct issues.

A perspective from 40 years of programming:

Don't think of it as solving a particular problem;  think of it as
good programming practice.  Do you wait to initialize variables until
you've conclusively demonstrated a failure that resulted from garbage
left on the stack?  No;  you do it right the first time.  Or you fix
it the first time you read the code and notice a potential problem. Or
-- if you're like me -- you fix it the first time you see a failure
that you think might be the result of uninitialized data.

You might be able to fix the code and release it to one system at a
time.  If you never see failures with the upgraded code, then you're
on the right track.

Louis



More information about the Info-vax mailing list