NetBSD-Bugs archive

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

toolchain/38428: netbsd-4 nbmtree fails with amd64 current host



>Number:         38428
>Category:       toolchain
>Synopsis:       netbsd-4 nbmtree fails with amd64 current host
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    toolchain-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 14 17:56:26 +0000 2008
>Originator:     Simon Burge
>Release:        
>Organization:
>Environment:
        Architecture: x86_64
        Machine: amd64
>Description:
        The netbsd-4 compat_defs.h doesn't prototype user_from_uid()
        (or even the transformed __nbcompat_user_from_uid()) at least
        with a netbsd -current build host.  With a -current amd64 build
        host, the address returned by user_from_uid() is > 4GB, so get
        truncated and sign extended to an invalid address.  The prototype
        for user_from_uid() in <pwd.h> isn't visible either because
        _NETBSD_SOURCE isn't defined.

        I guessing that the return addresses from malloc() might have
        changed with the switch to jemalloc, and this is why it hasn't
        been an issue in the past?

>How-To-Repeat:
        Check out a netbsd-4 source tree on amd64 -current host, try to
        build.

>Fix:
        Not sure.  Pull in -current user_from_uid()/group_from_gid()
        compat_defs.h logic ?

        A workaround is to just comment out the HAVE_USER_FROM_UID and
        HAVE_GROUP_FROM_GID checks in compat_defs.h so that the prototypes
        for those functions are always visible.

>Unformatted:
        Build host userland is -current from March 30 2008
        Target sources are netbsd-4 from April 14 2008


Home | Main Index | Thread Index | Old Index