v1.4.0
This is the 1.4.0 release of tcmu-runner.
Release notes:
- This is mostly a bug fix release.
The ground work for explicit ALUA support is added but is disabled in this release, because the Red Hat QA team has not tested it and there are still bugs being worked on.
-
tcmu-runner is now dual licensed Apache 2 and LGPL v2.
-
Ceph support notes:
HA setups should not be done manually with targetcli. The ceph-iscsi-cli tool is the preferred method. Setup and required setting documentation can be found here:
http://docs.ceph.com/docs/master/rbd/iscsi-overview/
- Gluster support notes:
See https://github.com/gluster/gluster-block for gluster tools and instructions that should be used.
- For all other handlers see the README.
The short changelog is:
Damien Le Moal (3):
zbc: fix write emulation
zbc: fix maximum number of open zones
file_zbc: correctly handle iovec seek
David Butterfield (4):
Improve generality of tcmu_dev_{err,warn,...}
improve tcmu-runner behavior under valgrind
add checking of logging formats vs. arguments
format string as ("%s", buf) instead of (buf)
David Disseldorp (2):
api: avoid compiler -Werror=return-type failures
build: drop versionless libtcmu.so symlink
Dmitry Fomichev (2):
Add installation action for file_zbc handler
Set correct sense upon getting write to FULL zone
Gangbiao (1):
To enhance the reuseability of code, move function 'tcmu_cancel_thread' from 'main.c' to 'api.c'
Jason Dillaman (2):
tcmur: batch kernel wake up notifications
rbd: detect pools associated to NVMe device class
Masato Suzuki (1):
file_zbc: Fixed write error checking
Mike Christie (70):
rbd: fix coding style and compilation error
runner: make reopen retries configurable
runner: allow tcmu_acquire_dev_lock to be called from cmd handler
runner: add helper to set alua ints
runner: add new lock states
runner: return lock state after update
runner: separate connection errros from fence ones
add back explicit failover support
runner: get/set remote alua group info
rbd: get/set lock tag
rbd/runner: remove get_lock_state
Sync up error codes
Convert TCMU_NOT_HANDLED to TCMU_STS_NOT_HANDLED
Convert TCMU_ASYNC_HANDLED to TCMU_STS_ASYNC_HANDLED
Convert SAM_STAT_GOOD to TCMU_STS_OK
Convert SAM_STAT_TASK_SET_FULL to TCMU_STS_NO_RESOURCE
Convert ASC_LBA_OUT_OF_RANGE to TCMU_STS_RANGE
Convert ASC_INTERNAL_TARGET_FAILURE
Convert ASC_MISCOMPARE_DURING_VERIFY_OPERATION to TCMU_STS_MISCOMPARE
Convert simple sense/status cases
Convert alua sense/status
Convert rbd alua/lock to use TCMU_STS
Convert simple fbo cases to TCMU_STS
Convert ASC_NOT_READY_FORMAT_IN_PROGRESS
Drop info arg from tcmu_set_sense_data
Cleanup tcmulib_command_complete
Move SCSI sense defs to zbc
cleanup unused sense buf uses
update docs for TCMU_STS codes
tcmu-runner: bump version to 1.4.0-rc1
Rename license file
Add LGPL license file
Change license to Apache 2 or LGPLv2.1
Fix tarball release location
glfs: add discard support
Fix compilation errors
Fix compilation error due to iovec definition duplication
runner/rbd: update lock state on RTPG/INQUIRY
Do not return alua state transition
runner: fix double close/free
runner: fix double log message
runner: reopen dev right away if we know we had the lock and lost it
rbd: fix llu vs PRIu64 use for len/off
Add newline to alua lock messages.
Change alua transition in process message to a debug
runner: allow handlers to override default unmap limits
runner: allow handler to override max unmap len limit
rbd: set unmap limits based on object size
runner/rbd: pass unmap segments directly to handler
libtcmu: add helpers for xcopy read/writes
tcmu-runner: set default internal xcopy limits based on max xfer len
rbd: increase xcopy IO size
libtcmu: fix max unmap definition
runner: print lio name and not the uio name
runner: don't drop iscsi connection on lock fence errors
runner/rbd: do not set lock metadata if not needed
Log rb cleanup
Fix logger thread race
misc logcleanup
logger: return errno instead of bool
log/config: limit callers that can set the log dir
make config watcher optional
Simplify tcmu_logbuf init
Simplify log outputs
Allow log file restart from SIGHUP
Move starting log message.
Add logrotate support
Sync sig handler naming.
Disable explicit alua support.
tcmu-runner: bump version to 1.4.0
Prasanna Kumar Kalever (5):
glfs: remove size checks in handler
logging: improve log details
tcmur: fix ret value in tcmur_dev_update_size
runner: don't allow multiple instances of daemon to run
glfs: set loglevel to INFO
Raghuram Devarakonda (1):
Fixed build procedure in README.
Taylor Jakobson (1):
rbd: new option for specifying the id
Xiubo Li (34):
glfs: update the glfs config descritions and add usage of creation
extra: Add make_runnerrpms.sh support
log: bypass the log ring buffer for file and std outputs
configfs: remove null chars in the string readed from the sys files
libtcmu: add tcmu_is_ring_reset_support support
libtcmu: Add tcmu flags and size setting helpers support
glfs: reopen on connection lost
tcmu-runner: improve the logging always to get daemon's exit state
config: reset to default values after the options being set
gitignore: ignore extra/rpmbuild
api: list all the cdb data for unsupported SCSI commands
alua: reduce the debug logs
alua: allow handlers missing lock routine
config: reset to str default values after the options being set
config: reset to boolean default values after the options being set
config: fix memory leak of cfg->log_dir_path
config: add the logdir option dynamic reloading support
log: do not insert the CDB debug logs to ringbuffer
config: fix the log message and clean up the code
config: make the struct data invisible
config: fix parse error when there has no space after '='
main-syms: remove tcmu_cancel_thread
CMakeList: fix missing file for static library
glfs: allow the backend file size not aligns to the block_size
configfs: add CFGFS_TARGET_MOD macro
tcmu-runner: add reset netlink support
spec: fix rpm package build error
spec: force to install tcmu.conf in buildroot
tcmu-runner: fix the code style
tcmu-runner: add Starting log info
log: move tcmu_logbuf->finish_initialize into logbuf lock/unlock
logger: fix the return value
logger: update .gitignore for logrotate.conf_install.cmake
logger: notification on changing the options for dynamic reloading
Yaowei Bai (1):
libtcmu: drop duplicated ";"
Zhang Zhuoyu (1):
handler: do not perform implicit transition if command not supported
peng.liang (2):
conifg: fix error ret
main: fix error goto
root (1):
fix the memory cross boundary bug in tcmu_rbd_detect_device_class
tangwenji (14):
rbd:Parsing option 'conf=' error
tcmu-runner:fix free manager
rbd:fix parse cfgstring optional options
fix the condition of sleep in _tcmu_reopen_dev
main:remove source and decrements the reference count of the GIOChannel
tcmur:fix the initial value of the return var
target:delete device node from devs before reopen device
tcmur:fix format character on handle_writesame_check
tcmur:fix number of logical blocks is zero in caw command
libtcmu:fix valid field in sense data
tcmur: fix the max length of caw command
tcmur: differentiate various sa in the xcopy command
tcmur: fix the minimum of cscd descriptors list length
libtcmu: add additonal sense code for xcopy
umuzhaohui (2):
tcmu-runner: fix bug in COMPARE_AND_WRITE command
tcmu-runner: fix bug in EXTENDED_COPY command
xinxin shu (1):
tcmu-runner: fix bug in HA about re-acquire lock