commit | cb6d88f291e51116e5acafa6620be1425db15330 | [log] [tgz] |
---|---|---|
author | Chris Suter <csuter@google.com> | Tue Apr 13 01:22:07 2021 +0000 |
committer | CQ Bot <commit-bot@chromium.org> | Tue Apr 13 01:22:07 2021 +0000 |
tree | c3a18bb7ac3845f2ebeb43f442f17a1faf19dc32 | |
parent | 568e8347f3981007b6e17aa8810d3ca18b2d1ecd [diff] |
[fxfs] Add transaction locks + Add support for transaction locks to guard against things such as trying to write to the same object at the same time. + Add support for associated objects which allow in-memory changes to cached values to be made when the mutation is applied. This is currently used to update the cached size for an object. + Also adds support for handling dropped transactions which need to roll back changes, e.g. reserved allocations need to be unreserved if a transaction fails. + This changes creation of new transactions so that an error can be returned which will mean that we can stop accepting new transactions if the journaling system fails somehow. Some additional work will need to follow to address locks required for reads. Change-Id: Iee70938a6b0b39615661693ae4ab1cbb936e845a Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/509939 Commit-Queue: Chris Suter <csuter@google.com> Reviewed-by: James Sullivan <jfsulliv@google.com>
Pink + Purple == Fuchsia (a new operating system)
Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.
Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.
Read more about Fuchsia's principles.
See Getting Started.
See fuchsia.dev.