From owner-svn-src-head@FreeBSD.ORG Mon Feb 2 14:29:17 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C25FA106566C; Mon, 2 Feb 2009 14:29:15 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id ACD1C8FC34; Mon, 2 Feb 2009 14:29:15 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n12ETFDo099111; Mon, 2 Feb 2009 14:29:15 GMT (envelope-from phk@svn.freebsd.org) Received: (from phk@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n12ETFQk099110; Mon, 2 Feb 2009 14:29:15 GMT (envelope-from phk@svn.freebsd.org) Message-Id: <200902021429.n12ETFQk099110@svn.freebsd.org> From: Poul-Henning Kamp Date: Mon, 2 Feb 2009 14:29:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r188007 - head/usr.sbin/fifolog/lib X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Feb 2009 14:29:18 -0000 Author: phk Date: Mon Feb 2 14:29:15 2009 New Revision: 188007 URL: http://svn.freebsd.org/changeset/base/188007 Log: Don't overwrite it, if only one sector is written yet. Discovered by: "Dewayne Geraghty" Modified: head/usr.sbin/fifolog/lib/fifolog_write_poll.c Modified: head/usr.sbin/fifolog/lib/fifolog_write_poll.c ============================================================================== --- head/usr.sbin/fifolog/lib/fifolog_write_poll.c Mon Feb 2 11:19:56 2009 (r188006) +++ head/usr.sbin/fifolog/lib/fifolog_write_poll.c Mon Feb 2 14:29:15 2009 (r188007) @@ -152,15 +152,16 @@ fifolog_write_open(struct fifolog_writer es = fifolog_int_findend(f->ff, &o); if (es != NULL) return (es); - if (o == 0) { - f->seq = 0; - f->recno = 0; + i = fifolog_int_read(f->ff, o); + if (i) + return ("Read error, looking for seq"); + f->seq = be32dec(f->ff->recbuf); + if (f->seq == 0) { + /* Empty fifolog */ + f->seq = random(); } else { - i = fifolog_int_read(f->ff, o); - if (i) - return ("Read error, looking for seq"); - f->seq = be32dec(f->ff->recbuf) + 1; f->recno = o + 1; + f->seq++; } f->ibufsize = 32768;