Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Sep 2007 18:34:21 +0200
From:      Roman Divacky <rdivacky@freebsd.org>
To:        Boris Samorodov <bsam@ipt.ru>
Cc:        freebsd-emulation@freebsd.org, sam <samflanker@gmail.com>
Subject:   Re: linuxolator problem on i386
Message-ID:  <20070917163421.GA2637@freebsd.org>
In-Reply-To: <98735079@srv.sem.ipt.ru>
References:  <97026631@srv.sem.ipt.ru> <45189242@srv.sem.ipt.ru> <07746447@srv.sem.ipt.ru> <09509046@srv.sem.ipt.ru> <20070916171044.GA89893@freebsd.org> <66582704@bs1.sp34.ru> <20070916205434.GA70997@freebsd.org> <20070917152625.GA507@freebsd.org> <64815375@srv.sem.ipt.ru> <98735079@srv.sem.ipt.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Sep 17, 2007 at 08:16:56PM +0400, Boris Samorodov wrote:
> On Mon, 17 Sep 2007 20:12:00 +0400 Boris Samorodov wrote:
> 
> > > what about this? www.vlakno.cz/~rdivacky/linux_bsam.patch (it incorporates
> > > the previous patch, you might want to revert the _hlds.patch if this complete
> > > patch does not work)
> 
> > Way, that seems to help!
> 
> Hm, I was too quick to respond. Sorry.
> 
> Actually it does not core only because getdents() does not work:
> -----
>  16857 hlds_i686 NAMI  "/compat/linux/usr/home/bsam/hlds_l/./cstrike/sound/weapons/reload1.wav"
>  16857 hlds_i686 NAMI  "/usr/home/bsam/hlds_l/./cstrike/sound/weapons/reload1.wav"
>  16857 hlds_i686 RET   linux_stat64 JUSTRETURN
>  16857 hlds_i686 CALL  linux_open(0xbfbece08,0x18800,0xbfbecd34)
>  16857 hlds_i686 NAMI  "/compat/linux/usr/home/bsam/hlds_l/./cstrike/sound/weapons"
>  16857 hlds_i686 NAMI  "/usr/home/bsam/hlds_l/./cstrike/sound/weapons"
>  16857 hlds_i686 RET   linux_open 6
>  16857 hlds_i686 CALL  linux_fstat64(0x6,0xbfbecd34,0x281f0ff4)
>  16857 hlds_i686 RET   linux_fstat64 0
>  16857 hlds_i686 CALL  linux_fcntl64(0x6,0x2,0x1)
>  16857 hlds_i686 RET   linux_fcntl64 0
>  16857 hlds_i686 CALL  linux_getdents(0x6,0x8da532c,0x1000)
>  16857 hlds_i686 RET   linux_getdents -1 errno 14 Bad address
>  16857 hlds_i686 CALL  close(0x6)
>  16857 hlds_i686 RET   close 0
>  16857 hlds_i686 CALL  linux_stat64(0xbfbecec4,0xbfbecdc4,0x281f0ff4)
>  16857 hlds_i686 NAMI  "/compat/linux/usr/home/bsam/hlds_l/./valve/sound/weapons/reload1.wav"
>  16857 hlds_i686 NAMI  "/usr/home/bsam/hlds_l/./valve/sound/weapons/reload1.wav"
>  16857 hlds_i686 RET   linux_stat64 JUSTRETURN
>  16857 hlds_i686 CALL  linux_open(0xbfbece08,0x18800,0xbfbecd34)
>  16857 hlds_i686 NAMI  "/compat/linux/usr/home/bsam/hlds_l/./valve/sound/weapons"
>  16857 hlds_i686 NAMI  "/usr/home/bsam/hlds_l/./valve/sound/weapons"
>  16857 hlds_i686 RET   linux_open 6
>  16857 hlds_i686 CALL  linux_fstat64(0x6,0xbfbecd34,0x281f0ff4)
>  16857 hlds_i686 RET   linux_fstat64 0
>  16857 hlds_i686 CALL  linux_fcntl64(0x6,0x2,0x1)
>  16857 hlds_i686 RET   linux_fcntl64 0
>  16857 hlds_i686 CALL  linux_getdents(0x6,0x8da532c,0x1000)
>  16857 hlds_i686 RET   linux_getdents -1 errno 14 Bad address

show me the args->dirent... easily done by adding
printf("XXX: %p\n", args->dirent);

to the getdents_common() code (in the if (args->dirent) block)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070917163421.GA2637>