Go to file
Victor Huesca 294fc3218c support/scripts/pkg-stats: retrieve packages latest version using processes
The major bottleneck in pkg-stats is the time spent waiting for
answers from remote servers. Two functions involve such communication
with remote servers:

- 'check_package_urls' which checks that each package upstream website
  is up, it is efficient due to the use of process-pools thanks to
  Matt Weber.

- 'check_package_latest_version' which fetches the latest package
  version from release-monitoring, it uses a http-pool but runs
  sequentially.

This patch extends the use of process-pools to 'check_latest_version'.
Due to some limitations of multiprocess callbacks, this patch loses
the overall progress of packages in favour of just the current package
name.

Runtimes for this function are ~3m vs ~25m for the linear version.
Tested on an i7 7500U (2/4 cores/threads @3.5GHz) with 15ms ping.

Note: There have already been work trying to parallelize this function
using threads but there were a failure on some configurations [1].
This implementation rely on a dedicated module already in use on this
script, so it's unlikely to see failure with this version.

[1] http://lists.busybox.net/pipermail/buildroot/2018-March/215368.html

Signed-off-by: Victor Huesca <victor.huesca@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-01 18:04:09 +02:00
arch ARC: Add support for ARC HS38 with Quad MAC & FPU 2019-08-01 11:56:39 +02:00
board board: Add PowerPC mac99 2019-08-01 17:54:47 +02:00
boot boot/uboot: add option to generate env image from default env 2019-08-01 12:52:29 +02:00
configs board: Add PowerPC mac99 2019-08-01 17:54:47 +02:00
docs docs/manual: 'Fixes' tag needs a colon 2019-07-14 12:13:56 +02:00
fs fs/cpio: fix typo in comment 2019-07-17 08:56:35 +02:00
linux linux: make BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT public 2019-08-01 16:08:01 +02:00
package pdbg: Bump version to v2.2 2019-08-01 17:02:44 +02:00
support support/scripts/pkg-stats: retrieve packages latest version using processes 2019-08-01 18:04:09 +02:00
system system/Config.in: add new init - openrc 2019-05-18 23:16:04 +02:00
toolchain toolchain-external: fix find_sysroot 2019-08-01 17:35:22 +02:00
utils utils/checkpackagelib: CommentsMenusPackagesOrder: only apply to top-level 2019-08-01 09:58:15 +02:00
.defconfig arch: remove support for sh64 2016-09-08 22:15:15 +02:00
.flake8 .flake8: fix check for 80/132 columns 2019-04-10 12:31:33 +02:00
.gitignore update gitignore 2013-05-04 12:41:55 +02:00
.gitlab-ci.yml Update .gitlab-ci.yml after addition of luaposix test 2019-08-01 14:25:33 +02:00
.gitlab-ci.yml.in .gitlab-ci.yml: add trigger per job 2019-05-01 15:42:45 +02:00
CHANGES Update for 2019.02.4 2019-07-10 11:29:30 +02:00
Config.in toolchain: set the ssp gcc option in kconfig 2019-03-13 00:01:55 +01:00
Config.in.legacy package/x11r7/xapp_mkfontdir: remove package 2019-06-20 21:39:03 +02:00
COPYING COPYING: add exception about patch licensing 2016-02-26 19:50:13 +01:00
DEVELOPERS board: Add PowerPC mac99 2019-08-01 17:54:47 +02:00
Makefile Makefile: don't export GZIP environment variable 2019-07-17 08:46:05 +02:00
Makefile.legacy Remove BR2_DEPRECATED 2016-10-15 23:14:45 +02:00
README README: add reference to submitting-patches 2016-02-01 19:16:08 +01:00

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on Freenode IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches