Re: [lxc-devel] [Lxc-users] LXC- ARM6 RaspberryPI Fedora core 14

2013-04-05 Thread Benito
Hi Again

Just a follow up question, I had a chat today with an ArchArm user in 
the IRC chat channel, and
he said that it is impossible to run a x86 container on Lxc with an ARM 
host . Is this true ?
Because if it is, lxc doesn't really help with the Pi at all .


On 04/03/2013 11:10 PM, Michael H. Warfield wrote:
> Cross posting over to the developers list, since this is definitely a
> developer issue...
>
> On Wed, 2013-04-03 at 11:29 +0200, Benito wrote:
>> Hi There
>>
>> I've been working on a project on the Raspberry PI , where we want to
>> run a 32-bit /64-bit fedora 14 container
>> on the RaspberryPi . I've had success with LXC on a Mint14 64-bit (which
>> is Ubuntu 12 based I believe) host  with Fedora 14 - 64bit container  (
>> Downloaded FC14 with the template -t parameter below..,, It was as easy
>> as running :
>>
>> apt-get install yum
>> lxc-create -t fedora -n fedora14
> Ok...  Got the latest lxc compiled on my Raspberry Pi.  There seem to be
> 4 things broken with the "fedora" template on the RPi, two of which are
> peculiar to running on the Fedora Remix but one big one will bite
> Raspbian as well.  One is a version/config issue with the Fedora
> container for supporting systemd in a container.
>
> 1) The architecture is reported by the OS as armv6l but this fails.  The
> arm processors should be mapped to arch = arm.  That means adding an if
> check in the template.  That applies to both Raspbian and Fedora Remix
> hosts.  I don't know of other architechtures are similarly affected.
>
> 2) Running under Fedora Remix 17, the template can not find the release
> information and doesn't recognize it as a Fedora family.  Instead of
> being in /etc/fedora-release, it's
> in /etc/raspberrypi-fedora-remix-release but could also be extracted
> from /etc/redhat-release, which is a symlink.
>
> 3) On Fedora Remix, if it finds the release (I added a symlink to test),
> it's extracting the wrong field for the version number from the release
> file.
>
> This is vanilla Fedora 17:
>
> Fedora release 17 (Beefy Miracle)
>
> This is the RPi Fedora Remix 17:
>
> Fedora remix release 17 (Raspberrypi Fedora Remix)
>
> The template script is extracting the third field (word) and is one off
> in this case.  That also causes the yum downloads to bomb.
>
> Both points 2 & 3 can be circumvented by including the -R release to the
> template like this:
>
> lxc-create -t fedora -n Fedora17 -- -R 17
>
> But that still leaves the bad architecture which then causes the yum
> downloads to blow up.  I added this to the template to get it to work
> and it's building a container now.
>
>if [ "$arch" = "i686" ]; then
>arch=i386
>fi
>
> + if [ "$arch" = "armv6l" ]; then
> + arch=arm
> + fi
>
> That should probably be turned into a case statement.
>
> Detecting the correct release file is probably going to be a little ugly
> and, maybe, should fall back to /etc/redhat-release if fedora-release is
> not present, detect the keyword "Fedora" and skip the optional word
> "Remix".
>
> 4) Finally, there's going to need to be a version check in there to add
> "autodev = 1" to container configs for versions greater than 14 or
> systemd in the container will cause problems for the host system.
>
> Regards,
> Mike
>
>> Now I've been struggling with this for a few weeks , Compiled an LXC
>> friendly kernel on the Raspbian OS, - Debian wheezy ARM , also tried
>> with Fedora ARM remix.
>> Is it even possible to run a fedora14 container on ARM (raspberry pi)
>> architecture ?
>> If so can anyone point me in the right direction ?
>>
>> Regards
>> Benito
>>
>>
>>
>> --
>> Minimize network downtime and maximize team effectiveness.
>> Reduce network management and security costs.Learn how to hire
>> the most talented Cisco Certified professionals. Visit the
>> Employer Resources Portal
>> http://www.cisco.com/web/learning/employer_resources/index.html
>> ___
>> Lxc-users mailing list
>> lxc-us...@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/lxc-users
>>


--
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
___
Lxc-devel mailing list
Lxc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxc-devel


Re: [lxc-devel] [Lxc-users] LXC- ARM6 RaspberryPI Fedora core 14

2013-04-05 Thread Bas Pape
> Just a follow up question, I had a chat today with an ArchArm user in
> the IRC chat channel, and
> he said that it is impossible to run a x86 container on Lxc with an ARM
> host . Is this true ?

Yes, it is. Linux containers (the concept, not just this particular
set of tools) use the host kernel and isolate applications using
namespaces. This also means that if the host kernel is not able to run
the application, it won't work. arm kernels cannot run x86, so plain
lxc won't work (qemu might, but whether that's a good idea on arm...)

--
Tucos

--
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
___
Lxc-devel mailing list
Lxc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxc-devel


Re: [lxc-devel] [Lxc-users] LXC- ARM6 RaspberryPI Fedora core 14

2013-04-05 Thread Serge Hallyn
Quoting Bas Pape (basp...@gmail.com):
> > Just a follow up question, I had a chat today with an ArchArm user in
> > the IRC chat channel, and
> > he said that it is impossible to run a x86 container on Lxc with an ARM
> > host . Is this true ?
> 
> Yes, it is. Linux containers (the concept, not just this particular
> set of tools) use the host kernel and isolate applications using
> namespaces. This also means that if the host kernel is not able to run
> the application, it won't work. arm kernels cannot run x86, so plain
> lxc won't work (qemu might, but whether that's a good idea on arm...)

No, in theory you should be able to run a x86 container on arm the same
way we run arm containers on x86 - by registering qemu-i386-static as
binfmt handler.  In practice, as I said earlier (I think in this thread)
just as qemu-arm-static has bugs on x86, I'd expect qemu-i386-static to
have bugs on arm.  And you unfortunately can't ptrace that way.

-serge

--
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
___
Lxc-devel mailing list
Lxc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxc-devel


Re: [lxc-devel] [Lxc-users] LXC- ARM6 RaspberryPI Fedora core 14

2013-04-05 Thread Michael H. Warfield
On Fri, 2013-04-05 at 14:02 +0200, Benito wrote:
> Hi Again

> Just a follow up question, I had a chat today with an ArchArm user in 
> the IRC chat channel, and
> he said that it is impossible to run a x86 container on Lxc with an ARM 
> host . Is this true ?
> Because if it is, lxc doesn't really help with the Pi at all .

That is correct.  So, a Fedora container on a Raspberry Pi is an Fedora
ARM container, not a Fedora x86 (i686/x86_64) container.  I think I was
hinting at that in one of my earlier message over the whole 64/32 bit
thing and asking you if you knew what you were running on.

I tried to send you a reply to that effect in response to your private
message to me the other day but the message failed for some unknown
reason.

Also, judging from that private message, it sounded like you were trying
to run a legacy application in that container, that being the reason you
wanted Fedora 14.  That application sounded like it was compiled for x86
so you wouldn't be able to run the app in the container.  You would need
a full emulator to run the app in.

Still, this was useful to me at least.  It prompted me to test lxc and
the fedora template out on a Raspberry Pi ARM.  I've already got
proposed patches in for comments from others and we'll be incorporating
the fixes into the sources before long.  Sorry if it proved to be a dead
end for you because of the architecture incompatibilities.

Regards,
Mike

> On 04/03/2013 11:10 PM, Michael H. Warfield wrote:
> > Cross posting over to the developers list, since this is definitely a
> > developer issue...
> >
> > On Wed, 2013-04-03 at 11:29 +0200, Benito wrote:
> >> Hi There
> >>
> >> I've been working on a project on the Raspberry PI , where we want to
> >> run a 32-bit /64-bit fedora 14 container
> >> on the RaspberryPi . I've had success with LXC on a Mint14 64-bit (which
> >> is Ubuntu 12 based I believe) host  with Fedora 14 - 64bit container  (
> >> Downloaded FC14 with the template -t parameter below..,, It was as easy
> >> as running :
> >>
> >> apt-get install yum
> >> lxc-create -t fedora -n fedora14
> > Ok...  Got the latest lxc compiled on my Raspberry Pi.  There seem to be
> > 4 things broken with the "fedora" template on the RPi, two of which are
> > peculiar to running on the Fedora Remix but one big one will bite
> > Raspbian as well.  One is a version/config issue with the Fedora
> > container for supporting systemd in a container.
> >
> > 1) The architecture is reported by the OS as armv6l but this fails.  The
> > arm processors should be mapped to arch = arm.  That means adding an if
> > check in the template.  That applies to both Raspbian and Fedora Remix
> > hosts.  I don't know of other architechtures are similarly affected.
> >
> > 2) Running under Fedora Remix 17, the template can not find the release
> > information and doesn't recognize it as a Fedora family.  Instead of
> > being in /etc/fedora-release, it's
> > in /etc/raspberrypi-fedora-remix-release but could also be extracted
> > from /etc/redhat-release, which is a symlink.
> >
> > 3) On Fedora Remix, if it finds the release (I added a symlink to test),
> > it's extracting the wrong field for the version number from the release
> > file.
> >
> > This is vanilla Fedora 17:
> >
> > Fedora release 17 (Beefy Miracle)
> >
> > This is the RPi Fedora Remix 17:
> >
> > Fedora remix release 17 (Raspberrypi Fedora Remix)
> >
> > The template script is extracting the third field (word) and is one off
> > in this case.  That also causes the yum downloads to bomb.
> >
> > Both points 2 & 3 can be circumvented by including the -R release to the
> > template like this:
> >
> > lxc-create -t fedora -n Fedora17 -- -R 17
> >
> > But that still leaves the bad architecture which then causes the yum
> > downloads to blow up.  I added this to the template to get it to work
> > and it's building a container now.
> >
> >if [ "$arch" = "i686" ]; then
> >arch=i386
> >fi
> >
> > + if [ "$arch" = "armv6l" ]; then
> > + arch=arm
> > + fi
> >
> > That should probably be turned into a case statement.
> >
> > Detecting the correct release file is probably going to be a little ugly
> > and, maybe, should fall back to /etc/redhat-release if fedora-release is
> > not present, detect the keyword "Fedora" and skip the optional word
> > "Remix".
> >
> > 4) Finally, there's going to need to be a version check in there to add
> > "autodev = 1" to container configs for versions greater than 14 or
> > systemd in the container will cause problems for the host system.
> >
> > Regards,
> > Mike
> >
> >> Now I've been struggling with this for a few weeks , Compiled an LXC
> >> friendly kernel on the Raspbian OS, - Debian wheezy ARM , also tried
> >> with Fedora ARM remix.
> >> Is it even possible to run a fedora14 container on ARM (raspberry pi)
> >> architecture ?
> >> If so can anyone point me in the right direction ?
> >>
> >> Regards
> >> Benito
> >>
> >>
> >>
> >> -

Re: [lxc-devel] [Lxc-users] LXC- ARM6 RaspberryPI Fedora core 14

2013-04-05 Thread Benito
Thanks for your help. I love the lxc idea though, and yes im trying to 
run a legacy app.
All out of luck, qemu doesnt seem to be an option either. I have to look 
elsewhere for
a solution.


On 04/05/2013 03:29 PM, Michael H. Warfield wrote:
> On Fri, 2013-04-05 at 14:02 +0200, Benito wrote:
>> Hi Again
>> Just a follow up question, I had a chat today with an ArchArm user in
>> the IRC chat channel, and
>> he said that it is impossible to run a x86 container on Lxc with an ARM
>> host . Is this true ?
>> Because if it is, lxc doesn't really help with the Pi at all .
> That is correct.  So, a Fedora container on a Raspberry Pi is an Fedora
> ARM container, not a Fedora x86 (i686/x86_64) container.  I think I was
> hinting at that in one of my earlier message over the whole 64/32 bit
> thing and asking you if you knew what you were running on.
>
> I tried to send you a reply to that effect in response to your private
> message to me the other day but the message failed for some unknown
> reason.
>
> Also, judging from that private message, it sounded like you were trying
> to run a legacy application in that container, that being the reason you
> wanted Fedora 14.  That application sounded like it was compiled for x86
> so you wouldn't be able to run the app in the container.  You would need
> a full emulator to run the app in.
>
> Still, this was useful to me at least.  It prompted me to test lxc and
> the fedora template out on a Raspberry Pi ARM.  I've already got
> proposed patches in for comments from others and we'll be incorporating
> the fixes into the sources before long.  Sorry if it proved to be a dead
> end for you because of the architecture incompatibilities.
>
> Regards,
> Mike
>
>> On 04/03/2013 11:10 PM, Michael H. Warfield wrote:
>>> Cross posting over to the developers list, since this is definitely a
>>> developer issue...
>>>
>>> On Wed, 2013-04-03 at 11:29 +0200, Benito wrote:
 Hi There

 I've been working on a project on the Raspberry PI , where we want to
 run a 32-bit /64-bit fedora 14 container
 on the RaspberryPi . I've had success with LXC on a Mint14 64-bit (which
 is Ubuntu 12 based I believe) host  with Fedora 14 - 64bit container  (
 Downloaded FC14 with the template -t parameter below..,, It was as easy
 as running :

 apt-get install yum
 lxc-create -t fedora -n fedora14
>>> Ok...  Got the latest lxc compiled on my Raspberry Pi.  There seem to be
>>> 4 things broken with the "fedora" template on the RPi, two of which are
>>> peculiar to running on the Fedora Remix but one big one will bite
>>> Raspbian as well.  One is a version/config issue with the Fedora
>>> container for supporting systemd in a container.
>>>
>>> 1) The architecture is reported by the OS as armv6l but this fails.  The
>>> arm processors should be mapped to arch = arm.  That means adding an if
>>> check in the template.  That applies to both Raspbian and Fedora Remix
>>> hosts.  I don't know of other architechtures are similarly affected.
>>>
>>> 2) Running under Fedora Remix 17, the template can not find the release
>>> information and doesn't recognize it as a Fedora family.  Instead of
>>> being in /etc/fedora-release, it's
>>> in /etc/raspberrypi-fedora-remix-release but could also be extracted
>>> from /etc/redhat-release, which is a symlink.
>>>
>>> 3) On Fedora Remix, if it finds the release (I added a symlink to test),
>>> it's extracting the wrong field for the version number from the release
>>> file.
>>>
>>> This is vanilla Fedora 17:
>>>
>>> Fedora release 17 (Beefy Miracle)
>>>
>>> This is the RPi Fedora Remix 17:
>>>
>>> Fedora remix release 17 (Raspberrypi Fedora Remix)
>>>
>>> The template script is extracting the third field (word) and is one off
>>> in this case.  That also causes the yum downloads to bomb.
>>>
>>> Both points 2 & 3 can be circumvented by including the -R release to the
>>> template like this:
>>>
>>> lxc-create -t fedora -n Fedora17 -- -R 17
>>>
>>> But that still leaves the bad architecture which then causes the yum
>>> downloads to blow up.  I added this to the template to get it to work
>>> and it's building a container now.
>>>
>>> if [ "$arch" = "i686" ]; then
>>> arch=i386
>>> fi
>>>
>>> + if [ "$arch" = "armv6l" ]; then
>>> + arch=arm
>>> + fi
>>>
>>> That should probably be turned into a case statement.
>>>
>>> Detecting the correct release file is probably going to be a little ugly
>>> and, maybe, should fall back to /etc/redhat-release if fedora-release is
>>> not present, detect the keyword "Fedora" and skip the optional word
>>> "Remix".
>>>
>>> 4) Finally, there's going to need to be a version check in there to add
>>> "autodev = 1" to container configs for versions greater than 14 or
>>> systemd in the container will cause problems for the host system.
>>>
>>> Regards,
>>> Mike
>>>
 Now I've been struggling with this for a few weeks , Compiled an LXC
 friendly kernel on the Raspbian O