<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. https://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="https://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:openvz</id>
  <title>OpenVZ</title>
  <subtitle>OpenVZ</subtitle>
  <author>
    <name>OpenVZ</name>
  </author>
  <link rel="alternate" type="text/html" href="https://openvz.livejournal.com/"/>
  <link rel="self" type="text/xml" href="https://openvz.livejournal.com/data/atom"/>
  <updated>2012-08-22T05:20:45Z</updated>
  <lj:journal userid="9392309" username="openvz" type="community"/>
  <link rel="service.feed" type="application/x.atom+xml" href="https://openvz.livejournal.com/data/atom" title="OpenVZ"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:openvz:24651</id>
    <author>
      <name>Kir Kolyshkin</name>
    </author>
    <lj:poster user="k001" userid="990679"/>
    <link rel="alternate" type="text/html" href="https://openvz.livejournal.com/24651.html"/>
    <link rel="self" type="text/xml" href="https://openvz.livejournal.com/data/atom/?itemid=24651"/>
    <title>OpenVZ is running on an ARM (Gumstix Overo)!</title>
    <published>2008-10-23T16:08:07Z</published>
    <updated>2012-08-22T05:20:45Z</updated>
    <category term="overo"/>
    <category term="kernel"/>
    <category term="openvz"/>
    <category term="arm"/>
    <category term="gumstix"/>
    <content type="html">&lt;img src="https://imgprx.livejournal.net/a34f1bd1f305157025f7c5bd5de1a73fd687f101/_oJS_UEBCl6IndHiR_bPYMdy15WToYC-exOTbPQY3ufALJSmD7OGUC0vyQsUEyGnWY85iWM8hJWYvQqc0epKR-JCeluYt_voxzlDWhg3hMw" align="right" fetchpriority="high"&gt;When my colleague Pavel Emelyanov returned from the 2008 Linux kernel summit back in September he brought a small present for me -- a &lt;a href="http://www.gumstix.net/Overo/" target="_blank" rel="nofollow"&gt;Gumstix Overo&lt;/a&gt; (every LKS participant got one for free; yet another reason to become a high-profile kernel developer!). Overo is a computer (well, actually a set of boards and cables) with a CPU board the size of a gum stick, featuring TI OMAP3 CPU, 128 megs of RAM and a microSD slot. It also has 802.11g Wi-Fi and Bluetooth but those happens to be completely dead as this the first beta release of hardware.&lt;br /&gt;&lt;br /&gt;For the last few days I was digging into a project to make OpenVZ running on this Overo thing. That involved patching OpenVZ kernel to support ARM architecture, building vzctl package (.ipk) for ARM using bitbake, and creating a template.&lt;br /&gt;&lt;br /&gt;It was amazingly easy to port the OpenVZ kernel to ARM; you can see &lt;a href="http://download.openvz.org/.kir/overo/kernel/" target="_blank" rel="nofollow"&gt;here&lt;/a&gt; that besides a big-all-in-one-openvz-for-2.6.27 patch I only had to add 4 tiny ARM-specific patches (&lt;a href="http://download.openvz.org/.kir/overo/kernel/0001-arm-introduce-MAP_EXECPRIO-define.patch" target="_blank" rel="nofollow"&gt;1&lt;/a&gt;, &lt;a href="http://download.openvz.org/.kir/overo/kernel/0002-arm-export-arm-version-of-show_mem.patch" target="_blank" rel="nofollow"&gt;2&lt;/a&gt;, &lt;a href="http://download.openvz.org/.kir/overo/kernel/0003-arm-wire-OpenVZ-syscalls.patch" target="_blank" rel="nofollow"&gt;3&lt;/a&gt;, &lt;a href="http://download.openvz.org/.kir/overo/kernel/0004-arm-add-openvz-and-bc-Kconfigs.patch" target="_blank" rel="nofollow"&gt;4&lt;/a&gt;). For vzctl, it was even easier -- all I had to do is to &lt;a href="http://download.openvz.org/.kir/overo/vzctl/vzctl-add-arm-syscalls.patch" target="_blank" rel="nofollow"&gt;add openvz syscall numbers&lt;/a&gt; for ARM which were added, and create a &lt;a href="http://download.openvz.org/.kir/overo/vzctl/vzctl_3.0.23.bb" target="_blank" rel="nofollow"&gt;bitbake recipe file&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Creating a template for ARM architecture was tougher but I managed to win that fight, too -- you can find a Debian Lenny template &lt;a href="http://download.openvz.org/.kir/overo/template/" target="_blank" rel="nofollow"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Here is an except from a terminal session showing OpenVZ on Overo:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;root@overo:~# uname -a&lt;br /&gt;Linux overo 2.6.27-omap1 #1 Tue Oct 21 21:19:40 MSD 2008 armv7l unknown unknown GNU/Linux&lt;br /&gt;&lt;br /&gt;root@overo:~# cat /proc/vz/version&lt;br /&gt;037test001&lt;br /&gt;&lt;br /&gt;root@overo:~# vzlist&lt;br /&gt;      CTID      NPROC STATUS  IP_ADDR         HOSTNAME&lt;br /&gt;       777          5 running -               -&lt;br /&gt;&lt;br /&gt;root@overo:~# vzctl enter 777&lt;br /&gt;entered into CT 777&lt;br /&gt;-bash-3.2# ps axf&lt;br /&gt;Unknown HZ value! (0) Assume 100.&lt;br /&gt;  PID TTY      STAT   TIME COMMAND&lt;br /&gt;  310 ?        Ss     0:00 vzctl: pts/0   &lt;br /&gt;  311 pts/0    Ss     0:00  \_ -bash&lt;br /&gt;  313 pts/0    R+     0:00      \_ ps axf&lt;br /&gt;    1 ?        Ss     0:00 init [2]      &lt;br /&gt;  208 ?        Sl     0:00 /usr/sbin/rsyslogd -c3&lt;br /&gt;  227 ?        Ss     0:00 /usr/sbin/cron&lt;br /&gt;&lt;/code&gt;&lt;a name='cutid1-end'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Please note that all this is still in very alpha stage -- there are errors, bugs, ugly warnings, you have to modify some things in place etc. But it's working. If someone is interested in running OpenVZ on ARM hardware, please let me know -- leave a comment here or email kir (A) openvz (.) org.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update:&lt;/b&gt; comments disabled due to spam</content>
  </entry>
</feed>
