Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Nov 1995 09:42:34 -0800
From:      "Justin T. Gibbs" <gibbs@freefall.freebsd.org>
To:        joerg_wunsch@interface-business.de (Joerg Wunsch)
Cc:        freebsd-scsi@freebsd.org
Subject:   Re: SCSI reprobe 
Message-ID:  <199511161742.JAA01290@freefall.freebsd.org>
In-Reply-To: Your message of "Thu, 16 Nov 1995 15:21:50 %2B0100." <199511161421.PAA00329@ida.interface-business.de> 

next in thread | previous in thread | raw e-mail | index | archive | help
>This basically fixes the problem, but opens up another can of worms
>whenever the reprobe actually finds a new device, and wants to wire
>this one into the system.  In my case, the reprobe found a new tape
>drive, and these lines in st.c:
>
>errval
>stattach(struct scsi_link *sc_link)
>{
>...
>	if (st_mode_sense(unit, SCSI_NOSLEEP | SCSI_NOMASK | SCSI_SILENT,
>	                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
>...caused it to hang again.  I assume this is a basic problem also
>inside the other device-specific driver, and gave up by now.  Perhaps
>there's a better solution to base the decision of polled
>vs. intterupt-controlled mode on?

Well, its even worse than this.  The ahc driver, since it uses the eisa/pc
interrupt registration routines, has access to its interrupt even during
the first attach phase.  If you look closely at the code, it masks its
interrupt (or in the case of the Eisa probe doesn't turn it on) until
after the attach because it knows the SCSI code is going to send the
stupid NOSLEEP, NOMASK flags.  The only time that the NOSLEEP flag is
of any interrest is for the areas of the driver that may use tsleep
during an interrupt, but even then, the SCSI code only guesses if 
interrupts are disabled or not.  The NOMASK flag is bogus.  I'll experiment
with ignoring, and always relying on interrupts, when I get some time.

>-- 
>J"org Wunsch					       Unix support engineer
>joerg_wunsch@interface-business.de
>					[private: http://www.sax.de/~joerg/]

--
Justin T. Gibbs
===========================================
  FreeBSD: Turning PCs into workstations
===========================================



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511161742.JAA01290>