Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Jun 2001 23:20:45 -0500
From:      Andrew Hesford <ajh3@usrlib.org>
To:        FreeBSD-hackers <freebsd-hackers@freebsd.org>
Subject:   XFree86 4.1.0 and i810
Message-ID:  <20010606232045.A453@core.usrlib.org>

next in thread | raw e-mail | index | archive | help
Many have had problems with the XFree86 and i810 or i815 chipsets under
FreeBSD. Specifically, the server crashes after switching to a text
console and switching back to the console X is running on. Unlike
versions 4.0.2 and 4.0.3 (4.0.1 magically works for me), 4.1.0 prints an
error message:

	xf86BindGARTMemory: binding of gart memory with key %d
		at offset 0x%x failed (%s),

where %d, %x, and %s all have their standard C interpretations. %s is
the string produced by interpreting the global variable errno as set by
ioctl.

The file where the error occurs is in (relative to the xc directory)
programs/Xserver/hw/xfree86/os-support/bsd/lnx_agp.c (a link to
../linux/lnx_agp.c), line 257. The problem is a failed AGPIOC_BIND ioctl
call. The variable errno is set to 2, or "No such file or directory."

The biggest problem with the crashing server is that it will not restart
properly until the machine is shutdown; it seems the GART is not cleared
after the crash. However, I have not investigated this at all.

I submit this here in the hopes that somebody who understands ioctl
(specifically AGPIOC_BIND, defined in /usr/include/sys/agpio.h) might be
able to explain why I'm getting errno=2. I can't see why this specific
problem would occur, unless the ioctl is trying to access the AGP GART
at some device node other than /dev/agpgart.

I hope somebody can provide more information. I am in the process of
fetching and extracting the XFree86 4.0.1 sources, I will take a look at
how they handled the ioctl. Unfortunately, I do not know enough about
the design of the FreeBSD kernel to go poking in there; if XFree86 4.0.1
can't offer some hints on the right way to handle things, I'm fresh out
of ideas.

--
Andrew Hesford
ajh3@usrlib.org

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




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