Hello community, here is the log from the commit of package preload for openSUSE:Factory checked in at Wed Apr 8 01:01:16 CEST 2009. -------- --- preload/preload.changes 2009-04-06 15:49:39.000000000 +0200 +++ /mounts/work_src_done/STABLE/preload/preload.changes 2009-04-07 14:42:50.000000000 +0200 @@ -1,0 +2,6 @@ +Tue Apr 7 14:42:19 CEST 2009 - coolo@suse.de + +- don't fail when there is not enough space to reorder +- fix dos line feeds in input + +------------------------------------------------------------------- calling whatdependson for head-i586 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ preload.spec ++++++ --- /var/tmp/diff_new_pack.v14488/_old 2009-04-08 01:00:09.000000000 +0200 +++ /var/tmp/diff_new_pack.v14488/_new 2009-04-08 01:00:09.000000000 +0200 @@ -20,7 +20,7 @@ Name: preload Version: 1.0 -Release: 7 +Release: 8 Summary: Preloads Files into System Cache for Faster Booting License: GPL v2 or later Group: System/Boot @@ -149,6 +149,9 @@ #/opt/kde3 %changelog +* Tue Apr 07 2009 coolo@suse.de +- don't fail when there is not enough space to reorder +- fix dos line feeds in input * Mon Apr 06 2009 coolo@suse.de - make automatically use of bootcache (*EXPERIMENTAL*): relink files into /appcache/boot, so they are in order of ++++++ preload.tar.bz2 ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/preload/prepare_preload new/preload/prepare_preload --- old/preload/prepare_preload 2009-03-26 08:08:33.000000000 +0100 +++ new/preload/prepare_preload 2009-04-07 14:39:23.000000000 +0200 @@ -62,23 +62,22 @@ rename($tmp, $f) || die "rename $tmp $f failed"; } -sub bootcache($) { +sub bootcache($$) { - my $cachedir = "/appcache/boot"; my $index = 0; my $ret; my %inodes = {}; # make sure we do each inode only onc3 my %hardlinks = {}; my %stats = {}; my @order = (); - my ($files) = @_; + my ($cachedir, $files) = @_; if (! -d $cachedir) { #print STDERR "creating $cachedir\n"; - system("mkdir -p $cachedir"); + system("mkdir -p '$cachedir'"); if ($?) { my $ret = $? >> 8; - die "Unable to create $cachedir error $ret"; + return 1; } } #printf "Using $cachedir as the cache directory\n"; @@ -137,7 +136,7 @@ $index++; } #print STDERR "Processing $f to $cachedir/$index\n"; - copy("$f", "$cachedir/$index") || die "copy failed for $f"; + copy("$f", "$cachedir/$index") || return 1; my $ref = $hardlinks{$f}; foreach my $ol (@$ref) { link_copy($ol, "$cachedir/$index"); @@ -155,6 +154,7 @@ } $index++; } + return 0; } # make_abs (PWD, ARG) makes ARG an absolute pathname if it isn't already @@ -196,6 +196,7 @@ { my ($time, $process, $command, $file) = @_; + #print "add_file $time $process $command $file\n"; if (! defined $filelists{$process} ) { $filelists{$process} = { starttime => $time, files => [], unique => {} }; @@ -232,7 +233,7 @@ my $fid = $allfiles{$command . $file}; $allfiles{$command . $fid} = $file; $filelists{$process}->{unique}->{$fid} = 1; - #print "$process $command $file $delta\n"; + #print "$process $command $file $delta $fid\n"; } my $xsession = 0; @@ -269,6 +270,7 @@ while ( <STDIN> ) { chomp; my $line = $_; + $line =~ s,\s*$,,s; $line =~ s,\(E[^)]*\)$,,; if ($line =~ m/^(\d*)\.(\d*)\s+([^\s(]*)\((.*)\):(\w+)\s*\((.*)\)(.*)$/) { my $time = $1*1000+$2; @@ -327,9 +329,9 @@ my $ptree; if (defined $ptrees{$command . $pid}) { - $ptree = $ptrees{$command . $pid}; + $ptree = $ptrees{$command . $pid}; } else { - if (defined $ppids{$pid} && defined $ptrees{$ppids{$pid}}) { + if (defined $ppids{$pid} && defined $ptrees{$ppids{$pid}}) { if (defined($ptrees{$pid})) { if ($ptrees{$pid} !~ m,/$command$,) { $ptree = $ptrees{$pid} . "/" . $command; @@ -347,7 +349,7 @@ $ptree = $command; } $ptrees{$command . $pid} = $ptree; - $ptrees{$pid} = $ptree; + $ptrees{$pid} = $ptree; } next if ($arg =~ m,^/proc/, || $arg =~ m,^/sys/, || $arg =~ m,^/dev/,); @@ -355,14 +357,13 @@ next if ($ptree =~ m,bootchartd,); next if ($ptree =~ m,preload,); - #print "$ptree $syscall $line\n"; if ($syscall eq 'open' || $syscall eq 'failedopen') { add_command($time, $ptree, "stat", $arg); } elsif ($syscall eq 'execve') { add_command($time, $ptree, "open", $arg); add_command($time, $ptree, "stat", $arg); } elsif ($syscall eq 'read') { - # print STDERR "read $fds{$pid}->{$args}\n"; + #print STDERR "READ read $fds{$pid}->{$args}\n"; add_command($time, $ptree, "open", $fds{$pid}->{$args}); } elsif (grep(/^$syscall$/, ("stat", "stat64", "access", "readlink", "lstat", "lstat64"))) { #print STDERR $arg . "\n"; @@ -623,12 +624,12 @@ $print_cmdlist = $opt_p; $debug = $opt_d; +read_strace; if (!$opt_p && $< != 0) { die "You must be root to get the layout of the disk"; } - -read_strace; -bootcache(\@filesintimeorder); +bootcache("/appcache/boot", \@filesintimeorder); +system("rm -rf '/appcache/boot'"); gather_layout; order_commands; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org