Hello community,
here is the log from the commit of package libstorage for openSUSE:13.1 checked in at 2013-09-29 17:49:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.1/libstorage (Old)
and /work/SRC/openSUSE:13.1/.libstorage.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libstorage"
Changes:
--------
--- /work/SRC/openSUSE:13.1/libstorage/libstorage.changes 2013-09-23 10:58:58.000000000 +0200
+++ /work/SRC/openSUSE:13.1/.libstorage.new/libstorage.changes 2013-09-29 17:49:47.000000000 +0200
@@ -1,0 +2,6 @@
+Wed Sep 25 15:06:46 CEST 2013 - fehr@suse.de
+
+- version 2.24.5
+- add code to support named raids (fate#315590)
+
+-------------------------------------------------------------------
Old:
----
libstorage-2.24.4.tar.bz2
New:
----
libstorage-2.24.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libstorage.spec ++++++
--- /var/tmp/diff_new_pack.bBEvrh/_old 2013-09-29 17:49:47.000000000 +0200
+++ /var/tmp/diff_new_pack.bBEvrh/_new 2013-09-29 17:49:47.000000000 +0200
@@ -17,7 +17,7 @@
Name: libstorage
-Version: 2.24.4
+Version: 2.24.5
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: libstorage-%{version}.tar.bz2
++++++ libstorage-2.24.4.tar.bz2 -> libstorage-2.24.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/VERSION new/libstorage-2.24.5/VERSION
--- old/libstorage-2.24.4/VERSION 2013-09-13 11:11:49.000000000 +0200
+++ new/libstorage-2.24.5/VERSION 2013-09-25 17:06:50.000000000 +0200
@@ -1 +1 @@
-2.24.4
+2.24.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/bindings/python/libstorage.py new/libstorage-2.24.5/bindings/python/libstorage.py
--- old/libstorage-2.24.4/bindings/python/libstorage.py 2013-09-13 11:25:30.000000000 +0200
+++ new/libstorage-2.24.5/bindings/python/libstorage.py 2013-09-26 11:32:28.000000000 +0200
@@ -1432,6 +1432,7 @@
MD_INVALID_PARITY = _libstorage.MD_INVALID_PARITY
MD_TOO_MANY_SPARES = _libstorage.MD_TOO_MANY_SPARES
MD_GET_STATE_FAILED = _libstorage.MD_GET_STATE_FAILED
+MD_DUPLICATE_NAME = _libstorage.MD_DUPLICATE_NAME
MDPART_CHANGE_READONLY = _libstorage.MDPART_CHANGE_READONLY
MDPART_INTERNAL_ERR = _libstorage.MDPART_INTERNAL_ERR
MDPART_INVALID_VOLUME = _libstorage.MDPART_INVALID_VOLUME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/LvmVg.cc new/libstorage-2.24.5/storage/LvmVg.cc
--- old/libstorage-2.24.4/storage/LvmVg.cc 2013-08-12 15:16:51.000000000 +0200
+++ new/libstorage-2.24.5/storage/LvmVg.cc 2013-09-23 13:21:50.000000000 +0200
@@ -974,7 +974,7 @@
LvmLvPair p=lvmLvPair(lvDeleted);
for( LvmLvIter i=p.begin(); i!=p.end(); ++i )
{
- cout << "Deleted:" << *i << endl;
+ //cout << "Deleted:" << *i << endl;
if( !i->isThin() )
{
map pe_map = i->getPeMap();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/Md.cc new/libstorage-2.24.5/storage/Md.cc
--- old/libstorage-2.24.4/storage/Md.cc 2013-08-12 15:16:51.000000000 +0200
+++ new/libstorage-2.24.5/storage/Md.cc 2013-09-25 17:06:50.000000000 +0200
@@ -45,12 +45,18 @@
: Volume(c, name, device), md_type(Type), md_parity(PAR_DEFAULT), chunk_k(0),
sb_ver("01.00.00"), destrSb(false), devs(devices), spare(spares), has_container(false), inactive(false)
{
- y2deb("constructed Md " << dev << " on " << cont->device());
+ y2mil("constructed Md " << dev << " on " << cont->device());
assert(c.type() == MD);
- numeric = true;
- mdStringNum(name, num);
+ numeric = !boost::starts_with( device, "/dev/md/" );
+ if( !numeric )
+ {
+ nm = device.substr(8);
+ num = 0;
+ }
+ else
+ mdStringNum(name, num);
getStorage()->addUsedBy(devs, UB_MD, dev);
getStorage()->addUsedBy(spares, UB_MD, dev);
@@ -63,7 +69,7 @@
: Volume(c, name, device, systeminfo), md_type(RAID_UNK), md_parity(PAR_DEFAULT),
chunk_k(0), sb_ver("01.00.00"), destrSb(false), has_container(false), inactive(false)
{
- y2deb("constructed Md " << device << " on " << cont->device());
+ y2mil("constructed Md " << device << " on " << cont->device());
assert(c.type() == MD);
@@ -120,6 +126,14 @@
{
md_uuid = details.uuid;
md_name = details.devname;
+ if( !md_name.empty() )
+ {
+ numeric=false;
+ nm = md_name;
+ dev = "/dev/md/"+md_name;
+ alt_names.remove(dev);
+ alt_names.push_back( mdDevice(mnr) );
+ }
}
getStorage()->addUsedBy(devs, UB_MD, dev);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/MdCo.cc new/libstorage-2.24.5/storage/MdCo.cc
--- old/libstorage-2.24.4/storage/MdCo.cc 2013-01-22 11:28:07.000000000 +0100
+++ new/libstorage-2.24.5/storage/MdCo.cc 2013-09-25 17:06:50.000000000 +0200
@@ -106,11 +106,11 @@
bool
-MdCo::findMd( unsigned num, MdIter& i )
+MdCo::findMd( const string& dev, MdIter& i )
{
MdPair p=mdPair(Md::notDeleted);
i=p.begin();
- while( i!=p.end() && i->nr()!=num )
+ while( i!=p.end() && i->device()!=dev )
++i;
return( i!=p.end() );
}
@@ -123,15 +123,9 @@
}
bool
-MdCo::findMd( const string& dev, MdIter& i )
+MdCo::findMd( unsigned num, MdIter& i )
{
- unsigned num;
- if( Md::mdStringNum(dev,num) )
- {
- return( findMd( num, i ));
- }
- else
- return( false );
+ return( findMd( Md::mdDevice(num), i ));
}
bool
@@ -154,19 +148,35 @@
return nums;
}
+int MdCo::getNameNum( const string& dev, string& nm, unsigned& num )
+ {
+ int ret=0;
+ num = 0;
+ nm.clear();
+ if( boost::starts_with(dev, "/dev/md/"))
+ nm = dev.substr(8);
+ else if( !Md::mdStringNum( dev, num ))
+ ret = STORAGE_MD_INVALID_NAME;
+ else if( num>255 )
+ ret = MD_NUMBER_TOO_LARGE;
+ return( ret );
+ }
+
int
-MdCo::createMd(unsigned num, MdType type, const list<string>& devs, const list<string>& spares)
+MdCo::createMd(const string& dev, MdType type, const list<string>& devs, const list<string>& spares)
{
int ret = 0;
- y2mil("num:" << num << " type:" << toString(type) << " devs:" << devs << " spares:" << spares);
+ string nm;
+ unsigned num;
+ y2mil("dev:" << dev << " type:" << toString(type) << " devs:" << devs << " spares:" << spares);
if( readonly() )
{
ret = MD_CHANGE_READONLY;
}
- if( ret==0 && num>=256 )
+ if( ret==0 )
{
- ret = MD_NUMBER_TOO_LARGE;
+ ret = getNameNum( dev, nm, num );
}
if( ret==0 && type==RAID_UNK )
{
@@ -174,17 +184,18 @@
}
if( ret==0 )
{
- if( findMd( num ))
+ if( nm.empty() && findMd( num ))
ret = MD_DUPLICATE_NUMBER;
+ else if( findMd( dev ))
+ ret = MD_DUPLICATE_NAME;
}
-
if (ret == 0)
ret = checkUse(devs, spares);
-
if( ret==0 )
{
- string name = "md" + decString(num);
- Md* m = new Md(*this, name, "/dev/" + name, type, devs, spares);
+ if( nm.empty() )
+ nm = "md" + decString(num);
+ Md* m = new Md(*this, nm, dev, type, devs, spares);
m->setCreated( true );
addToList( m );
}
@@ -222,12 +233,12 @@
int
-MdCo::checkMd( unsigned num )
+MdCo::checkMd( const string& dev )
{
int ret = 0;
- y2mil("num:" << num);
+ y2mil("dev:" << dev);
MdIter i;
- if( !findMd( num, i ) )
+ if( !findMd( dev, i ) )
ret = MD_DEVICE_UNKNOWN;
else if( i->created() )
ret = i->checkDevices();
@@ -236,10 +247,10 @@
}
int
-MdCo::extendMd(unsigned num, const list<string>& devs, const list<string>& spares)
+MdCo::extendMd(const string& dev, const list<string>& devs, const list<string>& spares)
{
int ret = 0;
- y2mil("num:" << num << " devs:" << devs << " spares:" << spares);
+ y2mil("dev:" << dev << " devs:" << devs << " spares:" << spares);
MdIter i;
if( readonly() )
{
@@ -251,7 +262,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && !i->created() )
@@ -279,10 +290,10 @@
}
int
-MdCo::updateMd(unsigned num, const list<string>& devs, const list<string>& spares)
+MdCo::updateMd(const string& dev, const list<string>& devs, const list<string>& spares)
{
int ret = 0;
- y2mil("num:" << num << " devs:" << devs << " spares:" << spares);
+ y2mil("dev:" << dev << " devs:" << devs << " spares:" << spares);
MdIter i;
if( readonly() )
{
@@ -290,7 +301,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && !i->created() )
@@ -320,19 +331,15 @@
if ((ret = i->addDevice(*it, true)) != 0)
break;
}
- if( ret==0 && !getStorage()->isDisk(dev) )
- {
- getStorage()->changeFormatVolume( dev, false, FSNONE );
- }
y2mil("ret:" << ret);
return( ret );
}
int
-MdCo::shrinkMd(unsigned num, const list<string>& devs, const list<string>& spares)
+MdCo::shrinkMd(const string& dev, const list<string>& devs, const list<string>& spares)
{
int ret = 0;
- y2mil("num:" << num << " devs:" << devs << " spares:" << spares);
+ y2mil("dev:" << dev << " devs:" << devs << " spares:" << spares);
MdIter i;
if( readonly() )
{
@@ -340,7 +347,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && !i->created() )
@@ -364,10 +371,10 @@
}
int
-MdCo::changeMdType( unsigned num, MdType ptype )
+MdCo::changeMdType( const string& dev, MdType ptype )
{
int ret = 0;
- y2mil("num:" << num << " md_type:" << toString(ptype));
+ y2mil("dev:" << dev << " md_type:" << toString(ptype));
MdIter i;
if( readonly() )
{
@@ -375,7 +382,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && !i->created() )
@@ -391,10 +398,10 @@
}
int
-MdCo::changeMdChunk( unsigned num, unsigned long chunk )
+MdCo::changeMdChunk( const string& dev, unsigned long chunk )
{
int ret = 0;
- y2mil("num:" << num << " chunk:" << chunk);
+ y2mil("dev:" << dev << " chunk:" << chunk);
MdIter i;
if( readonly() )
{
@@ -402,7 +409,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && !i->created() )
@@ -418,10 +425,10 @@
}
int
-MdCo::changeMdParity( unsigned num, MdParity ptype )
+MdCo::changeMdParity( const string& dev, MdParity ptype )
{
int ret = 0;
- y2mil("num:" << num << " parity:" << toString(ptype));
+ y2mil("dev:" << dev << " parity:" << toString(ptype));
MdIter i;
if( readonly() )
{
@@ -429,7 +436,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && !i->created() )
@@ -445,13 +452,13 @@
}
int
-MdCo::getMdState(unsigned num, MdStateInfo& info)
+MdCo::getMdState(const string& dev, MdStateInfo& info)
{
int ret = 0;
MdIter i;
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if( ret==0 && i->created() )
@@ -467,10 +474,10 @@
}
int
-MdCo::removeMd( unsigned num, bool destroySb )
+MdCo::removeMd( const string& dev, bool destroySb )
{
int ret = 0;
- y2mil("num:" << num);
+ y2mil("dev:" << dev);
MdIter i;
if( readonly() )
{
@@ -478,7 +485,7 @@
}
if( ret==0 )
{
- if( !findMd( num, i ))
+ if( !findMd( dev, i ))
ret = MD_UNKNOWN_NUMBER;
}
if (ret == 0 && i->isUsedBy())
@@ -508,11 +515,7 @@
{
int ret = 0;
y2mil("name:" << v->name());
- Md * m = dynamic_cast(v);
- if( m != NULL )
- ret = removeMd( v->nr() );
- else
- ret = MD_REMOVE_INVALID_VOLUME;
+ ret = removeMd( v->device() );
return( ret );
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/MdCo.h new/libstorage-2.24.5/storage/MdCo.h
--- old/libstorage-2.24.4/storage/MdCo.h 2013-01-22 11:28:07.000000000 +0100
+++ new/libstorage-2.24.5/storage/MdCo.h 2013-09-25 17:06:50.000000000 +0200
@@ -45,16 +45,16 @@
static storage::CType staticType() { return storage::MD; }
friend std::ostream& operator<< (std::ostream&, const MdCo& );
- int createMd(unsigned num, MdType type, const list<string>& devs, const list<string>& spares);
- int removeMd( unsigned num, bool destroySb=true );
- int extendMd(unsigned num, const list<string>& devs, const list<string>& spares);
- int updateMd(unsigned num, const list<string>& devs, const list<string>& spares);
- int shrinkMd(unsigned num, const list<string>& devs, const list<string>& spares);
- int changeMdType( unsigned num, storage::MdType ptype );
- int changeMdChunk( unsigned num, unsigned long chunk );
- int changeMdParity( unsigned num, storage::MdParity ptype );
- int checkMd( unsigned num );
- int getMdState(unsigned num, MdStateInfo& info);
+ int createMd(const string& dev, MdType type, const list<string>& devs, const list<string>& spares);
+ int removeMd(const string& dev, bool destroySb=true );
+ int extendMd(const string& dev, const list<string>& devs, const list<string>& spares);
+ int updateMd(const string& dev, const list<string>& devs, const list<string>& spares);
+ int shrinkMd(const string& dev, const list<string>& devs, const list<string>& spares);
+ int changeMdType( const string& dev, storage::MdType ptype );
+ int changeMdChunk( const string& dev, unsigned long chunk );
+ int changeMdParity( const string& dev, storage::MdParity ptype );
+ int checkMd( const string& dev );
+ int getMdState(const string& dev, MdStateInfo& info);
bool equalContent( const Container& rhs ) const;
virtual void logDifferenceWithVolumes(std::ostream& log, const Container& rhs) const;
@@ -64,6 +64,7 @@
void changeDeviceName( const string& old, const string& nw );
static void activate(bool val, const string& tmpDir);
+ static int getNameNum( const string& dev, string& nm, unsigned& num );
int removeVolume( Volume* v );
/* returns in 'nums' numbers that are used by Md */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/Storage.cc new/libstorage-2.24.5/storage/Storage.cc
--- old/libstorage-2.24.4/storage/Storage.cc 2013-08-22 12:32:57.000000000 +0200
+++ new/libstorage-2.24.5/storage/Storage.cc 2013-09-26 11:19:36.000000000 +0200
@@ -3931,19 +3931,10 @@
int ret = 0;
assertInit();
y2mil("name:" << name << " MdType:" << toString(rtype) << " devices:" << devs << " spares:" << spares);
- unsigned num = 0;
if (readonly())
{
ret = STORAGE_CHANGE_READONLY;
}
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
- if( ret==0 && !checkMdNumber(num) )
- {
- ret = MD_DUPLICATE_NUMBER;
- }
MdCo *md = NULL;
bool have_md = true;
if( ret==0 )
@@ -3954,7 +3945,7 @@
}
if( ret==0 && md!=NULL )
{
- ret = md->createMd(num, rtype, normalizeDevices(devs), normalizeDevices(spares));
+ ret = md->createMd(name, rtype, normalizeDevices(devs), normalizeDevices(spares));
}
if( !have_md )
{
@@ -3964,7 +3955,7 @@
delete md;
}
if( ret==0 )
- checkPwdBuf( Md::mdDevice(num) );
+ checkPwdBuf( name );
if( ret==0 )
{
ret = checkCache();
@@ -4000,7 +3991,7 @@
}
if( ret==0 )
{
- ret = md->createMd(num, rtype, normalizeDevices(devs), normalizeDevices(spares));
+ ret = md->createMd(device, rtype, normalizeDevices(devs), normalizeDevices(spares));
}
if( !have_md )
{
@@ -4012,7 +4003,7 @@
delete md;
}
if( ret==0 )
- checkPwdBuf( Md::mdDevice(num) );
+ checkPwdBuf( device );
if( ret==0 )
{
ret = checkCache();
@@ -4030,16 +4021,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->removeMd( num, destroySb );
+ ret = md->removeMd( name, destroySb );
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4060,16 +4046,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->extendMd(num, normalizeDevices(devs), normalizeDevices(spares));
+ ret = md->extendMd(name, normalizeDevices(devs), normalizeDevices(spares));
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4090,16 +4071,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->updateMd(num, normalizeDevices(devs), normalizeDevices(spares));
+ ret = md->updateMd(name, normalizeDevices(devs), normalizeDevices(spares));
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4120,16 +4096,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->shrinkMd(num, normalizeDevices(devs), normalizeDevices(spares));
+ ret = md->shrinkMd(name, normalizeDevices(devs), normalizeDevices(spares));
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4150,16 +4121,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->changeMdType( num, rtype );
+ ret = md->changeMdType( name, rtype );
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4180,16 +4146,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->changeMdChunk( num, chunk );
+ ret = md->changeMdChunk( name, chunk );
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4210,16 +4171,11 @@
{
ret = STORAGE_CHANGE_READONLY;
}
- unsigned num = 0;
- if( ret==0 && !Md::mdStringNum( name, num ))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if( ret==0 )
{
MdCo *md = NULL;
if( haveMd(md) )
- ret = md->changeMdParity( num, ptype );
+ ret = md->changeMdParity( name, ptype );
else
ret = STORAGE_MD_NOT_FOUND;
}
@@ -4236,10 +4192,9 @@
int ret = 0;
assertInit();
y2mil("name:" << name);
- unsigned num = 0;
MdCo *md = NULL;
- if( Md::mdStringNum( name, num ) && haveMd(md) )
- ret = md->checkMd(num);
+ if( haveMd(md) )
+ ret = md->checkMd(name);
else
ret = STORAGE_MD_NOT_FOUND;
y2mil("ret:" << ret);
@@ -4252,16 +4207,11 @@
int ret = 0;
assertInit();
y2mil("name:" << name);
- unsigned num = 0;
- if (ret == 0 && !Md::mdStringNum(name, num))
- {
- ret = STORAGE_MD_INVALID_NAME;
- }
if (ret == 0)
{
MdCo *md = NULL;
if (haveMd(md))
- ret = md->getMdState(num, info);
+ ret = md->getMdState(name, info);
else
ret = STORAGE_MD_NOT_FOUND;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/StorageInterface.h new/libstorage-2.24.5/storage/StorageInterface.h
--- old/libstorage-2.24.4/storage/StorageInterface.h 2013-08-12 10:41:50.000000000 +0200
+++ new/libstorage-2.24.5/storage/StorageInterface.h 2013-09-25 17:06:50.000000000 +0200
@@ -838,6 +838,7 @@
MD_INVALID_PARITY = -6021,
MD_TOO_MANY_SPARES = -6022,
MD_GET_STATE_FAILED = -6023,
+ MD_DUPLICATE_NAME = -6024,
MDPART_CHANGE_READONLY = -6100,
MDPART_INTERNAL_ERR = -6101,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/Volume.cc new/libstorage-2.24.5/storage/Volume.cc
--- old/libstorage-2.24.4/storage/Volume.cc 2013-08-12 15:16:51.000000000 +0200
+++ new/libstorage-2.24.5/storage/Volume.cc 2013-09-25 17:06:50.000000000 +0200
@@ -410,6 +410,8 @@
return( *static_cast(this) <
*static_cast(&rhs) );
}
+ else if( numeric!=rhs.numeric )
+ return( numeric );
else if( (numeric && num!=rhs.num) || (!numeric && nm != rhs.nm) )
{
if( numeric )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.24.4/storage/gen_md5sum.cc new/libstorage-2.24.5/storage/gen_md5sum.cc
--- old/libstorage-2.24.4/storage/gen_md5sum.cc 2013-09-10 12:33:18.000000000 +0200
+++ new/libstorage-2.24.5/storage/gen_md5sum.cc 2013-09-26 11:25:49.000000000 +0200
@@ -1,5 +1,5 @@
-#define SOURCES_MD5SUM "7bb9bf00d5213abfb1af55d0f4810110"
-#define SOURCES_MD5_DATE " Tue Sep 10 12:33:18 CEST 2013 "
+#define SOURCES_MD5SUM "310fb3595c8b2740efd1d5c877a7ffec"
+#define SOURCES_MD5_DATE " Thu Sep 26 11:25:49 CEST 2013 "
namespace storage
{
const char* GetSourceMd5() { return SOURCES_MD5SUM; }
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org