Announce Push of V7.2
by Frank Filz
Branch next
Tag:V7.2
NOTE: This merge includes an ntirpc pullup. Please update your submodule.
Merge Highlights
* FSAL_CEPH: Disable zerocopy in cmake
* Fix unitialized errors
* Ignore .egg-info directories from python scripts
* Fix conditional builds for several things
- Make MONITORING conditional, and integrate with ntirpc
- Pull up ntirpc to correct version (V7.2)
- Fix RPM build for conditional monitoring, and rename it's package to
match the naming convention for Ganesha
- Fix a few CMake errors from deprecation (only showed up in RPM build)
- Fix RPM conditional build for QOS and NFSIDMAP and ADMIN_TOOLS
Signed-off-by: Frank S. Filz <ffilzlnx(a)mindspring.com>
Contents:
9b3b3e19c Frank S. Filz V7.2
183cd8ea6 Frank S. Filz FSAL_CEPH: Disable zerocopy in cmake
f66e136c2 Daniel Gryniewicz Fix conditional builds for several things
3adec620c Daniel Gryniewicz Ignore .egg-info directories from python scripts
8c570f669 Daniel Gryniewicz Fix unitialized errors
2 weeks, 3 days
Ganesha release management process discussion
by Frank Filz
Hello all,
There have been a variety of discussions regarding maintenance of stable
branches, what is merged, and when qualifies a patch as suitable for a
stable merge.
Out releases have been taking far too long and maintenance and support of
stable branches has been troublesome. Meanwhile, the various vendors
supporting enterprise products are maintaining separate repos with
backported features, features that have not merged upstream, and sometimes
not even submitted upstream.
With all of this in mind, I have had various discussions about the
possibility of doing "rolling releases" where basically each merge is a
release. Combined with this, we would change how we support stable branches.
Rather than a limited upstream resource trying to maintain stable branches,
we would highlight stable tags on the wiki, and welcome vendors who maintain
a stable branch for their product to host that branch on the nfs-ganesha
github.
Some thoughts about this:
Rather than holding features while we try and stabilize a branch, features
that are ready for merging could be merged immediately.
Anyone can make a call for more extensive testing on a proposed patch that
is intrusive.
Any intrusive feature should have a conditional compile option as well as a
run time configuration that can disable it.
It is expected that a FSAL will be compiled against the version of Ganesha
it will load into. We can explore enforcing this with something better than
the "FSAL API Version".
Any FSAL API change that requires code changes in all FSALs must be
submitted with changes for all in tree FSALs such that they will compile.
Such changes should be tested on all FSALs (with cooperation of stakeholders
for each FSAL). Since this may not be possible for FSALs that don't have
active community members who support the FSAL, exceptions will be granted if
no response is forthcoming for a given FSAL.
Such API changes will be highlighted in the wiki so those who have external
FSALs can be aware that their FSAL will need changes to work post merge.
Such API changes hopefully will be rare. Any new FSAL API methods added
should be added in a way that a FSAL that doesn't supply the method but is
compiled against the current Ganesha code will work without interruption. If
new fields must be added to a FSAL API structure, the addition should be
done in a way that a FSAL that does not reference the new field, but is
compiled against the latest Ganesha will still work. These ideals will
minimize the situations where all FSALs MUST be modified.
Note that functions and structures that are not declared in a header file
with "fsal" in the name are nevertheless part of the FSAL API. For example,
FSALs access struct gsh_export and quite a few functions.
Release numbering: One option is we simplify our release number to a single
number, for example instead of the next release being V8.0, it would simply
be V8. Another option is to keep the point releases, bumping the major
number each time a new feature of significance is added. This would simplify
documentation on the wiki as only the bug highlights since the last major
release would need to be documented. On the other hand, we might see release
numbers like V7.23 because there have been so many merges before a major
feature was added.
In any case on release numbering, I plan to continue the V7.x numbering
until we have verified that V7.x properly compiles with all desired
conditional compile flag settings (i.e. with and without monitoring and QoS
to name a couple troublesome ones).
The counter proposal is we follow a strict major release cadence, and then
immediately open the next branch for feature submissions, but that might put
the community on the hook for supporting multiple stable branches with
numerous back ports and continues the problem of when something is a feature
that demands being put in the next major release and when something is a bug
fix needed in one or more stable branches.
The rolling release proposal may put more burden on vendors to support their
own stable branches, but experience shows they need to anyway and those
willing to manage upstream stable branches have been limited. There is also
precedence for vendors hosting their product branch in the nfs-ganesha
github with IBM having hosted its stable branches in nfs-ganesha.
I encourage as many people as possible to join the Tuesday September 30 7:00
AM Pacific Daylight Time community meeting or the September 30 4:00 PM
Pacific Daylight Time secondary community meeting to continue discussion.
I hope I have captured all the important bits of the various conversations.
Thanks
Frank
2 weeks, 4 days
Announce Push of V7.1
by Frank Filz
Branch next
Tag:V7.1
NOTE: This merge includes an ntirpc pullup. Please update your submodule.
NOTE: Prometheus is now run-time disabled by default - if you want
Prometheus active, you must change configuration.
Merge Highlights
* CEPH: Make statfs report quota inforation for handle provided rather than
cmount
* NFSv4.0: fix crash in release_cb_slot() due to uninitialized mutex.
* Fix resource leak in gsh_libunwind (Coverity CID 583559)
* GPFS FSAL use correct verifier pointer.
* Fix missing return type for prometheus_exposer__stop to resolve
compilation error
* Fix: Configured based enabling of monitoring/prometheus module.
* dbus: release export ref if attempt to acquire export lock fails
* Remove unnecessary lookup from cih_remove_checked
* mdc_up_invalidate to release acl in entry->attrs
* STATELOCK_lock should only be called by REGULAR_FILE
* fix layout state ref_count
* updating layout.granting should be atomic
* CEPH: Log ceph uuid as event
* CEPH : Add dentry invalidation callback
* Fix coverity issues
* Coverity 583540: Fix for handling of sysconf negative return
* NLM: Claim fsal object handle lock while cancelling all nlm blocked list
* make: fix conditional syntax to avoid premature variable expansion
* Pullup ntirpc 7.1
Signed-off-by: Frank S. Filz <ffilzlnx(a)mindspring.com>
Contents:
683de56bd Frank S. Filz V7.1
1b5420deb Frank S. Filz Pullup ntirpc 7.1
52cd040f2 Prabhu Murugesan cmake: fix conditional syntax to avoid premature
variable expansion
f2b9208f2 Nishant Puri NLM: Claim fsal object handle lock while cancelling
all nlm blocked list
6516a5617 VidyaThumukunta Coverity 583540: Fix for handling of sysconf
negative return
cf04c1ad9 Sachin Punadikar Fix coverity issues
75e9d90d2 Sachin Punadikar CEPH : Add dentry invalidation callback
3dd469d06 Sachin Punadikar CEPH: Log ceph uuid as event
145e49e88 Haihua Yang updating layout.granting should be atomic
029854a7f Haihua Yang fix layout state ref_count
326022d93 xueqian.hu STATELOCK_lock should only be called by REGULAR_FILE
f1aa9d6b1 Xueqian Hu mdc_up_invalidate to release acl in entry->attrs
e5e8d6100 Deepak Arumugam Sankara Subramanian Remove unnecessary lookup from
cih_remove_checked
951ea9ab7 Pradeep dbus: release export ref if attempt to acquire export lock
fails
d8cfe5b66 Sreedhar Agraharam Fix: Configured based enabling of
monitoring/prometheus module.
449c7e2c8 Sreedhar Agraharam Fix missing return type for
prometheus_exposer__stop to resolve compilation error
49040f70a Marc Eshel GPFS FSAL use correct verifier pointer.
98b3ed5fa Suhas Athani Fix resource leak in gsh_libunwind (Coverity CID
583559)
1cfef0bde Deeraj.Patil NFSv4.0: fix crash in release_cb_slot() due to
uninitialized mutex.
400986591 Deeraj.Patil QOS : Fixes
668fd5e2d Frank S. Filz CEPH: Make statfs report quota inforation for handle
provided rather than cmount
1 month, 1 week