Skip to content
Snippets Groups Projects
Commit 75c83c4a authored by Phil Schwan's avatar Phil Schwan
Browse files

b=2313

r=shaver
This bug happens when a file is opened twice for write, then both close it
at the same time.  If they both drop the writecount, then race to
compare it against 0, one will free the fsdata and the other will assert.

This looks like a big patch, but it's mostly plumbing.  I had to do some
different argument passing, in order to keep everything protected under the
same lock.

I removed the writecount spinlock, and use the epoch semaphore for all three
things: management of the epoch, protection of the writecount, and atomicity of
writecount modifications which result in allocation or freeing of the fsdata.
parent 55bc4d0b
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment