commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] Hurd branch, master, updated. v0.5-240-g97737d1


From: Justus Winter
Subject: [SCM] Hurd branch, master, updated. v0.5-240-g97737d1
Date: Tue, 29 Apr 2014 15:39:50 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Hurd".

The branch, master has been updated
       via  97737d1ee3ce95e45a1a4aa636cc2e11a106a9f5 (commit)
      from  453e7fc9f7116b4251d6cc5dde5110bdd183797c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 97737d1ee3ce95e45a1a4aa636cc2e11a106a9f5
Author: Justus Winter <address@hidden>
Date:   Sat Apr 26 12:20:20 2014 +0200

    libports: reduce malloc overhead in _ports_bucket_class_iterate
    
    _ports_bucket_class_iterate creates a snapshot of the buckets hash
    table.  This is done so that the lock protecting the hash table can be
    released while we iterate over the snapshot.
    
    Formerly, a linked list was used to store the snapshot.  As the
    maximal number of items is known, using an array is much simpler.
    
    _ports_bucket_class_iterate implements both ports_bucket_iterate and
    ports_class_iterate.  For this change might make ports_class_iterate
    less efficient memory-wise if the number of ports belonging to the
    class is low with respect to the number of ports in the bucket.  If
    this happens, we allocate too much.  Alleviate this by releasing
    unused memory.
    
    On the other hand, the array representation is more compact.
    Furthermore a survey of the Hurd code revealed that
    ports_class_iterate is rarely used, while ports_bucket_iterate is used
    more often, most prominently in paging code.
    
    * libports/bucket-iterate.c (_ports_bucket_class_iterate): Use an
    array instead of a linked list.

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

Summary of changes:
 libports/bucket-iterate.c |   46 +++++++++++++++++++++++++++++---------------
 1 files changed, 30 insertions(+), 16 deletions(-)


hooks/post-receive
-- 
Hurd



reply via email to

[Prev in Thread] Current Thread [Next in Thread]