Re: >0x7fffffff blocksize filesystem reporting
From: Tim Robbins (tjr_at_freebsd.org)
Date: 11/06/03
- Previous message: Bruce Evans: "Re: bpf/pcap are weird"
- In reply to: Kirk McKusick: ">0x7fffffff blocksize filesystem reporting"
- Next in thread: Kirk McKusick: "Re: >0x7fffffff blocksize filesystem reporting"
- Reply: Kirk McKusick: "Re: >0x7fffffff blocksize filesystem reporting"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Thu, 6 Nov 2003 17:45:28 +1100 To: Kirk McKusick <mckusick@McKusick.COM>
On Wed, Nov 05, 2003 at 09:04:41PM -0800, Kirk McKusick wrote:
> + /*
> + * Convert a new format statfs structure to an old format statfs structure.
> + */
> + static void
> + cvtstatfs(td, nsp, osp)
> + struct thread *td;
> + struct statfs *nsp;
> + struct ostatfs *osp;
> + {
> +
> + bzero(osp, sizeof(*osp));
> + osp->f_bsize = nsp->f_bsize;
> + osp->f_iosize = nsp->f_iosize;
> + osp->f_blocks = nsp->f_blocks;
> + osp->f_bfree = nsp->f_bfree;
> + osp->f_bavail = nsp->f_bavail;
> + osp->f_files = nsp->f_files;
> + osp->f_ffree = nsp->f_ffree;
> + osp->f_owner = nsp->f_owner;
> + osp->f_type = nsp->f_type;
> + osp->f_flags = nsp->f_flags;
> + osp->f_syncwrites = nsp->f_syncwrites;
> + osp->f_asyncwrites = nsp->f_asyncwrites;
> + osp->f_syncreads = nsp->f_syncreads;
> + osp->f_asyncreads = nsp->f_asyncreads;
It may be better to return LONG_MAX for some of these members than to
truncate the value. Alternatively, the block size could be adjusted
to ensure that f_blocks fits in a "long" even though f_blocks * f_bsize
may overflow it, but this is messy and can't help if f_files or
f_{sync,async}{reads,writes} are too big.
> + bcopy(nsp->f_fstypename, osp->f_fstypename, MFSNAMELEN);
> + bcopy(nsp->f_mntonname, osp->f_mntonname, MNAMELEN);
> + bcopy(nsp->f_mntfromname, osp->f_mntfromname, MNAMELEN);
On architectures where longs are not 32 bits (amd64), OMNAMELEN != MNAMELEN,
so this may do the wrong thing.
Tim
_______________________________________________
freebsd-arch@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
- Previous message: Bruce Evans: "Re: bpf/pcap are weird"
- In reply to: Kirk McKusick: ">0x7fffffff blocksize filesystem reporting"
- Next in thread: Kirk McKusick: "Re: >0x7fffffff blocksize filesystem reporting"
- Reply: Kirk McKusick: "Re: >0x7fffffff blocksize filesystem reporting"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|