[haiku-commits] haiku: hrev56187 - src/system/kernel/vm

  • From: waddlesplash <waddlesplash@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Tue, 14 Jun 2022 02:43:38 +0000 (UTC)

hrev56187 adds 1 changeset to branch 'master'
old head: 44fa45df3aedc49b6a80d03fb3ed6e5542d54d21
new head: 850fc02fa28a914f0b2fa25dbb83f9b8497904cc
overview: 
https://git.haiku-os.org/haiku/log/?qt=range&q=850fc02fa28a+%5E44fa45df3aed

----------------------------------------------------------------------------

850fc02fa28a: kernel/vm: Specifiy the page as the object being waited on in 
VMCache.
  
  I got a strange whole-system hang in file_cache_resize into this
  function. Possibly the page was spuriously busy, perhaps it wasn't,
  but not having function arguments on x86_64 in stack traces, I was
  unable to deduce what page was actually being waited on.
  
  In case it happens again, this should allow it to be debugged further
  by placing the address of the vm_page structure in the thread wait
  informations. (A string is not very useful here anyway.)

                              [ Augustin Cavalier <waddlesplash@xxxxxxxxx> ]

----------------------------------------------------------------------------

Revision:    hrev56187
Commit:      850fc02fa28a914f0b2fa25dbb83f9b8497904cc
URL:         https://git.haiku-os.org/haiku/commit/?id=850fc02fa28a
Author:      Augustin Cavalier <waddlesplash@xxxxxxxxx>
Date:        Tue Jun 14 02:43:15 2022 UTC

----------------------------------------------------------------------------

1 file changed, 1 insertion(+), 2 deletions(-)
src/system/kernel/vm/VMCache.cpp | 3 +--

----------------------------------------------------------------------------

diff --git a/src/system/kernel/vm/VMCache.cpp b/src/system/kernel/vm/VMCache.cpp
index 868d6f8f62..948c788ff8 100644
--- a/src/system/kernel/vm/VMCache.cpp
+++ b/src/system/kernel/vm/VMCache.cpp
@@ -952,8 +952,7 @@ VMCache::WaitForPageEvents(vm_page* page, uint32 events, 
bool relock)
 
        fPageEventWaiters = &waiter;
 
-       thread_prepare_to_block(waiter.thread, 0, THREAD_BLOCK_TYPE_OTHER,
-               "cache page events");
+       thread_prepare_to_block(waiter.thread, 0, THREAD_BLOCK_TYPE_OTHER, 
page);
 
        Unlock();
        thread_block();


Other related posts:

  • » [haiku-commits] haiku: hrev56187 - src/system/kernel/vm - waddlesplash