I'm copying the list sans attachments in case someone else runs
into the same problem as I (for the archives) -- it turns out that the
"bug" was just my own stupidity.

-----Forwarded Message-----
From: Christopher Gleba <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: [Dri-devel] mach64-0-0-6-branch dri bug report
Date: Thu, 04 Dec 2003 17:02:17 -0500

Hello Jose,

> It's very strange that this doesn't work. If you compile the driver 
> and the Xserver into /usr/X11R6-DRI/ and use that XFree86 server there
> shouln't be any binary incompatabilities problems (which I suspect are
> the cause of all this).

When you mentioned this and the fact that you as well as I had no idea
what was going on, I decided to re-compile everything (kernel, XFree86)
cleanly without any vendor or personal patches.  It turns out that I
made a grave mistake in the information I provided and I sincerely
apologize.

It turns out that I mis-configured lilo and when I rebooted a kernel
with the software suspend patch was being booted rather then a clean one
as I had thought (and I *knew* that swsusp causes problems with video
cards).  When I booted with a clean kernel, mach64 drm worked fine (and
I got 270fps with glxgears rather then the ususal 110fps :)).

Again, please accept my apology for my mistake and I thank you for your
patience.  I learned while working in telecommunications that one must
make sure that all their stuff is good before contacting the other end
-- I failed in that regard this time.  I am at your disposal if you ever
need any experimental mach64 testing or help in general.

Nonetheless, I've included the debug output, the agpgart source with the
software suspend patch added as well as without it and the software
suspend patch itself for both the list archives in case anyone else runs
into this problem.  Also, I know that 2.6.0+ uses software suspend, so
the debugging information below may help when it comes time for a 2.6
port.

> I'm not sure what's the casual relationship between these.
> If the mach64_dma_init() ioctl wasn't sucessful at least once, the
> "[drm] Initialized mach64 1.0.0 20020904 on minor 0" line would never
> appear in the log...
> By which order they appear on the kernel log? Please post the complete
> extract of the log which concerns the XFree initialization.

As shown below it seems that the drm module is being initialized and
then the errors come afterward -- that is, with the software suspend
patch.

> Also, before loading XFree86, manually load the agpgart module and the
> mach64 with the debug option:

>  insmod agpgart
>  insmod mach64 drm_opts=debug

Output is below:

Kernel messages:

kernel: Linux agpgart interface v0.99 (c) Jeff Hartmann
kernel: agpgart: Maximum main memory to use for agp memory: 203M
kernel: agpgart: Detected Intel 440BX chipset
kernel: agpgart: AGP aperture is 64M @ 0xf8000000
kernel: [drm] Debug messages ON
kernel: [drm:drm_count_cards] 
kernel: [drm:drm_count_cards] numdevs = 1
kernel: [drm:mach64_stub_register] 
kernel: [drm:mach64_stub_register] calling inter_module_register
kernel: [drm:mach64_ctxbitmap_next] drm_ctxbitmap_next bit : 0
kernel: [drm:mach64_ctxbitmap_init] drm_ctxbitmap_init : 0
kernel: [drm] Initialized mach64 1.0.0 20020904 on minor 0
kernel: [drm:mach64_open_helper] pid = 15561, minor = 0
kernel: [drm:mach64_setup] 
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_flush] pid = 15561, device = 0xe200, open_count = 1
kernel: [drm:mach64_release] open_count = 1
kernel: [drm:mach64_release] pid = 15561, device = 0xe200, open_count =
1
kernel: [drm:mach64_fasync] fd = -1, device = 0xe200
kernel: [drm:mach64_takedown] 
kernel: [drm:mach64_do_cleanup_dma] mach64_do_cleanup_dma
kernel: [drm:mach64_open_helper] pid = 15561, minor = 0
kernel: [drm:mach64_setup] 
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=
0x00, dev 0xe200, auth=1
kernel: [drm:mach64_flush] pid = 15561, device = 0xe200, 
open_count = 1
kernel: [drm:mach64_release] open_count = 1
kernel: [drm:mach64_release] pid = 15561, device = 0xe200
, open_count = 1
kernel: [drm:mach64_fasync] fd = -1, device = 0xe200
kernel: [drm:mach64_takedown] 
kernel: [drm:mach64_do_cleanup_dma] mach64_do_cleanup_dma
kernel: [drm:mach64_open_helper] pid = 15561, minor = 0
kernel: [drm:mach64_setup] 
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0086401, nr=
0x01, dev 0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0086401, nr=
0x01, dev 0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0x40086410, nr=
0x10, dev 0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0186415, nr=
0x15, dev 0xe200, auth=1
kernel: [drm:mach64_addmap] offset = 0x00000000, size = 0
x00002000, type = 2
kernel: [drm:mach64_addmap] 8192 13 d0ba0000
kernel: [drm:mach64_mmap] start = 0x40a29000, end = 0x40a
2b000, offset = 0xd0ba0000
kernel: [drm:mach64_vm_open] 0x40a29000,0x00002000
kernel: [drm:mach64_vm_shm_nopage] shm_nopage 0x40a29000
kernel: [drm:mach64_vm_shm_nopage] shm_nopage 0x40a2a000
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0186415, nr=0x15, dev
0xe200, auth=1
kernel: [drm:mach64_addmap] offset = 0xf5000000, size = 0x00800000, type
= 0
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0086426, nr=0x26, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0086426, nr=0x26, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0246400, nr=0x00, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0x6430, nr=0x30, dev 0xe200,
auth=1
kernel: [drm:mach64_ioctl] no function
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0186415, nr=0x15, dev
0xe200, auth=1
kernel: [drm:mach64_addmap] offset = 0xf4100000, size = 0x00001000, type
= 1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0x40446440, nr=0x40, dev
0xe200, auth=1
kernel: [drm:mach64_dma_init] mach64_dma_init
kernel: [drm:mach64_dma_init] *ERROR* mach64_dma_init called without
lock held
kernel: [drm:mach64_unlock] *ERROR* Process 15561 using kernel context 0
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0086426, nr=0x26, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0xc0086426, nr=0x26, dev
0xe200, auth=1
kernel: [drm:mach64_ioctl] pid=15561, cmd=0x4008642b, nr=0x2b, dev
0xe200, auth=1
kernel: [drm:mach64_vm_shm_close] 0x40a29000,0x00002000
kernel: [drm:mach64_flush] pid = 15561, device = 0xe200, open_count = 1
kernel: [drm:mach64_release] open_count = 1
kernel: [drm:mach64_release] pid = 15561, device = 0xe200, open_count =
1
kernel: [drm:mach64_fasync] fd = -1, device = 0xe200
kernel: [drm:mach64_takedown] 
kernel: [drm:mach64_do_cleanup_dma] mach64_do_cleanup_dma
kernel: [drm:mach64_takedown] mtrr_del=1

DRM messages:

(==) ATI(0): Write-combining range (0xf5000000,0x800000)
(II) ATI(0): [drm] SAREA 2200+1208: 3408
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmGetBusid returned ''
(II) ATI(0): [drm] created "mach64" driver at busid "PCI:1:0:0"
(II) ATI(0): [drm] added 8192 byte SAREA at 0xd0ba0000
(II) ATI(0): [drm] mapped SAREA 0xd0ba0000 to 0x40a29000
(II) ATI(0): [drm] framebuffer handle = 0xf5000000
(II) ATI(0): [drm] added 1 reserved context for kernel
(II) ATI(0): [drm] Will request asynchronous DMA mode
(WW) ATI(0): [agp] AGP not available
(WW) ATI(0): [agp] AGP failed to initialize -- falling back to PCI mode.
(WW) ATI(0): [agp] Make sure you have the agpgart kernel module loaded.
(II) ATI(0): [drm] register handle = 0xf4100000
(II) ATI(0): [dri] Visual configs initialized
(II) ATI(0): [dri] Block 0 base at 0xf4100400
(WW) ATI(0): Not enough memory for local textures, disabling DRI
(II) ATI(0): [drm] removed 1 reserved context for kernel
(II) ATI(0): [drm] unmapping 8192 bytes of SAREA 0xd0ba0000 at
0x40a29000
(II) ATI(0): Largest offscreen areas (with overlaps):
(II) ATI(0):    1280 x 2252 rectangle at 0,1024
(II) ATI(0):    512 x 2253 rectangle at 0,1024
(II) ATI(0): Using XFree86 Acceleration Architecture (XAA)
        Screen to screen bit blits
        Solid filled rectangles
        8x8 mono pattern filled rectangles
        Indirect CPU to Screen color expansion
        Solid Lines
        Offscreen Pixmaps
        Setting up tile and stipple cache:
                32 128x128 slots
                14 256x256 slots
                5 512x512 slots
(==) ATI(0): Backing store disabled
(==) ATI(0): Silken mouse enabled
(**) Option "dpms"
(**) ATI(0): DPMS enabled
(II) ATI(0): Direct rendering disabled
-- 
-- Chris
 _________________________________
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       _/ _/         _/
    _/   _/                  ||||
   _/   _/_/_/ _/_/ _/ _/_/  c ..
  _/   _/  _/ _/   _/  _/    @  >
   _/ _/  _/ _/   _/ _/_/     @,-

  ==>chris<at>soma.978.org<==
 _________________________________ 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to