From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30852 invoked by alias); 18 Oct 2007 19:56:42 -0000 Received: (qmail 30827 invoked by uid 9582); 18 Oct 2007 19:56:41 -0000 Date: Thu, 18 Oct 2007 19:56:00 -0000 Message-ID: <20071018195641.30826.qmail@sourceware.org> From: rpeterso@sourceware.org To: cluster-cvs@sources.redhat.com Subject: cluster/gfs2/edit hexedit.c hexedit.h savemeta.c Mailing-List: contact cluster-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: cluster-cvs-owner@sourceware.org X-SW-Source: 2007-q4/txt/msg00073.txt.bz2 CVSROOT: /cvs/cluster Module name: cluster Changes by: rpeterso@sourceware.org 2007-10-18 19:56:41 Modified files: gfs2/edit : hexedit.c hexedit.h savemeta.c Log message: While working on bz #291551, I discovered that gfs2_edit savemeta only saved true metadata, but we need more than that. There are lots of blocks that are considered "data" (not metadata) by the RG bitmaps that we still need to save. These include: 1. All the system journals (which may contain both metadata and user data, disguised as data blocks within the journal). We need to pick out the parts that do not contain user data. 2. The system files, such as statfs, inum, quota file, etc. These may be helpful in debugging user problems. 3. Indirect block pointers, which may be counted as data for accounting purposes, even though it's metadata. 4. Directory leaf blocks. This change allows gfs2_edit to save and restore these blocks properly, and also to print out a breakdown of a saved metadata file: gfs2_edit printsavedmeta /tmp/gfsmeta It also improves on the information given when a journal is dumped. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs2/edit/hexedit.c.diff?cvsroot=cluster&r1=1.21&r2=1.22 http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs2/edit/hexedit.h.diff?cvsroot=cluster&r1=1.11&r2=1.12 http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs2/edit/savemeta.c.diff?cvsroot=cluster&r1=1.3&r2=1.4