Skip to content

reef: client: do not proceed with I/O if filehandle is invalid#58397

Merged
vshankar merged 4 commits intoceph:reeffrom
dparmar18:wip-64740-reef
Nov 11, 2024
Merged

reef: client: do not proceed with I/O if filehandle is invalid#58397
vshankar merged 4 commits intoceph:reeffrom
dparmar18:wip-64740-reef

Conversation

@dparmar18
Copy link
Contributor

@dparmar18 dparmar18 commented Jul 2, 2024

Backport of #57576 and some commits from #55457
Backport tracker: https://tracker.ceph.com/issues/64740
Parent tracker: https://tracker.ceph.com/issues/64313

Contribution Guidelines

  • To sign and title your commits, please refer to Submitting Patches to Ceph.

  • If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.

  • When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an x between the brackets: [x]. Spaces and capitalization matter when checking off items this way.

Checklist

  • Tracker (select at least one)
    • References tracker ticket
    • Very recent bug; references commit where it was introduced
    • New feature (ticket optional)
    • Doc update (no ticket needed)
    • Code cleanup (no ticket needed)
  • Component impact
    • Affects Dashboard, opened tracker ticket
    • Affects Orchestrator, opened tracker ticket
    • No impact that needs to be tracked
  • Documentation (select at least one)
    • Updates relevant documentation
    • No doc update is appropriate
  • Tests (select at least one)
Show available Jenkins commands
  • jenkins retest this please
  • jenkins test classic perf
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test dashboard cephadm
  • jenkins test api
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox
  • jenkins test windows
  • jenkins test rook e2e

@github-actions github-actions bot added build/ops cephfs Ceph File System tests labels Jul 2, 2024
@github-actions github-actions bot added this to the reef milestone Jul 2, 2024
@dparmar18 dparmar18 requested a review from a team July 2, 2024 11:48
@joscollin
Copy link
Member

jenkins test make check

Copy link
Member

@joscollin joscollin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dparmar18 The make check fails again.

@lxbsz
Copy link
Member

lxbsz commented Jul 23, 2024

jenkins test make check

@lxbsz
Copy link
Member

lxbsz commented Jul 24, 2024

@dparmar18 Could you rebase this PR to the latest ? The make check failure couldn't be fixed by retrying it. Thanks.

@dparmar18
Copy link
Contributor Author

dparmar18 commented Jul 24, 2024

The following tests FAILED:
	 31 - run-rbd-unit-tests-1.sh (Failed)

@dparmar18
Copy link
Contributor Author

@lxbsz rebased

@vshankar
Copy link
Contributor

@dparmar18 Please include fixes from #59300 in this backport.

dparmar18 and others added 4 commits September 10, 2024 13:59
and test that providing null or invalid file handle returns an error as expected

Fixes: https://tracker.ceph.com/issues/66156
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit bc4bb1e)
It is named _ll_fh_exists meaning it is a helper func
only to be used with low level APIs.

Fixes: https://tracker.ceph.com/issues/64313
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 5d1255c)
and guard the `if (!mref_reader.is_state_satisfied())` stmt with braces.

Fixes: https://tracker.ceph.com/issues/64313
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 6614933)
Credit to Brad Hubbard for grabbing the stack trace.

Fixes: https://tracker.ceph.com/issues/67565
Signed-off-by: Venky Shankar <vshankar@redhat.com>
(cherry picked from commit c37ad2b)
@dparmar18
Copy link
Contributor Author

@dparmar18 Please include fixes from #59300 in this backport.

Done. Just a note: since async i/o doesn't exist in reef, the snippet patching Client::ll_preadv_pwritev has not been included.

@rishabh-d-dave
Copy link
Contributor

This PR is under test in https://tracker.ceph.com/issues/67981.

Copy link
Contributor

@vshankar vshankar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vshankar
Copy link
Contributor

vshankar commented Nov 9, 2024

jenkins test make check

@vshankar vshankar merged commit 88c2257 into ceph:reef Nov 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants