Author: aschnell Date: Tue Jan 19 18:11:26 2010 New Revision: 60452 URL: http://svn.opensuse.org/viewcvs/yast?rev=60452&view=rev Log: - zero newly created partitions on DASDs (bnc #571828) Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Dasd.cc branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Disk.cc branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.cc branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.h branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Dasd.cc URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Dasd.cc?rev=60452&r1=60451&r2=60452&view=diff ============================================================================== --- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Dasd.cc (original) +++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Dasd.cc Tue Jan 19 18:11:26 2010 @@ -405,10 +405,10 @@ ++i; } inpfile.close(); + SystemCmd cmd( "cat " + inpname ); string cmd_line = FDASDBIN " -c " + inpname + " " + quote(device()); if( execCheckFailed( cmd_line ) ) { - SystemCmd cmd( "cat " + inpname ); ret = DASD_FDASD_FAILED; } if( ret==0 ) @@ -433,6 +433,7 @@ { i->setSize( s ); } + ret = i->zeroIfNeeded(); } ++i; } Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Disk.cc URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Disk.cc?rev=60452&r1=60451&r2=60452&view=diff ============================================================================== --- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Disk.cc (original) +++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Disk.cc Tue Jan 19 18:11:26 2010 @@ -2385,14 +2385,8 @@ } if( ret==0 && p->type()!=EXTENDED ) { - bool used_as_pv = p->getUsedByType() == UB_LVM; - y2milestone( "zeroNew:%d used_as_pv:%d", - getStorage()->getZeroNewPartitions(), used_as_pv ); - if( used_as_pv || getStorage()->getZeroNewPartitions() ) - { - ret = getStorage()->zeroDevice(p->device(), p->sizeK()); - } - else if( !dmp_slave && !p->getFormat() ) + ret = p->zeroIfNeeded(); + if( !dmp_slave && !p->getFormat() ) { bool lsave = false; string lbl; Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.cc URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.cc?rev=60452&r1=60451&r2=60452&view=diff ============================================================================== --- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.cc (original) +++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.cc Tue Jan 19 18:11:26 2010 @@ -354,6 +354,26 @@ idt==ID_NTFS || idt==0x17 ); } + +int +Partition::zeroIfNeeded() const +{ + int ret = 0; + + bool zero_new = getContainer()->getStorage()->getZeroNewPartitions(); + bool used_as_pv = getUsedByType() == UB_LVM; + + y2milestone( "zero_new:%d used_as_pv:%d", zero_new, used_as_pv ); + + if (zero_new || used_as_pv) + { + ret = getContainer()->getStorage()->zeroDevice(device(), sizeK()); + } + + return ret; +} + + string Partition::removeText( bool doing ) const { string txt; Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.h URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.h?rev=60452&r1=60451&r2=60452&view=diff ============================================================================== --- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.h (original) +++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Partition.h Tue Jan 19 18:11:26 2010 @@ -95,6 +95,8 @@ void logDifference( const Partition& d ) const; void addUdevData(); + int zeroIfNeeded() const; + bool operator== ( const Partition& rhs ) const; bool operator!= ( const Partition& rhs ) const { return( !(*this==rhs) ); } Modified: branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes?rev=60452&r1=60451&r2=60452&view=diff ============================================================================== --- branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes (original) +++ branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes Tue Jan 19 18:11:26 2010 @@ -1,8 +1,13 @@ ------------------------------------------------------------------- +Tue Jan 19 17:49:33 CET 2010 - aschnell@suse.de + +- zero newly created partitions on DASDs (bnc #571828) +- 2.17.88 + +------------------------------------------------------------------- Tue Jan 19 14:14:26 CET 2010 - fehr@suse.de - allow to use cylinder 0 for partition (bnc #571749) -- 2.17.88 ------------------------------------------------------------------- Fri Jan 08 15:28:03 CET 2010 - aschnell@suse.de -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org