Skip to content
Snippets Groups Projects
  1. Jan 16, 2014
  2. Jan 15, 2014
  3. Jan 14, 2014
    • Amnon Heiman's avatar
      Makefile: Add httpserver rule · 0444401e
      Amnon Heiman authored
      
      The httpserver is part of the compilation of the mgmt.
      
      Signed-off-by: default avatarAmnon Heiman <amnon@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      0444401e
    • Pekka Enberg's avatar
      Revert "Makefile: Add httpserver rule" · c270689a
      Pekka Enberg authored
      
      This reverts commit a39cde78. I applied
      the broken version.
      
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      c270689a
    • Amnon Heiman's avatar
      modules: Add httpserver.so to mgmt module · 3aa44858
      Amnon Heiman authored
      
      The httpserver.so is added to the image and will be
      placed under /usr/mgmt
      
      Signed-off-by: default avatarAmnon Heiman <amnon@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      3aa44858
    • Amnon Heiman's avatar
      Makefile: Add httpserver rule · a39cde78
      Amnon Heiman authored
      
      The httpserver is part of the compilation of the mgmt.
      
      Signed-off-by: default avatarAmnon Heiman <amnon@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      a39cde78
    • Pekka Enberg's avatar
      Update to latest mgmt.git · aafcf382
      Pekka Enberg authored
      
      In preparation for adding httpserver.so to mgmt module, update to latest
      mgmt.git which fixes unsupported boost_program_options library
      dependency to boost_program_options-mt.
      
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      aafcf382
    • Nadav Har'El's avatar
      Move tests to a separate module · 4d0ed4c3
      Nadav Har'El authored
      
      Instead of always putting the tests into all images, this patch adds the
      option of putting them only in some of the images, by making them into a
      new module, modules/tests.
      
      The default image (images/default.py) continues to require the tests
      modules, so tests are included in the default image. Building with
      "make image=tests" makes an image with only the tests and nothing else.
      Other images (e.g., memcached, cassandra,...) currently do not require
      the tests module, so the generated image does will not include the tests.
      
      With this patch, "make image=memcached", for example, contains only the
      bare minimum needed for memcached, and the resulting qcow image is just
      18 MB, down from 69 MB when we included all the tests.
      
      Fixes #160
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      4d0ed4c3
    • Pekka Enberg's avatar
      Revert "build: Force version.h generation" · 996fdfde
      Pekka Enberg authored
      
      This reverts commit d914ee0d because it breaks
      the build:
      
        I'm trying to compile the latest source code from git HEAD and I'm heaving
        the following error:
      
        make -r -C build/release/ all
        make[1]: Entering directory `/home/eduardo/workspace/osv/build/release'
        make[1]: *** No rule to make target
        `/home/eduardo/workspace/osv/build/release/gen/include/osv/version.h',
        needed by `/home/eduardo/workspace/osv/build.mk'.  Stop.
        make[1]: *** Waiting for unfinished jobs....
          GEN gen/include/bits/alltypes.h
        make[1]: Leaving directory `/home/eduardo/workspace/osv/build/release'
        make: *** [all] Error 2
      
      Reported-by: default avatarEduardo Piva <efpiva@gmail.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      996fdfde
    • Nadav Har'El's avatar
      Makefile: get rid of "make external" · e51cf4ee
      Nadav Har'El authored
      
      Our need for "make external" was plagued with problems. First and formost,
      it was annoying - people need to be told to run "make all external" instead
      of just "make". And as a Vlad recently discovered, it strangely relied on a
      debug-mode build to have happened, and also "make clean" doesn't undo what
      "make external" did.
      
      "make external" had a glorious past, but today all that was left of it
      is 3 measly tests which we compile from external/glibc-testsuite: malloc,
      getcwd and clock. These tiny tests - 3 out of 796 tests (!!) in the full
      glibc test suite - aren't really important enough to cause all this
      "make external" mess. So this patch removes them, and the need for a
      "make external".
      
      If we'll ever want to bring back these tests, I think we need to delete the
      partial external/glibc-testsuite directory, and bring the *full* glibc
      test suite of 796 tests, into a separate module. The glibc test suite can be
      downloaded together with the glibc source code - they are all files named
      tst-*.c in the glibc source tree.
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      e51cf4ee
    • Nadav Har'El's avatar
      modules: Move more files to modules/{java,mgmt}/usr.manifest · 7f5d1d0f
      Nadav Har'El authored
      
      After the creation of the "java" and "mgmt" modules, we still left with a
      bunch of files in the main usr.manifest.skel which really belong in the
      modules/{java,mgmt}/usr.manifest.
      
      This patch moves various shared libraries and fonts which Java needs
      (the fonts are needed for AWT, including headless AWT), as well as
      various JNI shared objects and our java.so and runjava.jar, into the
      "java" module, and moves a couple of tools (ifconfig, lsroute) and
      configuration file (/etc/inputrc used by the management module into
      the "mgmt" module.
      
      This reduces small OSv appliances, like "make image=memcached", which
      don't need Java, by 13 MB. We are still left with 69 MB, most of which
      are tests, so the next item on the todo is to move the tests into a
      "test" module.
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      7f5d1d0f
    • Nadav Har'El's avatar
      tst-vfs: don't rely on some random Java file · 305c749f
      Nadav Har'El authored
      
      tst-vfs.cc currently stat()s the file
      	/usr/lib/jvm/jre/lib/amd64/headless/libmawt.so
      And dies if it doesn't exist.
      
      Since Java is now optional in our images, it's not a good idea to check
      for such a file, which might not exist (e.g., "make image=tests check"
      will fail). This patch changes it to check a filename that is certain to
      exist, like namely the test itself - /tests/tst-vfs.so.
      
      If we wanted to have a pathname with more components, the test should
      be rewritten to create this pathname, say /a/a/a/a/a/a/a/a/a/a, and then
      test stat on that newly created file. It cannot rely on such a file to
      pre-exist.
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      305c749f
    • Nadav Har'El's avatar
      Makefile: remove unnecessary -lstdc++ · 2f9a889e
      Nadav Har'El authored
      
      Since our kernel includes the entirety of libstdc++, there's no point of
      specifying "-lstdc++" while linking shared objects (like tests and cpio.so):
      This "linking" doesn't actually do any linking, it just specifies that the
      libstdc++ library is needed, but we already have it, needed or not.
      
      The list of objects-needing-libstdc++ was not only unnecessary, but probably
      also out of date, since we stopped bothering to update it after libstdc++
      was added into the kernel.
      
      So this patch removes these -lstdc++ lines.
      
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      2f9a889e
  4. Jan 13, 2014
    • Glauber Costa's avatar
      ZFS: remove one OSv ifdef · 622d8bba
      Glauber Costa authored
      
      For every OSv specific ifdef we remove in ZFS, God ressurects a kitten.
      
      After some recent additions and fixes, that piece of code can now be
      compiled out. It is the reclaimer code, so it is very welcome.
      
      But beware: that does not means we are reclaiming yet. That only means that we
      wired up the ZFS ARC reclaiming process to the BSD notification system.
      
      We now need to somehow wire that notification system with the OSv shrinking
      infrastructure. That is the easy part. And after that, of course, balance the
      calls between ARC and balloon. That is the hard part.
      
      Signed-off-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      622d8bba
    • Glauber Costa's avatar
      reclaim: export address of the OSV reclaimer · 5a60e13d
      Glauber Costa authored
      
      ZFS will perform some checks to determine if the current calling "process"
      is the reclaimer. Export the address of the reclaimer thread so that test
      can work.
      
      Signed-off-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      5a60e13d
    • Glauber Costa's avatar
      bsd glue: simplify curproc so it returns a pointer · 36c0cebc
      Glauber Costa authored
      
      There is (currently commented out) code in ZFS that checks things like:
      
          if (curproc == pageproc) {
              /* Do something really great */
          }
      
      The problem is that with our current implementation of curproc (designed for Xen)
      that will break, because we will return a pointer to a in-stack variable that is
      created on-demand and only contains the pid of the process.
      
      Returning the thread address will make those checks works, but we will be forced
      to give up on accessing fields inside it altogether. If we *really* must, we can
      have a structure that have the fields in the same offset as our thread class.
      
      But our thread class is defined in a .hh file, so *good luck* calculating the
      offset of a field (say, id) at compile time so we can include in this other .h
      file that contains exclusively C code. Since xen is the only user of the PID test,
      and our resistance to changing the xen code is quite low (if at all), I'll just go
      ahead and change it: storing the address of the process itself should allow us to
      do compare tests the way ZFS does and get everything working.
      
      Signed-off-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      36c0cebc
Loading