BigDisk project: du(1) 64bit clean.

Pawel Jakub Dawidek pjd at FreeBSD.org
Tue Jan 4 14:40:46 PST 2005


Hi.

I want you to look at two patches which makes du(1) 64bit clean.
This work is part of the BigDisk project:

	http://www.freebsd.org/projects/bigdisk/

The main problem here is that du(1) uses fts(3) and fts_number field from
one of its structures to store size.
This field is defined as 'long' so it doesn't give us what we want
(on 32bit archs).

So first of all, we need this patch:

	http://people.freebsd.org/~pjd/patches/fts.h.patch

It adds 64bit fts_bignum field, but because it is hiden under union,
it doesn't break ABI. It also doesn't break API, thanks to #defines.

Patch for du(1) is here:

	http://people.freebsd.org/~pjd/patches/du-64bit-clean.patch

We should decide if we want fts.h.patch also in HEAD or only in RELENG_5,
because we can make it much cleaner in HEAD, but we will break ABI
(API should be quite ok) - we need to change size of fts_number field.

-- 
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd at FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20050104/025e1425/attachment.bin


More information about the freebsd-arch mailing list