From owner-freebsd-current@FreeBSD.ORG Sat Aug 20 10:48:09 2005 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 20EFF16A41F for ; Sat, 20 Aug 2005 10:48:09 +0000 (GMT) (envelope-from huang@gddsn.org.cn) Received: from gddsn.org.cn (gddsn.org.cn [218.19.164.145]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4120843D45 for ; Sat, 20 Aug 2005 10:48:07 +0000 (GMT) (envelope-from huang@gddsn.org.cn) Received: from [192.168.1.5] (unknown [61.144.114.105]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by gddsn.org.cn (Postfix) with ESMTP id 3F59A38CB4D; Sat, 20 Aug 2005 18:47:43 +0800 (CST) Message-ID: <43070A49.9080309@gddsn.org.cn> Date: Sat, 20 Aug 2005 18:47:37 +0800 From: Huang wen hui User-Agent: Mozilla Thunderbird 1.0.6 (X11/20050812) X-Accept-Language: zh-cn,zh MIME-Version: 1.0 To: Poul-Henning Kamp References: <40238.1124530095@phk.freebsd.dk> In-Reply-To: <40238.1124530095@phk.freebsd.dk> Content-Type: text/plain; charset=GB2312 Content-Transfer-Encoding: 8bit Cc: current@freebsd.org Subject: Re: suspend/resume operation broken with usb mouse 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: Sat, 20 Aug 2005 10:48:09 -0000 Poul-Henning Kamp дµÀ: >In message <430476F7.6030007@gddsn.org.cn>, Huang wen hui writes: > > >>hi, >>Using today's CURRENT, my TP42P could not resume with usb mouse. >>cause "double fault" panic. With internal TrackPoint is OK, >>The DDB backtrace message can be found: >> >> > > >Can you try this patch ? > >Index: kern/kern_conf.c >=================================================================== >RCS file: /home/ncvs/src/sys/kern/kern_conf.c,v >retrieving revision 1.190 >diff -u -r1.190 kern_conf.c >--- kern/kern_conf.c 17 Aug 2005 08:19:52 -0000 1.190 >+++ kern/kern_conf.c 20 Aug 2005 09:24:35 -0000 >@@ -443,10 +443,14 @@ > static void > fini_cdevsw(struct cdevsw *devsw) > { >+ struct cdevsw *gt; > >- if (devsw->d_gianttrick != NULL) >- free(devsw->d_gianttrick, M_DEVT); >- devsw->d_gianttrick = NULL; >+ if (devsw->d_gianttrick != NULL) { >+ gt = devsw->d_gianttrick; >+ memcpy(devsw, gt, sizeof *devsw); >+ free(gt, M_DEVT); >+ devsw->d_gianttrick = NULL; >+ } > devsw->d_flags &= ~D_INIT; > } > > > ok, this patch works for me, thanks! --hwh