* VFS: Convert abuses of sector_t
@ 2006-03-21 17:13 Trond Myklebust
2006-03-22 10:50 ` Andrew Morton
0 siblings, 1 reply; 2+ messages in thread
From: Trond Myklebust @ 2006-03-21 17:13 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, Linux Filesystem Development
From: Trond Myklebust <Trond.Myklebust@netapp.com>
The type "sector_t" is heavily tied in to the block layer interface as an
offset/handle to a block, and is subject to a supposedly block-specific
configuration option: CONFIG_LBD. Despite this, it is used in struct
kstatfs to save a couple of bytes on the stack whenever we call the
filesystems' ->statfs().
One consequence is that networked filesystems may break if CONFIG_LBD is
not set, since it is quite common to have multi-TB remote filesystems.
The following patch just converts struct kstatfs to use the standard type u64.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
---
include/linux/statfs.h | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/include/linux/statfs.h b/include/linux/statfs.h
index ad83a2b..b34cc82 100644
--- a/include/linux/statfs.h
+++ b/include/linux/statfs.h
@@ -8,11 +8,11 @@
struct kstatfs {
long f_type;
long f_bsize;
- sector_t f_blocks;
- sector_t f_bfree;
- sector_t f_bavail;
- sector_t f_files;
- sector_t f_ffree;
+ u64 f_blocks;
+ u64 f_bfree;
+ u64 f_bavail;
+ u64 f_files;
+ u64 f_ffree;
__kernel_fsid_t f_fsid;
long f_namelen;
long f_frsize;
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: VFS: Convert abuses of sector_t
2006-03-21 17:13 VFS: Convert abuses of sector_t Trond Myklebust
@ 2006-03-22 10:50 ` Andrew Morton
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Morton @ 2006-03-22 10:50 UTC (permalink / raw)
To: Trond Myklebust; +Cc: torvalds, linux-kernel, linux-fsdevel
Trond Myklebust <trond.myklebust@fys.uio.no> wrote:
>
> From: Trond Myklebust <Trond.Myklebust@netapp.com>
>
> The type "sector_t" is heavily tied in to the block layer interface as an
> offset/handle to a block, and is subject to a supposedly block-specific
> configuration option: CONFIG_LBD. Despite this, it is used in struct
> kstatfs to save a couple of bytes on the stack whenever we call the
> filesystems' ->statfs().
>
> One consequence is that networked filesystems may break if CONFIG_LBD is
> not set, since it is quite common to have multi-TB remote filesystems.
>
> The following patch just converts struct kstatfs to use the standard type u64.
>
> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
> ---
>
> include/linux/statfs.h | 10 +++++-----
> 1 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/include/linux/statfs.h b/include/linux/statfs.h
> index ad83a2b..b34cc82 100644
> --- a/include/linux/statfs.h
> +++ b/include/linux/statfs.h
> @@ -8,11 +8,11 @@
> struct kstatfs {
> long f_type;
> long f_bsize;
> - sector_t f_blocks;
> - sector_t f_bfree;
> - sector_t f_bavail;
> - sector_t f_files;
> - sector_t f_ffree;
> + u64 f_blocks;
> + u64 f_bfree;
> + u64 f_bavail;
> + u64 f_files;
> + u64 f_ffree;
> __kernel_fsid_t f_fsid;
> long f_namelen;
> long f_frsize;
This change also appears (for different reasons) in
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.16-rc6/2.6.16-rc6-mm2/broken-out/2tb-files-change-type-of-kstatfs-entries.patch,
so we should be OK.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-03-22 10:53 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-03-21 17:13 VFS: Convert abuses of sector_t Trond Myklebust
2006-03-22 10:50 ` Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®