Growing UFS beyond 2 TB
Nick Gustas
freebsd-fs at tychl.net
Fri May 25 11:42:17 UTC 2007
Arne WXrner wrote:
> --- Nick Gustas <freebsd-fs at tychl.net> wrote:
>
>
>> I did a diff between the growfs.c from a 6.2-STABLE machine and what I
>> have now from list patches and GCC error fixing. *WARNING* it appears
>> to work, and compiles clean, but doesn't actually make a correct
>> filesystem! I don't know enough C to get past this, though I suspect
>> it's close and some study might get me there.
>>
>> http://masq.tychl.net/growfs.patch
>>
>>
> This look wrong, too:
> @@ -417,7 +417,7 @@
> acg.cg_initediblk = 0;
> acg.cg_old_btotoff = start;
> acg.cg_old_boff = acg.cg_old_btotoff +
> - sblock.fs_old_cpg * sizeof(int32_t);
> + sblock.fs_old_cpg * sizeof(int64_t);
> acg.cg_iusedoff = acg.cg_old_boff +
> sblock.fs_old_cpg * sizeof(u_int16_t);
> }
> Where have u found that?
>
> -Arne
>
>
>
> ____________________________________________________________________________________You snooze, you lose. Get messages ASAP with AutoCheck
> in the all-new Yahoo! Mail Beta.
> http://advision.webevents.yahoo.com/mailbeta/newmail_html.html
>
Well, originally I tried just the patches from the two messages you
referred to, and it didn't work, fsck -y would scroll endlessly after
the grow, and the output of growfs itself wasn't right. I figured
something must still be missing, so I went at it until the compilation
warnings went away, and the output looked right. However since I'm not a
programmer, or UFS internals guy, I was probably a bit overzealous in my
32/64 bit searching. I figured I'd post what I had done, with a
warning, in the hopes someone would correct me.
Anyhow, I made the three changes you mentioned, and growfs still
compiles clean, and runs with proper display, but running fsck -y on the
grown file system scrolls for a long time with tons of errors and
eventually bombs out asking me to run it again. running it again doesn't
help.
I've updated
http://masq.tychl.net/growfs.patch
with the changes you suggested.
Keep in mind I'm no C programmer, but I can follow direction and would
love to see growfs 2+TB clean :)
More information about the freebsd-fs
mailing list