<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/sstate.bbclass, branch 3.2_M2</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=3.2_M2</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=3.2_M2'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2020-05-30T11:32:48+00:00</updated>
<entry>
<title>sstate.bbclass: When siginfo or sig files are missing, stop fetcher errors</title>
<updated>2020-05-30T11:32:48+00:00</updated>
<author>
<name>Mark Hatle</name>
<email>mark.hatle@xilinx.com</email>
</author>
<published>2020-05-13T16:12:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=73f35492b7d8120429b9ff842105c03c5a0b11db'/>
<id>urn:sha1:73f35492b7d8120429b9ff842105c03c5a0b11db</id>
<content type='text'>
Prior to fetching, the system checks if the sstate file is present
either locally or on the mirror.  If it is, then it goes to the fetch
stage.  Up to three files can be fetched, sstate, sstate.siginfo and
sstate.sig (if signature validation is enabled).

The previous pstaging_fetch function would iterate over these, and if
a download error occurred would spew forth a great amount of fetcher
failure messages as well as stop fetching the next item in the set.

This was resolved by adding a fetcher.checkstatus() call prior to
the download.  If the file isn't present, then the exception will
be triggered, and no fetcher failure messages will reach the user.

The exception handler is then modified to be a pass so that it will
loop and pull the rest of the files that that are requested.

Additionally, a check for the existance of the .sig file was added
to the sstate_installpkg to avoid an error trying to load the .sig
if it wasn't downloaded.

(From OE-Core rev: a9085140434e2d26c0bb75bb53fcb7f7c19ef86d)

Signed-off-by: Mark Hatle &lt;mark.hatle@xilinx.com&gt;
Signed-off-by: Mark Hatle &lt;mark.hatle@kernel.crashing.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate.bbclass: Do not fail if files cannot be touched</title>
<updated>2020-05-09T17:57:21+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>peter.kjellerstedt@axis.com</email>
</author>
<published>2020-04-30T17:49:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=1f1650e5d879fde962fdfb5786784a8e9b21a3b1'/>
<id>urn:sha1:1f1650e5d879fde962fdfb5786784a8e9b21a3b1</id>
<content type='text'>
It may be that a file is not allowed to be touched, e.g., if it is a
symbolic link into a global sstate cache served over NFS.

(From OE-Core rev: 462e3f505217c9b9e0d2c1cbdafb0c8910bb6a59)

Signed-off-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate: Drop obsolete check in hash validation</title>
<updated>2020-03-06T17:14:04+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-03-05T15:27:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=67511eda71affb6a0c9bfab37f59a53d35ac30c0'/>
<id>urn:sha1:67511eda71affb6a0c9bfab37f59a53d35ac30c0</id>
<content type='text'>
Now this function has a summary parameter we can drop this check.

It could well be why the mysterious "locked sigs" selftest fails
intermittently if this function were called with a single hash
to check.

[YOCTO #13605] (with luck)

(From OE-Core rev: 02aabe0e59f73bf206d9bada1e7089832ceed254)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate.bbclass: fix issue while handling long sstate filenames</title>
<updated>2020-02-08T13:20:02+00:00</updated>
<author>
<name>Jaewon Lee</name>
<email>jaewon.lee@xilinx.com</email>
</author>
<published>2020-02-06T21:45:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=ed4bdd0f9149ba24fac375fd3af8bb2a06423105'/>
<id>urn:sha1:ed4bdd0f9149ba24fac375fd3af8bb2a06423105</id>
<content type='text'>
When moving to python3, divison using '/' now returns float instead of
an integer. In upstream commit b8025e972081b70960ffcbcbe43a7118041556a1
sstate filenames longer than the limit are changed to just include
necessary info + 3 fields just for information. The space left over
after the necessary info is divided into 3 for each of the fields.
Using '//' instead to do the division to solve the following error
message:

avail = (254 - len(hash + "_" + taskname + extension) -
len(components[0]) - len(components[1]) - len(components[5]) -
len(components[6]) - 7) / 3
    &gt;        components[2] = components[2][:avail]
             components[3] = components[3][:avail]
TypeError: slice indices must be integers or None or have an __index__
method

(From OE-Core rev: 2acfee61a062c6520a413b2a797544d968bb0c76)

Signed-off-by: Jaewon Lee &lt;jaewon.lee@xilinx.com&gt;
Signed-off-by: Mark Hatle &lt;mark.hatle@xilinx.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate.bbclass: Only show sstate mirror progress bar for &gt;= 100 objects</title>
<updated>2020-01-27T16:48:08+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>pkj@axis.com</email>
</author>
<published>2020-01-11T03:28:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=1444b8a2ae226829e719d3d184fca27e5940ae0d'/>
<id>urn:sha1:1444b8a2ae226829e719d3d184fca27e5940ae0d</id>
<content type='text'>
With the introduction of the hash equivalence server, the progress bar
for "Checking sstate mirror object availability" is shown
repeatedly. Most of the times the number of objects scanned is very
low and the progress bar completes almost immediately. To avoid all
these unnecessary progress bars, set the minimum number of objects to
100 before the progress bar is shown.

(From OE-Core rev: 114340e8d393cf60d0a596cb0800cf1b7fd198df)

Signed-off-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate: Improve move into place op and touch file</title>
<updated>2020-01-13T13:07:01+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2019-12-12T22:58:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3a83fec8142741d79c3462255847e5aa0e5d47fd'/>
<id>urn:sha1:3a83fec8142741d79c3462255847e5aa0e5d47fd</id>
<content type='text'>
Depending on the kernel and coreutils version, mv operations test for existence
of files and can potentially race. It also leads to the file always changing which
leads to potential problems if using and NFS share and there are other readers.

Using ln instead means we don't overwrite the file if it already exists meaning
other readers aren't disrupted and should work more reliably on NFS which is used
for sstate on the autobuilder.

Since we're not overwriting files, touch the file to show activity as would have
been done it it were reused from sstate.

(From OE-Core rev: d8e9a22a4e23616ad01627c1e472296b1e26f13c)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate: Avoid races over rewritten siginfo files</title>
<updated>2020-01-06T23:54:39+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-01-06T10:08:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3b3ef106a29296fecf888e573787281a193c6b6f'/>
<id>urn:sha1:3b3ef106a29296fecf888e573787281a193c6b6f</id>
<content type='text'>
Try and avoid errors like:

Exception: bb.process.ExecutionError: Execution of 'build/tmp/work/x86_64-linux/libxslt-native/1.1.34-r0/temp/run.sstate_unpack_package.12343' failed with exit code 1:
touch: setting times of 'build/sstate_devtool/80/4d/sstate:libxslt-native::1.1.34:r0::3:804d33f3f8d032b01ae92207669dd0a8f95a84917d563d122a77df19e786d73c_populate_lic.tgz.siginfo': Stale file handle
WARNING: exit code 1 from a shell command.

by not overwriting existing files.

(From OE-Core rev: b2a389ad5111d587db3f95c6ce13fc2eafc22f27)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate: Handle sstate filenames longer than 255 characters</title>
<updated>2020-01-06T23:54:39+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-01-05T14:49:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b8025e972081b70960ffcbcbe43a7118041556a1'/>
<id>urn:sha1:b8025e972081b70960ffcbcbe43a7118041556a1</id>
<content type='text'>
Many filesystems can't cope with filenames longer that 255 characters.
Add code to detect this and truncate non-essential elements of the filename
to stay within the limit.

[YOCTO #13268]

(From OE-Core rev: 90cc3d1ed1a12294a2d3ac97c1ba528ab315605d)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate: Merge file name generation into single function</title>
<updated>2020-01-06T23:54:39+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-01-05T14:48:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=443654351b0e54c76715dd9e5076f32fa6d34592'/>
<id>urn:sha1:443654351b0e54c76715dd9e5076f32fa6d34592</id>
<content type='text'>
Move the task handling and extension handling into one common filename
construction function.

(From OE-Core rev: c0c158d38583648a801e959d91371f7b43a98da5)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sstate: Improve SSTATE_PKG handling</title>
<updated>2020-01-06T23:54:39+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2019-12-11T12:06:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f3010f76943fc2bcfe73d97e67f211187cf3551a'/>
<id>urn:sha1:f3010f76943fc2bcfe73d97e67f211187cf3551a</id>
<content type='text'>
Move the task handling code into the SSTATE_PKGNAME variable using a temporary variable.

This makes the code more understandable as as well as allowing the length of the
final sstate filename to be more easily accesses for following patches.

(From OE-Core rev: be603dad6817948cfa09621d2311046631ec4ab2)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
