# changelog

author: Tiger Yang <tiger.yang@oracle.com> - 0.3-3
changelog:
  - Merge remote-tracking branch 'gluster/master' into oracle-gluster-5
  - cli: add timeout option
  - Minor fixes (#176)
  - cli: support env variable way of controlling GB_CLI_TIMEOUT
  - cli-timeout: make rpc-timeout as configurable option
  - coverity: fix multiple issues (#172)
  - coverity: fix pointless_string_compare issues (#171)
  - loadConfig: retry opening conf-file if the initial attempt fail
  - cli: push output to stderr if remote rpc return non-zero
  - all: fix high severity issues from coverity (#162)
  - gluster-blockd: defend for NULL to avoid crash
  - cli: clean up the code style
  - gluster-blockd: support volfile server (discovery service) setting through Env (#161)
  - genconfig: add load balance support
  - list: ignore all the invalid files
  - README: update the multipath.conf detail for load-balance support
  - daemon: change minimum rhel kernel version to 3.10.0-862.14.4
  - gbMinKernelVersionCheck: rename variable name 'out' with 'distro'
  - dyn-config: read the config file line by line instead of allocating a fixed 32K buffer
  - dyn-config: fix memleak for GB_LOG_LEVEL
  - gluster-block: dump all failure msgs to stderr
  - Fix memleak for errMsg
  - audit: reduce indentation for smoother flow (#133)
  - all: fix build warnings
  - spec-file: fix the error in changelog date (#139)
  - build: move Dockerfile.buildtest to ./extras/docker/ (#143)
  - Add travis-integration for build verification using docker (#142)
  - systemd: clear the target config only when tcmu-runner is running
  - scripts: use TCMU_LOGDIR instead of GB_LOGDIR
  - upgrade-script: clean status file on source and rpm uninstall
  - upgrade-script: Makefile and rpm spec file changes
  - extras: add a script for upgrade time activities
  - doc: update documentation about 'no-remote-rpc' option
  - daemon: add 'no-remote-rpc' option
  - replace-node: update PRIOPATH at metadata when it match with old-node
  - README: update the doc for helper
  - doc: man page update
  - genconfig: add helper info
  - genconfig: with old blocks use first valid ipaddr from metadata as PRIOPATH
  - daemon: defend on minimum recommended kernel version
  - Auditlog Feature
  - lru: glfslruCount add config dynamic reloading support
  - logging: add config dynamic reloading support
  - gluster-block: update .gitignore
  - create: fix iscsi iqn validation check error
  - resize: fix errCode overriding
  - meta: reserve 10M space for meta-data store


author: Tiger Yang <tiger.yang@oracle.com> - 0.3-4
changelog:
  - Merge remote-tracking branch 'gluster/master' into oracle-gluster-6
  - misc: makesure to kill gluster-blockd on exit
  - logs: improving some more logs
  - extras: fix printLog format
  - logger: init the logDir and logfiles in initLogging
  - logrotate: remove postrotate action
  - daemon: remove the tcmu-runner active check in systemd case
  - misc: fix bash path
  - NEWS: update
  - logrotate: rename logrotate config file
  - rpms: fix compile warnings
  - MSG: do not override last character from the msg
  - create: defend on the use of hostnames
  - doc: update README
  - add MAINTAINERS.md file
  - dyn-config: try to read it again in case the pagecache is not flushed out
  - dyn-reload: slient the logs when they are the same
  - gbConf: Use shared memory instead of from the data segment
  - docs: update
  - spec: fix build warning
  - spec: disable tirpc when rhel <= 7
  - spec: fix rpms build errors
  - logrotate: update the logdir path whenever it changes
  - config: logDir add dyn support
  - zero-fill: use slow zeroing if glfs_zerofill is not supported
  - Docs: update to the latest
  - config-backup: increase max backup files count
  - gluster-block: fix create failure with ring-buffer option
  - gluster-block: fix block delete failure
  - build: fix compile time warning
  - configure: fix warning about '--enable-tirpc'
  - logger: allow without any variable argument
  - modify: misc fix for the logs
  - tests/basic.t: add more test cases
  - readme: add libtirpc-devel rpcgen as perrequesites
  - daemon: check for dependencies version at runtime
  - rpc: fix leak reported by asan
  - rpc: fix heap-buffer-overflow reported by asan
  - travis: build on f29 and centos7
  - daemon: convert cli and remote threads to individual processes
  - gluster-block: correct some rpc socket setup bits
  - rpc: support the modern non-glibc rpcgen tool
  - rpc: use modern libtirpc instead of old glibc implementation
  - LoadConfig: don't call glusterBlockSetLruCount in cli process context
  - cli: add log-msg for cli-timeout in DEBUG or higher level
  - dyn-config: log event->mask when loglevel is DEBUG or higher
  - gluster-block: dump config key:value changes to respective log files
  - Set theme jekyll-theme-cayman
  - cli: fix dereference of undefined pointer value
  - logs: remove '\n' in LOG() usage
  - gluster-block: add logrotate support
  - inotify: watch the directory not just file
  - logger: add CRIT loglevel support
  - spec: create and package /var/log/gluster-block/
  - docs: add CONTRIBUTING.md
  - tests: add simple gfapi access test
  - automake: silent building as default
  - create: turn 'prealloc full' by default
  - tests: use ip addr instead of hostname
  - docs: add ISSUE and PR TEMPLATE
  - README: add a simple demo
  - utils: fix compile warning
  - logger: fix the log messages with adding extra whitspace
  - version: add the gfapi version check
  - service: update the required rpcbind service start sequence


author: Frank Batschulat <frank.batschulat@oracle.com> - 0.4-2
changelog:
  - logging: avoid capturing sensitive details [Orabug: 32199692] {CVE-2020-10762}
  - logging: clip off sensitive details in debug mode [Orabug: 32199692] {CVE-2020-10762}


author: Tiger Yang <tiger.yang@oracle.com> - 6.2-1
changelog:
  - doc: Added release notes for 6.2
  - geo-rep: Convert gfid conflict resolutiong logs into debug
  - geo-rep: Fix sync hang with tarssh
  - tests/geo-rep: Fix arequal checksum comparison
  - geo-rep: Fix sync-method config
  - geo-rep: Fix rename with existing destination with same gfid
  - geo-rep: Fix entries and metadata counters in geo-rep status
  - cluster/ec: Reopen shouldn't happen with O_TRUNC
  - afr: thin-arbiter lock release fixes
  - cluster/afr : TA: Return actual error code in case of failure
  - cluster/dht: Refactor dht lookup functions
  - cluster/dht: refactor dht lookup functions
  - glusterd: define dumpops in the xlator_api of glusterd
  - ctime: Fix log repeated logging during open
  - extras/hooks: syntactical errors in SELinux hooks, scipt logic improved
  - cluster/ec: fix fd reopen
  - core: handle memory accounting correctly


author: Tiger Yang <tiger.yang@oracle.com> - 6.3-1
changelog:
  - doc: Added release notes for 6.3
  - cluster/ec: honor contention notifications for partially acquired locks
  - If bind-address is IPv6 return it successfully


author: Tiger Yang <tiger.yang@oracle.com> - 6.4-1
changelog:
  - samba: Gluster hooks for Samba config without kernel share mode
  - doc: Added release notes for 6.4
  - core: fix deadlock between statedump and fd_anonymous()
  - extras/hooks: Install and package newly added post add-brick hook script
  - features/snapview-server: use the same volfile server for gfapi options
  - glusterd: add GF_TRANSPORT_BOTH_TCP_RDMA in glusterd_get_gfproxy_client_volfile
  - mgmt/glusterd: Fix a memory leak when peer detach fails
  - glusterd: conditionally clear txn_opinfo in stage op
  - gfapi: fix incorrect initialization of upcall syncop arguments
  - upcall: Avoid sending notifications for invalid inodes
  - [RFC] change get_real_filename implementation to use ENOATTR instead of ENOENT
  - extras/hooks: Add SELinux label on new bricks during add-brick
  - features/shard: Fix block-count accounting upon truncate to lower size
  - features/shard: Fix integer overflow in block count accounting
  - tests: subdir-mount.t is failing for brick_mux regrssion
  - posix : add posix_set_ctime() in posix_ftruncate()
  - cluster/dht:  Fixed a memleak in dht_rename_cbk
  - core: fix memory allocation issues
  - libglusterfs: Fix compilation when --disable-mempool is used
  - mem-pool.{c|h}: minor changes
  - core: avoid dynamic TLS allocation when possible
  - posix/ctime: Fix ctime upgrade issue
  - uss: Fix tar issue with ctime and uss enabled
  - Merge tag 'v6.3' into oracle-gluster-6
  - core: fix hang issue in __gf_free
  - mem-pool: remove dead code.
  - tests/utils: Fix py2/py3 util python scripts


author: Tiger Yang <tiger.yang@oracle.com> - 6.5-1
changelog:
  - doc: Added release 6.5 notes
  - features/utime: always update ctime at setattr
  - posix/ctime: Fix race during lookup ctime xattr heal
  - geo-rep: Fix mount broker setup issue
  - features/utime: Fix mem_put crash
  - ctime: Set mdata xattr on legacy files
  - geo-rep: Fix mount broker setup issue
  - gfapi: Fix deadlock while processing upcall
  - features/snapview-server: obtain the list of snapshots inside the lock
  - cluster/dht: Fix directory perms during selfheal
  - glusterd: do not mark skip_locking as true for geo-rep operations


author: Tiger Yang <tiger.yang@oracle.com> - 6.5-2
changelog:
  - geo-rep : fix mountbroker setup
  - spec: move libgfchangelog.so from glusterfs-devel to glusterfs-libs package


author: Tiger Yang <tiger.yang@oracle.com> - 6.6-1
changelog:
  - doc: Added release 6.6 notes
  - test: fix suspicous non-root geo-rep test failures
  - spec: move libgfchangelog.so from glusterfs-devel to glusterfs-libs package
  - geo-rep: Fix Permission denied traceback on non root setup
  - cluster/ec: fix EIO error for concurrent writes on sparse files
  - features/shard: Send correct size when reads are sent beyond file size
  - geo-rep: Fix config upgrade on non-participating node
  - tests : test case for non-root geo-rep setup
  - geo-rep: Fix the name of changelog archive file
  - geo-rep: Fix Config Get Race
  - geo-rep: Test case for upgrading config file
  - geo-rep : fix gluster command path for non-root session
  - geo-rep: Upgrading config file to new version
  - dht: Rebalance causing IO Error - File descriptor in bad state
  - cluster/afr: Heal entries when there is a source & no healed_sinks
  - afr: support split-brain CLI for replica 3
  - system/posix-acl: update ctx only if iatt is non-NULL
  - packaging: remove leftover bd cruft in rpm .spec
  - perf/write-behind: Clear frame->local on conflict error
  - fuse: add missing GF_FREE to fuse_interrupt
  - ctime/rebalance: Heal ctime xattr on directory during rebalance
  - geo-rep : fix mountbroker setup
  - gfapi: 'glfs_h_creat_open' - new API to create handle and open fd
  - dht: Custom xattrs are not healed in case of add-brick
  - storage/posix: set the op_errno to proper errno during gfid set
  - core/syncop: Bail out if frame creation fails
  - afr/lookup: Pass xattr_req in while doing a selfheal in lookup
  - rpc: Update address family if it is not provide in cmd-line arguments
  - glusterd: IPV6 hostname address is not parsed correctly
  - afr: wake up index healer threads
  - afr: support split-brain CLI for replica 3
  - system/posix-acl: update ctx only if iatt is non-NULL
  - packaging: remove leftover bd cruft in rpm .spec
  - perf/write-behind: Clear frame->local on conflict error
  - fuse: add missing GF_FREE to fuse_interrupt
  - ctime/rebalance: Heal ctime xattr on directory during rebalance
  - geo-rep : fix mountbroker setup
  - gfapi: 'glfs_h_creat_open' - new API to create handle and open fd
  - dht: Custom xattrs are not healed in case of add-brick
  - storage/posix: set the op_errno to proper errno during gfid set
  - core/syncop: Bail out if frame creation fails
  - afr/lookup: Pass xattr_req in while doing a selfheal in lookup
  - rpc: Update address family if it is not provide in cmd-line arguments
  - glusterd: IPV6 hostname address is not parsed correctly
  - afr: wake up index healer threads
  - tests: fix spurious failure of bug-1402841.t-mt-dir-scan-race.t
  - ctime: Fix ctime issue with utime family of syscalls
  - event: rename event_XXX with gf_ prefixed
  - ctime: Fix incorrect realtime passed to frame->root->ctime
  - performance/md-cache: Do not skip caching of null character xattr values
  - afr: restore timestamp of parent dir during entry-heal
  - glusterd: ./tests/bugs/glusterd/bug-1595320.t is failing
  - rpc: glusterd start is failed and throwing an error Address already in use


author: Tiger Yang <tiger.yang@oracle.com> - 6.8-1
changelog:
  - glusterd: Brick process fails to come up with brickmux on
  - Adding release notes for release-6.8
  - events: fix IPv6 memory corruption
  - eventsapi: Set IPv4/IPv6 family based on input IP
  - core: replace inet_addr with inet_pton
  - core: fix memory pool management races
  - cluster/ec: Change handling of heal failure to avoid crash
  - afr: prevent spurious entry heals leading to gfid split-brain
  - lock: check null value of dict to avoid log flooding
  - cluster/thin-arbiter: Wait for TA connection before ta-file lookup
  - tools/glusterfind: Remove an extra argument
  - gf-event: Handle unix volfile-servers
  - cluster/ec: skip updating ctx->loc again when ec_fix_open/opendir
  - Cluster/afr: Don't treat all bricks having metadata pending as split-brain
  - server: Mount fails after reboot 1/3 gluster nodes
  - To fix readdir-ahead memory leak
  - glusterfind: python3 compatibility
  - tools/glusterfind: handle offline bricks
  - extras: enable log rotation for USS logs
  - cluster/dht: Correct fd processing loop
  - doc: Added release 6.7 notes
  - rpc: Synchronize slot allocation code
  - geo-rep: Fix py2/py3 compatibility in repce
  - test: fix non-root test case for geo-rep
  - socket: fix error handling
  - extras: Cgroup(CPU/Mem) restriction are not working on gluster process
  - libgfchangelog : use find_library to locate shared library
  - Detach iot_worker to release its resources
  - cluster/ec: Update lock->good_mask on parent fop failure
  - cluster/ec: Fix reopen flags to avoid misbehavior
  - cluster/ec: Always read from good-mask
  - cluster/ec: inherit healing from lock when it has info
  - cluster/ec: Prevent double pre-op xattrops


author: Tiger Yang <tiger.yang@oracle.com> - 6.8-2
changelog:
  - features/shard: Aggregate file size, block-count before unwinding removexattr
  - features/shard: Aggregate size, block-count in iatt before unwinding setxattr


author: Tiger Yang <tiger.yang@oracle.com> - 6.10-1
changelog:
  - Adding release notes for release-6.10
  - rpc: Cleanup SSL specific data at the time of freeing rpc object
  - socket/ssl: fix crl handling
  - locks/fencing: Address hang while lock preemption
  - features/shard: Fix crash during shards cleanup in error cases
  - cli: duplicate defns of cli_default_conn_timeout and cli_ten_minutes_timeout
  - afr: event gen changes
  - cluster/afr: Prioritize ENOSPC over other errors
  - afr: more quorum checks in lookup and new entry marking
  - fuse: degrade logging of write failure to fuse device
  - cluster/ec: Return correct error code and log message
  - md-cache: fix several NULL dereferences
  - tests/bug-844688.t: test bug-844688.t is failing on master
  - tests: skip tests on absence of reflink in xfs
  - Adding release notes for release-6.9
  - features/utime: Don't access frame after stack-wind
  - utime: resolve an issue of permission denied logs
  - mount/fuse: Wait for 'mount' child to exit before dying
  - md-cache: avoid clearing cache when not necessary
  - write-behind: fix data corruption
  - snap_scheduler: python3 compatibility and new test case
  - afr: mark pending xattrs as a part of metadata heal
  - cluster/afr: fix race when bricks come up
  - open-behind: fix missing fd reference
  - gfapi: Suspend synctasks instead of blocking them


author: Tiger Yang <tiger.yang@oracle.com> - 6.8-1
changelog:
  - Adding release notes for release-6.8
  - events: fix IPv6 memory corruption
  - eventsapi: Set IPv4/IPv6 family based on input IP
  - core: replace inet_addr with inet_pton
  - core: fix memory pool management races
  - cluster/ec: Change handling of heal failure to avoid crash
  - afr: prevent spurious entry heals leading to gfid split-brain
  - lock: check null value of dict to avoid log flooding
  - cluster/thin-arbiter: Wait for TA connection before ta-file lookup
  - tools/glusterfind: Remove an extra argument
  - gf-event: Handle unix volfile-servers
  - cluster/ec: skip updating ctx->loc again when ec_fix_open/opendir
  - Cluster/afr: Don't treat all bricks having metadata pending as split-brain
  - server: Mount fails after reboot 1/3 gluster nodes
  - To fix readdir-ahead memory leak
  - glusterfind: python3 compatibility
  - tools/glusterfind: handle offline bricks
  - extras: enable log rotation for USS logs
  - cluster/dht: Correct fd processing loop
  - doc: Added release 6.7 notes
  - rpc: Synchronize slot allocation code
  - geo-rep: Fix py2/py3 compatibility in repce
  - test: fix non-root test case for geo-rep
  - socket: fix error handling
  - extras: Cgroup(CPU/Mem) restriction are not working on gluster process
  - libgfchangelog : use find_library to locate shared library
  - Detach iot_worker to release its resources
  - cluster/ec: Update lock->good_mask on parent fop failure
  - cluster/ec: Fix reopen flags to avoid misbehavior
  - cluster/ec: Always read from good-mask
  - cluster/ec: inherit healing from lock when it has info
  - cluster/ec: Prevent double pre-op xattrops


author: Gautham Ananthakrishna <gautham.ananthakrishna@oracle.com> - 8.6-2.el8
changelog:
  - glusterfs: Add dependency on glusterfs for glusterfs-selinux (Gautham
    Ananthakrishna)  [Orabug: 33787413]


author: Tiger Yang <tiger.yang@oracle.com> - 1.6.3-1
changelog:
  - Export authnone_create_dummy for error handling in Ganesha
  - xdr_ioq: fix memory leak on FreeBSD
  - Don't let a newly created xprt be cleaned
  - xdr_bytes_decode - only free if we allocated
  - Only unlock when we actually locked
  - Merge pull request #139 from zhoury14/v1.6
  - fix CLSET_VERS/CLSET_PROG in cln_dg clnt_vc clnt_rdma


author: Tiger Yang <tiger.yang@oracle.com> - 1.7.3-1
changelog:
  - NSM - Don't force UDP portmapper lookups
  - Destroy XPRTs for local clients
  - Make UDP XPRT refs match TCP
  - Fix XPRT leak for TCP connections
  - Update timespec macros
  - Fix addr size check in clnt_dg_control()
  - svc_xprt_lookup - Add extra ref on create


author: Tiger Yang <tiger.yang@oracle.com> - 1.7.4-1
changelog:
  - SVC - Don't double release xprt on write error
  - _svcauth_gss - Clean up gss_data handling
  - Don't attempt to destroy XPRT if CLNT create was unsuccessful
  - Mark ANYFD clients as local clients
  - Do not use macro "svcauth_gss_return"
  - getclnthandle(): Fix assert(client == NULL) and destroy client handle.
  - Fix memory leak for RPCSEC_GSS
  - Use "gss_get_mic" instead of "gss_sign"
  - Close fd if makefd_xprt fails. We are doing accept and returning XPRT_DIED without closi
  - Free 'ret' when returning NULL in __rpc_taddr2uaddr_af()
  - Make a header for strl*()
  - Convert unsafe strncpy to strlcpy


author: Tiger Yang <tiger.yang@oracle.com> - 1.4.0-1
changelog:
  - tcmu-runner: bump version to 1.4.0
  - Disable explicit alua support.
  - Merge pull request #482 from lxbsz/dyn3
  - logger: notification on changing the options for dynamic reloading
  - logger: update .gitignore for logrotate.conf_install.cmake
  - logger: fix the return value
  - Merge pull request #480 from mikechristie/log-fixes
  - Sync sig handler naming.
  - Add logrotate support
  - Move starting log message.
  - Allow log file restart from SIGHUP
  - Simplify log outputs
  - Simplify tcmu_logbuf init
  - make config watcher optional
  - log/config: limit callers that can set the log dir
  - logger: return errno instead of bool
  - misc logcleanup
  - Fix logger thread race
  - Log rb cleanup
  - log: move tcmu_logbuf->finish_initialize into logbuf lock/unlock
  - tcmu-runner: add Starting log info
  - Merge pull request #477 from mikechristie/lock-bounce-fixes
  - Merge pull request #469 from mikechristie/io-size-fixes
  - runner/rbd: do not set lock metadata if not needed
  - runner: don't drop iscsi connection on lock fence errors
  - runner: print lio name and not the uio name
  - libtcmu: fix max unmap definition
  - rbd: increase xcopy IO size
  - tcmu-runner: set default internal xcopy limits based on max xfer len
  - libtcmu: add helpers for xcopy read/writes
  - runner/rbd: pass unmap segments directly to handler
  - rbd: set unmap limits based on object size
  - runner: allow handler to override max unmap len limit
  - runner: allow handlers to override default unmap limits
  - Change alua transition in process message to a debug
  - Add newline to alua lock messages.
  - rbd: fix llu vs PRIu64 use for len/off
  - Merge pull request #464 from DavidButterfield/master
  - Merge pull request #472 from mikechristie/fix-infin-break-lock
  - runner: reopen dev right away if we know we had the lock and lost it
  - runner: fix double log message
  - runner: fix double close/free
  - Merge pull request #471 from mikechristie/fix-implicit-lock-state
  - Do not return alua state transition
  - runner/rbd: update lock state on RTPG/INQUIRY
  - format string as ("%s", buf) instead of (buf)
  - add checking of logging formats vs. arguments
  - Merge pull request #467 from tangwenji/fix_max_seg_and_tgt_desc_num
  - Merge pull request #466 from tangwenji/fix_cscd_min_len
  - Merge pull request #465 from tangwenji/fix_sa_xcopy
  - libtcmu: add additonal sense code for xcopy
  - tcmur: fix the minimum of cscd descriptors list length
  - tcmur: differentiate various sa in the xcopy command
  - Merge pull request #459 from lxbsz/fix_code_style
  - tcmur: fix the max length of caw command
  - Merge pull request #462 from tangwenji/fix_sense_valid
  - Merge pull request #463 from damien-lemoal/master
  - file_zbc: Fixed write error checking
  - libtcmu:fix valid field in sense data
  - tcmu-runner: fix the code style
  - Merge pull request #458 from tangwenji/fix_caw_zero_length
  - tcmur:fix number of logical blocks is zero in caw command
  - Fix compilation error due to iovec definition duplication
  - Merge pull request #456 from pkalever/loglevel
  - Merge pull request #457 from tangwenji/fix_formart_character
  - tcmur:fix format character on handle_writesame_check
  - glfs: set loglevel to INFO
  - Merge pull request #455 from tangwenji/fix_recovery_del_node
  - Merge pull request #453 from tangwenji/fix_free_io_watch
  - Merge pull request #454 from tangwenji/fix_acquire_dev_lock
  - target:delete device node from devs before reopen device
  - tcmur:fix the initial value of the return var
  - main:remove source and decrements the reference count of the GIOChannel
  - Merge pull request #451 from dillaman/wip-rbd-device-classes
  - rbd: detect pools associated to NVMe device class
  - Merge pull request #409 from lxbsz/rpm_error
  - spec: force to install tcmu.conf in buildroot
  - Merge pull request #450 from lxbsz/spec1
  - spec: fix rpm package build error
  - Merge pull request #448 from Gangbiao/lgb-devel
  - To enhance the reuseability of code, move function 'tcmu_cancel_thread' from 'main.c' to 'api.c'
  - tcmu-runner: fix bug in HA about re-acquire lock
  - Fix compilation errors
  - Merge pull request #402 from lxbsz/reset_netlink
  - Merge pull request #446 from DavidButterfield/master
  - glfs: add discard support
  - improve tcmu-runner behavior under valgrind
  - Improve generality of tcmu_dev_{err,warn,...}
  - tcmu-runner: add reset netlink support
  - configfs: add CFGFS_TARGET_MOD macro
  - Merge pull request #443 from damien-lemoal/master
  - file_zbc: correctly handle iovec seek
  - Merge pull request #437 from lxbsz/glfs1
  - glfs: allow the backend file size not aligns to the block_size
  - Fix tarball release location
  - Merge pull request #433 from lxbsz/cmakelist
  - CMakeList: fix missing file for static library
  - Merge pull request #430 from lxbsz/main_syms
  - main-syms: remove tcmu_cancel_thread
  - Merge pull request #429 from lxbsz/config_fix1
  - Merge pull request #428 from lxbsz/conf_fix
  - config: fix parse error when there has no space after '='
  - config: make the struct data invisible
  - config: fix the log message and clean up the code
  - Merge pull request #425 from mikechristie/relicense
  - Merge pull request #368 from lxbsz/logdir_dyn
  - log: do not insert the CDB debug logs to ringbuffer
  - config: add the logdir option dynamic reloading support
  - config: fix memory leak of cfg->log_dir_path
  - config: reset to boolean default values after the options being set
  - config: reset to str default values after the options being set
  - Merge pull request #424 from lxbsz/lock
  - alua: allow handlers missing lock routine
  - Change license to Apache 2 or LGPLv2.1
  - Add LGPL license file
  - Rename license file
  - Merge pull request #418 from pkalever/lockfile
  - runner: don't allow multiple instances of daemon to run
  - Merge pull request #415 from tjakob/master
  - Merge pull request #417 from lxbsz/alua_log_fix1
  - alua: reduce the debug logs
  - Merge pull request #403 from lxbsz/task_full
  - api: list all the cdb data for unsupported SCSI commands
  - rbd: new option for specifying the id
  - tcmu-runner: bump version to 1.4.0-rc1
  - Merge pull request #413 from mikechristie/return-codes
  - update docs for TCMU_STS codes
  - cleanup unused sense buf uses
  - Move SCSI sense defs to zbc
  - Cleanup tcmulib_command_complete
  - Drop info arg from tcmu_set_sense_data
  - Convert ASC_NOT_READY_FORMAT_IN_PROGRESS
  - Convert simple fbo cases to TCMU_STS
  - Convert rbd alua/lock to use TCMU_STS
  - Convert alua sense/status
  - Convert simple sense/status cases
  - Convert ASC_MISCOMPARE_DURING_VERIFY_OPERATION to TCMU_STS_MISCOMPARE
  - Convert ASC_INTERNAL_TARGET_FAILURE
  - Convert ASC_LBA_OUT_OF_RANGE to TCMU_STS_RANGE
  - Convert SAM_STAT_TASK_SET_FULL to TCMU_STS_NO_RESOURCE
  - Convert SAM_STAT_GOOD to TCMU_STS_OK
  - Convert TCMU_ASYNC_HANDLED to TCMU_STS_ASYNC_HANDLED
  - Convert TCMU_NOT_HANDLED to TCMU_STS_NOT_HANDLED
  - Sync up error codes
  - Merge pull request #407 from mikechristie/explicit-fo
  - rbd/runner: remove get_lock_state
  - rbd: get/set lock tag
  - runner: get/set remote alua group info
  - add back explicit failover support
  - runner: separate connection errros from fence ones
  - runner: return lock state after update
  - runner: add new lock states
  - runner: add helper to set alua ints
  - runner: allow tcmu_acquire_dev_lock to be called from cmd handler
  - runner: make reopen retries configurable
  - Merge pull request #405 from letterwuyu/master
  - Merge pull request #408 from lxbsz/gitignore1
  - fix the memory cross boundary bug in tcmu_rbd_detect_device_class
  - gitignore: ignore extra/rpmbuild
  - Merge pull request #406 from baihuahua/dev
  - libtcmu: drop duplicated ";"
  - Merge pull request #401 from pkalever/retvalue
  - tcmur: fix ret value in tcmur_dev_update_size
  - Merge pull request #399 from tangwenji/fix_reopen
  - fix the condition of sleep in _tcmu_reopen_dev
  - Merge pull request #398 from lxbsz/config_fix
  - config: reset to default values after the options being set
  - Merge pull request #392 from dillaman/wip-batch-wake-ups
  - tcmur: batch kernel wake up notifications
  - Merge pull request #391 from lxbsz/log1
  - tcmu-runner: improve the logging always to get daemon's exit state
  - Merge pull request #382 from lxbsz/glfs_resize
  - Merge pull request #389 from tangwenji/fix_rbd_parse_cfg
  - rbd:fix parse cfgstring optional options
  - Merge pull request #388 from pengliang233/fix-goto
  - Merge pull request #386 from tangwenji/fix_free_manager
  - Merge pull request #385 from tangwenji/fix_rbd_cfg_optional
  - main: fix error goto
  - tcmu-runner:fix free manager
  - rbd:Parsing option 'conf=' error
  - glfs: reopen on connection lost
  - libtcmu: Add tcmu flags and size setting helpers support
  - Merge pull request #383 from pengliang233/fix-ret
  - conifg: fix error ret
  - rbd: fix coding style and compilation error
  - Merge pull request #365 from umuzhaohui/wip-fix-1
  - tcmu-runner: fix bug in EXTENDED_COPY command
  - tcmu-runner: fix bug in COMPARE_AND_WRITE command
  - Merge pull request #378 from lxbsz/reset_ring
  - Merge pull request #381 from lxbsz/fix_members
  - libtcmu: add tcmu_is_ring_reset_support support
  - configfs: remove null chars in the string readed from the sys files
  - Merge pull request #375 from dmitry-fomichev/master
  - Set correct sense upon getting write to FULL zone
  - Add installation action for file_zbc handler
  - zbc: fix maximum number of open zones
  - zbc: fix write emulation
  - Merge pull request #376 from draghuram/doc
  - Fixed build procedure in README.
  - Merge pull request #373 from lxbsz/fix_log_missing
  - Merge pull request #372 from pkalever/size_checks
  - logging: improve log details
  - log: bypass the log ring buffer for file and std outputs
  - glfs: remove size checks in handler
  - Merge pull request #370 from ddiss/factory_pkg_1.3
  - build: drop versionless libtcmu.so symlink
  - api: avoid compiler -Werror=return-type failures
  - Merge pull request #367 from lxbsz/extra1
  - extra: Add make_runnerrpms.sh support
  - Merge pull request #355 from zhuozh/fix_lock_treshing
  - Merge pull request #357 from lxbsz/update_glfs1
  - glfs: update the glfs config descritions and add usage of creation
  - handler: do not perform implicit transition if command not supported


author: Tiger Yang <tiger.yang@oracle.com> - 1.4.1-1
changelog:
  - tcmu-runner: bump version to 1.4.1
  - Allow some commands to run while taking lock
  - Drop in_lock_thread from __tcmu_reopen_dev
  - Fix pthread error handling
  - Check if device is opened before calling handler
  - file_zbc: optionally build zbc handler
  - file_zbc: fixed compile error under ppc64le


author: Tiger Yang <tiger.yang@oracle.com> - 1.4.1-2
changelog:
  - conflict fixed
  - Merge remote-tracking branch 'open-iscsi/master' into oracle-gluster-6
  - Merge pull request #560 from pengliang233/out_of_bounds
  - Merge pull request #562 from dillaman/wip-tcmalloc-opts
  - cmake: set '-fno-builtin-XYZ' options when tcmalloc is used
  - Merge pull request #558 from lxbsz/spec
  - configfs: fix index out of bounds
  - Merge pull request #559 from ddiss/libtcmu_sovers
  - cmake: add a minor .so version number to libtcmu
  - spec: track backuped files
  - spec: update the spec file to fix the build error
  - spec: pass the tcmalloc option to cmake command
  - spec: switch to use rpm conditional switches
  - Merge pull request #557 from dillaman/wip-install-dep
  - extra: add gperftools-devel to install_dep script
  - Merge pull request #555 from dillaman/wip-tcmalloc
  - Optionally link against tcmalloc for improved small IO performance
  - Merge pull request #551 from lxbsz/header
  - libtcmu_time: void header file include muti-times
  - Merge pull request #550 from lxbsz/lock
  - Merge pull request #549 from lxbsz/glfs
  - glfs: update the glfs logdir
  - README: update to add uninstall
  - lockfile: switch to use /run/tcmu.lock
  - Merge pull request #547 from lxbsz/cmake
  - logrotate: fix duplicate log entry error
  - Validate input for tcmu_log_dir_check()
  - Fix parameter for tcmu_setup_log()
  - Merge pull request #545 from geordieintheshellcode/query-oooc-support
  - Follow coding style, move leading brace
  - Add method to query whether OOOC is supported
  - Merge pull request #541 from lxbsz/glfs
  - glfs: fix build error for GFAPI version check
  - Allow some commands to run while taking lock
  - Drop in_lock_thread from __tcmu_reopen_dev
  - Fix pthread error handling
  - Check if device is opened before calling handler
  - file_zbc: optionally build zbc handler
  - file_zbc: fixed compile error under ppc64le
  - Merge pull request #539 from lxbsz/glfs
  - glfs: add gfapi version check
  - Merge pull request #532 from bgly/fix_unmap
  - Merge pull request #538 from pengliang233/fix_typo
  - Fix unmap to handle refcount being 0
  - fix typo in code
  - Merge pull request #535 from ktdreyer/rpm-rm-clean
  - Merge pull request #536 from ktdreyer/rpm-rm-defattr
  - rpm: remove %defattr
  - rpm: remove %clean section
  - Merge pull request #531 from ktdreyer/rpm-license-tag
  - rpm: use valid short name licenses in License field
  - Merge pull request #530 from pengliang233/clean_up
  - configfs: clean up the code
  - Merge pull request #529 from pengliang233/pthread_ret
  - Fix pthread error ret
  - Merge pull request #526 from pengliang233/fix_unlock
  - rbd: fix the error ret in tcmu_rbd_unlock
  - Merge pull request #528 from lmh10144360/droparg
  - Merge pull request #522 from pengliang233/set_genl_features
  - Drop sense arg from tcmu_explicit_transition
  - libtcmu: setup_netlink maybe failure but can't sensed
  - Merge pull request #525 from mikechristie/reopen-fixes
  - Drop is_sync arg from tcmu_acquire_dev_lock


author: Tiger Yang <tiger.yang@oracle.com> - 1.4.1-3
changelog:
  - tcmur: error if both src/dst_dev are unset after CSCD parsing [Orabug: 32368811] {CVE-2020-28374}
  - tcmur: don't assume two XCOPY CSCDs [Orabug: 32368811] {CVE-2020-28374}
  - tcmur: fail XCOPY requests with inline data [Orabug: 32368811] {CVE-2020-28374}
  - tcmur: fail cross-device XCOPY requests [Orabug: 32368811] {CVE-2020-28374}


author: Tiger Yang <tiger.yang@oracle.com> - 2.7.4-1
changelog:
  - rpc_callback: don't issue CB_NULL on new v4.1 channels
  - doc: add section about flags to ganesha-rados-grace manpage
  - SAL - Remove state_obj as the last operation
  - SAL: Check for state type before reading lock.openstate
  - Handle close race in FSAL_MEM and FSAL_RGW
  - spec file changes for RHEL8 python3
  - fsal_open2 - check for non-regular file when open by name
  - FSAL fix race in FSAL close method
  - MDCACHE - Restart readdir if directory is invalidated
  - [9P] _9p_lock doesn't process conflicts
  - Fix gobject for python3
  - Don't mix tabs and spaces in python code
  - MDCACHE - Update chunk pointers when splitting a chunk
  - MEM - Set the parent pointer for a directory
  - FSAL_CEPH: fix length calculation in reclaim_reset
  - NFS4 - Allow locking past the FSAL's maxfilesize
  - MDCACHE: Don't deref the mdcache_entry pointer once the ref is dropped.
  - FSAL_GLUSTER: Enable readdir_plus option
  - FSAL_GLUSTER/lock_op: Unlock state's fdlock incase of error
  - MDCACHE - Fix race between lru functions for the chunk and the parent of the chunk getti
  - Add 'expire_time_parent' parameter and refill parent handle if expired
  - Fix memory leak in nlm4_Lock()
  - Fix NLM owner refcount leak in state_lock()
  - Fix memory leak for RPCSEC_GSS
  - Revert idmapper changes that accidentally got included in a patch
  - Free NLM block data when not used
  - FSAL_CEPH: use a unique uuid string per export
  - Convert strncpy calls to a safer strlcpy
  - Modify strmaxcpy definition to be more graceful!
  - [GPFS] Don't fail getattrs() if getting fs_locations fails
  - Return ERR_FSAL_SYMLINK when trying to OPEN a SYMLINK
  - Call _9p_worker_shutdown when CORE_OPTION_9P is set
  - Invalidate parent handle of a directory for invalidate UP call
  - Remove drc field from dupreq and avoid memory leak
  - Release dupreq's ref on drc just before freeing the dupreq.
  - Handle dupreq hash deletion race
  - Fix syntax error in ganesha_stats script
  - Do not store transient open flags with fd
  - Remove unused openflags
  - Don't log fields of file handle in nfs4_Is_Fh_Invalid and nfs4_FSALToFhandle
  - [GPFS] Sanity checks for max no. of V4 ACE's supported
  - locktest does not handle EACCES error for fcntl() F_SETLK operation
  - Status of "v4_full" is missing
  - Convert gsh_malloc and friends to macros
  - NFSv4 detailed statistics via ganesha_stats
  - NFSv3 detailed statistics via ganesha_stats
  - Replaced a LogCrit() with LogEvent() in commonlib.c
  - [GPFS] Implement ignore_mode_change config option
  - Replaced a LogMajor() with LogEvent() in nlm_util.c


author: Gautham Ananthakrishna <gautham.ananthakrishna@oracle.com> - 3.5-2.el8
changelog:
  - nfs-ganesha-selinux: Add dependancy on glsuterfs-selinux (Gautham
    Ananthakrishna)  [Orabug: 33787413]


author: Tiger Yang <tiger.yang@oracle.com> - 0.10.2-1
changelog:
  - Fix: only wait if work queue is empty in real-time mode
  - Fix: don't wait after completion of a work queue job batch
  - Fix: don't wait after completion of job batch if work queue is empty
  - Fix: workqueue: struct urcu_work vs rcu_head mixup
  - Cleanup: workqueue: update comments referring to call-rcu
  - Fix: mixup between URCU_WORKQUEUE_RT and URCU_CALL_RCU_RT
  - test_rwlock: Add per-thread count to verbose output
  - Add *.exe to gitignore for Cygwin
  - Fix: pthread_rwlock initialization on Cygwin
  - Fix: compat_futex_noasync on Cygwin
  - Fix: don't use overlapping mmap mappings on Cygwin
  - Fix: don't use membarrier SHARED syscall command in liburcu-bp
  - Tests fix: add missing Cygwin thread id
  - Fix: assignment from incompatible pointer type warnings
  - Tests fix: unused variable warnings
  - Fix: add missing m68k headers to dist


