Hello community, here is the log from the commit of package libstorage for openSUSE:Factory checked in at Thu Aug 25 14:24:31 CEST 2011. -------- --- libstorage/libstorage.changes 2011-08-11 17:38:57.000000000 +0200 +++ /mounts/work_src_done/STABLE/libstorage/libstorage.changes 2011-08-25 13:09:40.000000000 +0200 @@ -1,0 +2,12 @@ +Wed Aug 24 16:55:01 CEST 2011 - fehr@suse.de + +- use new "gpt_sync_mbr" only on non-EFI systems, on EFI systems + plain "gpt" is used (bnc#710402) +- version 2.21.5 + +------------------------------------------------------------------- +Tue Aug 23 12:13:48 CEST 2011 - fehr@suse.de + +- add option "-P _part" to make dmraid decativate raid (bnc#712671) + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- libstorage-2.21.4.tar.bz2 New: ---- libstorage-2.21.5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libstorage.spec ++++++ --- /var/tmp/diff_new_pack.ODwv6X/_old 2011-08-25 14:20:01.000000000 +0200 +++ /var/tmp/diff_new_pack.ODwv6X/_new 2011-08-25 14:20:01.000000000 +0200 @@ -19,7 +19,7 @@ Name: libstorage -Version: 2.21.4 +Version: 2.21.5 Release: 1 License: GPL Group: System/Libraries ++++++ libstorage-2.21.4.tar.bz2 -> libstorage-2.21.5.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/VERSION new/libstorage-2.21.5/VERSION --- old/libstorage-2.21.4/VERSION 2011-08-11 11:31:23.000000000 +0200 +++ new/libstorage-2.21.5/VERSION 2011-08-25 13:03:00.000000000 +0200 @@ -1 +1 @@ -2.21.4 +2.21.5 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/storage/BtrfsCo.cc new/libstorage-2.21.5/storage/BtrfsCo.cc --- old/libstorage-2.21.4/storage/BtrfsCo.cc 2011-08-09 15:39:44.000000000 +0200 +++ new/libstorage-2.21.5/storage/BtrfsCo.cc 2011-08-15 17:00:30.000000000 +0200 @@ -87,11 +87,20 @@ Volume const* cv = NULL; unsigned long long sum_size = 0; list<string> an; + bool forbidden = false; for( list<string>::const_iterator d=e.devices.begin(); d!=e.devices.end(); ++d ) { Volume const* v; if( getStorage()->findVolume( *d, v )) { + list<UsedBy> ub = v->getUsedBy(); + for( list<UsedBy>::const_iterator i=ub.begin(); + i!=ub.end(); ++i ) + { + forbidden = i->type()!=UB_BTRFS; + } + if( !ub.empty() ) + y2mil( "used_by:" << ub ); if( cv==NULL || (cv->getMount().empty() && !v->getMount().empty()) || (!cv->getFormat() && v->getFormat() )) @@ -104,15 +113,22 @@ y2war( "device " << *d << " not found" ); } list<string> devs; - for( list<string>::const_iterator i=e.devices.begin(); i!=e.devices.end(); ++i ) + if( forbidden ) + cv = NULL; + else { - const Device* v; - if( getStorage()->findDevice( *i, v ) ) - devs.push_back( v->device() ); - else - devs.push_back( *i ); + for( list<string>::const_iterator i=e.devices.begin(); + i!=e.devices.end(); ++i ) + { + const Device* v; + if( getStorage()->findDevice( *i, v ) ) + devs.push_back( v->device() ); + else + devs.push_back( *i ); + } } - y2mil( "cv:" << cv << " sum:" << sum_size << " devs:" << devs ); + y2mil( "forbidden:" << forbidden << " cv:" << cv << + " sum:" << sum_size << " devs:" << devs ); if( cv!=NULL ) { Btrfs* b = new Btrfs( *this, *cv, sum_size, devs ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/storage/Disk.cc new/libstorage-2.21.5/storage/Disk.cc --- old/libstorage-2.21.4/storage/Disk.cc 2011-07-28 12:34:30.000000000 +0200 +++ new/libstorage-2.21.5/storage/Disk.cc 2011-08-24 16:59:00.000000000 +0200 @@ -1574,7 +1574,17 @@ cmd_line << MDADMBIN " --zero-superblock --force " << quote(device()); execCheckFailed( cmd_line.str() ); cmd_line.str(""); - cmd_line << PARTEDCMD << quote(device()) << " mklabel " << label; + string lab(label); + if( lab=="gpt" ) + { + const ArchInfo& ai = getStorage()->getArchInfo(); + if( !ai.is_efiboot && (ai.arch=="i386" || ai.arch=="x86_64")) + { + y2mil( "efi:" << ai.is_efiboot << " arch:" << ai.arch ); + lab = LABEL_GPT_SYNC_MBR; + } + } + cmd_line << PARTEDCMD << quote(device()) << " mklabel " << lab; if( execCheckFailed( cmd_line.str() ) ) { ret = DISK_SET_LABEL_PARTED_FAILED; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/storage/DmraidCo.cc new/libstorage-2.21.5/storage/DmraidCo.cc --- old/libstorage-2.21.4/storage/DmraidCo.cc 2010-11-03 12:41:22.000000000 +0100 +++ new/libstorage-2.21.5/storage/DmraidCo.cc 2011-08-23 12:15:03.000000000 +0200 @@ -203,7 +203,7 @@ } else { - c.execute(DMRAIDBIN " -an"); + c.execute(DMRAIDBIN " -an -P _part"); } active = val; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/storage/Parted.cc new/libstorage-2.21.5/storage/Parted.cc --- old/libstorage-2.21.4/storage/Parted.cc 2011-05-26 13:56:58.000000000 +0200 +++ new/libstorage-2.21.5/storage/Parted.cc 2011-08-24 16:59:00.000000000 +0200 @@ -45,6 +45,8 @@ label = extractNthWord(2, cmd.getLine(0, true)); if (label == "unknown") label.clear(); + else if(label == LABEL_GPT_SYNC_MBR) + label = "gpt"; } else y2war("could not find partition table"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/storage/StorageDefines.h new/libstorage-2.21.5/storage/StorageDefines.h --- old/libstorage-2.21.4/storage/StorageDefines.h 2011-01-19 17:10:23.000000000 +0100 +++ new/libstorage-2.21.5/storage/StorageDefines.h 2011-08-24 16:59:01.000000000 +0200 @@ -30,6 +30,7 @@ #define PARTEDBIN "/usr/sbin/parted" #define PARTEDCMD PARTEDBIN " -s " // blank at end !! +#define LABEL_GPT_SYNC_MBR "gpt_sync_mbr" #define ADDPARTBIN "/usr/sbin/addpart" #define DELPARTBIN "/usr/sbin/delpart" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.21.4/storage/Volume.cc new/libstorage-2.21.5/storage/Volume.cc --- old/libstorage-2.21.4/storage/Volume.cc 2011-08-10 16:42:40.000000000 +0200 +++ new/libstorage-2.21.5/storage/Volume.cc 2011-08-23 15:02:14.000000000 +0200 @@ -2775,7 +2775,8 @@ l.push_front( lstr ); if( l.size()>1 && (enc=find( l.begin(), l.end(), "defaults" ))!=l.end() ) l.erase(enc); - + // FIXME: temporary code that circumvents currently failing subvol=... option + l.remove_if( string_starts_with("subvol=") ); return l; } ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org