Skip to content

DAOS-19449 dfuse: fix EOF logic to avoid corruption (#18824) - #18859

Open
mjmac wants to merge 1 commit into
release/2.8from
mjmac/DAOS-19449-2.8
Open

DAOS-19449 dfuse: fix EOF logic to avoid corruption (#18824)#18859
mjmac wants to merge 1 commit into
release/2.8from
mjmac/DAOS-19449-2.8

Conversation

@mjmac

@mjmac mjmac commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

The drain path for reads that raced the pre-read set the EOF flag
without updating the read position, so a later read there got an
empty reply: zero-filled files, or SIGBUS from mmap. Writes also
left the flag armed, returning stale EOF over appended data. The
flag is now set only next to the position update, and the early-EOF
reply checks doh_linear_read first.

Adds two new ftests that trigger the problems when run without
the fixes.

Signed-off-by: Michael MacDonald github@macdonald.cx

The drain path for reads that raced the pre-read set the EOF flag
without updating the read position, so a later read there got an
empty reply: zero-filled files, or SIGBUS from mmap. Writes also
left the flag armed, returning stale EOF over appended data. The
flag is now set only next to the position update, and the early-EOF
reply checks doh_linear_read first.

Adds two new ftests that trigger the problems when run without
the fixes.

Signed-off-by: Michael MacDonald <github@macdonald.cx>
@mjmac
mjmac requested review from a team as code owners August 13, 2026 15:19
@github-actions

Copy link
Copy Markdown

Ticket title is ' dfuse pre-read returns stale EOF'
Status is 'In Review'
Labels: 'request_for_2.8.1'
https://daosio.atlassian.net/browse/DAOS-19449

@mjmac mjmac added waiting-for-merge-approval Waiting for merge approval clean-cherry-pick Cherry-pick from another branch that did not require additional edits labels Aug 14, 2026
@mjmac
mjmac requested a review from a team August 14, 2026 22:32
@daltonbohning daltonbohning added the release-2.8.1 Targeted for release 2.8.1 label Aug 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clean-cherry-pick Cherry-pick from another branch that did not require additional edits release-2.8.1 Targeted for release 2.8.1 waiting-for-merge-approval Waiting for merge approval

Development

Successfully merging this pull request may close these issues.

2 participants