3c59x with linuxppc

Bogdan Costescu bogdan@kenzo.iwr.uni-heidelberg.de
Mon May 8 13:09:10 2000


On Sat, 6 May 2000, Andreas Tobler wrote:

> In vortex_timer I had the blocker. At the end of the function I put the
> following snippet in an if clause as it was before the patch. Doing so,
> the machine doesn't hang anymore.
> 
> if (next_tick) {					<---- added by me
> 	vp->timer.expires = RUN_AT(next_tick);
> 	add_timer(&vp->timer);
> }							<---- added by me

I don't quite understand how you got into this situation, because my
source has these lines in it... I downloaded the whole driver (not the
patch) - so there might be the difference. Please note that 0.99H that
comes with kernels up to 2.2.15 is different from "clean" 0.99H that you
get from Mr. Becker's site (timer handling included).

On the other hand, I don't know why it gets there. next_tick is
initialized ( 0 ) in the first lines of vortex_timer, but it should be set
by the media handling according to the media table. Can you run the driver
with vortex_debug > 2 and send the logs produced by vortex_timer?
(One should appear very soon after the driver initialization and others
every 1 minute - if things are working as they should...)
A working vortex_timer (i.e. one that sets this variable correctly) is
important for media change handling; what you have done with these lines
is avoiding updating with wrong data - but we need to find out how that
wrong data was produced. In your case, I would say that the timer is not
updated, meaning that vortex_timer will not be run a second time... And
there is a place in vortex_interrupt with a comment like this:

/* The timer will reenable interrupts. */

Only if it runs 8-)

> But one more Q I have, why does this blocks only me with PPC and not the others?

The reason should be obvious now. 8-)
Are you able to run the new driver (with spinlocks) with your
modification?

Sincerely,

Bogdan Costescu

IWR - Interdisziplinaeres Zentrum fuer Wissenschaftliches Rechnen
Universitaet Heidelberg, INF 368, D-69120 Heidelberg, GERMANY
Telephone: +49 6221 54 8869, Telefax: +49 6221 54 8868
E-mail: Bogdan.Costescu@IWR.Uni-Heidelberg.De

-------------------------------------------------------------------
To unsubscribe send a message body containing "unsubscribe"
to linux-vortex-request@beowulf.org