[roll] Roll fuchsia [fuchsia.io] Add PENDING_ACCESS_TIME_UPDATE to NodeAttributesQuery

Add a new field to fuchsia.io NodeAttributesQuery, called
`pending_access_time_update`, to indicate that this node is pending an
access time update before returning the queried node attributes.

The motivation behind this change is to support persisting access time.
Ideally, the filesystem would determine when to update access time when
there is a file access. However, some filesystems like Fxfs are unable
to differentiate a ZX_PAGER_VMO_READ packet from a file read vs a file
write operation. Determining when to persist access time due to file
access can, instead, be delegated to the client (e.g. Starnix).

POSIX says that files marked for updates shall be updated when the file
is no longer opened by any processes or when a stat/fstat/lstat is
performed on the file. stat/fstat/lstat should eventually call
fuchsia.io/GetAttributes method in Fuchsia. To reduce performance impact
of supporting persisting atime, modify GetAttributes to be able to
accept `PENDING_ACCESS_TIME_UPDATE` to inform the underlying filesystem
that access time is pending an update and update it before returning the
node attributes.

Original-Bug: 401073280
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1235944
Original-Revision: 56c9bc2b715f8aacaa23b4e210414a2cf4655620
GitOrigin-RevId: 8da3c9e5ee94fea8c414d37106b42b2a0fa44dd6
Change-Id: Id3aff22089ab92781e2d09bc39ca7576fd786f7d
1 file changed
tree: 056600b6e71bc859cc9fd40b20bf3006684dbff3
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cts
  6. firmware
  7. flower
  8. jiri.lock
  9. MILESTONE
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. test_durations
  15. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.