Openembedded Core Discussions
 help / color / mirror / Atom feed
* Re: [PATCH] bitbake: cooker: Ensure bbappends are found in stable order
@ 2019-09-11 17:07 Peter Kjellerstedt
  2019-09-11 17:12 ` Mark Hatle
  0 siblings, 1 reply; 3+ messages in thread
From: Peter Kjellerstedt @ 2019-09-11 17:07 UTC (permalink / raw)
  To: Wes Lindauer, openembedded-core@lists.openembedded.org

> -----Original Message-----
> From: openembedded-core-bounces@lists.openembedded.org <openembedded-
> core-bounces@lists.openembedded.org> On Behalf Of Wes Lindauer
> Sent: den 28 augusti 2019 23:38
> To: openembedded-core@lists.openembedded.org
> Subject: [OE-core] [PATCH] bitbake: cooker: Ensure bbappends are found
> in stable order
> 
> Thanks to wildcards in bbappend filenames, it's possible to have
> multiple bbappends that apply to the same recipe in the same directory.
> In order to get sstate hits between different workspaces, we want to
> apply those bbappend files in a consistent order.  Since readdir()
> returns files in a non-deterministic order between workspaces (based on
> inode number and/or time of creation), we'll need to sort its result in
> order to have any consistency.
> 
> Signed-off-by: Wes Lindauer <wesley.lindauer@gmail.com>
> ---
>  bitbake/lib/bb/cooker.py | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
> index 0607fcc708..a9ee142aa5 100644
> --- a/bitbake/lib/bb/cooker.py
> +++ b/bitbake/lib/bb/cooker.py
> @@ -1869,6 +1869,7 @@ class CookerCollectFiles(object):
>              (bbappend, filename) = b
>              if (bbappend == f) or ('%' in bbappend and bbappend.startswith(f[:bbappend.index('%')])):
>                  filelist.append(filename)
> +        filelist.sort()
>          return filelist
> 
>      def collection_priorities(self, pkgfns, d):
> --
> 2.14.5

I don't think this was a good idea at all. Before, bbappends were applied 
in the priority order of the layers, but this change throws the sorting 
based on priority out the window and might cause bbappend files for higher 
layers to be applied before lower layers' bbappend files.

Please revert this change, and rethink how to maintain a stable order for 
bbappend files from the same directory without affecting bbappend files 
from different layers.

//Peter



^ permalink raw reply	[flat|nested] 3+ messages in thread
* [PATCH] bitbake: cooker: Ensure bbappends are found in stable order
@ 2019-08-28 21:38 Wes Lindauer
  0 siblings, 0 replies; 3+ messages in thread
From: Wes Lindauer @ 2019-08-28 21:38 UTC (permalink / raw)
  To: openembedded-core

Thanks to wildcards in bbappend filenames, it's possible to have
multiple bbappends that apply to the same recipe in the same directory.
In order to get sstate hits between different workspaces, we want to
apply those bbappend files in a consistent order.  Since readdir()
returns files in a non-deterministic order between workspaces (based on
inode number and/or time of creation), we'll need to sort its result in
order to have any consistency.

Signed-off-by: Wes Lindauer <wesley.lindauer@gmail.com>
---
 bitbake/lib/bb/cooker.py | 1 +
 1 file changed, 1 insertion(+)

diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 0607fcc708..a9ee142aa5 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -1869,6 +1869,7 @@ class CookerCollectFiles(object):
             (bbappend, filename) = b
             if (bbappend == f) or ('%' in bbappend and bbappend.startswith(f[:bbappend.index('%')])):
                 filelist.append(filename)
+        filelist.sort()
         return filelist
 
     def collection_priorities(self, pkgfns, d):
-- 
2.14.5



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-09-11 17:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-11 17:07 [PATCH] bitbake: cooker: Ensure bbappends are found in stable order Peter Kjellerstedt
2019-09-11 17:12 ` Mark Hatle
  -- strict thread matches above, loose matches on Subject: below --
2019-08-28 21:38 Wes Lindauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox