Fixes 3par driver methods that were double locking

There were many cases where the 3par drivers(FC and iSCSI) were double
locking, e.g. we were locking in the individual driver and in ‘common’.
This patch set removes all the locks in ‘common’ except the one on
‘create_cloned_volume’.

The methods ’_get_volume_state’ and ‘_copy_volume’ are only called in
‘create_cloned_volume’, so those locks were removed as well. All the other
methods in ‘common’ are only called by the driver which provide the lock,
except ‘create_volume’ which is also called by ‘create_cloned_volume’.

Change-Id: I660fbd04824bd2837e06480c8298ea5a709fc82a
Fixes: bug 1175791
Fixes dettach volumes in Windows cinder plugin

The patch fixes issues when desassigning target to initiators
in the terminate_connection method. The method now takes
the right parameter coming from provider location.

Change-Id: I2ea1ac7f46e3a24a6493af8eba46a113126e1117
Fixes: bug #1153968
Implement get_volume_stats in NFS driver

Use the already existing code (ie: _get_available_capacity) to
implement get_volume_stats in the nfs driver

Change the netapp nfs driver to use this new implementation
instead of the dumb one.

Fixes bug #1152501

Change-Id: Ie16d9628ba4b096c60966b4aa6192fbdcb9a4f20
Switch all uses of 422 response code to 400.

The 422 response is normally only for WebDAV, and these types of
errors should normally return a 400 code, HTTPBadRequest. This
commit goes through all the remaining 422 codes and changes them
to 400 responses.

Fixes bug 1153807

Change-Id: I9bf49643763c2cb0ac585641056c85a060152e36
Bump version for Grizzly RC1 cut

Change-Id: Ibec70d74c26e47caa5de7ef943ffa81c9386d7ae
Merge "Bump version for Grizzly RC1 cut"
Use self.configuration to support the multi-backend case

Use self.configuration instead of using FLAGS directly to make
the driver work in a multi backend environment.
And remove three repeated lines:en = out.split('\r\n')

Fixes bug: 1154125

Change-Id: I6e08706104eabb71677ec8583b9abb9711553504
Fix typo in persona valid values

The 3PAR drivers have a persona extra spec that has a valid
values with a typo in it. The value '11 - VMWare' should be
"11 - VMware', note the lower case 'w'.

Fixes bug 1155781

Change-Id: I70ab255e1ec6a4b83437b072a7eb4fe11eafc710
Clean up exec_dirs prefix from rootwrap conf

Specifying the full path to binaries in exec_dirs
is not necessary and actually causes a problem if
the binary is in a different path. The rootwrap
infrastructure allows the binaries to be in all
paths specified by exec_dirs.

Change-Id: Ic16a779e916cd3b727db54b034d069c122aa45df
Merge "Use self.configuration to support the multi-backend case"
Merge "Fixes dettach volumes in Windows cinder plugin"
Pull Oslo log fix to enable root logger initialization

Previous log module in Oslo doesn't initialize root logger, which results
in lacking of log message for non-openstack library (such as stevedore).
This patch pull latest log module from Oslo, which has recently merged a
change to enable root logger initialization.

Notice that this change also includes one log modules fix in Oslo which
'unignore' log_format setting.  As a result, one may experience log format
change when using devstack.  To get old log format back, simply assign
a NULL string (aka nothing) to 'log_format' configure option in cinder.conf.
For example, just append cinder.conf with one new line 'log_format = '.

Fix bug: # 1131322

Change-Id: I86396f15ca152512ce6d18d6d424a855b27f495e
Allow snapshot_delete for NFS/GlusterFS drivers

RemoteFsDriver should allow snapshot_delete, since snapshot_create
for NFS and GlusterFS volumes will create a snapshot in the error
state which cannot be deleted afterward.

snapshot_delete() should allow this to be removed rather than
throwing NotImplementedError.

Fixes bug: 1156686

Change-Id: I4307878fa97fbce5bd733a83fa172509e2fba8ce
Remove references to FLAGS from volume/manager.py

Note that we still must import flags.py because volume_topic is defined
in the list global_opts in flags.py.

Fixes bug #1153551

Change-Id: I3d37bde4ba895c110390cea92385344ff94cb7d1
Merge "Clean up exec_dirs prefix from rootwrap conf"
Fix Storwize/SVC LUN allocation with holes.

The Storwize/SVC driver should find the first unused LUN, but
continues searching, returning erroneous results.  Added 'break'
statement to fix.

Change-Id: Ibd95714e086a513a39fe9d20ffec57135dc5ec55
Fixes: bug 1157012
Merge "Implement get_volume_stats in NFS driver"
Remove AGPL rtslib pkg from pip-requires.

Fixes bug: 1157091

Change-Id: I1879712ab33324740496b284500fa2b22a1bc310
CoraidDriver: retrive volume info (improvement)

Some portions of code into this method are useless since
the REST API on Coraid side has been improved.

Fixes bug #1157242

Change-Id: Ie37b5b76710e77acb2acf627c9688e4f931e686c
Add snapshots to the volume usage audit report

* Added tests for db api call volume_get_active_by_window called by the volume
usage audit report.

* Added new db api called snapshot_get_active_by_window & test it. This is
similar to the volume_get_active_by_window method but returns the snapshots
 active the supplied time window.

* Integrate the above into the cinder-volume-usage-audit script to report on
  all the active snapshots as well as volumes in the specified time frame.

Fixes: bug #1157110

Change-Id: I7597da20c62150a8f6c74cbfeec159f68064d2a6