|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
Re: 64K User Barrier on Linux
Andrew McNamara (andrewm
connect.com.au)
Fri, 26 Nov 1999 10:41:03 +1100
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
- Next message: Rick Troxel: "Partial logging: No qmgr entries"
- Previous message: Wietse Venema: "Re: postfix problem: linux + nfs"
- In reply to: Wietse Venema: "Re: postfix problem: linux + nfs"
- Next in thread: Robert 'Shadow' Pajšk: "RE: 64K User Barrier on Linux"
>> The filesystem. Ext2 uses a 16-bit datum for UID and GID.
>
>The man is right. I suppose this limits Linux usability as a big
>NFS server.
Here's a message from Theodore Y. Ts'o, the ext2 maintainer, on the
subject:
Date: Sat, 21 Nov 1998 00:35:42 -0500
To: jon.leonard
umich.edu
Cc: linux-kernel
vger.rutgers.edu
From: "Theodore Y. Ts'o" <tytso
mit.edu>
Sender: owner-linux-kernel
vger.rutgers.edu
Subject: Re: High UID support for Linux
In-Reply-To: Jon Leonard's message of Thu, 19 Nov 1998 17:38:39 -0500,
<36549DEF.1E8F26EE
umich.edu>
--------
Date: Thu, 19 Nov 1998 17:38:39 -0500
From: Jon Leonard <jbwl
umich.edu>
Has anybody looked seriously at supporting 32 bit UIDs on Linux? We'd
really like to make Linux a commodity at Umich, but with a user base of
about 100,000, high UIDs are an absolute requirement. I've only just
started looking at this, but scanning the include files, it would appear
that some platforms already support high UIDs, but not i386.
Just for grins, I tried changing the typedef in linux/types.h and
recompiling the kernel. Wouldn't even boot. Then I noticed that the
uid and gid fields in ext2 inodes are 16 bits. So it seems like this is
a project, not than a hack. (This was on 2.0.35.)
The ext2 inodes are the smallest part of the problem; there is already
space reserved in the node for the high bytes of the uid and gid
(although every so often I have to tell someone "no" when their favorite
ext2 patch wants to steal those bytes from the inode for their own
purposes).
The harder thing to do is creating the a system call which returns a
new stat structure, and then modifying libc to know about this new
system call --- if it happens to be there.
And of course, checking for all of the other places in the kernel which
might break when changing the size of the uid_t. I'm actually surprised
the your kernel didn't boot, but there may have been some assembly
language part of the kernel which is dependent on the 16 bit uid.
Anyway, this sounds like a great 2.3 project. I don't think it's
actually that hard, especially since glibc's stat already supports the
32-bit uid.
- Ted
- Next message: Rick Troxel: "Partial logging: No qmgr entries"
- Previous message: Wietse Venema: "Re: postfix problem: linux + nfs"
- In reply to: Wietse Venema: "Re: postfix problem: linux + nfs"
- Next in thread: Robert 'Shadow' Pajšk: "RE: 64K User Barrier on Linux"
This archive was generated by hypermail 2.0b3 on Thu Nov 25 1999 - 17:42:04 CST