[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#512437: marked as done (32bit nscd can't serve 64bit clients)



Your message dated Tue, 20 Jan 2009 21:22:00 +0100
with message-id <20090120202200.GA17696@utopia.intra.guy>
and subject line Re: 32bit nscd can't serve 64bit clients
has caused the Debian Bug report #512437,
regarding 32bit nscd can't serve 64bit clients
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
512437: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=512437
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: nscd
Version: 2.7-18
Severity: normal

Hi,

due to complicated circumstances it is perhaps not important to go into
here, I have an nscd instance, compiled for i386, that should serve a mix of
i386 and amd64 clients over the same unix domain socket (imagine, for
example, chroots with different architectures).

Apparently, some structure is aligned in an unfortunate way or maybe missing
a 'packed' attribute; while 32bit clients can query nscd fine, queries from
64bit clients fail.

I have obtained straces of the two kinds of behaviour.

Good (i386 client):

connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0
send(3, "\x02\x00\x00\x00\x0b\x00\x00\x00\x07\x00\x00\x00\x70\x61\x73\x73\x77\x64\x00"..., 19, MSG_NOSIGNAL) = 19
poll([{fd=3, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=3, revents=POLLIN|POLLHUP}])
recvmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"\x70\x61\x73\x73\x77\x64\x00"..., 7}, {"\xb8\x4f\x03\x00\x00\x00\x00\x00"..., 8}], msg_controllen=16, {cmsg_len=16, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, {4}}, msg_flags=0}, MSG_CMSG_CLOEXEC) = 15
mmap2(NULL, 217016, PROT_READ, MAP_SHARED, 4, 0) = 0xf7d8a000
close(4)                                = 0
close(3)                                = 0
fstat64(1, {st_dev=makedev(0, 10), st_ino=22, st_mode=S_IFCHR|0620, st_nlink=1, st_uid=0, st_gid=5, st_blksize=1024, st_blocks=0, st_rdev=makedev(136, 20), st_atime=2009/01/20-18:46:57, st_mtime=2009/01/20-18:46:57, st_ctime=2009/01/20-18:31:00}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf7f06000
write(1, "foobar:x:1061:1061:foo bar:/home/foobar:/bin/bash\n"..., 55) = 55
exit_group(0)                           = ?

Bad (amd64 client):

connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0
sendto(3, "\x02\x00\x00\x00\x0b\x00\x00\x00\x07\x00\x00\x00\x70\x61\x73\x73\x77\x64\x00"..., 19, MSG_NOSIGNAL, NULL, 0) = 19
poll([{fd=3, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=3, revents=POLLIN|POLLHUP}])
recvmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"\x70\x61\x73\x73\x77\x64\x00"..., 7}, {"\xb8\x4f\x03\x00\x00\x00\x00\x00"..., 8}], msg_controllen=24, {cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, {4}}, msg_flags=0}, MSG_CMSG_CLOEXEC) = 15
mmap(NULL, 217016, PROT_READ, MAP_SHARED, 4, 0) = 0x2ac05280d000
close(4)                                = 0
close(3)                                = 0
exit_group(2)                           = ?

I imagine the problem may be related to

msg_controllen=16, {cmsg_len=16, cmsg_level=SOL_SOCKET, ...

vs.

msg_controllen=24, {cmsg_len=20, cmsg_level=SOL_SOCKET, ...

It would be great not to have to run two instances of nscd that both cache
the same backend.

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386

Kernel: Linux 2.6.22.19-vs2.2.0.7-stop
Locale: LANG=C, LC_CTYPE=C
Shell: /bin/sh linked to /bin/bash

Best regards,

Andras

-- 
                 Andras Korn <korn at chardonnay.math.bme.hu>
                 <http://chardonnay.math.bme.hu/~korn/>	QOTD:
                All generalizations are false (incl. this one)



--- End Message ---
--- Begin Message ---
Sorry about the noise; it was a user error (the two clients weren't really
querying the same nscd instance).

Andras

-- 
                 Andras Korn <korn at chardonnay.math.bme.hu>
                 <http://chardonnay.math.bme.hu/~korn/>	QOTD:
           Gondosan moss kezet, ki tudja hol volt elotte a szappan!


--- End Message ---

Reply to: