[haiku-bugs] Re: [Haiku] #14755: Haiku Grinds to a Halt when Dribbling

  • From: "Haiku" <trac@xxxxxxxxxxxx>
  • To: undisclosed-recipients: ;
  • Date: Wed, 12 Dec 2018 16:03:05 -0000

#14755: Haiku Grinds to a Halt when Dribbling
--------------------------+------------------------------------------------
   Reporter:  AGMS        |      Owner:  nobody
       Type:  bug         |     Status:  new
   Priority:  normal      |  Milestone:  Unscheduled
  Component:              |    Version:  R1/Development
  System/Kernel           |
 Resolution:              |   Keywords:  memory fragmentation long duration
 Blocked By:              |   Blocking:
Has a Patch:  0           |   Platform:  All
--------------------------+------------------------------------------------

Comment (by waddlesplash):

Ideally, the cache would be using memory areas in an address independent
 way and you could unmap areas and then remap them in a contiguous address
 range.

 This is only a problem on 32-bit systems where the address space is easily
 exhausted. On 64-bit systems there is so much spare address space that
 this is never an issue. So, spending however much time to implement an
 "address space defragmenter" is probably not very high on any priority
 list; just use a 64-bit build if you need to.

If that's too difficult, the cache low memory detection could also look
 for fragmentation.

 Failure to insert things into the kernel address space should issue a low-
 resource notification; but it didn't because the code was if 0'd out.
 hrev52637 (& hrev52639 which amends it) should improve things here
 significantly.

Or the media system could stop leaking areas.

 Obviously this is a problem. If killing the media_server fixes it, then
 that narrows down the possibilities. Though I'm a bit confused here: is it
 the kernel address space or the userland address space that gets
 fragmented? No matter how fragmented physical memory gets, it should be
 possible to allocate (non-contiguous) virtual memory as long as there is
 some still free.

 The kernel has its own 2GB address space, and each application has its own
 2GB; and so even if the user application's address space gets especially
 fragmented, the kernel should be fine. (Or am I missing something here?)

 Or, are you just plain out of memory altogether?

-- 
Ticket URL: <https://dev.haiku-os.org/ticket/14755#comment:1>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.

Other related posts: