From owner-freebsd-current@FreeBSD.ORG Wed Dec 19 14:18:33 2007 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4F41A16A417 for ; Wed, 19 Dec 2007 14:18:33 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from relay02.kiev.sovam.com (relay02.kiev.sovam.com [62.64.120.197]) by mx1.freebsd.org (Postfix) with ESMTP id E0E3113C44B for ; Wed, 19 Dec 2007 14:18:32 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from [212.82.216.226] (helo=deviant.kiev.zoral.com.ua) by relay02.kiev.sovam.com with esmtps (TLSv1:AES256-SHA:256) (Exim 4.67) (envelope-from ) id 1J4zkg-000OdK-NM for freebsd-current@freebsd.org; Wed, 19 Dec 2007 16:18:31 +0200 Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.2/8.14.2) with ESMTP id lBJEIMJw076426; Wed, 19 Dec 2007 16:18:22 +0200 (EET) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.2/8.14.2/Submit) id lBJEIMX1076425; Wed, 19 Dec 2007 16:18:22 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Wed, 19 Dec 2007 16:18:22 +0200 From: Kostik Belousov To: Javier Message-ID: <20071219141821.GB57756@deviant.kiev.zoral.com.ua> References: <47473E30.6070608@gmail.com> <20071124003453.O14018@fledge.watson.org> <47477F9F.2080900@gmail.com> <20071124142149.Y14018@fledge.watson.org> <47486C9B.4020407@gmail.com> <20071124211859.S14018@fledge.watson.org> <20071125075620.GA78396@deviant.kiev.zoral.com.ua> <4749B2CC.7020300@gmail.com> <20071125203015.GF78396@deviant.kiev.zoral.com.ua> <47691636.7020907@gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Yylu36WmvOXNoKYn" Content-Disposition: inline In-Reply-To: <47691636.7020907@gmail.com> User-Agent: Mutt/1.4.2.3i X-Scanner-Signature: 9596209fecb99bc4db4bd854cc333b75 X-DrWeb-checked: yes X-SpamTest-Envelope-From: kostikbel@gmail.com X-SpamTest-Group-ID: 00000000 X-SpamTest-Info: Profiles 1928 [Dec 19 2007] X-SpamTest-Info: helo_type=3 X-SpamTest-Info: {TO: local part of email appears in body} X-SpamTest-Info: {received from trusted relay: not dialup} X-SpamTest-Method: none X-SpamTest-Method: Local Lists X-SpamTest-Rate: 9 X-SpamTest-Status: Not detected X-SpamTest-Status-Extended: not_detected X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0255], KAS30/Release Cc: freebsd-current@freebsd.org Subject: Re: snp panic [Was: Re: panic with tcpdrop] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2007 14:18:33 -0000 --Yylu36WmvOXNoKYn Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Dec 19, 2007 at 10:01:42AM -0300, Javier wrote: > Hello, sorry, the same panic again, but with the snp.c patched with your > modification. The steps of the new panic are the same. > How can I help? > Thanks > Javier The fix was not complete. Try the patch below, it is against the current. Hopefully, it fix the problem. For RELENG_7, you need to either apply rev. 1.106, and the apply the patch. Or, you may take the snp.c from the HEAD and again, apply the patch. diff --git a/sys/dev/snp/snp.c b/sys/dev/snp/snp.c index 6c153d2..3768497 100644 --- a/sys/dev/snp/snp.c +++ b/sys/dev/snp/snp.c @@ -466,7 +466,8 @@ snpclose(struct cdev *dev, int flags, int fmt, struct t= hread *td) free(snp->snp_buf, M_SNP); snp->snp_flags &=3D ~SNOOP_OPEN; dev->si_drv1 =3D NULL; - destroy_dev_sched_cb(dev, snp_detach, snp); + snp_detach(snp); + destroy_dev_sched(dev); =20 return (0); } @@ -491,7 +492,7 @@ snpioctl(struct cdev *dev, u_long cmd, caddr_t data, in= t flags, struct thread *td) { struct snoop *snp; - struct tty *tp, *tpo; + struct tty *tp; struct cdev *tdev; struct file *fp; int s; @@ -502,8 +503,6 @@ snpioctl(struct cdev *dev, u_long cmd, caddr_t data, in= t flags, s =3D *(int *)data; if (s < 0) return (snp_down(snp)); - if (snp->snp_tty !=3D NULL) - return (EBUSY); =20 if (fget(td, s, &fp) !=3D 0) return (EINVAL); @@ -516,6 +515,9 @@ snpioctl(struct cdev *dev, u_long cmd, caddr_t data, in= t flags, tdev =3D fp->f_vnode->v_rdev; fdrop(fp, td); =20 + if (snp->snp_tty !=3D NULL) + return (EBUSY); + tp =3D snpdevtotty(tdev); if (!tp) return (EINVAL); @@ -523,13 +525,6 @@ snpioctl(struct cdev *dev, u_long cmd, caddr_t data, i= nt flags, return (EBUSY); =20 s =3D spltty(); - - if (snp->snp_target =3D=3D NULL) { - tpo =3D snp->snp_tty; - if (tpo) - tpo->t_state &=3D ~TS_SNOOP; - } - tp->t_state |=3D TS_SNOOP; snp->snp_olddisc =3D tp->t_line; tp->t_line =3D snooplinedisc; --Yylu36WmvOXNoKYn Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (FreeBSD) iD8DBQFHaSgtC3+MBN1Mb4gRAtxuAKCL/6E7jbvGR2REZjyPz5WBYiS0dwCgjI2G Ct4jTsoPjcTxwsaVnNbZUVQ= =xsEv -----END PGP SIGNATURE----- --Yylu36WmvOXNoKYn--