From owner-freebsd-hackers@FreeBSD.ORG Tue Jan 25 01:48:29 2005 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D098D16A4CE for ; Tue, 25 Jan 2005 01:48:29 +0000 (GMT) Received: from arginine.spc.org (arginine.spc.org [195.206.69.236]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5A0C343D45 for ; Tue, 25 Jan 2005 01:48:29 +0000 (GMT) (envelope-from bms@spc.org) Received: from localhost (localhost [127.0.0.1]) by arginine.spc.org (Postfix) with ESMTP id 6A4D165213; Tue, 25 Jan 2005 01:48:28 +0000 (GMT) Received: from arginine.spc.org ([127.0.0.1]) by localhost (arginine.spc.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 08555-01-2; Tue, 25 Jan 2005 01:48:27 +0000 (GMT) Received: from empiric.dek.spc.org (unknown [213.210.24.3]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by arginine.spc.org (Postfix) with ESMTP id 648B065211; Tue, 25 Jan 2005 01:48:24 +0000 (GMT) Received: by empiric.dek.spc.org (Postfix, from userid 1001) id 0C8CF6383; Tue, 25 Jan 2005 01:49:35 +0000 (GMT) Date: Tue, 25 Jan 2005 01:49:35 +0000 From: Bruce M Simpson To: Ryan Sommers Message-ID: <20050125014935.GD47638@dhcp120.icir.org> References: <86pszu639o.fsf@borg.borderworlds.dk> <86brbe6052.fsf@borg.borderworlds.dk> <200501242240.j0OMeIXP043763@apollo.backplane.com> <41F59242.7090900@jonny.eng.br> <41F5A2DE.5000306@gamersimpact.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <41F5A2DE.5000306@gamersimpact.com> cc: hackers@freebsd.org cc: =?iso-8859-1?Q?Jo=E3o_Carlos_Mendes_Lu=EDs?= Subject: Re: Resuming from a crashdump X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Jan 2005 01:48:30 -0000 On Mon, Jan 24, 2005 at 07:37:34PM -0600, Ryan Sommers wrote: > My little knowledge on this subject aside. I'd love to have full > suspend/resume functionality. It'd make my life as a mobile freebsd user > much much easier. However, I wouldn't want it at the expense of every > kernel. It would need to be something completely modular. I think what we're also looking at is aborting any pending bus-mastering transactions. This could probably be done as a part of the newbus suspend/resume routines for bus and device drivers, but it also means that the other entry points need to be able to deal with the carpet being dragged out from under them like this. In the case of a networking driver, particularly Ethernet, things are somewhat easier, and the more help you get from the hardware the better; but some cards like those based around ATM SARS just plain aren't designed to deal with the carpet being dragged out - they expect to keep rolling through their descriptor rings, segmenting and transmitting what they see. If we could take a clean subsystem-by-subsystem approach to marshaling kernel state to disk, that would be good. What gives me particular pain here is dealing with things like the filesystem. How does one deal with open files, etc, with pending I/O? Just my 2c, BMS