Fixes #1382 System memory gets fragmented over time and repeated hugepage allocations fail, giving us intermittent failures on CI. Linux allocates those pages only when requested hugepage count is bigger than current hugepage count, so in order to prevent any additional allocations just stick to a single count all the time. autotest_common.sh already exports HUGEMEM=8G for Linux systems and 2G for BSD ones. `setup.sh reset` doesn't touch the hugepages, so practically only the first `setup.sh` will allocate memory now. The two setup.sh calls are run with sudo, so they need HUGEMEM="$HUGEMEM" to work. Change-Id: I48b4a720bad4e1da14e78313b4db0eb60a177c38 Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2374 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Seth Howell <seth.howell@intel.com>
This directory is meant to demonstrate how to link an external application and bdev module to the SPDK libraries. The makefiles contain six examples of linking against spdk libraries. They cover linking an application both with and without a custom bdev. For each of these categories, they also demonstrate linking against the spdk combined shared library, individual shared libraries, and static libraries.
This directory also contains a convenient test script, test_make.sh, which automates making SPDK and testing all six of these linker options. It takes a single argument, the path to an SPDK repository and should be run as follows:
sudo ./test_make.sh /path/to/spdk
The application hello_world
and bdev module passthru_external
have been copied from their namesakes
in the top level SPDK github repository and don't have any special
functionality.