[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: xfs_db -c frag -r /dev/hda1 - Segmentation fault



Thanks, I will give this a try.


On Mon, 24 Oct 2005, Nathan Scott wrote:

On Sun, Oct 23, 2005 at 07:39:34AM -0400, Justin Piszcz wrote:
p34:~# xfs_db -c frag -r /dev/hda1
Segmentation fault
p34:~# xfs_db -c frag -r /dev/hde1
Segmentation fault
p34:~# xfs_db -c frag -r /dev/hdk1
Segmentation fault
p34:~#

Debian Etch, 2.6.13.4, stopped working a while ago, either before newer
debian packages or a newer kernel, does anyone who uses Debian+XFS have
this problem as well?

I see it too - this looks like an endian issue in xfs_db, this patch
should fix it (Works For Me).

cheers.

--
Nathan


Index: xfsprogs/db/frag.c
===================================================================
--- xfsprogs.orig/db/frag.c
+++ xfsprogs/db/frag.c
@@ -294,7 +294,7 @@ process_exinode(
	xfs_bmbt_rec_32_t	*rp;

	rp = (xfs_bmbt_rec_32_t *)XFS_DFORK_PTR(dip, whichfork);
-	process_bmbt_reclist(rp, XFS_DFORK_NEXTENTS(dip, whichfork), extmapp);
+	process_bmbt_reclist(rp, XFS_DFORK_NEXTENTS_HOST(dip, whichfork), extmapp);
}

static void
@@ -305,7 +305,7 @@ process_fork(
	extmap_t	*extmap;
	int		nex;

-	nex = XFS_DFORK_NEXTENTS(dip, whichfork);
+	nex = XFS_DFORK_NEXTENTS_HOST(dip, whichfork);
	if (!nex)
		return;
	extmap = extmap_alloc(nex);





Reply to: