<?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>10416</bug_id>
          
          <creation_ts>2016-10-12 02:05:12 +0000</creation_ts>
          <short_desc>Extensible SDK: provide easy means of reconfiguring the kernel</short_desc>
          <delta_ts>2019-07-18 15:58:25 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>6</classification_id>
          <classification>Yocto Project Subprojects</classification>
          <product>eSDK</product>
          <component>eSDK</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium+</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>2.8 M2</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Paul Eggleton">bluelightning</reporter>
          <assigned_to name="chandana kalluri">ckalluri</assigned_to>
          <cc>alejandr</cc>
    
    <cc>david.reyna</cc>
    
    <cc>jose.perez.carranza</cc>
    
    <cc>juan.m.cruz.alcaraz</cc>
    
    <cc>leonardo.sandoval.gonzalez</cc>
    
    <cc>libertad.gonzalez.de.la.cruz</cc>
    
    <cc>randy.macleod</cc>
    
    <cc>richard.purdie</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>Yes (doc changes required)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>67163</commentid>
    <comment_count>0</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2016-10-12 02:05:12 +0000</bug_when>
    <thetext>If you wish to customise the kernel configuration within the eSDK there&apos;s really no choice other than running devtool modify which checks out the entire source tree. However this has quite a bit of overhead in time and space when all you want to do is run &quot;make menuconfig&quot; and keep the kernel configuration somewhere.

I did a basic implementation of something for this in Ostro, however this basically just does a devtool modify internally, hence why I didn&apos;t push it into OE-Core:

https://github.com/ostroproject/meta-ostro/blob/master/meta-ostro/lib/devtool/kconfig.py

To support this it seems to me we need the ability to have the kernel &quot;in&quot; the workspace (in order to have somewhere to save the config) but not be using externalsrc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>72874</commentid>
    <comment_count>1</comment_count>
    <who name="Juan Manuel Cruz Alcaraz">juan.m.cruz.alcaraz</who>
    <bug_when>2017-04-26 20:27:22 +0000</bug_when>
    <thetext>As I understand, the issue with the current proposal is the poor performance because the entire kernel source tree is checked out.

To be able to use menuconfig the user must have the complete kernel tree with all the Kconfig database in place. To edit a defconfig file the user needs all the Kconfig files, otherwise there is no way to know the interdependencies among the configuration symbols.


Can you help clarify what is the meaning to have the kernel &quot;in&quot; the workspace versus externalsrc and how it improves the execution?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>74528</commentid>
    <comment_count>2</comment_count>
    <who name="Juan Manuel Cruz Alcaraz">juan.m.cruz.alcaraz</who>
    <bug_when>2017-06-23 21:25:54 +0000</bug_when>
    <thetext>If running a &quot;devtool kernel-menuconfig&quot; inside a eSDK installation and after executing a command &quot;standard._run_task(tinfoil, fn, &apos;patch&apos;)&quot; the following errors appear:

ERROR: Taskhash mismatch 2c793438c2d9f8c3681fd5f7bc819efa versus 997de1272b220be7444b29274fe9a887 for /home/yocto/poky_sdk/layers/poky/meta/recipes-kernel/linux/linux-yocto_4.10.bb.do_unpack
ERROR: Taskhash mismatch 2c793438c2d9f8c3681fd5f7bc819efa versus 997de1272b220be7444b29274fe9a887 for /home/yocto/poky_sdk/layers/poky/meta/recipes-kernel/linux/linux-yocto_4.10.bb.do_unpack

The &quot;tinfoil.config_data.setVar(&apos;BB_HASH_IGNORE_MISMATCH&apos;, &apos;1&apos;)&quot; is set.

If running &quot;devtool modify linux-yocto&quot; the same taskhash mismatch errors appear.

This errors do not happen if &quot;devtool modify linux-yocto&quot; is run inside a poky folder. It leads me to think that the errors happen because an error on my eSDK installation or an internal bug with the eSDL installation.

I&apos;ll keep investigating and update accordingly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76139</commentid>
    <comment_count>3</comment_count>
    <who name="Juan Manuel Cruz Alcaraz">juan.m.cruz.alcaraz</who>
    <bug_when>2017-08-24 16:29:24 +0000</bug_when>
    <thetext>After a short chat with Paul we decided that the approach taken on the first patch sent to review was not the best one.

The first patch intended to share the kernel code with the code fetched by &quot;devtool modify virtual/kernel&quot; in the workspace.

The new approach will share the kernel code fetched by a &quot;bitbake menu-config&quot; command in the workdir.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>81424</commentid>
    <comment_count>4</comment_count>
    <who name="Alejandro Hernandez">alejandr</who>
    <bug_when>2018-08-23 20:41:49 +0000</bug_when>
    <thetext>This should also work for other components that use Kconfig, e.g. busybox.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>83158</commentid>
    <comment_count>5</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2019-02-28 16:21:14 +0000</bug_when>
    <thetext>Thanks for the patches!

We currently have tests for devtool which are run with &quot;oe-selftest -r devtool&quot;, they&apos;re in meta/lib/oeqa/selftest/cases/devtool.py. Would you be able to add some tests for this new functionality?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>83858</commentid>
    <comment_count>6</comment_count>
    <who name="David Reyna">david.reyna</who>
    <bug_when>2019-05-18 00:22:34 +0000</bug_when>
    <thetext>Paul Eggleton will be reviewing the patches shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84459</commentid>
    <comment_count>7</comment_count>
    <who name="Alejandro Hernandez">alejandr</who>
    <bug_when>2019-07-18 15:58:25 +0000</bug_when>
    <thetext>Fixed here:

https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=57beed1d30723d51f8299f898daeb4b42f849856</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>