Am I going mad or does TDB allow multiple writers to update the freelist?

Richard Sharpe realrichardsharpe at
Tue Jan 20 23:23:59 GMT 2009

On 1/20/09, Richard Sharpe <realrichardsharpe at> wrote:
> On 1/20/09, Volker Lendecke <Volker.Lendecke at> wrote:
> > On Tue, Jan 20, 2009 at 02:29:25PM -0800, Richard Sharpe wrote:
>  >  > OK, now I understand, I think. I assumed that the tdb control
>  >  > structure was part of the mmaped memory and that they were both
>  >  > looking at the same memory.
>  >  >
>  >  > Hmmm, have to look harder for the tdb freelist corruption I have found, then.
>  >
>  >
>  > You're certain that none of the smbds on that box has ever
>  >  crashed? This might leave the tdb also in a corrupt state.
> winbindd_idmap.tdb ...
>  I dont think so, but will check, I need to check into that. There is
>  one report of a loop in the freelist, and I have an example of a
>  corruption in the freelist that looks really weird.
>  The next pointer for the penultimate entry on the free list points 536
>  bytes beyond the start of the unallocated area and what should be the
>  last entry on the free list.
>  It has the feel of multiple processes messing with the freelist at the
>  same time.

One of the hash chain hearders points into what is the unallocated
region and one of the hash chains has an entry with a .next that
points also to the unallocated region.

I guess that there could have been as system crash where some stuff
made it to the file and some stuff failed to make it to the file.

Richard Sharpe

More information about the samba-technical mailing list