]> git.openfabrics.org - ~shefty/libibverbs.git/commit
Fix incorrect splits/merges in the memory tree when madvise() fails.
authorAlex Vainman <alexonlists@gmail.com>
Mon, 1 Feb 2010 05:57:45 +0000 (07:57 +0200)
committerRoland Dreier <rolandd@cisco.com>
Fri, 19 Mar 2010 18:04:43 +0000 (11:04 -0700)
commit52a27b09fc6b7384c7dd0d7697ce5fe100d9652c
tree543d662f0be0a3528448f8518672e8daff6d7689
parent44628a06209a0f1cfc80bca67111648399954806
Fix incorrect splits/merges in the memory tree when madvise() fails.

ibv_madvise_range() first manages (splits or merges) memory ranges in
the tree and only then calls madvise().  If madvise() fails, the
tree's memory range may contain incorrectly split or merged ranges.
The patch undoes the split and merge operations performed on the node
which caused the madvise() failure as well as on that node's
neighbors.

Signed-off-by: Alex Vainman <alexv@voltaire.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
src/memory.c