Date   

Re: Last minute changes - Review Request

David Stewart
 

From: yocto-bounces@yoctoproject.org [mailto:yocto-
bounces@yoctoproject.org] On Behalf Of Richard Purdie
Sent: Friday, October 22, 2010 7:24 AM

Coming up to release there are a few things that the extended testing
has shown up which we have fixes for and which we should consider
including in the release. I also finally got around to doing the final
sstate stress testing and found several problematic issues. Given that
sstate and checksums are a significant feature of this release, I'd
really like them to work as well as we can make them. Prior to this I
had stress tested the backend up not the use of the packages. These
changes don't change any sstate packages themselves, just the use of
them.

Since we already have the release images prepared and tested and these
are not going to change, the criteria for potential changes:

a) We can unit test the changes and be confident they don't
break/regress things.
b) They fix important bugs that the user can easily run into
or that make the project look bad.
c) The changes are small, well documented and are obviously correct
looking at the code/patch.
d) The don't change the generated images.

I'm proposing the following, for each I've provided a rationale:

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=d5504a4275d94868e
28b00c272411e82f4999d95

Printing "fatal:" to new users is worrying

[Reported by Dirk]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=2a69c58046a86d0f7
83acebd8a77e9419b43139a

Users can easily hit the sanity warning about missing 32 bit libs. We
don't need this functionality at this time so we might as well turn it
off by default

[Reported by Dirk]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=0068e55d8f64ae13a
1049c37164e8b14dc33f53f

Doesn't change the build output but fixes a build issue people can
easily run into in from scratch builds due to a missing dependency.

[Reported by Dexuan]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=6e277cb014a53aef6
6ae931b5142495f8a02404f

Removes the "WARNING: Function do_build doesn't exist" message which
could worry users and looks bad

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=fd4457199ef604dc4
d5f8346c8b2a09dc3939129

Several complaints have been received about the inability to easily
delete sstate and DL_DIR contents to recover from failures. This adds a
cleanall task which does this. Downside is that this is undocumented.

[Reported by Darren and others, run into by Dirk]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=f806c499c031fe0c4
da001d41bce635088a90c52

Fixes an sstate bug where the do_package sstate packages don't install
correctly. A user could hit this if cleaning and rebuilding a package
under certain circumstances.

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=13f116b1ad6a955b0
7d4cbaba85879913c30e1ee

Fixes an issue with sstate where rebuilding a package using partially
prebuilt state would break rpm generation and silently remove all the
rpm packages.

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=00a96a20995cefacc
52e10559029de32941ecf6e

Fixes a typo spotted in the debian packaging backend. We don't use this
by default but it should be fixed.

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=36f1ae42fe13dae17
4b7fb5eb85dc49d7d7b516b

User testing keeps showing up issues with the pseudo directory creation
failing to happen. This patch solves the problem in a brute force
fashion, once and forall.

[Reported by Mark and others]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=3f599b3f6a4728627
7cdaa8503f8a8da024eadd4

Fixes an sstate issue seen on the Poky mailing list where file:// sstate
mirrors wouldn't work.

[Reported by Gary Thomas (poky list)]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=535a77a9b681423e2
f10744aca54858c25a03cb0

Just changes a log level to make the output from sstate slightly more
readable.

[Reported by Richard]


I'm not happy about being in this position and I know Dave will be very
nervous about these late changes. To mitigate this I'd like to propose
that a selection of people (Josh, Mark, Saul?) review these changes and
report back on whether they feel these are appropriate and also give the
build some testing with these applied.
I'm so predictable... :-) Yes, I'm nervous. I looked at all of the patches and with the exception of one or two, they mostly seem like good ones. I will accept these if Josh/Mark/Saul give us a +1 on their review & testing.

Cheers,

Richard









_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.pokylinux.org/listinfo/yocto


Re: Media Network Demo: Black Sand and Netbook

Darren Hart <dvhart@...>
 

On 10/22/2010 12:29 AM, Joshua Lock wrote:
On Thu, 2010-10-21 at 15:44 -0700, Darren Hart wrote:
I build mediatomb and rygel live atom-pc images from today's poky/master
+ meta-demo/master. I booted mediatomb on the BlackSand and rygel on the
netbook. I had to manually start the rygel renderer on the netbook. I
didn't see gupnp-av-cp on the rygel image as I expected and the
gupnp-universal-cp command failed to start on the netbook (via a sato
terminal) complaining about missing icons. If I tried to stabrt this
over an ssh - connection, the gupnp-universal-cp started fine (strange).
Hmm, I've commits to fix both of those issues in meta-demo master since
at least yesterday morning.b
I think my build just has some stale data that the various cleans haven't cleared. I'm going to try some clean builds today.


--
Darren Hart
Embedded Linux Kernel


Last minute changes - Review Request

Richard Purdie <rpurdie@...>
 

Coming up to release there are a few things that the extended testing
has shown up which we have fixes for and which we should consider
including in the release. I also finally got around to doing the final
sstate stress testing and found several problematic issues. Given that
sstate and checksums are a significant feature of this release, I'd
really like them to work as well as we can make them. Prior to this I
had stress tested the backend up not the use of the packages. These
changes don't change any sstate packages themselves, just the use of
them.

Since we already have the release images prepared and tested and these
are not going to change, the criteria for potential changes:

a) We can unit test the changes and be confident they don't
break/regress things.
b) They fix important bugs that the user can easily run into
or that make the project look bad.
c) The changes are small, well documented and are obviously correct
looking at the code/patch.
d) The don't change the generated images.

I'm proposing the following, for each I've provided a rationale:

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=d5504a4275d94868e28b00c272411e82f4999d95

Printing "fatal:" to new users is worrying

[Reported by Dirk]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=2a69c58046a86d0f783acebd8a77e9419b43139a

Users can easily hit the sanity warning about missing 32 bit libs. We
don't need this functionality at this time so we might as well turn it
off by default

[Reported by Dirk]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=0068e55d8f64ae13a1049c37164e8b14dc33f53f

Doesn't change the build output but fixes a build issue people can
easily run into in from scratch builds due to a missing dependency.

[Reported by Dexuan]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=6e277cb014a53aef66ae931b5142495f8a02404f

Removes the "WARNING: Function do_build doesn't exist" message which
could worry users and looks bad

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=fd4457199ef604dc4d5f8346c8b2a09dc3939129

Several complaints have been received about the inability to easily
delete sstate and DL_DIR contents to recover from failures. This adds a
cleanall task which does this. Downside is that this is undocumented.

[Reported by Darren and others, run into by Dirk]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=f806c499c031fe0c4da001d41bce635088a90c52

Fixes an sstate bug where the do_package sstate packages don't install
correctly. A user could hit this if cleaning and rebuilding a package
under certain circumstances.

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=13f116b1ad6a955b07d4cbaba85879913c30e1ee

Fixes an issue with sstate where rebuilding a package using partially
prebuilt state would break rpm generation and silently remove all the
rpm packages.

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=00a96a20995cefacc52e10559029de32941ecf6e

Fixes a typo spotted in the debian packaging backend. We don't use this
by default but it should be fixed.

[Reported by Richard]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=36f1ae42fe13dae174b7fb5eb85dc49d7d7b516b

User testing keeps showing up issues with the pseudo directory creation
failing to happen. This patch solves the problem in a brute force
fashion, once and forall.

[Reported by Mark and others]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=3f599b3f6a47286277cdaa8503f8a8da024eadd4

Fixes an sstate issue seen on the Poky mailing list where file:// sstate
mirrors wouldn't work.

[Reported by Gary Thomas (poky list)]

http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=535a77a9b681423e2f10744aca54858c25a03cb0

Just changes a log level to make the output from sstate slightly more
readable.

[Reported by Richard]


I'm not happy about being in this position and I know Dave will be very
nervous about these late changes. To mitigate this I'd like to propose
that a selection of people (Josh, Mark, Saul?) review these changes and
report back on whether they feel these are appropriate and also give the
build some testing with these applied.

Cheers,

Richard


Re: Media Network Demo: Black Sand and Netbook

Joshua Lock <joshua.lock@...>
 

On Thu, 2010-10-21 at 15:44 -0700, Darren Hart wrote:
I build mediatomb and rygel live atom-pc images from today's poky/master
+ meta-demo/master. I booted mediatomb on the BlackSand and rygel on the
netbook. I had to manually start the rygel renderer on the netbook. I
didn't see gupnp-av-cp on the rygel image as I expected and the
gupnp-universal-cp command failed to start on the netbook (via a sato
terminal) complaining about missing icons. If I tried to stabrt this
over an ssh - connection, the gupnp-universal-cp started fine (strange).
Hmm, I've commits to fix both of those issues in meta-demo master since
at least yesterday morning.b


I could run gupnp-av-cp from my laptop (Ubuntu 10.10) and play music
from mediatomb on the rygel renderer. (YAY)
Cool!


What I'd like to see is for gupnp-av-cp to start automatically after the
sato desktop loads on each renderer. This would make each renderer a
standalone player.

So, it's functional (awesome!) and I see these ARs as pending for the
demo images:

[ ] add gupnp-av-cp to the rygel image
Already done
[ ] start rygel on boot (after networking)
I'll take this AR
[ ] start gupnp-av-cp after the sato desktop loads on the rygel image
I'll take this AR too
[ ] setup networking on each of the non-nas images to dhcp on eth0

With the above, each image should boot to a functional state with no
manual interference required.

How much of the above is already planned and how much do we need to get
an owner for?
I'll handle the Rygel and gupnp-av-cp ones, they where already on my
list :-)

Cheers,
Joshua
--
Joshua Lock
Intel Open Source Technology Centre

---------------------------------------------------------------------
Intel Corporation (UK) Limited
Registered No. 1134945 (England)
Registered Office: Pipers Way, Swindon SN3 1RJ
VAT No: 860 2173 47

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.


Re: Please verify the fixed bug in bugzilla.

Darren Hart <dvhart@...>
 

On 10/21/2010 12:44 AM, You, Yongkang wrote:
Hi all,

I just had a quick search in bugzilla and found a lot of bugs are resolved but not verified. We'd better to verify the fix before 0.9 launch.

The M4 resolved (but not verified) bugs (88):
http://bugzilla.pokylinux.org/buglist.cgi?bug_status=RESOLVED&query_format=advanced&target_milestone=0.9%20M4&query_based_on=&columnlist=bug_severity%2Creporter%2Cpriority%2Cop_sys%2Cassigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Cproduct%2Ccomponent

All resolved (but not verified) bugs (198):
http://bugzilla.pokylinux.org/buglist.cgi?query_format=advanced&bug_status=RESOLVED
Bug 468 needs confirmation by someone in PRC with the HP Mini netbook. I've verified the other 4 I opened.

--
Darren Hart
Embedded Linux Kernel


Re: zypper and poky architectures

Qing He <qing.he@...>
 

On Thu, 2010-10-21 at 23:18 +0800, Mark Hatle wrote:
On 10/21/10 3:33 AM, Qing He wrote:
1. what uses for independent packages is called "noarch", "all" is not
recognized, something depends on update-rc.d won't be installed
because of missing dependency
We can certainly look into translating "all" to "noarch" post 0.9. That might
make it easier for people coming from the RPM world, to understand what is in
the package.

1. rename *.all.rpm to *.noarch.rpm
We can certainly do this easily.
If noarch is universally used in RPM word, I think we should use it.


2. the arch automatic detection system uses "uname -m", thus producing
armv5tejl, which can only be resolved as armv5tel, conflicting with
"armv5te" in rpm
This is a bug in Zypper. The machine names should come from somewhere other
then uname -m. (The value of uname -m is very much ia32 specific for the most
part.. other architectures have way too many possible namings for it to be
useful.) There is a line in "/etc/rpm/platform" that contains the name of Poky
architecture. This file should be referenced (instead of -m) for all cases.

3. enhance zypper arch module, make the addition more flexible,
allowing arch alias (e.g. armv5te = armv5tel = armel = arm)
Zypper should read the rpm platform file.
Sounds reasonable. After all, zypper is only intended to be a frontend
utility to the lower end package tool. Then we won't need to worry about
alias and different naming, and this detaches zypper from hardware.


3. many archs are missing in zypper, like mips, armeb, etc.
4. there is no concept of machine-dependent packages (task-base) in
zypper, although we can work around.
Generally speaking, this is true of most RPM installations. However, within RPM
itself.. there really isn't any concept of "arch" anymore.. They're really only
used for grouping and ordering. So Zypper may need to be updated to query the
arch of a package and use it for it's various operations.

2. removing the concept of machine-dependent packages, change all
*.qemuarm.rpm to *.armv5te.rpm
I'm a bit worried about doing this, as we'll end up with (potentially)
incompatible packages with exactly the same name and versions... Perhaps we
need to think about embedding the machine type into the name of the packages
instead?
Thanks for the info. If we are going for dynamic platform specs, it
doesn't really matter whether we have things like qemuarm or not, does it?



That would be some work to do, maybe 1.0 is a good time to get zypper
and package upgrade truely working.
Yes, we also need to get multi-arch as well.. (i.e. 32-bit and 64-bit at the
same time) working. I'm guessing there will be some Zypper interactions there
as well.
I don't really have ideas how this is done. I think on debian this is
actually avoided and i386 packages are repackaged as lib32xxx for x86_64
platform.

Thanks,
Qing


Re: zypper and poky architectures

Qing He <qing.he@...>
 

On Thu, 2010-10-21 at 19:21 +0800, Richard Purdie wrote:
On Thu, 2010-10-21 at 16:33 +0800, Qing He wrote:
I recently reported several zypper bugs specifically for arm, after
some deeper investigation, the problem seems to be of higher level than
I originally thought.

The root cause is that zypper and poky use different way to represent
architectures, as we are putting them together, these two ways are
not compatible, causing many minor glitches that need to modify at
least one of them.

Poky has three kinds of representations in a single target image, which
are independent, cpu-dependent and machine-dependent (all, armv5te,
qemuarm, respectively), e.g.

update-rc.d-0.7-r3.all.rpm
curl-7.21.0-r0.armv5te.rpm
task-base-1.0-r69.qemuarm.rpm

(note that armv5te is the same with gcc's -march option, meaning little
endian)
This is a good analysis and summary. It actually gets more complicated
as for some machines we have a long list of compatible package types
that can be installed, e.g. for qemuarm, if you list PACKAGE_ARCHES
you'll see armv4t armv5 armv5t armv5te which are all accepted by the
opkg backend.
Zypper also does something similar:

defCompatibleWith(_armv5tejl, _noarch,_armv3l,_armv4l,_armv4tl,_armv5l,_armv5tel);


Currently, at least zypper is broken on all of mips, arm, ppc, with
slightly different problems.

The ideal situation is to use consistent arch specification, the
following can be a solution:
1. rename *.all.rpm to *.noarch.rpm
This would only solve part of the problem though?
Yes, only a small part. And the way I prefer is to add an alias in zypper
instead of changing poky.


2. removing the concept of machine-dependent packages, change all
*.qemuarm.rpm to *.armv5te.rpm
This could mean making a copy of each rpm per machine so I'm not keen on
this.
Agreed.


3. enhance zypper arch module, make the addition more flexible,
allowing arch alias (e.g. armv5te = armv5tel = armel = arm)

That would be some work to do, maybe 1.0 is a good time to get zypper
and package upgrade truely working.

Any ideas and comments?
I think we're going to have to teach zypper to read a list of compatible
"architectures" from a configuration file. There is a config file opkg
writes to the filesystem continaing this list and we'll have to do
similar for RPM.
The problem is that current zypper uses hardcoded "archs" and
compatibility list, i.e. at build time with C++ code. Changing it to
read the list at run time is probably substantial.

Another possibility is to generate the list at build time and do it by
scripts and conditional compiling, this does have the problem of
creating logically different versions for different archs.


It does raise the question of how given two possible rpm's it would
chose between the two (for opkg, the list is in order).

Is the problem just in zypper and is rpm free from any issues in this
area?
I don't know much about rpm internals, there is a bug regarding the rpm,
http://bugzilla.pokylinux.org/show_bug.cgi?id=498

But it looks fair limited in impact.

Thanks,
Qing


Re: RFC: "Demo Use Cases" documentation for the web page

Tom Zanussi <tom.zanussi@...>
 

On Thu, 2010-10-21 at 16:00 -0700, Darren Hart wrote:
Media Network Demo
==================
We're looking to have a section on the web site for the demo that
explains what each use-case is and possibly how it can be replicated.
I'm taking the approach of describing each image. Consider the
following:
This is a good start. I don't know if this is the place to add it, but
I just wanted to capture the details of what I've done so far to get my
setup working. For now mainly in case anyone else could use some hints
on how to get everything going...

Basically this is just what I did, and it may be completely wrong -
please do correct anything stupid and suggest improvements if you see
any - at this point I just want to get the basic stuff up and running so
I can pack it all up tomorrow night and not be too worried about not
having anything.

The Yocto Project launch event at ECLF 2010 featured a
multi-architecture Media Network Demo. All the source for this demo is
available in the meta-demo git repository as a layer for the poky build
system.

The following images made up the demo:
o poky-image-nas
o poky-image-mediatomb
o poky-image-rygel

poky-image-nas
--------------
The poky-image-nas image boots your device as a network attached storage
device. It provides a DHCP service and an NFS server. We used this image
to store all our media.
Rather than using the nas image, since all I have is a laptop and the
two atom boards, I decided to just do the simplest thing for now and
have my laptop host and serve up the images over nfs (I was thinking of
doing the nas image inside of say an arm qemu instance running on the
laptop, and may still if I get time, but as a simple approximation, this
will work. All this is also just a fallback in case the real demo
system breaks down, so I'm not being too particular).

So on the laptop, install the nfs server and export the media files:

# apt-get install nfs-kernel-server

Put a bunch of music files somewhere - in my case I put some files in:

/home/trz/Music

Add a line to /etc/exports to export that directory:

/home/trz/Music *(ro,sync,no_root_squash)

restart the nfs server:

/etc/init.d/nfs-kernel-server restart

Let's say the IP address the laptip got was 192.168.1.3.

poky-image-mediatomb
--------------------
The poky-image-mediatomb image adds a UPnP content provider via the
mediatomb package. This image mounts the media share from the NAS and
makes it available to UPnP renderers.
ssh into the mediatomb board, in my case, this is a Black Sand, and
mount the exported media share:

# mount 192.168.1.3:/home/trz/Music /media/music

So now the mediatomb box has access to the files it's going to
advertise. Let's tell mediatomb to do that.

Look in /var/log/mediatomb.log

You should see a line like this:

2010-09-08 10:50:03 INFO: MediaTomb Web UI can be reached by
following this link:
2010-09-08 10:50:03 INFO: http://192.168.1.3:49152/

Point a web browser at that URL and you should see the minimalistic
Mediatomb web interface. Click on the 'Filesystem link' and you should
see somewhere in there your /media/music mount. Click on that and you
should see all your music on the right-hand-side. Click on the '+' and
that should add all your songs to mediatomb (watch out, there doesn't
seem to be any indication as to whether it succeeded or not - I had
duplicates show up in Mediatomb if I did that more than once - just like
iTunes, yeah!).

If you go the 'Database link', you should see a treeview with your songs
somewhere in there. This is the same hierarchy you'll see and navigate
to play your songs in the rygel image 'AV control point'.

*Note, if mediatomb.log showed errors instead of the URL you need, it's
probably because eth0 didn't come up (working on a fix). An ifup
eth0; /etc/init.d/mediatomb restart should fix that.

If that step was successful, you should now be able to see and play your
songs from another box...


poky-image-rygel
----------------
The poky-image-rygel image provides gupnp tools and the rygel media
renderer along with the sato desktop. The renderer can be controlled
locally or via any control point on the network. Several devices can run
this image and stream media from the mediatomb device.
On the rygel image, open up a terminal and type:

# rygel

(the latest image takes awhile to display anything - it's not graphical,
will display a couple lines of text - one of which is an error message,
but the 'playbin' plugin should say it's available, and things should
still work.)

Navigate back to the Desktop and find the 'UpnP Universal Control Point'
and click on it. That should open up a graphical UI showing available
data sources (but is not where you play media from)...

Navigate back to the Desktop and find the 'UPnP AV Control Point'.
Click on that, and you should see something more familiar, something
that looks like it can actually do something useful, which is play a
song. Click on treeview in the app, and eventually you should see some
songs. Click on a song, and hit the 'Play' button, and it should play
the song - it couldn't be easier!

NOTE: make sure you have speaker connected to the board you're rendering
the music on. If that doesn't work, try opening a terminal window and
using amixer to play around with the volume e.g.:

amixer set Master on
amixer set Master 75

For extra credit, install gupnp-tools and try the AV Control Point from
your laptop, or any system - you should see the same media and should be
able to control it from anywhere. Choose a different song and send it
to any other renderer running on any other box, etc. The possibilities
are endless!


Open Questions
--------------
o Is this more or less what we are looking for?
o Should we modify the mediatomb image to:
o automatically mount a specific share from the NAS?
o add something to the config to automatically scan the
media share?
o The poky-image-rygel description needs to be updated as we finalize
the package.



Re: Please verify the fixed bug in bugzilla.

You, Yongkang <yongkang.you@...>
 

On Thursday, October 21, 2010 8:48 PM, Richard Purdie wrote:
On Thu, 2010-10-21 at 15:44 +0800, You, Yongkang wrote:
Hi all,

I just had a quick search in bugzilla and found a lot of
bugs are resolved but not verified. We'd better to verify the
fix before 0.9 launch.

The M4 resolved (but not verified) bugs (88):
http://bugzilla.pokylinux.org/buglist.cgi?bug_status=RESOLVED&q
uery_format=advanced&target_milestone=0.9%20M4&query_based_on=&
columnlist=bug_severity%2Creporter%2Cpriority%2Cop_sys%2Cassign
ed_to%2Cbug_status%2Cresolution%2Cshort_desc%2Cproduct%2Ccomponent

All resolved (but not verified) bugs (198):
http://bugzilla.pokylinux.org/buglist.cgi?query_format=advanced
&bug_status=RESOLVED

Just to remind people, who is responsible for verifying a bug? The
original reporter?
RP,

Yes. The original reporter is responsible for bug verification. Please do it as more as possible.

Do we need to close (verify) all fixed bugs before 0.9 release? QA can help to close the old bugs (bug ID <100).

Thanks,
Yongkang


Re: RFC: "Demo Use Cases" documentation for the web page

Tian, Kevin <kevin.tian@...>
 

From: Darren Hart
Sent: Friday, October 22, 2010 7:01 AM


Media Network Demo
==================
We're looking to have a section on the web site for the demo that
explains what each use-case is and possibly how it can be replicated.
I'm taking the approach of describing each image. Consider the
following:

The Yocto Project launch event at ECLF 2010 featured a
multi-architecture Media Network Demo. All the source for this demo is
available in the meta-demo git repository as a layer for the poky build
system.

The following images made up the demo:
o poky-image-nas
o poky-image-mediatomb
o poky-image-rygel

poky-image-nas
--------------
The poky-image-nas image boots your device as a network attached storage
device. It provides a DHCP service and an NFS server. We used this image
to store all our media.

poky-image-mediatomb
--------------------
The poky-image-mediatomb image adds a UPnP content provider via the
mediatomb package. This image mounts the media share from the NAS and
makes it available to UPnP renderers.

poky-image-rygel
----------------
The poky-image-rygel image provides gupnp tools and the rygel media
renderer along with the sato desktop. The renderer can be controlled
locally or via any control point on the network. Several devices can run
this image and stream media from the mediatomb device.


Open Questions
--------------
o Is this more or less what we are looking for?
boards list used in this demo.

Also a simple figure is always more intuitive to catch the intention here. :-)

o Should we modify the mediatomb image to:
o automatically mount a specific share from the NAS?
o add something to the config to automatically scan the
media share?
o The poky-image-rygel description needs to be updated as we finalize
the package.
One thought is, could we convert this demo page into something more useful
as the collection for various use cases on Yocto which can be contributed by
any user, and then here UPnP is the 1st example?

Thanks
Kevin


Re: Media Network Demo: Black Sand and Netbook

Tom Zanussi <tom.zanussi@...>
 

On Thu, 2010-10-21 at 15:44 -0700, Darren Hart wrote:
I build mediatomb and rygel live atom-pc images from today's poky/master
+ meta-demo/master. I booted mediatomb on the BlackSand and rygel on the
netbook. I had to manually start the rygel renderer on the netbook. I
didn't see gupnp-av-cp on the rygel image as I expected and the
gupnp-universal-cp command failed to start on the netbook (via a sato
terminal) complaining about missing icons. If I tried to stabrt this
over an ssh - connection, the gupnp-universal-cp started fine (strange).

I could run gupnp-av-cp from my laptop (Ubuntu 10.10) and play music
from mediatomb on the rygel renderer. (YAY)

What I'd like to see is for gupnp-av-cp to start automatically after the
sato desktop loads on each renderer. This would make each renderer a
standalone player.

So, it's functional (awesome!) and I see these ARs as pending for the
demo images:

[ ] add gupnp-av-cp to the rygel image
I think this is already done - I have it on my image and it works for
me.

[ ] start rygel on boot (after networking)
[ ] start gupnp-av-cp after the sato desktop loads on the rygel image
[ ] setup networking on each of the non-nas images to dhcp on eth0
eth0 on the rygel image seems to come up ok, it's just the mediatomb
image that doesn't afaics. I'll probably look into this tonight.

I also added a small change in tom/demo that allows the mediatomb image
to do nfs. After doing that, I was able to mount an nfs share from my
laptop on the Black Sand, and have mediatomb add all the media there.

Tom

With the above, each image should boot to a functional state with no
manual interference required.

How much of the above is already planned and how much do we need to get
an owner for?


RFC: "Demo Use Cases" documentation for the web page

Darren Hart <dvhart@...>
 

Media Network Demo
==================
We're looking to have a section on the web site for the demo that
explains what each use-case is and possibly how it can be replicated.
I'm taking the approach of describing each image. Consider the
following:

The Yocto Project launch event at ECLF 2010 featured a
multi-architecture Media Network Demo. All the source for this demo is
available in the meta-demo git repository as a layer for the poky build
system.

The following images made up the demo:
o poky-image-nas
o poky-image-mediatomb
o poky-image-rygel

poky-image-nas
--------------
The poky-image-nas image boots your device as a network attached storage
device. It provides a DHCP service and an NFS server. We used this image
to store all our media.

poky-image-mediatomb
--------------------
The poky-image-mediatomb image adds a UPnP content provider via the
mediatomb package. This image mounts the media share from the NAS and
makes it available to UPnP renderers.

poky-image-rygel
----------------
The poky-image-rygel image provides gupnp tools and the rygel media
renderer along with the sato desktop. The renderer can be controlled locally or via any control point on the network. Several devices can run this image and stream media from the mediatomb device.


Open Questions
--------------
o Is this more or less what we are looking for?
o Should we modify the mediatomb image to:
o automatically mount a specific share from the NAS?
o add something to the config to automatically scan the
media share?
o The poky-image-rygel description needs to be updated as we finalize
the package.



--
Darren Hart
Embedded Linux Kernel


Media Network Demo: Black Sand and Netbook

Darren Hart <dvhart@...>
 

I build mediatomb and rygel live atom-pc images from today's poky/master + meta-demo/master. I booted mediatomb on the BlackSand and rygel on the netbook. I had to manually start the rygel renderer on the netbook. I didn't see gupnp-av-cp on the rygel image as I expected and the gupnp-universal-cp command failed to start on the netbook (via a sato terminal) complaining about missing icons. If I tried to stabrt this over an ssh - connection, the gupnp-universal-cp started fine (strange).

I could run gupnp-av-cp from my laptop (Ubuntu 10.10) and play music
from mediatomb on the rygel renderer. (YAY)

What I'd like to see is for gupnp-av-cp to start automatically after the
sato desktop loads on each renderer. This would make each renderer a
standalone player.

So, it's functional (awesome!) and I see these ARs as pending for the demo images:

[ ] add gupnp-av-cp to the rygel image
[ ] start rygel on boot (after networking)
[ ] start gupnp-av-cp after the sato desktop loads on the rygel image
[ ] setup networking on each of the non-nas images to dhcp on eth0

With the above, each image should boot to a functional state with no
manual interference required.

How much of the above is already planned and how much do we need to get
an owner for?

--
Darren Hart
Embedded Linux Kernel


Yocto project 0.0 Release Readiness Review

David Stewart
 

Attending: Paul, Davest, Dirk, Richard, Saul, Alex, Mark, Jessica, Bruce, Darren

 

Goal: Review the release criteria and make a clear decision to see that we're ready to release.

 

Summary: Launch criteria met with these exceptions:

                * BSPs for Tunnel Creek coming by end of November

                * Documentation and web site will become live over the weekend for check out

                * One high open bug (issue with zypper on targets) to be addressed early in post-launch time frame, OK for now

                * Medium open bug count is higher than desired; major focused effort on resolving bugs in next dev cycle

                * Full test report for all architectures pending - will review by end of week

 

Decision: Go for launch

 

Details:

 

Features Completeness -  100%

                Exceptions relative to the features on the product requirement:

                                Tunnel Creek BSP - will be available by end of November

                                Documentation - the basic pieces are there, more are coming in post 0.9 launch

                                Several engineers unfamiliar with the project are taking the existing bits and making sure they can do a build without hand-holding. This should be complete by latest on Sunday.

 

Bug Status:

                Note: these bug count goals are suggestions for now, we need to

 

* No High Bugs. Actual bugs below:

                190 - an enhancement, will be addressed for the 0.9 release

                443 - zypper segfaulting on some architectures parsing package list on some images.  Zypper really needs to be rearchitected early in the 1.0 cycle. Just use RPM directly. Document.

                477 - Certain Python modules don't work on the target, late breaking, will downgrade to medium

 

* Medium Bugs < 15

                51 total are open now, 7 will be addressed before launch

                Does not meet the criteria, but as these are documented we believe they are acceptable to ship with.

                We need to do a serious effort to reduce the bug count for 1.0.

                We also need to analyze our bug handling process in the next planning meeting.

 

* Low Bugs < 30

                37 are open now.

 

* No Undecided Bugs

                May include some which come in very late and have not been dispositioned yet.

 

Unit Tests Completed - 100%

Test Cases Completed - 100%

                What was planned was completed. Would like to expand this going forward.

 

Sanity Test – 100%

BAT Testing – 100%

Full Test – 90% Passing

                93% completion for all architectures for QEMU and iA hardware

                Need report on ARM, PPC and MIPs hardware - Saul

 

Legal & License – Have Legal & Open Source PDT Approval

                Have completed all required legal review

 

Docs – Pass stakeholder review & Publish to Website

                Currently in process and under review, should be available for review


Re: UPnP demo - call for testing

Darren Hart <dvhart@...>
 

On 10/21/2010 03:50 AM, Joshua Lock wrote:
On Thu, 2010-10-21 at 13:32 +0800, Xu, Dongxiao wrote:
Xu, Dongxiao wrote:
I'd also like to have a try, and building the demo image now.

Thanks,
Dongxiao

Joshua Lock wrote:
Hi all,

I've successfully tested the UPnP demo in my office but would
appreciate someone else taking a bash.

Unfortunately you currently need my branch from poky-contrib
(josh/demo) and the corresponding branch from meta-demo (josh/demo).

The renderer and controller are installed together in the
poky-image-rygel image (I've been using the -live variant).

I needed to use amixer to enable the soundcard and increase the
volume on the netbook I was using.

"amixer set Master on
amixer set Master 75"

Run rygel from a terminal and launch gupnp-av-cp and you should be
able to set play music from a content store on the device. I haven't
tested video...
I just setup the environment and gupnp-av-cp could play music from
another host within the network. However it seems that video doesn't
work yet. Does gupnp-av-cp supports video play?
Thanks for testing this Dongxiao!

I'm not sure whether video is required for the demo, but it should be
supported by gupnp-av-cp and Rygel so long as required gstreamer plugins
are installed. What type of video where you trying to play?
Video is a nice to have, but not required for the UK demo.

--
Darren Hart
Embedded Linux Kernel


Re: UPnP demo - call for testing

Mark Hatle <mark.hatle@...>
 

On 10/21/10 9:52 AM, Tom Zanussi wrote:
On Wed, 2010-10-20 at 10:18 -0700, Joshua Lock wrote:
Hi all,

I've successfully tested the UPnP demo in my office but would appreciate
someone else taking a bash.
With the mediatomb image running on a Black Sand and the rygel image
running on an eMenlow, and using the av-cp on my laptop, I'm able to get
ok audio out of the eMenlow speakers - pretty nifty! ;-)

Still need to get the nas piece going, but it all basically works with
the hardware I have (and will be bringing) - nice job!
poky-image-nas should work on any hardware -- just keep in mind that by default it serves everything over "eth1". Update the config files in meta-demo/images/poky-image-nas/* to point to eth0 (or elsewhere).

--Mark

Tom



_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.pokylinux.org/listinfo/yocto


Re: zypper and poky architectures

Mark Hatle <mark.hatle@...>
 

On 10/21/10 6:21 AM, Richard Purdie wrote:
On Thu, 2010-10-21 at 16:33 +0800, Qing He wrote:
I recently reported several zypper bugs specifically for arm, after
some deeper investigation, the problem seems to be of higher level than
I originally thought.

The root cause is that zypper and poky use different way to represent
architectures, as we are putting them together, these two ways are
not compatible, causing many minor glitches that need to modify at
least one of them.

Poky has three kinds of representations in a single target image, which
are independent, cpu-dependent and machine-dependent (all, armv5te,
qemuarm, respectively), e.g.

update-rc.d-0.7-r3.all.rpm
curl-7.21.0-r0.armv5te.rpm
task-base-1.0-r69.qemuarm.rpm

(note that armv5te is the same with gcc's -march option, meaning little
endian)
This is a good analysis and summary. It actually gets more complicated
as for some machines we have a long list of compatible package types
that can be installed, e.g. for qemuarm, if you list PACKAGE_ARCHES
you'll see armv4t armv5 armv5t armv5te which are all accepted by the
opkg backend.

This is natural until zypper is involved. Zypper supports only one arch
at one time (and this arch should not be changed in fly), and use the
idea of arch compatibility (e.g. _noarch is compatible with _i586), it
then hardcodes the available archs in a different way than poky does,
thus creating several problems:
1. what uses for independent packages is called "noarch", "all" is not
recognized, something depends on update-rc.d won't be installed
because of missing dependency
2. the arch automatic detection system uses "uname -m", thus producing
armv5tejl, which can only be resolved as armv5tel, conflicting with
"armv5te" in rpm
3. many archs are missing in zypper, like mips, armeb, etc.
4. there is no concept of machine-dependent packages (task-base) in
zypper, although we can work around.

Currently, at least zypper is broken on all of mips, arm, ppc, with
slightly different problems.

The ideal situation is to use consistent arch specification, the
following can be a solution:
1. rename *.all.rpm to *.noarch.rpm
This would only solve part of the problem though?

2. removing the concept of machine-dependent packages, change all
*.qemuarm.rpm to *.armv5te.rpm
This could mean making a copy of each rpm per machine so I'm not keen on
this.

3. enhance zypper arch module, make the addition more flexible,
allowing arch alias (e.g. armv5te = armv5tel = armel = arm)

That would be some work to do, maybe 1.0 is a good time to get zypper
and package upgrade truely working.

Any ideas and comments?
I think we're going to have to teach zypper to read a list of compatible
"architectures" from a configuration file. There is a config file opkg
writes to the filesystem continaing this list and we'll have to do
similar for RPM.

It does raise the question of how given two possible rpm's it would
chose between the two (for opkg, the list is in order).

Is the problem just in zypper and is rpm free from any issues in this
area?
We will need to do some additional verification on RPM -- but it appears to me that RPM should not have a problem with this. As far as I'm aware, RPM5 simply ignores the ARCH field for the most part. (My concern as we move in this direction will be ordering of priority between architecture types.. perhaps thats not even in the scope of RPM to worry about... but replacing say an armv4 w/ an armv5 is...)

--Mark

Cheers,

Richard

_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.pokylinux.org/listinfo/yocto


Re: zypper and poky architectures

Mark Hatle <mark.hatle@...>
 

On 10/21/10 3:33 AM, Qing He wrote:
I recently reported several zypper bugs specifically for arm, after
some deeper investigation, the problem seems to be of higher level than
I originally thought.

The root cause is that zypper and poky use different way to represent
architectures, as we are putting them together, these two ways are
not compatible, causing many minor glitches that need to modify at
least one of them.

Poky has three kinds of representations in a single target image, which
are independent, cpu-dependent and machine-dependent (all, armv5te,
qemuarm, respectively), e.g.

update-rc.d-0.7-r3.all.rpm
curl-7.21.0-r0.armv5te.rpm
task-base-1.0-r69.qemuarm.rpm

(note that armv5te is the same with gcc's -march option, meaning little
endian)

This is natural until zypper is involved. Zypper supports only one arch
at one time (and this arch should not be changed in fly), and use the
idea of arch compatibility (e.g. _noarch is compatible with _i586), it
then hardcodes the available archs in a different way than poky does,
thus creating several problems:
1. what uses for independent packages is called "noarch", "all" is not
recognized, something depends on update-rc.d won't be installed
because of missing dependency
We can certainly look into translating "all" to "noarch" post 0.9. That might make it easier for people coming from the RPM world, to understand what is in the package.

2. the arch automatic detection system uses "uname -m", thus producing
armv5tejl, which can only be resolved as armv5tel, conflicting with
"armv5te" in rpm
This is a bug in Zypper. The machine names should come from somewhere other then uname -m. (The value of uname -m is very much ia32 specific for the most part.. other architectures have way too many possible namings for it to be useful.) There is a line in "/etc/rpm/platform" that contains the name of Poky architecture. This file should be referenced (instead of -m) for all cases.

3. many archs are missing in zypper, like mips, armeb, etc.
4. there is no concept of machine-dependent packages (task-base) in
zypper, although we can work around.
Generally speaking, this is true of most RPM installations. However, within RPM itself.. there really isn't any concept of "arch" anymore.. They're really only used for grouping and ordering. So Zypper may need to be updated to query the arch of a package and use it for it's various operations.

Currently, at least zypper is broken on all of mips, arm, ppc, with
slightly different problems.

The ideal situation is to use consistent arch specification, the
following can be a solution:
1. rename *.all.rpm to *.noarch.rpm
We can certainly do this easily.

2. removing the concept of machine-dependent packages, change all
*.qemuarm.rpm to *.armv5te.rpm
I'm a bit worried about doing this, as we'll end up with (potentially) incompatible packages with exactly the same name and versions... Perhaps we need to think about embedding the machine type into the name of the packages instead?

3. enhance zypper arch module, make the addition more flexible,
allowing arch alias (e.g. armv5te = armv5tel = armel = arm)
Zypper should read the rpm platform file.

That would be some work to do, maybe 1.0 is a good time to get zypper
and package upgrade truely working.
Yes, we also need to get multi-arch as well.. (i.e. 32-bit and 64-bit at the same time) working. I'm guessing there will be some Zypper interactions there as well.

--Mark

Any ideas and comments?

Thanks,
Qing
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.pokylinux.org/listinfo/yocto


Re: UPnP demo - call for testing

David Stewart
 

Nice - thanks Tom and Josh
Sent from my Blackberry

----- Original Message -----
From: Tom Zanussi [mailto:tom.zanussi@intel.com]
Sent: Thursday, October 21, 2010 07:52 AM
To: Joshua Lock <josh@linux.intel.com>
Cc: yocto@yoctoproject.org <yocto@yoctoproject.org>
Subject: Re: [yocto] UPnP demo - call for testing

On Wed, 2010-10-20 at 10:18 -0700, Joshua Lock wrote:
Hi all,

I've successfully tested the UPnP demo in my office but would appreciate
someone else taking a bash.
With the mediatomb image running on a Black Sand and the rygel image
running on an eMenlow, and using the av-cp on my laptop, I'm able to get
ok audio out of the eMenlow speakers - pretty nifty! ;-)

Still need to get the nas piece going, but it all basically works with
the hardware I have (and will be bringing) - nice job!

Tom



_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.pokylinux.org/listinfo/yocto


Re: UPnP demo - call for testing

Joshua Lock <josh@...>
 

On Thu, 2010-10-21 at 09:52 -0500, Tom Zanussi wrote:
On Wed, 2010-10-20 at 10:18 -0700, Joshua Lock wrote:
Hi all,

I've successfully tested the UPnP demo in my office but would appreciate
someone else taking a bash.
With the mediatomb image running on a Black Sand and the rygel image
running on an eMenlow, and using the av-cp on my laptop, I'm able to get
ok audio out of the eMenlow speakers - pretty nifty! ;-)

Still need to get the nas piece going, but it all basically works with
the hardware I have (and will be bringing) - nice job!
Huzzah! Replicated on three set ups, victory is mine!

Unfortunately I've had only limited success with videos so will continue
to look into that...

Thanks for testing Tom!

Cheers,
Joshua
--
Joshua Lock
Intel Open Source Technology Centre