<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>3435</bug_id>
          
          <creation_ts>2012-11-14 21:15:50 +0000</creation_ts>
          <short_desc>Investigate fast boot optimization options for non-SystemD init system.</short_desc>
          <delta_ts>2013-04-25 15:29:27 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>OE-Core</product>
          <component>core</component>
          <version>1.4</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>NOTABUG</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Low</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>1.4</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Saul Wold">sgw</reporter>
          <assigned_to name="Radu Moisan">radu.moisan</assigned_to>
          <cc>jessica.zhang</cc>
    
    <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
    
    <cc>Qi.Chen</cc>
    
    <cc>richard.purdie</cc>
    
    <cc>sgw</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>---</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>27450</commentid>
    <comment_count>0</comment_count>
    <who name="Saul Wold">sgw</who>
    <bug_when>2012-11-14 21:15:50 +0000</bug_when>
    <thetext>Continue to look into optimizations for sysvinit startup and fastboot options.saul.wold@intel.com</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>28313</commentid>
    <comment_count>1</comment_count>
    <who name="Chen Qi">Qi.Chen</who>
    <bug_when>2012-12-15 20:16:40 +0000</bug_when>
    <thetext>Code for our sysvinit system is quite old. My desktop, Linux Mint, uses sysvinit on boot, together with upstart. 
I examined those init scripts, they are similar to the ones in our project, but they are newer and more reasonable. 
Besides, they support concurrency. And they regard the kernel command line parameters, including fastboot.
Some codes of sysvinit and initscripts in our project are easy to update to the newer version. And some ideas in nthe ewer version of initscripts are great. 

For now, there&apos;s only one script that is related to fastboot -- checkroot.sh. And it actually has not effect no matter /fastboot is represented in system or fastboot is specified in kernel command line. 

There are indeed a few problems in our sysvinit system and there are codes that could be improved, and should be.

I was thinking fixing/improving them along the way I add read-only rootfs support to our system. But maybe it&apos;s better that I open bugs for them? What you say, Saul?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29331</commentid>
    <comment_count>2</comment_count>
    <who name="Radu Moisan">radu.moisan</who>
    <bug_when>2013-01-30 09:14:18 +0000</bug_when>
    <thetext>If you open bugs for them I could target them more specifically. We can use this as an umbrella bug to track all of those. Otherwise, for me it&apos;s quite generic and I would spend time investigating each piece in search for an optimization. Sharing your ideas would greatly reduce that time, and I would gladly help.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29335</commentid>
    <comment_count>3</comment_count>
    <who name="Chen Qi">Qi.Chen</who>
    <bug_when>2013-01-30 09:35:46 +0000</bug_when>
    <thetext>(In reply to comment #2)
&gt; If you open bugs for them I could target them more specifically. We can use
&gt; this as an umbrella bug to track all of those. Otherwise, for me it&apos;s quite
&gt; generic and I would spend time investigating each piece in search for an
&gt; optimization. Sharing your ideas would greatly reduce that time, and I would
&gt; gladly help.

A major obstacle is the parallel execution problem.
Currently, the sysvinit scripts are run one by one at system startup. 
Some scripts don&apos;t have interdependencies and they can run in parallel.

I thought about using insserv to enable parallel execution of init scripts but haven&apos;t got time to dig into it.

chenqi@pek-qchen1-d1:~/poky$ find meta* -name &quot;*insserv*&quot;
meta/recipes-devtools/insserv
meta/recipes-devtools/insserv/insserv_1.14.0.bb
meta/recipes-devtools/insserv/files/insserv.conf
meta/classes/insserv.bbclass

I&apos;m not sure whether it&apos;s appropriate. Or maybe there are other better ways to do this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29336</commentid>
    <comment_count>4</comment_count>
    <who name="Radu Moisan">radu.moisan</who>
    <bug_when>2013-01-30 09:47:27 +0000</bug_when>
    <thetext>For now this is a Low priority task, but I&apos;ll bring it up in my next meeting with Richard/Saul/Ross and see what can we do about it. Anyway, for the time being I think systemd has more priority, but once we finish that we can engage into this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32651</commentid>
    <comment_count>5</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2013-04-25 15:29:27 +0000</bug_when>
    <thetext>As Radu mentions, please file bugs for specific items we can do to improve sysvinit. We&apos;ve looked at and optimised the system with inserv in the past even if we don&apos;t do the parallel execution thing.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>