xfs
[Top] [All Lists]

[hack] allow xfsrestore to run on 64k page size machines

To: xfs-dev <xfs-dev@xxxxxxx>
Subject: [hack] allow xfsrestore to run on 64k page size machines
From: David Chinner <dgc@xxxxxxx>
Date: Thu, 22 May 2008 16:15:19 +1000
Cc: xfs-oss <xfs@xxxxxxxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Mutt/1.4.2.1i
xfsrestore has assumptions about page size built into the inode hunk
size in the dump format. Seems to be a stupid thing to do - this
patch simply comments out the asserts to allow it to work on
64k page size machine, but probably subtly breaks the code.
Nasty hack, really, but allows xfsqa tests to pass.

Not-Signed-off-by: Dave Chinner <dgc@xxxxxxx>
---
 xfsdump/restore/inomap.c |   12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Index: xfs-cmds/xfsdump/restore/inomap.c
===================================================================
--- xfs-cmds.orig/xfsdump/restore/inomap.c      2006-11-14 19:57:32.000000000 
+1100
+++ xfs-cmds/xfsdump/restore/inomap.c   2008-05-13 10:34:05.963909158 +1000
@@ -197,8 +197,8 @@ inomap_restore_pers( drive_t *drivep,
         */
        ASSERT( INOPERSEG == ( sizeof( (( seg_t * )0 )->lobits ) * NBBY ));
        ASSERT( sizeof( hnk_t ) == HNKSZ );
-       ASSERT( HNKSZ >= pgsz );
-       ASSERT( ! ( HNKSZ % pgsz ));
+       //ASSERT( HNKSZ >= pgsz );
+       //ASSERT( ! ( HNKSZ % pgsz ));
        ASSERT( sizeof( pers_t ) <= PERSSZ );
 
        /* get inomap info from media hdr
@@ -224,8 +224,8 @@ inomap_restore_pers( drive_t *drivep,
 
        /* mmap the persistent hdr and space for the map
         */
-       ASSERT( sizeof( hnk_t ) * ( size_t )hnkcnt >= pgsz );
-       ASSERT( ! ( sizeof( hnk_t ) * ( size_t )hnkcnt % pgsz ));
+       //ASSERT( sizeof( hnk_t ) * ( size_t )hnkcnt >= pgsz );
+       //ASSERT( ! ( sizeof( hnk_t ) * ( size_t )hnkcnt % pgsz ));
        persp = ( pers_t * ) mmap_autogrow(
                                     PERSSZ
                                     +
@@ -355,8 +355,8 @@ inomap_sync_pers( char *hkdir )
        /* sanity checks
         */
        ASSERT( sizeof( hnk_t ) == HNKSZ );
-       ASSERT( HNKSZ >= pgsz );
-       ASSERT( ! ( HNKSZ % pgsz ));
+       //ASSERT( HNKSZ >= pgsz );
+       //ASSERT( ! ( HNKSZ % pgsz ));
 
        /* only needed once per session
         */


<Prev in Thread] Current Thread [Next in Thread>
  • [hack] allow xfsrestore to run on 64k page size machines, David Chinner <=