Hello community,
here is the log from the commit of package yast2-storage
checked in at Mon Feb 26 19:06:24 CET 2007.
--------
--- yast2-storage/yast2-storage.changes 2007-02-15 16:20:15.000000000 +0100
+++ /mounts/work_src_done/STABLE/yast2-storage/yast2-storage.changes 2007-02-26 16:27:14.000000000 +0100
@@ -1,0 +2,29 @@
+Thu Feb 22 18:23:36 CET 2007 - fehr@suse.de
+
+- only allow crypt password from /dev/randowm when persistent
+ devices names are available
+- fix problems caused by activated EVMS during update (#247801)
+- version 2.15.5
+
+-------------------------------------------------------------------
+Wed Feb 21 16:51:15 CET 2007 - fehr@suse.de
+
+- provide functionality for feature #301966
+
+-------------------------------------------------------------------
+Tue Feb 20 12:12:58 CET 2007 - fehr@suse.de
+
+- add text to inform user about crippled IDE support
+- initialize dmraid before LVM
+
+-------------------------------------------------------------------
+Mon Feb 19 13:53:30 CET 2007 - fehr@suse.de
+
+- improve help text for journal mode (#245538)
+- prevent deleted pertitione from showing up in EVMS dialog if EVMS
+ is activated later (#202361)
+- prevent invalid creation of too small partitions in EVMS proposal
+ (#246211)
+- do not offer whole dasd disks as PVs in EVMS (#246752)
+
+-------------------------------------------------------------------
@@ -100 +129 @@
-- make Storage::GetDiskParition understand paths with /disk/by- (#233712)
+- make Storage::GetDiskPartition understand paths with /disk/by- (#233712)
Old:
----
yast2-storage-2.15.4.tar.bz2
New:
----
yast2-storage-2.15.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-storage.spec ++++++
--- /var/tmp/diff_new_pack.el3508/_old 2007-02-26 19:06:14.000000000 +0100
+++ /var/tmp/diff_new_pack.el3508/_new 2007-02-26 19:06:14.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-storage (Version 2.15.4)
+# spec file for package yast2-storage (Version 2.15.5)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,12 +11,12 @@
# norootforbuild
Name: yast2-storage
-Version: 2.15.4
+Version: 2.15.5
Release: 1
License: GNU General Public License (GPL)
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-storage-2.15.4.tar.bz2
+Source0: yast2-storage-2.15.5.tar.bz2
prefix: /usr
BuildRequires: blocxx-devel docbook-xsl-stylesheets doxygen evms gcc-c++ libxcrypt-devel libxslt openssl-devel perl-XML-Writer sablot sgml-skel swig update-desktop-files yast2 yast2-core-devel yast2-devtools yast2-installation yast2-perl-bindings yast2-testsuite
Requires: yast2 parted yast2-installation yast2-storage-lib yast2-perl-bindings
@@ -40,7 +40,7 @@
%prep
-%setup -n yast2-storage-2.15.4
+%setup -n yast2-storage-2.15.5
%build
%{prefix}/bin/y2tool y2autoconf
@@ -164,7 +164,24 @@
%doc %{prefix}/share/doc/packages/yast2-storage/libstorage
%doc %{prefix}/share/doc/packages/yast2-storage/config.xml.description
-%changelog -n yast2-storage
+%changelog
+* Thu Feb 22 2007 - fehr@suse.de
+- only allow crypt password from /dev/randowm when persistent
+ devices names are available
+- fix problems caused by activated EVMS during update (#247801)
+- version 2.15.5
+* Wed Feb 21 2007 - fehr@suse.de
+- provide functionality for feature #301966
+* Tue Feb 20 2007 - fehr@suse.de
+- add text to inform user about crippled IDE support
+- initialize dmraid before LVM
+* Mon Feb 19 2007 - fehr@suse.de
+- improve help text for journal mode (#245538)
+- prevent deleted pertitione from showing up in EVMS dialog if EVMS
+ is activated later (#202361)
+- prevent invalid creation of too small partitions in EVMS proposal
+ (#246211)
+- do not offer whole dasd disks as PVs in EVMS (#246752)
* Thu Feb 15 2007 - fehr@suse.de
- ignore busy disk in parted when only type is changed (#231887)
- version 2.15.4
@@ -220,7 +237,7 @@
is called and initial map is restored afterwards (#235756)
- fix unchangeable mountby default (#235794)
* Tue Jan 16 2007 - fehr@suse.de
-- make Storage::GetDiskParition understand paths with /disk/by- (#233712)
+- make Storage::GetDiskPartition understand paths with /disk/by- (#233712)
* Mon Jan 15 2007 - fehr@suse.de
- fix bug when removing all device on a disk (#233779)
- make flexible proposal work again (#229651)
++++++ yast2-storage-2.15.4.tar.bz2 -> yast2-storage-2.15.5.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/disk/src/disk.ycp new/yast2-storage-2.15.5/disk/src/disk.ycp
--- old/yast2-storage-2.15.4/disk/src/disk.ycp 2006-03-23 14:01:33.000000000 +0100
+++ new/yast2-storage-2.15.5/disk/src/disk.ycp 2007-02-21 16:53:41.000000000 +0100
@@ -11,7 +11,7 @@
* Authors:
* Michael Hager
*
- * $Id: disk.ycp 29327 2006-03-23 13:01:30Z fehr $
+ * $Id: disk.ycp 36352 2007-02-21 15:53:38Z fehr $
*
* Wrapper file for inst_disk.ycp
*
@@ -49,6 +49,7 @@
Storage::SwitchUiAutomounter( false );
ret = WFM::CallFunction("inst_disk", [ true, true ]);
Storage::SwitchUiAutomounter( true );
+ Storage::SaveUsedFs();
}
return ret;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/libstorage/src/Disk.cc new/yast2-storage-2.15.5/libstorage/src/Disk.cc
--- old/yast2-storage-2.15.4/libstorage/src/Disk.cc 2007-02-15 15:26:08.000000000 +0100
+++ new/yast2-storage-2.15.5/libstorage/src/Disk.cc 2007-02-20 12:10:54.000000000 +0100
@@ -804,6 +804,21 @@
"of partitions that the kernel driver of the disk can handle is %3$lu.\n"
"Partitions numbered above %3$lu cannot be accessed."),
(char*)dev.c_str(), range_exceed, range-1 );
+ if( dev.find( "/dev/sd" )==0 )
+ {
+ txt += "\n";
+ txt +=
+_("openSUSE is switching to the new IDE drivers using the libata\n"
+"modules. These do only support partitions with up to 15\n"
+"partitions. You have the following options with openSUSE 10.3:\n"
+" - Use the old IDE drivers: Boot again and add\n"
+" \'hwprobe=-modules.pata\' as argument to the kernel\n"
+" - Repartition your system so that maximal 15 partitions are used.\n"
+" To repartition, use your existing operating system.\n"
+" - Use LVM/EVMS since they can provide an arbitrary and flexible\n"
+" number of block devices partitions. This needs a repartition\n"
+" as well.");
+ }
getStorage()->addInfoPopupText( dev, txt );
}
for( list::iterator i=pl.begin(); i!=pl.end(); ++i )
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/libstorage/src/EvmsCo.cc new/yast2-storage-2.15.5/libstorage/src/EvmsCo.cc
--- old/yast2-storage-2.15.4/libstorage/src/EvmsCo.cc 2007-02-12 16:35:20.000000000 +0100
+++ new/yast2-storage-2.15.5/libstorage/src/EvmsCo.cc 2007-02-19 17:34:19.000000000 +0100
@@ -739,7 +739,7 @@
for( Storage::ConstDiskIterator d = dp.begin(); d!=dp.end(); ++d )
{
y2mil( "disk:" << d->device() << " empty:" << d->isEmpty() );
- if( d->isEmpty() )
+ if( d->isEmpty() && d->device().find("/dev/dasd")!=0 )
{
y2milestone( "empty disk %s", d->name().c_str() );
i = ep.begin();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/libstorage/src/Storage.cc new/yast2-storage-2.15.5/libstorage/src/Storage.cc
--- old/yast2-storage-2.15.4/libstorage/src/Storage.cc 2007-02-14 12:43:49.000000000 +0100
+++ new/yast2-storage-2.15.5/libstorage/src/Storage.cc 2007-02-21 12:44:40.000000000 +0100
@@ -240,9 +240,9 @@
ppart = new ProcPart;
}
detectMds();
+ detectDmraid( *ppart );
detectLvmVgs();
detectEvms();
- detectDmraid( *ppart );
detectDm( *ppart );
LvmVgPair p = lvgPair();
@@ -2739,6 +2739,11 @@
return( co.isContainer());
}
+static bool isDiskCreated( const Volume& v )
+ {
+ return( v.cType()==DISK && v.created() );
+ }
+
int Storage::evmsActivate()
{
int ret = 0;
@@ -2766,6 +2771,46 @@
VPair p = vPair( isEvms );
detectFsData( p.begin(), p.end() );
EvmsCoPair ep = evCoPair();
+ EvmsCoIterator coi = ep.begin();
+ while( coi!=ep.end() && coi->device()!="/dev/evms" )
+ ++coi;
+ if( coi!=ep.end() )
+ {
+ EvmsCo::EvmsPair vp = coi->evmsPair(EvmsCo::lvNotDeleted);
+ EvmsCo::EvmsIter ei = vp.begin();
+ p = vPair( Volume::isDeleted );
+ while( ei!=vp.end() )
+ {
+ y2mil( "ev:" << *ei );
+ string dev = EvmsCo::evmsToDev( ei->device() );
+ y2mil( "disk dev:" << dev );
+ VolIterator vi = p.begin();
+ while( vi!=p.end() &&
+ (!vi->deleted() || vi->device()!=dev) )
+ ++vi;
+ if( vi!=p.end() )
+ {
+ const Partition* p = dynamic_cast(&(*vi));
+ bool rename = p!=NULL && p->nr()>0 &&
+ p->disk()->isLogical(p->nr());
+ y2mil( "ev del :" << *ei );
+ handleEvmsRemoveDevice( p->disk(), vi->device(), rename );
+ }
+ ++ei;
+ }
+ }
+ p = vPair( isDiskCreated );
+ VolIterator vi=p.begin();
+ while( vi!=p.end() )
+ {
+ y2mil( "vi:" << *vi );
+ Partition* p = dynamic_cast(&(*vi));
+ if( p!=NULL )
+ handleEvmsCreateDevice( p->disk()->device(),
+ vi->device(),
+ p->type()==EXTENDED );
+ ++vi;
+ }
std::map::iterator i=backups.find("initial");
if( !evCoPair().empty() && i!=backups.end() )
{
@@ -2774,7 +2819,7 @@
++ci;
if( ci==i->second.end() )
{
- EvmsCoIterator coi = ep.begin();
+ coi = ep.begin();
while( coi != ep.end() )
{
ci=i->second.begin();
@@ -4415,6 +4460,27 @@
return( ret );
}
+string Storage::getAllUsedFs() const
+ {
+ list<FsType> fs;
+ ConstVolPair p = volPair( Volume::notDeleted );
+ for( ConstVolIterator v=p.begin(); v!=p.end(); ++v )
+ {
+ FsType t = v->getFs();
+ if( t!=FSUNKNOWN && t!=FSNONE &&
+ find( fs.begin(), fs.end(), t )==fs.end() )
+ fs.push_back(t);
+ }
+ string ret;
+ for( list<FsType>::const_iterator i=fs.begin(); i!=fs.end(); ++i )
+ {
+ if( !ret.empty() )
+ ret += ' ';
+ ret += Volume::fsTypeString(*i);
+ }
+ y2mil( "ret:" << ret );
+ return( ret );
+ }
bool
Storage::getFsCapabilities (FsType fstype, FsCapabilities& fscapabilities) const
@@ -4575,7 +4641,8 @@
v->setSilent();
y2mil( "v:" << *v );
}
- if( disk->isEmpty() && !findVolume( EvmsCo::devToEvms(disk->device()), v) )
+ if( disk->isEmpty() && disk->device().find("/dev/dasd")!=0 &&
+ !findVolume( EvmsCo::devToEvms(disk->device()), v) )
{
EvmsCo* co = dynamic_cast(&(*c));
if( co != NULL )
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/libstorage/src/Storage.h new/yast2-storage-2.15.5/libstorage/src/Storage.h
--- old/yast2-storage-2.15.4/libstorage/src/Storage.h 2007-02-13 13:08:45.000000000 +0100
+++ new/yast2-storage-2.15.5/libstorage/src/Storage.h 2007-02-21 12:36:25.000000000 +0100
@@ -280,6 +280,7 @@
bool getFsCapabilities( storage::FsType fstype,
storage::FsCapabilities& fscapabilities) const;
+ string getAllUsedFs() const;
void setExtError( const string& txt );
int createPartition( const string& disk, storage::PartitionType type,
unsigned long start, unsigned long size,
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/libstorage/src/StorageInterface.h new/yast2-storage-2.15.5/libstorage/src/StorageInterface.h
--- old/yast2-storage-2.15.4/libstorage/src/StorageInterface.h 2007-02-13 13:08:45.000000000 +0100
+++ new/yast2-storage-2.15.5/libstorage/src/StorageInterface.h 2007-02-22 18:33:29.000000000 +0100
@@ -818,6 +818,12 @@
virtual bool getFsCapabilities (FsType fstype, FsCapabilities& fscapabilities) const = 0;
/**
+ * Get list of filesystem types present on any block devices.
+ * List elements are separated by blanks.
+ */
+ virtual string getAllUsedFs() const = 0;
+
+ /**
* Print all detected entities to a stream.
* Exact output format may change between releases.
* Function mainly meant for debugging purposes.
@@ -1939,10 +1945,8 @@
* Remove all possibly existing dm maps to a given device
*
* @param device device name for which dm maps should be removed
- * @param also_evms flag if maps used by evms entities should also be removed
- * @return bool true if maps to remove existed
*/
- virtual bool removeDmMapsTo( const string& device, bool also_evms ) = 0;
+ virtual void removeDmTableTo( const string& device ) = 0;
/**
* Detect potentially available free space on a partition
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/lvm/src/lvm_config.ycp new/yast2-storage-2.15.5/lvm/src/lvm_config.ycp
--- old/yast2-storage-2.15.4/lvm/src/lvm_config.ycp 2006-03-23 14:01:33.000000000 +0100
+++ new/yast2-storage-2.15.5/lvm/src/lvm_config.ycp 2007-02-21 16:53:41.000000000 +0100
@@ -9,7 +9,7 @@
* Authors:
* mike
*
- * $Id: lvm_config.ycp 29327 2006-03-23 13:01:30Z fehr $
+ * $Id: lvm_config.ycp 36352 2007-02-21 15:53:38Z fehr $
*
*/
@@ -101,6 +101,7 @@
/////////////////////////////////////////////////////////////////////////////////
Storage::SwitchUiAutomounter( true );
+ Storage::SaveUsedFs();
if( result == `end )
{
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/include/custom_part_helptexts.ycp new/yast2-storage-2.15.5/storage/src/include/custom_part_helptexts.ycp
--- old/yast2-storage-2.15.4/storage/src/include/custom_part_helptexts.ycp 2007-01-11 19:16:06.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/include/custom_part_helptexts.ycp 2007-02-22 18:24:07.000000000 +0100
@@ -20,7 +20,7 @@
*
*************************************************************
- $Id: custom_part_helptexts.ycp 35243 2007-01-11 18:16:00Z fehr $
+ $Id: custom_part_helptexts.ycp 36426 2007-02-22 17:24:04Z fehr $
*/
@@ -57,19 +57,19 @@
</p>
");
- if( tmpcrypt )
- {
- helptext = helptext + _("<p>
+
+ if (format)
+ {
+ if( tmpcrypt )
+ {
+ helptext = helptext + _("<p>
This mount point corresponds to a temporary filesystem like /tmp or /var/tmp.
You may leave the crypt password empty. If you do this, the system will create
a random password at system startup for you. This means, you will loose all
data on these filesystems at system shutdown.
</p>
");
- }
-
- if (format)
- {
+ }
// help text, continued
helptext = helptext + _("<p>
If you forget your password, you will lose access to the data on your file system.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/include/custom_part_lib.ycp new/yast2-storage-2.15.5/storage/src/include/custom_part_lib.ycp
--- old/yast2-storage-2.15.4/storage/src/include/custom_part_lib.ycp 2007-02-07 16:21:49.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/include/custom_part_lib.ycp 2007-02-22 18:24:07.000000000 +0100
@@ -13,7 +13,7 @@
*
*************************************************************
*
- $Id: custom_part_lib.ycp 35951 2007-02-07 15:21:48Z fehr $
+ $Id: custom_part_lib.ycp 36426 2007-02-22 17:24:04Z fehr $
*
*/
@@ -475,6 +475,25 @@
return( ret );
};
+define boolean EmptyCryptPwdAllowed( map p )
+ {
+ boolean ret = p["format"]:false &&
+ contains( union(FileSystems::tmp_m_mpoint,["swap"]),
+ p["mount"]:"" );
+ ret = ret && Storage::IsPersistent( p );
+ y2milestone( "EmptyCryptPwdAllowed ret:%1", ret );
+ return( ret );
+ }
+
+define boolean AskCryptPwd( map p )
+ {
+ /* boolean ret = p["mount"]:""!="swap" || !EmptyCryptPwdAllowed(p); */
+ boolean ret = true;
+ y2milestone( "AskCryptPwd ret:%1", ret );
+ return( true );
+ }
+
+
/**
* Do all checks concerning handling of crypt fs
* @param new partition map
@@ -492,11 +511,10 @@
new["enc_type"] = new["format"]:false?`luks:`twofish;
else
new["enc_type"] = `none;
- if( crypt_fs && new["mount"]:""!="swap" &&
+ if( crypt_fs && AskCryptPwd( new ) &&
size(Storage::GetCryptPwd( new["device"]:"" ))==0 )
{
- boolean tmpc = new["format"]:false &&
- contains( FileSystems::tmp_m_mpoint, new["mount"]:"" );
+ boolean tmpc = EmptyCryptPwdAllowed( new );
string fs_passwd = DlgCreateCryptFs( new["device"]:"",
new["format"]:false?8:1,
new["format"]:false, tmpc );
@@ -525,7 +543,7 @@
}
else
{
- ret["ok"] = (new["mount"]:""=="swap") || tmpc;
+ ret["ok"] = tmpc;
}
}
ret["map"] = new;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/include/do_proposal_flexible.ycp new/yast2-storage-2.15.5/storage/src/include/do_proposal_flexible.ycp
--- old/yast2-storage-2.15.4/storage/src/include/do_proposal_flexible.ycp 2007-02-13 15:57:23.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/include/do_proposal_flexible.ycp 2007-02-19 17:05:30.000000000 +0100
@@ -14,7 +14,7 @@
*
*************************************************************
- $Id: do_proposal_flexible.ycp 36102 2007-02-13 14:57:21Z fehr $
+ $Id: do_proposal_flexible.ycp 36285 2007-02-19 16:05:29Z fehr $
*/
{
@@ -273,7 +273,7 @@
g["added"] = [ [ 1, gap[key,0]:0, cyl_num ] ];
g["cylinders"] = g["cylinders"]:0-cyl_num;
gap[key] = remove( gap[key]:[], 0 );
- if( g["cylinders"]:0 > 0 )
+ if( g["cylinders"]:0 > 1 )
{
g["added"] = add( g["added"]:[],
[ 0, gap[key,0]:0, g["cylinders"]:0 ] );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/inst_custom_part.ycp new/yast2-storage-2.15.5/storage/src/inst_custom_part.ycp
--- old/yast2-storage-2.15.4/storage/src/inst_custom_part.ycp 2007-02-13 15:33:27.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/inst_custom_part.ycp 2007-02-22 18:24:07.000000000 +0100
@@ -26,7 +26,7 @@
*
*************************************************************
- $Id: inst_custom_part.ycp 36097 2007-02-13 14:33:26Z fehr $
+ $Id: inst_custom_part.ycp 36426 2007-02-22 17:24:04Z fehr $
*/
{
@@ -1561,7 +1561,7 @@
}
- map ret_cr = CheckCryptOk( retval );
+ map ret_cr = CheckDeviceFinalOk( retval );
if( !ret_cr["ok"]:false )
{
ret = `retry;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/modules/FileSystems.ycp new/yast2-storage-2.15.5/storage/src/modules/FileSystems.ycp
--- old/yast2-storage-2.15.4/storage/src/modules/FileSystems.ycp 2007-01-11 19:16:06.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/modules/FileSystems.ycp 2007-02-19 14:09:40.000000000 +0100
@@ -7,7 +7,7 @@
* These module contains the supported filesystems and their settings.
*
*
- * $Id: FileSystems.ycp 35243 2007-01-11 18:16:00Z fehr $
+ * $Id: FileSystems.ycp 36260 2007-02-19 13:09:39Z fehr $
*/
{
module "FileSystems";
@@ -278,10 +278,10 @@
`help_text : _("<p><b>Data Journaling Mode:</b>
Specifies the journaling mode for file data.
<tt>journal</tt> -- All data is committed into the journal prior to being
-written into the main file system.
+written into the main file system. Highest performance impact.<br>
<tt>ordered</tt> -- All data is forced directly out to the main file system
-prior to its metadata being committed to the journal.
-<tt>writeback</tt> -- Data ordering is not preserved.</p>
+prior to its metadata being committed to the journal. Medium performance impact.<br>
+<tt>writeback</tt> -- Data ordering is not preserved. No performanc impact.</p>
"),
`str_opt : "data=%1",
`str_scan : "data=\(.*\)"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/modules/StorageDevices.ycp new/yast2-storage-2.15.5/storage/src/modules/StorageDevices.ycp
--- old/yast2-storage-2.15.4/storage/src/modules/StorageDevices.ycp 2007-01-10 13:14:21.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/modules/StorageDevices.ycp 2007-02-21 16:53:41.000000000 +0100
@@ -14,7 +14,7 @@
* - removable drives (ZIP)
* - floppy devices
*
- * $Id: StorageDevices.ycp 35192 2007-01-10 12:14:16Z fehr $
+ * $Id: StorageDevices.ycp 36352 2007-02-21 15:53:38Z fehr $
*
* Author:
* Klaus Kaempf (initial)
@@ -241,7 +241,9 @@
{
if (Stage::initial () || Stage::cont ())
{
+ y2milestone( "before SCR::Read (.probe.cdrom)" );
cddrives = (list<map>) SCR::Read (.probe.cdrom);
+ y2milestone( "after SCR::Read (.probe.cdrom)" );
// write out data for hardware status check
foreach (map drive, cddrives,
``{
@@ -251,6 +253,7 @@
else
{
cddrives = [];
+ y2milestone( "before SCR::Read (.probe.cdrom)" );
foreach(map e, (list<map>) SCR::Read (.probe.cdrom),
``{
map conf = (map) SCR::Read(.probe.status, e["unique_key"]:"");
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/modules/Storage.ycp new/yast2-storage-2.15.5/storage/src/modules/Storage.ycp
--- old/yast2-storage-2.15.4/storage/src/modules/Storage.ycp 2007-02-14 14:53:27.000000000 +0100
+++ new/yast2-storage-2.15.5/storage/src/modules/Storage.ycp 2007-02-22 18:34:21.000000000 +0100
@@ -19,7 +19,7 @@
* wurde versucht "intelligent" zu gestallten und ist im einzelen bei den
* entspechenden Funktionen n�her erkl�rt.
*
- * $Id: Storage.ycp 36137 2007-02-14 13:53:25Z fehr $
+ * $Id: Storage.ycp 36429 2007-02-22 17:34:19Z fehr $
*/
{
@@ -3188,7 +3188,7 @@
{
y2milestone( "RemoveDmMapsTo device:%1", device );
InitLibstorage();
- LibStorage::StorageInterface::removeDmMapsTo( sint, device, true );
+ LibStorage::StorageInterface::removeDmTableTo( sint, device );
}
global define boolean CheckSwapable( string dev )
@@ -6080,7 +6080,6 @@
}
boolean expert_detail = nil;
-path ed_path = .sysconfig.storage.EXPERT_DETAIL;
list FindExpertLine( map file )
{
@@ -6120,7 +6119,7 @@
expert_detail = val;
}
-global boolean SaveExpertDetail()
+global void SaveExpertDetail()
{
y2milestone( "SaveExpertDetail val:%1", expert_detail );
if( expert_detail!=nil )
@@ -6160,4 +6159,62 @@
return( ret );
}
+global string GetUsedFs()
+ {
+ InitLibstorage();
+ string r = LibStorage::StorageInterface::getAllUsedFs( sint );
+ list<string> lr = sort(splitstring(r," \t"));
+ r = mergestring( lr, " " );
+ y2milestone( "GetUsedFs ret:%1", r );
+ return( r );
+ }
+
+list FindUsedFsLine( map file )
+ {
+ list ret = [];
+ list<list> t = maplist( integer k, map e, file["l"]:$[],
+ ``([k, e["line"]:""]));
+ t = filter( list e, t, ``(search(e[1]:"","USED_FS_LIST")==0));
+ y2milestone( "FindUsedFsLine t:%1", t );
+ ret = t[0]:[];
+ y2milestone( "FindUsedFsLine ret:%1", ret );
+ return( ret );
+ }
+
+global void SaveUsedFs()
+ {
+ y2milestone( "SaveUsedFs" );
+ string s = GetUsedFs();
+ map file = $[];
+ AsciiFile::ReadFile( file, "/etc/sysconfig/storage" );
+ list l = FindUsedFsLine( file );
+ string e = "USED_FS_LIST=\"" + s + "\"";
+ integer lineno = l[0]:(size(file["l"]:$[]) + 1);
+ if( size(l)==0 )
+ file["l",lineno] = $[];
+ if( file["l",lineno,"line"]:""!=e )
+ {
+ file["l",lineno,"line"] = e;
+ file["l",lineno,"changed"] = true;
+ AsciiFile::RewriteFile( file, "/etc/sysconfig/storage" );
+ }
+ }
+
+global boolean Storage::IsPersistent( map p )
+ {
+ boolean ret = contains( [ `lvm, `sw_raid, `dm ], p["type"]:`unknown );
+ if( !ret && contains( [ `evms, `primary, `logical, `extended ],
+ p["type"]:`unknown ))
+ {
+ map d = GetDisk( GetTargetMap(), p["device"]:"" );
+ if( p["type"]:`unknown==`evms )
+ ret = d["is_container"]:false || p["evms_native"]:false;
+ else
+ ret = d["type"]:`CT_UNKNONW==`CT_DMRAID ||
+ size(d["udev_id"]:[])>0;
+ }
+ y2milestone( "IsPersistent device:%1 ret:%2", p["device"]:"", ret );
+ return( ret );
+ }
+
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/storage/src/proposal/partitions_proposal.ycp new/yast2-storage-2.15.5/storage/src/proposal/partitions_proposal.ycp
--- old/yast2-storage-2.15.4/storage/src/proposal/partitions_proposal.ycp 2006-04-10 11:45:03.000000000 +0200
+++ new/yast2-storage-2.15.5/storage/src/proposal/partitions_proposal.ycp 2007-02-21 16:53:41.000000000 +0100
@@ -1,7 +1,7 @@
/**
* Module: proposal_partitions.ycp
*
- * $Id: partitions_proposal.ycp 29761 2006-04-05 16:36:41Z fehr $
+ * $Id: partitions_proposal.ycp 36352 2007-02-21 15:53:38Z fehr $
*
* Author: Klaus Kaempf
*
@@ -30,6 +30,10 @@
{
Pkg::DoProvide( pack );
}
+ if( Stage::initial() )
+ {
+ Storage::SaveUsedFs();
+ }
}
y2milestone( "func:%1 param:%2", func, param );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-storage-2.15.4/VERSION new/yast2-storage-2.15.5/VERSION
--- old/yast2-storage-2.15.4/VERSION 2007-02-15 16:20:25.000000000 +0100
+++ new/yast2-storage-2.15.5/VERSION 2007-02-26 16:27:18.000000000 +0100
@@ -1 +1 @@
-2.15.4
+2.15.5
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org