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
cinder volume service keeps retrying even code exception

Make sure that ProcessLauncher does not try to restart the failed
service. And make sure the ProcessLauncher exits, when the number
of the failed services equal the number of total services.

Fixes: bug 1167841
Change-Id: I818c754534c18a62d292e21f0c98086571fe0565
Cinder wasn't filtering the backups returned to backup list API

This has the side effect of return all backups in the system (regardless of
who created them) to the user. You should only see the backups created in your
current active project.

Fixes bug: 1169461

Change-Id: I121e8ed215b28f1b21e24b2104f8294039e09b48
Update to latest copy of OSLO incubator

Specifically I wanted the change be84db3ab24ef94b6ec457bb299d48c51575e8a6
to oslo-incubator to fix my logging issue.

I ignored the changes in common/policy.py as this change breaks
the cinder unit tests.

Fixes bug: 1170038

Change-Id: Id72417d58c8f4bf139aa082131154153a175689d
Remove duplicate method definition

This is defined similarly just a few lines above, so
remove duplicate (outdated) instance.

Change-Id: Id2eeb8c4d12fa2d16eb22f85fc22c47619233c22
Add stats reporting to Nexenta Driver

Nexenta driver was never updated to report stats.
This change doesn't include support for backend_name assignment
via configs, there's some other work that will need to be
done to enable that.

Fixes bug: 1166607

Change-Id: Id9cfff24df8815a67e42393aa18fd41ac1b9e6b3
Avoid using whitespace in test_safe_parse_xml.

Updates the test_safe_parse_xml test case in
cinder.tests.test_utils.GenericUtilsTestCase to avoid using
whitespaces and to ignore extraneous newlines returned in the
parsed XML.  This is required to work around differences in
the output from minidom in python 2.6.

Fixes LP Bug #1172352.

Change-Id: I48bdf3cb8eed3e65f7ceaeb1c2b19aa529c930d0
Fixes 3PAR FC driver synchronization

While running  stress tests we found missing synchronized methods.
This patch added synchronized anotations around the necessary
methods.

Fixes bug 1172503

Change-Id: I8e475fe38d96ca663fbaac40c5a50420d791f5d5
Merge "Remove duplicate method definition"
Merge "Add stats reporting to Nexenta Driver"
Clear volumes stuck in 'downloading'

If the CinderVolume service is restarted while an image-copy is
happening, the volume gets left in a 'downloading' state and
cannot be used or deleted. This fix adds code to init_host to
look for volumes (on this host) in such a state, and move them
to an error state. It also calls clear_download in the driver
in case the driver needs to perform an action, such as
detaching the volume.

Fixes Bug #1172645

Change-Id: Ia5dab9ebf997f573c0b4e57d983f5996af81ede5
Encode username and password in config file

Encode username and password in xml file with base64.
And change lun owning controller when attaching
the lun to get better performance.

Fixes bug: 1136892
Change-Id: Iad79d1ec1651e3582b86e865f0342fdc55065134
Remove _path_exists method.

This method is buggy because it works only on host machine with english language, and
apparently this method is also useless because we don't need to check if a path exist if
we can use command option -p for "mkdir" command and option -f for "rm" command.

bug: LP#1172777
Change-Id: I418b32772ca97b42e1a43275a7abec9f96688607
Merge "Encode username and password in config file"
Merge "Fixes 3PAR FC driver synchronization"
Merge "Update to latest copy of OSLO incubator"
Merge "Clear volumes stuck in 'downloading'"
Merge "Remove _path_exists method."
Merge "Cinder wasn't filtering the backups returned to backup list API"
Merge "cinder volume service keeps retrying even code exception"