Greetings,
Here is the post-mortem and lessons learned review for Linaro release 11.10.
Thanks to the teams who have contributed to this.
====================
Release Review 11.10
====================
Android
=======
Highlights
* Gerrit CI was well tested when deployed.
* Making test results visible created quality awareness across the
organization.
Issues
* Infrastructure capacity (git server) was inadequate and affected developer
performance.
* The one-month cycle leaves no room for events like Connect and ELC-E.
* Heavy reliance on landing teams as most issues are theirs.
* Bugs fixed in Developer are marked fixed even if not working on Android.
* Landing teams seem to get too little support from member company developers.
* The manual test frenzy at release time should be reduced or better shared.
* Engineers that also have interrupt type duties struggle with Milestone
delivery accuracy.
* Daily test errors did not get immediate attention.
Developer Platform
==================
Highlights
* Successful release on Oneiric ahead of schedule
* CI on packaged kernels working
* Communications need to be examined
* John released U-Boot in time! That's great and keep up :)
* Release process went fairly well
Issues
* Blueprints were not updated very well.
* Launchpad issues blocked many blueprints
* builders in LP were blocking some blueprints
* Offspring and LP related issues take time to resolve
* Lauchpad: to many bugs on derived distro support
* testing was not done well on the LP side
* Issues with the WGs: some did not release on time
* communications were not smooth or even non-existent
* transparency of plans is the problem; platform teams need to be aligned
about plans
* Unity tree not available on time, released only on Friday
* Once tested, it did not work on Panda - it seems that Unity is not tested
on Panda
* The working group should continuously push to public
* lack of communication and support for hardware problems
* LAVA interface very slow - needs rework
* requires better error reporting of the LAVA web service (error on job
submission with wrong hardware pack)
* Need better navigation of job from build to result in the dashboard UI
* Linux-linaro quality isn't really good (no strict tracking of features etc.)
* device tree is missing regularly.
* Test cases should be provided well in advance of testing
* Test cases in spreadsheet are vague, some not valid to test
Lessons Learned
* set up a point of contact with working groups for any issues during the
release.
* establish a best-practice process for the graphics group to continuously
push to public
* tests could have been better defined; next step is developing it.
Kernel
======
Highlights
* Pinctrl core and pinmux are now in linux-next. currently, answering late
review comments and merging smaller patches.
* Continued to implement Device Tree support for Linaro member platforms,
focusing on changes to drivers and subsystems inlcuding IRQ controllers,
GPIO, serial devices, MMC devices, and regulators across various SOCs. All
i.MX basic drivers are ready, audio and usb are still big missing pieces.
* omap-hsmmc dt conversion completed. Prepared single device tree enabled
board file for smdkv310 and Origen boards and tested device tree support for
the following modules: UART, SDHCI, Keypad, GPIO keys, DMA, RTC, I2C, WDT,
GPIO, IRQ.
* Continued with SoC Tree maintenance, code review, merging and verifying
patches.
* Continued work on fixes and changes to the config fragment merge_config.sh
script, resubmitted merge_config.sh script to lkml.
* Continued the cleanup and consolidation of various kernel headers that will
allow for building of a single kernel across multiple SOCs the work
included: patches to rework the low level UART debugging code on OMAP1,
OMAP2 and Davinci, patches for mach/memory.h removal, patches for appending
of a device tree binary to the kernel zImage and patches for removing all
instances of mach/vmalloc.h.
Multimedia
==========
Highlights
* There was a speedy reaction to get headlines andacceptance defined faster.
Teams had those in place (90% of the BPs) by the deadline.
* Managed to move ahead with some of the issues we have been facing eg Unity
upstreaming in GFX.
Issues
* Quite a few blueprints did not complete. This can be attributed to a few
possible reasons:
* work was larger than initially thought
* assignee was distracted to other activities
* trees needed to be more carefully constructed at times to avoid mistakes
from being based on old versions of upstream
* assignee not "gardening" blueprints diligently
* Sometimes the work is done but the blueprint doesn't reflect the reality
General lessons learned
* Maintain a tree always available. If tree is broken we should have a good
idea when it will be available again.
* Always work on the tip and fix things as they appear - that is easier said
than done for some projects. So we check the cases one by one on the
projects involved
* Raise the risk flag early: kudos to those of you who did so this month.
Perhaps an improvement next would be to try and anticipate the risk with
each work item rather than on the blueprint level.
* Even if you think that the release is not worth the effort, for example an
optimization in performance did not show up, it is always good to make the
release if you have patches which do not break the component. You will get
more eyeballs looking at the components this way maybe that will help
unearth other issues or suggest new ideas.
Power Management
================
Highlights
* Thermal management is working on Samsumg platform. However, the code is not
pushed to mainline yet.
* OMAP Thermal management integrated and delivered to TI. But, still under
testing and not completely working.
* PM QA testsuite now includes tests for hotplug integrated with LAVA,
studying LAVA test runs for accuracy.
Issues
Toolchain
=========
Highlights
* Released Linaro GDB 7.3 11.10
* Released Linaro GCC 4.6 2011.10 and Linaro GCC 4.5 2011.10
* Released Linaro QEMU 2011.10
Issues
Validation
==========
Highlights
* Initial release of bundle format documentation * Ability to display reports
on the front page.
Issues
* Oneiric complicated packaging, weakened testing and development focus.
Infrastructure
==============
Highlights
* Released linaro-image-tools 2011.10
* Didn't have to keep up with board changes due to hwpacks v2, already a
success for that project.
Issues
* Had to change to cope with a breaking change in the format of rootfs created
by live-build. We should add metadata to the rootfs to avoid this problem in
future. Session registered at Connect to discuss it.
https://blueprints.launchpad.net/linaro-ubuntu/+spec/linaro-platforms-p-ima…
Lessons Learned
Headlines
* Headlines assumptions did not come true
* To be ahead of the curb, in the PMWG, we created the monthly headline one
week ahead of time
* Not all headlines completed
* wait until after the release to do the headline
Quality
* Quality status not known at all times
* Important to ensure quality awareness across the organization
* Less quality focus
* Document what we test and then keep testing it
Blueprints
* Blueprints do not reflect reality
* Invalid functionality
* Work in small chunks on the days up to the release. Plan to release early
and often as work items are done. Do not wait to have some mad dash in the
hours before the release
--
David Zinman
Linaro Release Manager | Project Manager
Linaro.org | Open source software for ARM SoCs
Hi, Linaro guys
I'm using Origenboard, and your ubuntu LEB helps a lot.
Now, I need to patch the kernel, but I can't find the guide for building image from source code.
Could you help me?
Thanks!
Sen.
Hi,
The attached test intermittently fails on my panda running the 11.09
(3.0.0-1404-linaro-lt-omap) kernel;
but it works on guinep and Michael's ursa and pavo running much older
kernels; I'd appreciate it if
people could try it on whatever machine with whatever kernel they
have and report the result to me
so I can try and nail down what it fails on. (It fails in both natty
and oneiric chroots for me)
To compile:
gcc pthreadtest.c -o pthreadtest -lpthread
To run:
for SEQ in `seq 1 1000`
do
./pthreadtest
done
if it finishes then its fine, for me it'll fail sooner or later with:
Start thread test 0x110dc 0x110dc
and just stop.
(It sits there in a futex inside pthread_cond_wait on cond_wait's
internal structure)
Dave
This RFC version of the patch set is intended to share the current work
about providing a thermal solution using Linux thermal infrastructure. The
closest driver which has the same features and not using acpi layer
is drivers/platform/x86/acerhdf.c.
For the ARM world there is no clarity for placing such files so currently
I have placed the temperature sensor driver and a binding layer for cooling device,
thermal zone and core thermal interfaces inside staging directory.
Feel free to comment about the implementation, the directory structure and
the shortcomings.
Amit Daniel Kachhap (4):
ARM: Exynos4: Add thermal sensor driver for samsung exynos4 platform.
ARM: Exynos4: Add thermal sensor driver platform device support
ARM: Exynos4: Enable thermal sensor driver for origen board
ARM: Exynos4: Add thermal interface support for linux thermal layer
arch/arm/mach-exynos4/Kconfig | 5 +
arch/arm/mach-exynos4/Makefile | 3 +-
arch/arm/mach-exynos4/dev-tmu.c | 71 +++
arch/arm/mach-exynos4/include/mach/exynos4-tmu.h | 75 ++++
arch/arm/mach-exynos4/include/mach/irqs.h | 3 +
arch/arm/mach-exynos4/include/mach/map.h | 1 +
arch/arm/mach-exynos4/include/mach/regs-tmu.h | 58 +++
.../mach-exynos4/include/mach/thermal_interface.h | 26 ++
arch/arm/mach-exynos4/mach-origen.c | 10 +
arch/arm/plat-samsung/include/plat/devs.h | 2 +
drivers/staging/Kconfig | 2 +
drivers/staging/Makefile | 1 +
drivers/staging/thermal_exynos4/Kconfig | 12 +
drivers/staging/thermal_exynos4/Makefile | 5 +
drivers/staging/thermal_exynos4/sensor/Kconfig | 14 +
drivers/staging/thermal_exynos4/sensor/Makefile | 4 +
.../thermal_exynos4/sensor/exynos4210_tmu.c | 465 ++++++++++++++++++++
.../staging/thermal_exynos4/thermal_interface.c | 382 ++++++++++++++++
18 files changed, 1138 insertions(+), 1 deletions(-)
create mode 100644 arch/arm/mach-exynos4/dev-tmu.c
create mode 100644 arch/arm/mach-exynos4/include/mach/exynos4-tmu.h
create mode 100644 arch/arm/mach-exynos4/include/mach/regs-tmu.h
create mode 100644 arch/arm/mach-exynos4/include/mach/thermal_interface.h
create mode 100644 drivers/staging/thermal_exynos4/Kconfig
create mode 100644 drivers/staging/thermal_exynos4/Makefile
create mode 100644 drivers/staging/thermal_exynos4/sensor/Kconfig
create mode 100644 drivers/staging/thermal_exynos4/sensor/Makefile
create mode 100644 drivers/staging/thermal_exynos4/sensor/exynos4210_tmu.c
create mode 100644 drivers/staging/thermal_exynos4/thermal_interface.c
Hi,
I am the author of OMAP display driver, and while developing it I've
often felt that there's something missing in Linux's display area. I've
been planning to write a post about this for a few years already, but I
never got to it. So here goes at last!
---
First I want to (try to) describe shortly what we have on OMAP, to give
a bit of a background for my point of view, and to have an example HW.
The display subsystem (DSS) hardware on OMAP handles only showing pixels
on a display, so it doesn't contain anything that produces pixels like
3D stuff or accelerated copying. All it does is fetch pixels from SDRAM,
possibly do some modifications for them (color format conversions etc),
and output them to a display.
The hardware has multiple overlays, which are like hardware windows.
They fetch pixels from SDRAM, and output them in a certain area on the
display (possibly with scaling). Multiple overlays can be composited
into one output.
So we may have something like this, when all overlays read pixels from
separate areas in the memory, and all overlays are on LCD display:
.-----. .------. .------.
| mem |-------->| ovl0 |-----.---->| LCD |
'-----' '------' | '------'
.-----. .------. |
| mem |-------->| ovl1 |-----|
'-----' '------' |
.-----. .------. | .------.
| mem |-------->| ovl2 |-----' | TV |
'-----' '------' '------'
The LCD display can be rather simple one, like a standard monitor or a
simple panel directly connected to parallel RGB output, or a more
complex one. A complex panel needs something else than just
turn-it-on-and-go. This may involve sending and receiving messages
between OMAP and the panel, but more generally, there's need to have
custom code that handles the particular panel. And the complex panel is
not necessarily a panel at all, it may be a buffer chip between OMAP and
the actual panel.
The software side can be divided into three parts: the lower level
omapdss driver, the lower level panel drivers, and higher level drivers
like omapfb, v4l2 and omapdrm.
The omapdss driver handles the OMAP DSS hardware, and offers a kernel
internal API which the higher level drivers use. The omapdss does not
know anything about fb or drm, it just offers core display services.
The panel drivers handle particular panels/chips. The panel driver may
be very simple in case of a conventional display, basically doing pretty
much nothing, or bigger piece of code, handling communication with the
panel.
The higher level drivers handle buffers and tell omapdss things like
where to find the pixels, what size the overlays should be, and use the
omapdss API to turn displays on/off, etc.
---
There are two things that I'm proposing to improve the Linux display
support:
First, there should be a bunch of common video structs and helpers that
are independent of any higher level framework. Things like video
timings, mode databases, and EDID seem to be implemented multiple times
in the kernel. But there shouldn't be anything in those things that
depend on any particular display framework, so they could be implemented
just once and all the frameworks could use them.
Second, I think there could be use for a common low level display
framework. Currently the lower level code (display HW handling, etc.)
and higher level code (buffer management, policies, etc) seem to be
usually tied together, like the fb framework or the drm. Granted, the
frameworks do not force that, and for OMAP we indeed have omapfb and
omapdrm using the lower level omapdss. But I don't see that it's
anything OMAP specific as such.
I think the lower level framework could have components something like
this (the naming is OMAP oriented, of course):
overlay - a hardware "window", gets pixels from memory, possibly does
format conversions, scaling, etc.
overlay compositor - composes multiple overlays into one output,
possibly doing things like translucency.
output - gets the pixels from overlay compositor, and sends them out
according to particular video timings when using conventional video
interface, or via any other mean when using non-conventional video buses
like DSI command mode.
display - handles an external display. For conventional displays this
wouldn't do much, but for complex ones it does whatever needed by that
particular display.
This is something similar to what DRM has, I believe. The biggest
difference is that the display can be a full blown driver for a complex
piece of HW.
This kind of low level framework would be good for two purposes: 1) I
think it's a good division generally, having the low level HW driver
separate from the higher level buffer/policy management and 2) fb, drm,
v4l2 or any possible future framework could all use the same low level
framework.
---
Now, I'm quite sure the above framework could work quite well with any
OMAP like hardware, with unified memory (i.e. the video buffers are in
SDRAM) and 3D chips and similar components are separate. But what I'm
not sure is how desktop world's gfx cards change things. Most probably
all the above components can be found from there also in some form, but
are there some interdependencies between 3D/buffer management/something
else and the video output side?
This was a very rough and quite short proposal, but I'm happy to improve
and extend it if it's not totally shot down.
Tomi
Hello,
OpenID plugin usage has been disabled in ci.linaro.org due to some
vulnerability detected with the plugin.
Hence the Single Sig On option using your launchpad id wont work for now
till it gets fixed.
If you need to use ci.linaro.org services and need a way to login please
create a new user on ci.linaro.org
and mail me the details and I will give you appropriate access to the
service.
---------- Forwarded message ----------
From: Paul Sokolovsky <paul.sokolovsky(a)linaro.org>
Date: Fri, Oct 28, 2011 at 4:09 PM
Subject: FYI: OpenID auth disabled on android-build.linaro.org
To: linaro-android <linaro-android(a)linaro.org>, Alexander Sack <
asac(a)linaro.org>, Danilo Šegan <danilo.segan(a)linaro.org>, Infrastructure <
infrastructure(a)linaro.org>
Hello,
Due to suspected security issue, OpenID auth was disabed on
android-build.linaro.org. OpenID was never recommended as auth means
there, and instead username/passwd auth was recommended, so this change
should not affect users. Please let me know if you have any issues.
ETA for being enabled back is so far not known, Danilo Shegan tracks
this issue.
--
Best Regards,
Paul
Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linarohttp://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog
--
Thanks and Regards,
Deepti
Infrastructure Team Member, Linaro Platform Teams
Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linarohttp://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog
Hi,
Let me forward this to more people. :)
I'm still grabbing the relevant information for this, so if anyone has
ideas on it, welcome and reply emails to me!
This is currently subscriber list:
Bernhard Rosenkraenzer
Dan Trevino
Deepak Saxena
Frans Gifford
Grant Likely
John Stultz
Kwanghyun LA
Marcus Lorentzon
Mathieu Poirier
Patrik Ryd
Sangwook Lee
Tony Mansson
Yejin Moon
Zach Pfeffer
Thank you all!
BR
Botao Sun
---------- Forwarded message ----------
From: Tony Mansson <tony.mansson(a)linaro.org>
Date: Fri, Oct 28, 2011 at 2:38 AM
Subject: Device Tree for Android
To: Deepak Saxena <dsaxena(a)linaro.org>, Grant Likely <
grant.likely(a)linaro.org>
Cc: Botao Sun <Botao.Sun(a)linaro.org>
Hello,
Please note that there will be a session at Connect titled "Device Tree for
Android" headed by Botao Sun from the Android Platform Team.
https://blueprints.launchpad.net/linaro-android/+spec/linaro-platforms-lc4.…
At the time of writing the session is scheduled for Tuesday at 10:00. Your
presence would be appreciated.
BR,
Tony Mansson
W dniu 28.10.2011 17:46, Jeremiah Foster pisze:
>>>
>>> Android's Linux kernels are supported (maintained?) by Linaro.
>>
>> With my Linaro hat on I must object. Depending on what you meant the statement above is either highly inaccurate or simply untrue.
>
> Hence the question mark. :)
I think what I originally meant is that we don't focus solely on Android.
"Improved" is the word I would use, that implies neither support nor
maintenance as we are between the vendors (that are also part of Linaro)
and upstream kernel community (that we are a part of) and we have no
control of either side and their actions. As to what we do check our FAQ
(http://www.linaro.org/faqs/) and read on.
>> Android kernel situation is complicated and varies per board/SoC. What Linaro does is try to upstream and unify the kernel for Linaro member companies SoCs.
>
> What does that mean in practice?
Disclaimer: I'm not a kernel developer. I have experience in the
non-Intel part of the world but I'm not the sort of person with
up-to-date hands-on experience. For those folks please look at traffic
in linaro-dev(a)lists.linaro.org and at our patchwork instance at
patches.linaro.org. You can see what kind of patches we push upstream
and if they have landed yet.
As for your question, read on.
A lot of ARM devices have a BSP kernel (android or not) that is prepared
by some 3rd party (sometimes also by the vendor themselves if the device
is a clone of the reference design) and that kernel is generally not
pushed upstream.
This affects, by far, the vast majority of devices out there (I'd say
that nothing gets pushed by those companies simply because their work
mode does not require such a step - we are working on educating them in
the benefits of working both towards products and common code base).
The ARM tree in the upstream kernel is, again, by far, the largest of
all the other architectures. If I remember correctly it is in fact
larger than *all* the other trees combined. The reasons for this are
complicated but can be generally simplified to code duplication between
the different devices and greater diversity in the actual hardware as
compared to other platforms.
To get ARM Linux healthy we need to reduce that clutter and make sure
that support for the latest and greatest hardware is upstream quickly
and the code is being actively maintained by everyone.
>> This is far from finished and uniform. The "BSP" kernel that hardware vendors provide is not supported by Linaro and in fact often contains code that cannot go upstream.
>
> What does it use this proprietary code for? To know the APIs or to get other hardware interface info? Isn't that a little risky? Won't proprietary, and potentially patented IP leak into the Linaro work? (Not that I believe in IP.)
The term proprietary is a bit misleading, the code IS released as GPL.
It is simply there to support some parts (often userspace or "firmware")
that is not open sourced and cannot be for all practical considerations.
As for the patches in general, there are different reasons why they are
not suitable for being proposed and included upstream:
1) Shabby code, against old trees, copy-pasted from another similar
device, maintenance hell. This is, by my unqualified judgment, the vast
majority of the problem.
2) Code that has no good place in the kernel just yet because the kernel
interfaces are insufficient for the extremely complicated world of ARM
SoCs. Off the top of my, unqualified, head: power management, memory
management, everything related to graphics and probably many more. Here
the reason for not being upstream is that there is no consensus on how
to do something (how to support a certain class of SoC components) that
could be applied to many vendors and non-arm world as well. Here the
people that write the BSP cannot solve the problem and just implement
their own solution to meet the deadline. Such code is often very good
but there are many similar solutions that are quite nontrivial to merge
into one sensible codebase. One such example is memory management where
we have no less than 3 or 4 competing interfaces from various companies
and there is a working group inside Linaro and the greater Linux
community that tries to solve this problem.
3) Bits that enable proprietary userspace drivers. The reasons are
obvious. This could be related to lots of different things, not only
graphics as people often think. IP and software edge (optimizations that
make otherwise identical hardware perform better than competition) is
probably a big motivation here. The IP protection is not only used as in
"don't steal our stuff" but rather "hey, with this being binary it is
harder to prove that we violate a specific patent you have". In
retrospective this is a thing those companies obviously need. Just look
at how many Android handset vendors pay to, for example, Microsoft, for
patents that allegedly apply there. The world of graphics is riddled
with patents and I'm sure that a big money-laden hardware vendor is a
good target for whoever owns the patents.
>> Linaro has several trees, including a grand unification tree that tries to support all the member companies chips in one tree (and one binary, thanks to device trees) but this effort is years away (my personal estimate, I don't speak for the organization). In addition we have several trees for normal/androidized kernel for each board. In the latest 2011.10 release hardware was not supported in 100% on any board that I'm aware of.
>>
>> Having said that the term "supported" seems inappropriate to me. We do work on those boards though.
>
> How would you define it?
By "work" I meant "we are *working* on making the kernel and userspace
on those boards better in each release". Better is shared amongst:
1) More patches landed upstream, thus less delta.
2) Less duplication within the kernel (better code), more device tree
usage, closer to having one kernel binary that supports several
different boards.
3) Better power management, stability, performance, more features, bells
and whistles.
4) Less delta from the android variant to the normal variant. More
discussion and more consensus on how to join the two worlds.
And let's not forget, my own personal favorite, more validation. The
code is tested both manually and automatically and the scope, coverage
and quality is pushed forward each time.
>>> Anything that runs Android can run GNU/Linux.
>>
>> This is a gross oversimplification IMHO. You usually get androidized BSP kernel from a few months/years ago with binary parts that have no corresponding source code. Good luck booting vanilla kernel there.
>
> But it appears to me that all the official boards that are targets for Linaro can run a vanilla kernel, is that not the case? If not, what BSP stuff are you referring to - graphics acceleration?
No I don't think that is the case. A quick glance at
http://git.linaro.org/gitweb will show you how many trees we have.
Except for the explicit upstream trees that Nico maintains none of the
important changes in other trees are upstream today (at least not yet).
Even the Linaro various kernels (which are _not_ the BSP kernels) fail
to work sensibly on all of the boards today. Next-gen boards are usually
the ones with weakest support (although that is rapidly changing, thanks
to what we are doing). Often most primitive board features work (like,
it kind of boots with a specific boot loader and the CPU runs) but
anything you definitely want those boards to do: power management,
stability, sound, graphics, 3D & multimedia, wifi/bluetooth, FM radio,
GPS(?), DSP suppoet, ARMv7 optimizations, is simply not there.
Best regards
ZK
PS: I think that you should ask those questions on @linaro-dev. I could
be talking nonsense here and the people that really know simply did not
see this message. Therefore I'm cross-posting to linaro-dev.
I've just finished uploading pre-built images for the 11.10 release to:
http://releases.linaro.org/images/11.10/oneiric/
These are built with default options from Linaro Media Create to pre-set
sizes. You can install these with 4 simple commands:
$ SDCARD=/dev/sdb
$ IMGFILE=overo-nano.img
$ gunzip ${IMGFILE}.gz
$ dd bs=4k if=${IMGFILE} of=${SDCARD}
-andy
Hello,
There were few user-facing improvements for
https://android-build.linaro.org/ , Linaro Android Build System, from
which can be downloaded daily builds of Android components (platform,
toolchain):
1. HTTP downloads were enabled.
It was long-standing feature request, and brings number of improvements
to user experience and system scalability:
a) With 100Mb+ downloads android-build.linaro.org provides, going
plain HTTP instead of SSL improves download speed pretty well.
b) Taking into account that downloads are server by not very powerful
EC2 instance, alleviating it from SSL number-crunching improve
concurrent download speed and build performance.
c) Using plain HTTP gets around SSL certificate issues, the need to
do extra click-thru in browser or use obscure options for wget.
2. HTTP downloads made default for the Build Frontend.
Instead of documenting HTTP download link on some obscure web page,
they were made default when browsing build results from
https://android-build.linaro.org , e.g.:
https://android-build.linaro.org/builds/~linaro-android/staging-panda/
(Please note that all older links will keep working. Underlying
Jenkins instance also keeps using https:// links).
3. MD5SUMS are available for platform downloads.
Now it's easy to verify integrity of downloads using well-known
convention of MD5SUMS files. Whole download and integrity checking can
be scripted as:
wget -r -nd http://android-build.linaro.org/builds/~linaro-android/staging-panda/65/tar…
md5sum -c MD5SUMS
4. Links to easily access build logs in several formats added.
Last milestone, we enabled Jenkins Log Parser plugin, which allowed
to get quickly to the location of errors within 20MB build log file.
However, it was available only from within Jenkins. Now, links to the
most useful log browsing pages were added directly to frontend's build
page, following concept that frontend page should make the most useful
build information available and developers' fingertips. Now there're
(under "Log" subsection on the page):
* Parsed - parsed log mentioned above, providing quick jump to error
locations and stats about a build
* Tail - Last 500KB or so of the log, which oftentimes contain error.
With one click, entire log can be browsed, with all lines still
nicely wrapped.
* Raw - plain-text log, as available before. This is mostly suitable
for download and local view, as lines are not wrapped in most
browsers when viewing online.
See https://android-build.linaro.org/builds/~linaro-android/staging-panda/#buil…
for example.
--
Best Regards,
Paul
Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linarohttp://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog