restore: bad block size 5632 between different major versions

Dmitry Morozovsky marck at rinet.ru
Sun Jul 27 19:20:01 UTC 2014


Colleagues, 

following up to myself:

On Thu, 24 Jul 2014, Dmitry Morozovsky wrote:

> I'm a bit stumbled.
> 
> prerequisites:
> 
> - backup server, stable/9 (a bit obsoleted, but this is unrelated to the 
> problem)

I forgot to mention that it is ZFS-based.

> ** on backup server:
> backup at whale:/B/dump/lion> uname -r
> 9.1-STABLE
> backup at whale:/B/dump/lion> cat 5-var.dgz.?? | zcat | ./restore -t -v -f -
> Verify tape and initialize maps
> Dump   date: Thu Jul 24 06:57:04 2014
> Dumped from: Wed Jul 23 06:57:04 2014
> Level 5 dump of /var on lion.rinet.ru:/dev/da0e
> Label: none
> bad block size 5632

ktrace'ing restore I've found that stat(".") on ZFS in my case returning 
blksize=5632, which makes restore unhappy somewhere at

261-    if (stbuf.st_blksize >= TP_BSIZE && stbuf.st_blksize <= MAXBSIZE)
262-            fssize = stbuf.st_blksize;
263-    if (((fssize - 1) & fssize) != 0) {
264:            fprintf(stderr, "bad block size %ld\n", fssize);
265-            done(1);
266-    }

commenting lines 263-266 gives me working restore.

Any hints from now? It's not clear to me why we check this at all?

Thanks!


-- 
Sincerely,
D.Marck                                     [DM5020, MCK-RIPE, DM3-RIPN]
[ FreeBSD committer:                                 marck at FreeBSD.org ]
------------------------------------------------------------------------
*** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck at rinet.ru ***
------------------------------------------------------------------------


More information about the freebsd-stable mailing list