[linux-cifs-client] Re: [PATCH] Fix build error where nscd_flush_cache() is available

Suresh Jayaraman sjayaraman at suse.de
Wed Aug 13 04:52:26 GMT 2008


Jeff Layton wrote:
> On Tue, 12 Aug 2008 11:57:01 -0500
> "Steve French" <smfrench at gmail.com> wrote:
> 
>> If it really is required to link nscd support libs in with cifs kernel
>> support to get cifs.spnego working, I don't mind, but we need to watch
>> the ever growing size of this module - since this is a system util
>> (needed for mount) - not an optional user space program, this util
>> (cifs.spnego) has to be small enough to fit on very low end (perhaps
>> embedded systems).   At the moment, it looks like cifs.spnego has
>> gotten quite big.  On my system, listing Samba files by size - I see
>> that smbd is 17MB, fairly big, as expected, but the client utils are
>> much bigger than expected (over 10MB each) - cifs.spnego is already
>> twice as big as nmbd on disk (10464075) which makes it hard to fit on
>> some embedded systems.  Even if debug info is stripped out -
>> cifs.spnego has grown pretty large due to the static library linkage.
>>
> 
> Definitely a concern...
> 
> cifs.upcall is 14MB on my machine (unstripped, 4M if it is stripped).
> Looks like the main problem is that we're statically linking in
> libsmbclient.a. It should probably be changed to use the .so version. 
> 

On a side note, another concern is that currently /sbin/cifs.spnego 
links quite a number of libraries present in /usr/lib. Allowing libs 
that are not inside root-fs for binaries in the root-fs is not a good idea.

	libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7b6d000)
	libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb7ad7000)
	libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7ab2000)
	libldap-2.4.so.2 => /usr/lib/libldap-2.4.so.2 (0xb7a6f000)
	liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 (0xb7a60000)
	libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb7906000)
	libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0xb78ed000)
	libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0xb78a8000)
	libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0xb7764000)

I'm not sure of a better way to handle this, though.


Thanks,


-- 
Suresh Jayaraman


More information about the linux-cifs-client mailing list