Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Apr 2008 09:05:20 +0200
From:      Alexander Leidinger <Alexander@Leidinger.net>
To:        Boris Samorodov <bsam@ipt.ru>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: CALL FOR TESTERS: linux-f8 infrastructure ports
Message-ID:  <20080417090520.10531aih8m18dku8@webmail.leidinger.net>
In-Reply-To: <72736263@bb.ipt.ru>
References:  <72854627@bb.ipt.ru> <20080416064556.GA1095@medusa.sysfault.org> <15612262@bb.ipt.ru> <20080416152407.GD1074@medusa.sysfault.org> <20080416175922.14575iy6l8u8cqo0@webmail.leidinger.net> <72736263@bb.ipt.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Quoting Boris Samorodov <bsam@ipt.ru> (from Wed, 16 Apr 2008 21:27:36 +0400)=
:

> On Wed, 16 Apr 2008 17:59:22 +0200 Alexander Leidinger wrote:
>> Quoting Marcus von Appen <mva@sysfault.org> (from Wed, 16 Apr 2008
>> 17:24:07 +0200):
>> > On, Wed Apr 16, 2008, Boris Samorodov wrote:
>
>> >> Do you by any chance use nvidia card and WITH_NVIDIA=3DYES variable?
>> >> I myself can't use google-earth because it segfaults while it
>> >> is reported to work fine for other users.
>> >
>> > Yes, I do use a nvidia card. Sorry for mnot mentioning that :-).
>> > Maybe some issue with the libglu/libgl linux ports?
>
>> Hardware accelerated 3D does not work ATM. We need someone looking
>> into updating the corresponding linux port in a suitable way. AFAIR
>> this involves taking some source, massaging it somehow, compiling it
>> on linux and then making a tarball. Any chance you volunteer to have a
>> look into this? Nobody else is doing this ATM.
>
> First of, I totally agree with you, Alexander.
>
> But, second, do you mean that it's the case (that an updated port
> may help Marcus)? You didn't _say_ so but did you assume it? ;-)

My message was a little bit short, as my GF was waiting for me to go out. :)

> My point of view is that those ports which use nvidia drivers
> should work as is. I.e. if I have installed nvidia drivers built
> with linux support and install a port (say, astro/google-earth)
> using apropriate variable (WITH_NVIDIA_GL=3DYES for google-earth)
> then the port sould work. If it doesn't then it's a bug either
> at nvidia driver or at our linuxulator (or more wide).

There's a little bit more involved here. Unfortunately I don't have =20
the necessary knowledge to give a full technical explanation. The 3D =20
world in X11 as I see it in this case is as follows.

The native X server is doing the 3D stuff. The application connects to =20
it and tells do to some 3D (indirect rendering, most probably not =20
hardware accelerated). This is done in a high level standard way and =20
as such does not cause a problem.

With the NVidia GL libs on the other hand, there's some kind of bypass =20
of the X server after the 3D setup (direct rendering, AFAIK always =20
hardware accelerated, at least partially). NVidia is a little bit =20
special, as it does it's own direct rendering stuff, not the official =20
DRI. But AFAIK some parts of the linux-dri port _may_ be used. The =20
linux-dri port is specially crafted for FreeBSD as described in my =20
previous mail. With the new X.org version there may be some changes =20
needed.

The troublesome part in general, and not directly related to NVidia =20
is, that the DRI stuff has undergone several revisions which need to =20
be taken care of in the 3D stuff. As far as I remember, the revision =20
in our kernel changed at some point (but is far away from being on the =20
same level than the DRI stuff in linux), but the corresponding linux =20
port was not updated. So we have a version mismatch in the linux-dri =20
port and we don't get hardware accelerated 3D in linux. Anholt@ should =20
know more about it, but he puts more energy into X.org stuff than into =20
FreeBSD, so I don't expect that we will see some work from him there =20
soon (I haven't asked him, shame on me).

The easy solution would be to take the sources and fix it for the =20
current stuff. The person doing this should contact Anholt, he should =20
know a little bit more about it and maybe he has a little bit of time =20
to explain some things (if the person wants to provide some notes in a =20
public place, we can arrange access to the FreeBSD wiki).

The ideal solution would be to first have a look at the differences =20
between the linux DRI stuff and the FreeBSD DRI stuff, take =20
appropriate action, and then have a look at the things above (maybe we =20
can use the corresponding stuff from linux directly then).

Again, there's a lot of lack of domain specific knowledge on my side, =20
so there may be some errors/inaccuracies in my explanation above. Take =20
it with a grain of salt (corrections welcome).

Bye,
Alexander.

--=20
Life is like a buffet; it's not good but there's plenty of it.

http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID =3D B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID =3D 72077137



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