Project

General

Profile

Bug #56638

Restore the AT_NO_ATTR_SYNC define in libcephfs

Added by John Mulligan 5 months ago. Updated 3 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Tags:
backport_processed
Backport:
quincy,pacific
Regression:
Yes
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
libcephfs
Labels (FS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

While working on an unrelated topic but building against the current 'quincy' branch - but not a released quincy - we discovered our code failed to compile becuase AT_NO_ATTR_SYNC had disappeared. Looking into it we found:

https://github.com/ceph/ceph/pull/46679

While we have no issue with the new defines that were added, we think removing the existing define breaks backwards compatibility. Importantly, code that compiles just fine today against octopus or pacific versions of libcephfs may fail to compile once the backports become part of octopus and pacific.

My suggestion is to simply add back a define like:
#define AT_NO_ATTR_SYNC AT_STATX_DONT_SYNC

Ideally, this define would remain in octopus and pacific branches. In main branch you could document the define as deprecated (for reef) and then remove it later (ceph S or later).

I've marked this as a regression because code that previously compiled just fine on the current quincy release may break on the next quincy release.

If you'd like, I can contribute the necessary PRs to implement my suggestion(s).

See also: https://github.com/ceph/go-ceph/issues/741


Related issues

Copied to CephFS - Backport #57252: pacific: Restore the AT_NO_ATTR_SYNC define in libcephfs Resolved
Copied to CephFS - Backport #57253: quincy: Restore the AT_NO_ATTR_SYNC define in libcephfs Resolved

History

#1 Updated by Xiubo Li 5 months ago

  • Status changed from New to In Progress
  • Assignee set to Xiubo Li

#2 Updated by Xiubo Li 5 months ago

  • Status changed from In Progress to Fix Under Review
  • Pull request ID set to 47182

#3 Updated by John Mulligan 5 months ago

  • Backport set to quincy,pacific

I'm setting the backport field now for pacific & quincy. I hope I am setting it properly. Please correct it if I've fouled it up.

#4 Updated by Xiubo Li 4 months ago

John Mulligan wrote:

I'm setting the backport field now for pacific & quincy. I hope I am setting it properly. Please correct it if I've fouled it up.

That's correct, thanks!

#5 Updated by Venky Shankar 3 months ago

  • Status changed from Fix Under Review to Pending Backport

#6 Updated by Backport Bot 3 months ago

  • Copied to Backport #57252: pacific: Restore the AT_NO_ATTR_SYNC define in libcephfs added

#7 Updated by Backport Bot 3 months ago

  • Copied to Backport #57253: quincy: Restore the AT_NO_ATTR_SYNC define in libcephfs added

#8 Updated by Backport Bot 3 months ago

  • Tags set to backport_processed

#9 Updated by Xiubo Li 3 months ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF