Re: repeated X restarts with i810 not freeing sys resources?

2003-02-15 Thread Patrick Charles
 I am still seeing the same behavior.

 I presume you rebooted after installing the new module, or explicitly
 unloaded the old one?

 I guess I'll need to try this same kernel.

 David

yes. i rebooted.

btw. had to make a very small mod to your agpgart_be.c source with this kernel.
PCI_DEVICE_ID_INTEL_865_GM_0 isn't defined agp.h and isn't provided by 
/lib/modules/2.4.20-2.21/build/include/linux/pci_ids.h (or wherever it would show up 
in the kernel headers?).

thanks,
-pat

___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel



Re: repeated X restarts with i810 not freeing sys resources?

2003-02-14 Thread patrick charles
On Thursday 13 February 2003 09:03 pm, David Dawes wrote:
 On Thu, Feb 13, 2003 at 02:11:40PM -0700, patrick charles wrote:
 On Wednesday 12 February 2003 10:20 pm, David Dawes wrote:
  On Tue, Feb 11, 2003 at 02:51:04PM -0700, patrick charles wrote:
   On Saturday 08 February 2003 05:41 pm, David Dawes wrote:
On Sat, Feb 08, 2003 at 01:07:25PM -0700, patrick charles wrote:
How would I communicate this? Somebody on XFree86 working with or
 have contact with the appropriate people in kernel/agpgart
 development?
   
First of all, how are you killing the X server?  I haven't seen
this behaviour when the X server exits normally, and I've done a
lot of testing where 32MB is allocated per run on machines with
only 128MB of physical memory.
   
There are people here familiar with the kernel agpgart driver.
   
Note that just because top shows that there's little memory free
doesn't mean that the agpgart driver isn't freeing it.  Also the
agpgart driver allocates physical pages, never swap.  I'm not sure
what the symptoms are when it can't get any free physical pages. 
On my test system the free memory indicated by top does go up when
the X server exits, and this is on an otherwise idle system.
   
So, I'd suggest starting a bare X server (run just 'X') on an
otherwise idle system, see what top reports, then exit it cleanly
(CtrlAltBackspace), and see if the free memory amount
changes. Check the X server log to confirm how much memory was
allocated via the agpgart mechanism (look for the lines containing
Allocated).
   
If that looks OK, then try the same thing you tried before but with
a bare X server and an idle system.
   
David
  
  David,
  
  I ran some tests as you suggested. I started up a bare X server using
   the command 'X' on an idle system. I then exited cleanly using
   ctrl-alt-bak.
  
  I recorded the amount of physical RAM free before and after the X
   start. I repeated this process.
  
  After 13 iterations, the machine became very sluggish.
  
  After 16 iterations, the machine hung.
  
  Still looks like X (or, the agpgart driver?) is not freeing resources.
  The machine gradually ran out of physical RAM.
 
  I just tried repeating this with what I think should be an even more
  demanding configuration: 845G system with 128MB physical memory, 1MB
  stolen memory (preallocated video memory), X configured to use 32MB
  video memory, so just over 31MB of physical memory needs to be allocated
  at each server start.
 
  After several iterations, I got to a pattern where the free memory
  after the server starts is 2MB, and the free memory when it exits is
  41MB.  I went as far as 25 iterations without any change in this pattern
  and without any slowdown.
 
  This is with RH 7.3, using the default kernel plus an agpgart driver
  patched for correct 845G support.  The 2.4.20 kernel should already have
  the correct 845G agpgart support.
 
  The source for the agpgart driver I'm using can be found at
  http://www.xfree86.org/~dawes/intel-85x/agpgart-85x.tar.gz, in case
  that makes a difference.
 
  David
 
 Ok.
 
 To simplify my environment, I did a fresh install of Red Hat 8.0.
 
 I then installed kernel 2.4.20-2.21 and XFree86-4.2.99.3-20030115,
 taken as RPM's from the RH81 'phoebe' beta, required for the i845 support.
 
 So, I now have a 'clean' setup which doesn't contain any of the pieces
  which I previously downloaded/built from various cvs repositories.
 
 On this machine (which has quite a few services running since it is a
  default 8.0 workstation-type install), it only takes 6 restart iterations
  of X before the system hangs.
 
 I (unfortunately) have 4 of these brand new GX60 machines. I see the exact
  same behavior on all of them.
 
 Therefore, I don't think the problem is specific to a particular system.
  By using the RH RPM's, also doesn't appear that the problem stems from
  something peculiar in my build environment.
 
 You tried on an i845G and can't reproduce, but you are using RH7.3?

 Yep, RH7.3 with its default kernel plus the agpgart driver referenced
 above.  Could you try your setup using that agpgart driver?  That
 might help narrow down if the problem lies there or elsewhere.  I
 don't see how the problem could be anywhere other than the kernel
 or agpgart driver.

 David

i replaced agpgart.o with one recompiled from agpgart-85x.tar.gz

% uname -a
Linux localhost.localdomain 2.4.20-2.21 #1 Wed Jan 15 20:31:35 EST 2003 i686 i686 i386 
GNU/Linux

% ls -l /lib/modules/2.4.20-2.21/kernel/drivers/char/agp
-rw-r--r--1 root root64920 Feb 14 12:21 agpgart.o
-rw-r--r--1 root root23738 Jan 15 18:38 agpgart.o.gz.bak


I am still seeing the same behavior.

thanks,
-pat


___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel



Re: repeated X restarts with i810 not freeing sys resources?

2003-02-11 Thread patrick charles
 On Saturday 08 February 2003 05:41 pm, David Dawes wrote:
  On Sat, Feb 08, 2003 at 01:07:25PM -0700, patrick charles wrote:
  How would I communicate this? Somebody on XFree86 working with or have
   contact with the appropriate people in kernel/agpgart development?
 
  First of all, how are you killing the X server?  I haven't seen this
  behaviour when the X server exits normally, and I've done a lot of
  testing where 32MB is allocated per run on machines with only 128MB of
  physical memory.
 
  There are people here familiar with the kernel agpgart driver.
 
  Note that just because top shows that there's little memory free doesn't
  mean that the agpgart driver isn't freeing it.  Also the agpgart driver
  allocates physical pages, never swap.  I'm not sure what the symptoms
  are when it can't get any free physical pages.  On my test system the
  free memory indicated by top does go up when the X server exits, and
  this is on an otherwise idle system.
 
  So, I'd suggest starting a bare X server (run just 'X') on an otherwise
  idle system, see what top reports, then exit it cleanly
  (CtrlAltBackspace), and see if the free memory amount changes.
  Check the X server log to confirm how much memory was allocated via the
  agpgart mechanism (look for the lines containing Allocated).
 
  If that looks OK, then try the same thing you tried before but with a
  bare X server and an idle system.
 
  David


David,

I ran some tests as you suggested. I started up a bare X server using the command 'X' 
on an idle system. I then exited cleanly using ctrl-alt-bak.

I recorded the amount of physical RAM free before and after the X start. I repeated 
this process.

After 13 iterations, the machine became very sluggish.

After 16 iterations, the machine hung.

Still looks like X (or, the agpgart driver?) is not freeing resources.
The machine gradually ran out of physical RAM.

Let me know if I can provide any more information, XFree86 logs, or?

Details attached.

thanks,
-pat


[ 0] after fresh boot
w/ no X running: 84,516K free

[ 1] after running 'X':  56,472K free
[ 1] after ctrl-alt-bak: 68,796K free

[ 2] after running 'X':  48,104K free
[ 2] after ctrl-alt-bak: 60,656K free

[ 3] after running 'X':  40,716K free
[ 3] after ctrl-alt-bak: 53,272K free

[ 4] after running 'X':  33,228K free
[ 4] after ctrl-alt-bak: 45,784K free

[ 5] after running 'X':  25,888K free
[ 5] after ctrl-alt-bak: 38,472K free

[ 6] after running 'X':  18,572K free
[ 6] after ctrl-alt-bak: 31,116K free

[ 7] after running 'X':  11,372K free
[ 7] after ctrl-alt-bak: 23,672K free

[ 8] after running 'X':   4,096K free
[ 8] after ctrl-alt-bak: 16,344K free

[ 9] after running 'X':   1,060K free
[ 9] after ctrl-alt-bak: 13,856K free

[10] after running 'X':   1,180K free
[10] after ctrl-alt-bak: 13,640K free

[11] after running 'X': 952K free
[11] after ctrl-alt-bak: 13,400K free


[12] after running 'X': 984K free
[12] after ctrl-alt-bak: 13,400K free

[13] after running 'X': 948K free
[13] after ctrl-alt-bak: 13,400K free

[14] after running 'X': 948K free
[14] after ctrl-alt-bak: 10,000K free

[15] after running 'X': 944K free
[15] after ctrl-alt-bak:  5,704K free

[16] after running 'X':   [machine hung]
[16] 


After iteration #9, the machine started showing disk swap in use:
  [ 9]436K swap used
  [10]636K swap used
  [11]  1,088K swap used
  [12]  4,532K swap used
  [13]  8,444K swap used
  [14] 12,088K swap used
  [15] 12,492K swap used


After iteration #13, the machine starts to behave sluggishly, both at the command-line 
and when painting/moving the cross-hair cursor on the bare X desktop. Presumably 
because components of the core o/s are being swapped in and out of RAM?
After 16 iterations, X hung on startup, the cross-hair cursor didn't appear. All your 
base are belong to us. I couldn't stop X and got no response when trying to remotely 
ssh to the machine.

System is a Dell GX60 with integrated intel extreme graphics

XFree86 Version 4.2.99.901 (4.3.0 RC 1)
Driver is i810
Kernel is 2.4.20-2.36




___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel



repeated X restarts with i810 not freeing sys resources?

2003-02-07 Thread patrick charles
I'm running XFree86-4.2.99.901 on a 2.4.20-2.34 kernel on a Dell GX60 with intel 
extreme graphics (i810 driver).

If I repeatedly kill and restart X, the system eventually slows to a crawl before 
hanging.

Here's what seems to be going on...

If I run top on the machine and observe the amount of memory in use, it appears that 
each time I kill and restart X, an additional ~16MB of RAM is consumed.
This particular system has 128MB RAM, so the system lock up seems to correspond to the 
consumption of all physical RAM.
(kernel + base system + ~16MB fb x 15 restarts = ~128MB RAM).

Apparently, after many restarts, the X server eventually tries to grab a block of RAM 
to serve as the video buffer, and gets a chunk of swap.
When that happens, the system is hosed, presumably because disk swap is orders of 
magnitude too slow for video operations.

I'm guessing, but this seems to be what's going on. This is consistent with the fact 
that I don't see any daemons or system processes consuming any significant amounts of 
memory yet top eventually shows all physical RAM consumed.
Consistent with the approximate number of restarts, and consistent with the fact that 
the integrated i810 design uses system RAM for the framebuffer contents.

Is it possible that the kernel, drm or X isn't freeing the framebuffer RAM after each 
restart or kill of X?

Since my last email, I've tried a newer version of the kernel and X, and still see the 
same behavior with 
2.4.20-2.34 and XFree86-4.2.99.9. System is running RH8 with rawhide binaries.

Appreciate any suggestions or comments anyone has.

thanks,
-pat


___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel