Explicitly use python version number

It is needed for systems where python points to python3

Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
Use Markdown in README

Switch to Markdown syntax in README. I did the minimal amount of changes
to make the rendering on Github look sane. We can prettify it even more
later.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
Mute javac unsafe warnings about OsvSystemClassLoader.java

Makes this go away:

  Note: io/osv/OsvSystemClassLoader.java uses unchecked or unsafe
  operations.  Note: Recompile with -Xlint:unchecked for details.

Unfortunately javac does not recognize statement level suppressions
like this:

  //noinspection unchecked
  return (T) method.invoke(target, args);

I need to switch to more coarse grained suppression on method level:

  @SuppressWarnings("unchecked")

Signed-off-by: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
Allow interrupting java apps from CRaSH SSH shell

Signed-off-by: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
Configure java.util.logging -> slf4j bridge for mgmt app

I dismissed the idea to configure the bridge in default JVM
configuration because having a default like this would force
all apps to use particular slf4j-api version.

Signed-off-by: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
Copy default java.util.logging config from JDK

Currently all log messages are silently ignored,
which is probably not what we want.

The default JDK config logs on console.

Signed-off-by: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
build: move generated ctype-data.h to gen/include

Consolidates generated files, and makes it easier to maintain the eclipse
index.

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
xen: Fix xen_features initialization

Ironically, my commit 0c77d3c broke xen_features initialization.
This patch fixes it.

Reported-by: Avi Kivity <avi@cloudius-systems.com>
Signed-off-by: Raphael S. Carvalho <raphael.scarv@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
Fix setup_libstdcxx() in scripts/loader.py

Fix the following breakage caused by commit c98b928 ("Explicitly use python
version number") when starting GDB:

  Traceback (most recent call last):
    File "/home/penberg/osv/scripts/loader.py", line 833, in <module>
      setup_libstdcxx()
    File "/home/penberg/osv/scripts/loader.py", line 496, in setup_libstdcxx

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
xen: do not start xen interrupt threads in non-xen guests

If we do, we'll have extra xen threads running around for no reason in the !xen
case. is_xen() should already work here since the initializers are run after
cpuid discovery, which is when the information for is_xen is filled up.

Signed-off-by: Glauber Costa <glommer@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
mmu: default value for slop parameter of linear_map()

slop made page size by default because this is the most frequent case

Signed-off-by: Dmitry Fleytman <dmitry@daynix.com>
acpi: mapping of long tables fixed

Due to incorrect mapping logic ACPI tables longer than PAGE_SIZE
mapped partially and to wrong base address. As a result system crashed
on ACPI tables checksum verification.

Found when running on EC2 HVM instances, the problematic table was:
ACPI: DSDT 0xfc002c40 0321F (v02    Xen      HVM 00000000 INTL 20090220)

Signed-off-by: Dmitry Fleytman <dmitry@daynix.com>
build/release: unify OSv version string for builds and releases

Signed-off-by: Dmitry Fleytman <dmitry@daynix.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
ec2: release script for Amazon EC2 service

The script supports 3 modes of operation:
  - public release (default) for official releases
  - private release - for internal testing
  - development instance - for development

Public release means AMI created public (visible to everyone) and replicated
over all existing Amazon regions.

Private release means AMI created private (visible to releaser's account only) and
not replicated over regions.

Development instance means no AMI created, script stops after instance creation.

The script's help screen (--help command line parameter) provides detailed information
about script interface, dependencies and configurations required.

It's interesting to note that each public release made by this script costs about 20 USD
mainly because of AMI replication over Amazon regions

Signed-off-by: Dmitry Fleytman <dmitry@daynix.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
drivers/acpi: Document why AcpiOsUnmapMemory() is a no-op

Add the explanation by Avi Kivity to AcpiOsUnmapMemory() to explain why
it's a no-op.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Configure the bridge for spanning tree off

Spanning tree causes the bridge port to start in listening mode.
That causes dhcp packet to be ignored. Since we're not fearing of
layer2 loops, we can safely remove the spanning tree config.

Signed-off-by: Dor Laor <dor@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
loader.py: fix thread_context for stacks in high end

This fixes 'osv info threads' command.

when $rsp holds 0xffffc0003fdf6fc8, ulong() for gdb.Value representing
it returns 18446673706036981704. This is out of int range. This
causes that thread_context.__exit__() throws "Numeric constant too
large" exception from

  set $rbp = 18446673706036981704

The fix removes the additional conversion as it seems to be
unnecessary. The gdb.Value should format itself properly.

Signed-off-by: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
nbd: Add small python nbd client for future usage in scripts/imgedit.py.

Signed-off-by: Benoit Canet <benoit@irqsave.net>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
build: Build images as QCOW2 files.

Make use of the python nbd client.

Signed-off-by: Benoit Canet <benoit@irqsave.net>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>