1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
samba-mirror/lib
Michael Adam 55ff3a3b91 tdb: defragment the freelist in tdb_allocate_from_freelist()
While we are traversing the freelist anyways, merge a record
with the left if it is also a free list record.

That partially makes up for the fragmentation introduced by
the lack of merging with right records in tdb_free().

Note there is a potential slight downside:
If the left record we merge the current record into was earlier
in the chain and has hence already been met in traverse,
then we can not use the enlarged record even if it might be
a new best fit.

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>

Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Thu Jun 26 12:16:03 CEST 2014 on sn-devel-104
2014-06-26 12:16:03 +02:00
..
addns libs: s3 and s4: make our dns lookup code signal-safe. 2014-04-10 22:06:08 +02:00
afs waf: add --with-fake-kaserver option 2014-06-04 20:09:38 +02:00
async_req CVE-2013-4408:async_sock: add some overflow detection to read_packet_handler() 2013-12-09 07:05:45 +01:00
ccan build: unify and fix endian tests 2014-05-06 18:14:13 +02:00
compression lib/compression/tests: add missing #include "torture/local/proto.h" 2014-04-02 09:03:44 +02:00
crypto lib: Fix strict-aliasing warning in md5 code. 2014-01-09 20:42:54 +01:00
dbwrap tdb_wrap: Remove tdb_wrap_open_ again 2014-03-31 22:52:14 +02:00
dnspython dnspython: Update to latest upstream snapshot. 2011-08-27 17:40:39 +02:00
iniparser iniparser: Fix CID 241908 Copy into fixed size buffer 2013-11-11 21:04:08 +01:00
iniparser_build build: Remove autoconf build system 2013-05-28 12:17:10 +10:00
krb5_wrap krb5_wrap: Move function declaration outside the function. 2013-12-06 01:14:09 +01:00
ldb ldb:build: improve detection of srcdir 2014-06-20 23:38:10 +02:00
ldb-samba ldbsamba: Move pyldb-utils dependency to python_samba__ldb 2014-05-14 04:01:46 +02:00
nss_wrapper nss_wrapper: Fix some "discarding const" warnings 2014-06-21 12:42:10 +02:00
ntdb ntdb:build: improve detection of srcdir 2014-06-20 23:38:10 +02:00
param winbind: Fix template homedir to match source3 2014-06-04 03:22:26 +02:00
pep8 Add pep8. 2011-12-08 22:12:00 +01:00
popt lib/popt: explicitly use allow_warnings=True 2014-04-02 09:03:46 +02:00
replace replace:build: improve detection of srcdir 2014-06-20 23:38:10 +02:00
smbconf libsmbconf: add smbconf_create_set_share 2013-05-28 18:12:26 +02:00
socket Fix bug # 9666 - Broken filtering of link-local addresses. 2013-02-28 20:56:57 +01:00
socket_wrapper lib: Bump socket_wrapper version to 1.1.1. 2014-06-05 23:57:10 +02:00
subunit lib/subunit/README: Fix typo. 2013-05-15 21:04:41 -07:00
talloc talloc:build: improve detection of srcdir 2014-06-20 23:38:10 +02:00
tdb tdb: defragment the freelist in tdb_allocate_from_freelist() 2014-06-26 12:16:03 +02:00
tdb_compat ccan: we're subsystems, not a library. 2012-06-29 06:22:44 +02:00
tdb_wrap tdb_wrap: Remove tdb_wrap_open_ again 2014-03-31 22:52:14 +02:00
tdr lib/tdr/tests: add missing #include "torture/local/proto.h" 2014-04-02 09:03:44 +02:00
testtools lib/testtools/testtools/tests/test_testresult.py: Fix typos. 2013-05-15 21:04:41 -07:00
tevent tevent:build: improve detection of srcdir 2014-06-20 23:38:10 +02:00
torture pkgconfig: Do not hardcode library version numbers in pc files. 2013-08-22 20:48:44 +02:00
tsocket tsocket: Pass the full port number to getaddrinfo(). 2013-07-01 21:10:53 +02:00
uid_wrapper lib: Change uid_wrapper to preloadable version. 2014-04-17 14:56:05 +02:00
util lib: Apply const to nt_time_to_unix_timespec 2014-06-18 16:35:26 +02:00
zlib lib/zlib: explicitly use allow_warnings=True 2014-04-02 09:03:46 +02:00
README
update-external.sh Add pep8. 2011-12-08 22:12:00 +01:00
wscript_build build: provide tevent-util as a public library 2011-08-08 13:34:06 +02:00

compression - Various compression algorithms (MSZIP, lzxpress)
dnspython - Python module for working with DNS.
nss_wrapper - Wrapper for the user and group NSS API allowing the use 
              of other data sources.
popt - Command-line option parsing library
replace - Provides replacements for standard (POSIX, C99) functions 
          not provided by the host platform.
socket_wrapper - Wrapper library allowing TCP/IP traffic to be redirected 
                 over Unix domain sockets.
subunit - Utilities and bindings for working with the Subunit test result 
          reporting protocol.
talloc - Hierarchical pool based memory allocator 
tdb - Simple but fast key/value database library, supporting multiple writers
torture - Simple unit testing helper library