]>
www.infradead.org Git - users/hch/nvmetcli.git/log
summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Sagi Grimberg [Tue, 5 Dec 2017 11:48:42 +0000 (13:48 +0200)]
nvmetcli: port decoration coloring only if its enabled
Only color the port if its enabled (has subsystems or
referrals symlinks).
Also, don't display none trsvcid (like in the fc case).
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Sagi Grimberg [Sun, 3 Dec 2017 08:25:35 +0000 (10:25 +0200)]
nvmetcli: decorate namespace, subsystem and port UI
Display some info on the on the UI node.
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Sagi Grimberg [Sun, 3 Dec 2017 08:25:34 +0000 (10:25 +0200)]
nvmetcli: expose ls to dump UI configuration
for running: nvmetcli ls
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Johannes Thumshirn [Thu, 30 Nov 2017 10:27:23 +0000 (11:27 +0100)]
nvmetcli: remove status method for the UIPortNode
nvmetcli defines a status method for the UIPortNode class but there is
no corresponding 'enable' file in configfs so typing in status will
always result in nvmetcli printing disbaled if one types 'status' in
the port node:
/> cd ports/1/
/ports/1> status
Status for /ports/1: disabled
/ports/1>
There are two possible ways for fixing this issue, provide a configfs
file to enable/disable the port node in the kernel or delete the
method in nvmetcli. Having a configfs file in the kernel is pointless,
as ports get enabled when symlinked to a namespace so zap the pointless status
method in user-space.
Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
Reported-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 10 Aug 2017 12:46:02 +0000 (14:46 +0200)]
bump version to v0.5
Christoph Hellwig [Thu, 10 Aug 2017 12:45:42 +0000 (14:45 +0200)]
add a make clean pass to bump-ver.sh
Signed-off-by: Christoph Hellwig <hch@lst.de>
Johannes Thumshirn [Fri, 14 Jul 2017 13:42:54 +0000 (15:42 +0200)]
nvmetcli: allow setting of the subsystem version
Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Johannes Thumshirn [Thu, 13 Jul 2017 10:48:45 +0000 (12:48 +0200)]
nvmetcli: allow setting of serial number number
Allow a user to set a serial number of a controller in configfs in order to
have persistent serials that survive a reboot of the target.
Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Johannes Thumshirn [Fri, 16 Jun 2017 08:05:44 +0000 (10:05 +0200)]
nvmetcli: add support for NS UUIDs
Add support for setting the Namespace Universally Unique Identifier in
a NVMe over Fabrics namespace.
Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 21 Apr 2017 06:31:31 +0000 (08:31 +0200)]
bump version to v0.4
James Smart [Wed, 12 Apr 2017 23:09:14 +0000 (16:09 -0700)]
Add fc transport support to nvmetcli
Add fc.json file for example FC configuration.
Small text update for FC in examples/documentation
Signed-off-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Yi Zhang [Wed, 12 Apr 2017 11:34:28 +0000 (19:34 +0800)]
nvmetcli: create json file's dir first if it doesn't exist
The saveconfig operation will be failed as the /etc/nvmet dir
doesn't exist by default, so create it first before save operation.
$ ./nvmetcli
/> saveconfig
[Errno 2] No such file or directory: '/etc/nvmet/config.json.temp'
Signed-off-by: Yi Zhang <yizhan@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Mauro S. M. Rodrigues [Wed, 5 Apr 2017 23:49:06 +0000 (20:49 -0300)]
nvmetcli: Install nvmetcli in /usr/sbin with setup.py
According to the README, one can install nvmetcli through setup.py.
When one tries this though, the nvmetcli isn't configured in system's
$PATH.
Adding nvmetcli to scripts argument in setup call does half of the job.
Then, in order to install it in the correct location in a maintanable
way it's introduced setup.cfg file which contains 'install_scripts'
parameter for 'install' command set to /usr/sbin.
Nothing changes on the .deb package creation, the .rpm package process
in the other hand was made simpler by lines that are now done by
setup.py + setup.cfg settings.
Signed-off-by: Mauro S. M. Rodrigues <maurosr@linux.vnet.ibm.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Mauro S. M. Rodrigues [Mon, 27 Mar 2017 17:46:44 +0000 (14:46 -0300)]
nvmetcli: fix Referral operation in shell
It's not possible to create or list a Referral under Port entity,
because Referral class is not imported and thus it fails:
/ports/1/referrals> ls
returning "'module' object has no attribute 'Referral'".
This is caused by changes introduced in:
a21ebd54f0 ("nvmetcli: Fix nvmet import").
This patch also fixes the attribute type helper expected for Referral's
portid attribute. It was 'int', causing the system to show error
messages like:
"'UIReferralNode' object has no attribute 'ui_type_int'".
The correct type is 'number'.
Reviewed-by: Guilherme G. Piccoli<gpiccoli@linux.vnet.ibm.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Mauro S. M. Rodrigues <maurosr@linux.vnet.ibm.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Mauro S. M. Rodrigues [Mon, 27 Mar 2017 17:46:43 +0000 (14:46 -0300)]
nvmetcli: fix Port and Host operations in shell
Operations against Port and Host entities are broken. When performing
operations like the follow:
/ports> create 1
/hosts> create 1
nvmetcli fails, saying the object doesn't have the attribute we're
trying to access, for instance:
'module' object has no attribute 'Port'
This patch fixes this issue by importing the classes Port and Host in
nvmet/__init__.py which was forgotten during the follow change:
a21ebd54f0 ("nvmetcli: Fix nvmet import").
Tested-by: Guilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com>
Tested-by: Sagi Grimberg <sagi@grimberg.m>
Signed-off-by: Mauro S. M. Rodrigues <maurosr@linux.vnet.ibm.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 17 Feb 2017 14:58:54 +0000 (15:58 +0100)]
bump version to v0.3
Christoph Hellwig [Fri, 17 Feb 2017 14:46:43 +0000 (15:46 +0100)]
add a bump-ver.sh script to automate cutting releases
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 17 Feb 2017 14:48:05 +0000 (15:48 +0100)]
update .gitignore for the auto-generated manpage formats
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 17 Feb 2017 14:47:06 +0000 (15:47 +0100)]
add example configuration files
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 1 Dec 2016 09:42:45 +0000 (10:42 +0100)]
nvmetcli: update README
Most usage information has moved to the manpage. Also add a blurb
that bugs reports should go to the linux-nvme list.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Jay Freyensee [Tue, 29 Nov 2016 23:10:59 +0000 (15:10 -0800)]
nvmetcli: Adding manpage/html generation
Signed-off-by: Jay Freyensee <james_p_freyensee@linux.intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Jay Freyensee [Wed, 23 Nov 2016 18:01:12 +0000 (10:01 -0800)]
nvmetcli: add python-six to rpm package building
From experience, if python-six isn't installed on a Fedora
system, hard-to-decipher errors can occur trying to use
nvmetcli.
Signed-off-by: Jay Freyensee <james.p.freyensee@intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Andy Grover [Thu, 13 Oct 2016 00:00:42 +0000 (17:00 -0700)]
nvmetcli: Fix nvmet import
We should just need to import nvmet, which will run __init__.py and import
just the public things from nvmet/nvme.py.
Signed-off-by: Andy Grover <agrover@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Andy Grover [Thu, 13 Oct 2016 00:00:41 +0000 (17:00 -0700)]
Use relative import in nvmet/__init__.py
This is supported by Python 2.7 and later.
Signed-off-by: Andy Grover <agrover@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Jay Freyensee [Thu, 8 Sep 2016 19:14:24 +0000 (12:14 -0700)]
nvmetcli: README description of discovery
Some blurbs on discovery and the connection
between using nvmetcli to set up an NVMe target and
what gets seen by an NVMe Host when accessing
the discovery controller.
Signed-off-by: Jay Freyensee <james_p_freyensee@linux.intel.com>
Jay Freyensee [Thu, 28 Jul 2016 17:37:06 +0000 (10:37 -0700)]
nvmetcli: More refined cleanup of README
Adds a few more tidbits to the README file, minus
discovery/referral info (still WIP).
Signed-off-by: Jay Freyensee <james_p_freyensee@linux.intel.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Jay Freyensee [Thu, 23 Jun 2016 21:41:16 +0000 (14:41 -0700)]
nvmetcli: Updated README to current functionality
Also added a referrals/discovery placeholder TBD section.
Signed-off-by: Jay Freyensee <james_p_freyensee@linux.intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 2 Jun 2016 15:16:05 +0000 (17:16 +0200)]
add RPM packaging
Build and install tested on Fedora 23.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 1 Jun 2016 18:28:47 +0000 (20:28 +0200)]
add a systemd unit file
This restores the configuration when started and clears it when shut down.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 1 Jun 2016 17:09:38 +0000 (19:09 +0200)]
add Debian packaging
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 1 Jun 2016 18:26:27 +0000 (20:26 +0200)]
move the default config into a /etc/nvmet/
no need to clutter /etc directly.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 1 Jun 2016 17:56:01 +0000 (19:56 +0200)]
rename README.md to README
Seems like our code examples aren't valid markdown..
Reported-by: Steve Wise <swise@chelsio.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sun, 29 May 2016 19:15:30 +0000 (21:15 +0200)]
update README and examples
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sun, 29 May 2016 18:44:26 +0000 (20:44 +0200)]
nvmetcli: add descriptions for all configfs attributes
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 26 May 2016 12:58:29 +0000 (14:58 +0200)]
nvmet: remove broken automatic portid assignment
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 25 May 2016 12:31:00 +0000 (14:31 +0200)]
nvmet,nvmetcli: support referrals
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 25 May 2016 12:30:50 +0000 (14:30 +0200)]
nvmet: small fixes and cleanups
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 19 May 2016 14:14:36 +0000 (16:14 +0200)]
nvmet,nvmetcli: support per-port subsystem enablement
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sun, 3 Apr 2016 15:44:35 +0000 (17:44 +0200)]
nvmet,nvmetcli: add support for host NQN based access control
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sun, 3 Apr 2016 15:47:38 +0000 (17:47 +0200)]
nvmetcli: fix a couple see also references
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sun, 3 Apr 2016 15:46:12 +0000 (17:46 +0200)]
nvme: a couple typo fixes
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sun, 3 Apr 2016 15:45:02 +0000 (17:45 +0200)]
nvmet: fix attribute listing
We only want to split at the first underscore, not at any.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 13:06:29 +0000 (14:06 +0100)]
nvmet, nvmetcli: add support for NVMe ports
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sat, 26 Mar 2016 17:28:06 +0000 (18:28 +0100)]
tests: check for invalid subsystem names
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sat, 26 Mar 2016 17:14:02 +0000 (18:14 +0100)]
tests: check that the nguid is properly saved and restored
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sat, 26 Mar 2016 10:38:07 +0000 (11:38 +0100)]
update default config file
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Sat, 26 Mar 2016 10:35:20 +0000 (11:35 +0100)]
nvmet: improve enable semantics
Allow for a None state of the _enable variable, and use that fact to
automatically set up the enabled state in the primary Node class.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 17:45:14 +0000 (18:45 +0100)]
pep8
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 17:44:57 +0000 (18:44 +0100)]
tests: initial version of the testsuite
This requires nose2 and can be run using make test
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 17:19:14 +0000 (18:19 +0100)]
nvmet: reject Namespace and Subsystems lookups without identifier
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 16:29:28 +0000 (17:29 +0100)]
nvmet: fix invalid access to self.subsystems in the Namespace constructor
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 15:00:53 +0000 (16:00 +0100)]
nvmet, nvmetcli: implement enable/disable semantics
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 13:59:01 +0000 (14:59 +0100)]
nvmetcli: improve error reporting
Report a nice error message in red instead of a python backtrace.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 24 Mar 2016 16:19:36 +0000 (17:19 +0100)]
nvmetcli: add description strings for the Namespace class
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 13:53:54 +0000 (14:53 +0100)]
nvmetcli: introduce UINode class
This allows calling saveconfig from each context, and factors some common
group handling code.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 13:49:48 +0000 (14:49 +0100)]
nvmet: make attr_groups public for nvmetcli
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 13:53:37 +0000 (14:53 +0100)]
nvmetcli: remove the unused Controllers and Controller classes
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Fri, 25 Mar 2016 12:14:58 +0000 (13:14 +0100)]
nvmetcli: remove unused DEFAULT_SAVE_FILE defintion
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 24 Mar 2016 15:42:26 +0000 (16:42 +0100)]
Ensure internal buffers are flushed json after dumping json to disk
A power-outage, unexpected reboot, etc can lead to zero byte file
after a saveconfig.
Based on a rtslib-fb patch from Jon Magrini <jmagrini@redhat.com>.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 24 Mar 2016 15:23:47 +0000 (16:23 +0100)]
nvmet: fix up various docstrings
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 24 Mar 2016 15:20:57 +0000 (16:20 +0100)]
nvmetcli: fix up the default config file to agree with the documentation
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Thu, 24 Mar 2016 15:19:58 +0000 (16:19 +0100)]
nvmet: 0 is not a valid namespace ID
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 23 Mar 2016 20:16:16 +0000 (21:16 +0100)]
nvmet: load the nvmet module if not already loaded
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 23 Mar 2016 19:21:07 +0000 (20:21 +0100)]
nvmetcli: print a useful warning when not called as root user
Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig [Wed, 16 Mar 2016 16:44:56 +0000 (17:44 +0100)]
initial public release