Skip to content
Snippets Groups Projects
  1. Oct 29, 2013
    • Tomasz Grabiec's avatar
      vfs: namei() should return ENOTDIR when component is not a directory · 1fe30840
      Tomasz Grabiec authored
      
      The call to namei("/dir/file/") currently fails with ENOENT when
      "/dir/file" exists. A more standard way is to return ENOTDIR
      instead. This way calls to stat, open, rename, etc. will be in
      line with the POSIX spec.
      
      It is also useful to rename() implementation which needs to
      differentiate behaviour between the case in which target does not
      exist and the case in which it does but the path has trailing slash
      and the last component is not a directory.
      
      In addition to that the check was performed in an inconsistent matter
      - only when dentry lookup failed. This change makes the check
      performed always.
      
      Signed-off-by: default avatarTomasz Grabiec <tgrabiec@cloudius-systems.com>
      1fe30840
    • Avi Kivity's avatar
      build: omit source file from autodependencies · 47d3d232
      Avi Kivity authored
      
      When converting a source file from .c to .cc, make will complain that the
      old source file was missing.  This is annoying, especially when bisecting
      or compile-testing a patch set.
      
      Fix by removing the source file dependency.  Since the dependency is alread
      specified explicitly by the makefile, no information is lost.
      
      Signed-off-by: default avatarAvi Kivity <avi@cloudius-systems.com>
      47d3d232
  2. Oct 28, 2013
  3. Oct 25, 2013
  4. Oct 24, 2013
  5. Oct 23, 2013
  6. Oct 17, 2013
  7. Oct 16, 2013
  8. Oct 15, 2013
  9. Oct 14, 2013
  10. Oct 13, 2013
  11. Oct 11, 2013
    • Tomasz Grabiec's avatar
      Move mgmt submodule head · 9bb55838
      Tomasz Grabiec authored
      This also requires fixing paths to mgmt jars in build.mk
      and usr.manifest as the version scheme has changed.
      
      git log --format=short 7a4db4e759b..54f4810a7:
      
        commit 54f4810a76fabf955aeea34baefa336abf8b8467
        Author: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
      
            Revert "supporting artifactory publish"
      
        commit 4abf771d146d6cde66f330e6b6ab6ececffb4cdd
        Author: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
      
            mgmt/web: ditch jline-2.7 pulled by jruby-core
      
        commit 3863a3b58b661cd751314966cccb0f6c9835ed4a
        Author: Nadav Har'El <nyh@cloudius-systems.com>
      
            Moved RunJava to io.osv namespace
      
        commit be0717595f45d647062e7a41cc8dd38393c96547
        Author: Ronen Narkis <narkisr@gmail.com>
      
            supporting testing (jruby rake test does not work no matter what)
      
        commit 46e74f6bb886a0c62b06f08559fe2e44efdb8900
        Author: Ronen Narkis <narkisr@gmail.com>
      
            ignoring build
      
        commit 95ff3b70bae877d5d8cf0144853d1a201a0be333
        Author: Ronen Narkis <narkisr@gmail.com>
      
            verfying json existence and giving meaning full error
      
        commit 8b60c4a40aa4bcb7ce08bba600fd9cd6d63e1073
        Author: Ronen Narkis <narkisr@gmail.com>
      
            moving to three digit versioning in order to have a finer grained control on rel
      
        commit ffa7646388cec8d5b138ff4fc28a985c6344824c
        Author: Ronen Narkis <narkisr@gmail.com>
      
            supporting artifactory publish
      
        commit 8855112e2c867b4f855ed28ad9d9982c26bc56a3
        Author: Ronen Narkis <narkisr@gmail.com>
      
            clearing unused repo
      
        commit 3be79eb18b2be7bf1f28aaebd9905ac77945e4e4
        Author: Or Cohen <orc@fewbytes.com>
      
            Migrated ifconfig from previous JS console
      
        commit 287b014cf709e9c46692c59f87b70ebf056114b5
        Author: Or Cohen <orc@fewbytes.com>
      
            Migrated run command from previous CLI
      
        commit 0ffe064d30c1a812d7e853ee568ce45bfc16ed42
        Author: Or Cohen <orc@fewbytes.com>
      
            Added daemonizeIfNeeded helper method for commands
      
        commit 36951a86493c954a2e939648b5060260fac5b539
        Author: Or Cohen <orc@fewbytes.com>
      
            Moved ELFLoader from cloudius.cli to cloudius.util
      9bb55838
  12. Oct 10, 2013
  13. Oct 06, 2013
    • Nadav Har'El's avatar
      Put RunJava.class in a jar, runjava.jar · a8af5dde
      Nadav Har'El authored
      
      We use the RunJava Java class to run Java applications (both java.so
      and the "java" CLI command use it). We used to have RunJava.class
      uncompressed, in the /java directory, but this caused two problems:
      
      1. Or noticed that having a directory (/java) on the classpath causes
         thousands of stat() calls when Java tries to look for all classes
         in this directory. With a jar, its contents are read only once.
      
      2. The "java" CLI command (java.groovy) didn't work because apparently
         Groovy cannot deal with classes being in the top-level package.
      
         So this patch moves RunJava into the io.osv package, and put it into a jar
         /java/runjava.jar.
      
         Note that java.groovy is changed in a separate patch (because it's in
         a different sub-repository....)
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      a8af5dde
  14. Oct 03, 2013
  15. Oct 01, 2013
  16. Sep 29, 2013
    • Nadav Har'El's avatar
      Add kill() support - sort of · b9ed15c2
      Nadav Har'El authored
      
      This patch adds support for the Linux kill(2) function.
      The next patch will add alarm(2) support, which uses kill(2).
      
      To be honest, we sort-of implement kill(). This implementation is
      compatible with the API, but the semantics are somewhat different:
      While in Linux kill() causes the signal handler to run on one of the
      existing threads, in this implementation, the signal handler is run in a
      *new* thread.
      
      Implementing the exact Linux semantics in OSv would require tracking when
      OSv runs kernel code (i.e., code in the main executable, not a shared
      object) so we can delay running the signal handler until returning to the
      user code. Moreover, we'll need to be able to interrupt sleeping kernel
      code. This is complicated and adds overhead even if signals aren't used
      (and they aren't used in most modern code).
      
      I expect that this code will be "good enough" in many use cases.
      This code will *not* be good in enough in programs that expect one of the
      following:
      
      1. A program that by using Posix Thread's "signal masks" tried to ensure
         that the signal is delivered to one specific thread, and not to an
         arbitrary thread.
      
      2. A program that used kill() or alarm() not intending to run a signal
         handler, but rather intending to interrupt a sleeping system call
         like sleep() or read(). Our kill() does not interrupt sleeping OSv
         function calls, which will continue to sleep on the thread they run
         on.
      
      The support in this patch (and see next patch, for alarm()) is good
      enough for netperf's use of alarm().
      
      P.S. kill() can be used only to send a signal to the current process, the
      only process we have in OSv (you can also use pid=0 and pid=-1 to achieve
      the same results).
      
      This patch also adds a test for kill() and alarm(). The alarm() test
      will fail until the next patch :-)
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      b9ed15c2
  17. Sep 26, 2013
  18. Sep 20, 2013
    • Nadav Har'El's avatar
      Tests: add trivial sleep test · ade5bc3e
      Nadav Har'El authored
      
      Add a trivial sleep() test, which sleep()s for 2 seconds, and verifies
      that this finishes and has slept for roughly 2 seconds.
      
      I used this for debugging issue #26 - the attempts there ruined timers,
      and in particular this trivial test hangs, as sleep() never returns.
      
      (A note to our future automatic testing implementor: We need to allow
      for the possibility that a test doesn't cleanly fail, but rather hangs,
      and consider this a failure too).
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      ade5bc3e
  19. Sep 19, 2013
    • Benoît Canet's avatar
      Test: Add a DNS resolver test · 2a1064ce
      Benoît Canet authored
      
      This regression test trigger issue #8
      "Make Java InetAddress.getHostName() work" by exercising the DNS
      resolver on localhost and a dns root server.
      
      The test takes care of specifying NI_NOFQDN to resolve only the
      hostname part of localhost ip.
      
      It appears that the DNS ip is not communicated to the libc by
      core/dhcp.cci: /etc/resolv.conf is not filled.
      
      Test contributed while waiting for an fix idea to implement.
      
      Signed-off-by: default avatarBenoit Canet <benoit@irqsave.net>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      2a1064ce
Loading