Subject: Re: CVS commit: src/sys/dev/ieee1394
To: None <jmc@netbsd.org>
From: Matthias Drochner <M.Drochner@fz-juelich.de>
List: source-changes
Date: 03/10/2003 15:07:04
jmc@netbsd.org said:
> Modified Files:
> src/sys/dev/ieee1394: sbp2.c
> Log Message: Redo last fix to work correctly. Need to run abort on
> each orb (though it doesn't much now it will eventually) and then so a
> proper sbp2_free_orb.
Good that someone cares about this code - I don't know much
about 1394 yet, just trying to get something working.
But, sorry to say that, after this change it is even worse than
before my fix. sbp2_free() is broken in any case:
-if there is something on the orb queue, it doesn't get removed
but just put onto the freelist, leading to queue corruption
-if there is nothing on the orb list, sbp2_abort() gets called
with the queue head as an argument, crashing immediately
best regards
Matthias