Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Feb 2009 13:30:04 GMT
From:      "Patrick Lamaiziere" <patfbsd@davenulle.org>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/92716: [hifn] [hang] hifn driver hangs after a short  while when using GEOM_ELI
Message-ID:  <200902251330.n1PDU44e025683@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/92716; it has been noted by GNATS.

From: "Patrick Lamaiziere" <patfbsd@davenulle.org>
To: "Oliver Peter" <lists@peter.de.com>
Cc: bug-followup@freebsd.org
Subject: Re: kern/92716: [hifn] [hang] hifn driver hangs after a short 
     while when using GEOM_ELI
Date: Wed, 25 Feb 2009 14:27:28 +0100 (CET)

 >> Oliver, please could you try the patch in kern/130286 ?
 >> http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/130286
 >>
 >> There is a problem in the locking of the sessions in hifn(4), that
 >> could be the problem (not sure). But I'm not able to reproduce this
 >> problem with geli on my hardware (a Soekris net5501/i386 - VPN1411)
 >>
 >> You can build hifn with the HIFN_DEBUG option, it may help.
 >
 > What I did:
 >      - applied your patch to my tree
 >      - switched back to GENERIC (including WITNESS option)
 >      - enabled HIFN_DEBUG in my config
 >
 > But no change at all.  The dd command still hangs up after
 > a couple of minutes and the only way out is to reboot.
 
 So I don't know, sorry
 
 > Also I don't see any debug output from the hifn driver.
 
 You have to set the sysctl hw.hifn.debug to 1
 
 There is an OpenBSD PR that could be related, NetBSD also has this change.
 
 http://cvs.openbsd.org/cgi-bin/query-pr-wrapper?full=yes&numbers=3739
 
 If hifn misses an interrupt, geli will hang.
 
 You can test it
 In hifn_crypto() at ligne 2053
 http://fxr.watson.org/fxr/source/dev/hifn/hifn7751.c#L2053
 
 -	if (dma->cmdu > 1) {
 -		sc->sc_dmaier |= HIFN_DMAIER_C_WAIT;
 -		WRITE_REG_1(sc, HIFN_1_DMA_IER, sc->sc_dmaier);
 -	}
 +	sc->sc_dmaier |= HIFN_DMAIER_C_WAIT;
 +	WRITE_REG_1(sc, HIFN_1_DMA_IER, sc->sc_dmaier);
 
 Regards.
 



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