numam-spdk/scripts/gen_ftl.sh
Wojciech Malikowski 52a9661d94 bdev/ftl: Remove punit parameter from ftl bdev configuration
FTL library is consuming whole OCSSD device
so punit parameter is not needed for bdev ftl
configuration.

Change-Id: I56f62ea6d09b3157b70c02ccfffcd3cb07ba4597
Signed-off-by: Wojciech Malikowski <wojciech.malikowski@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/467950
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom SPDK FC-NVMe CI <spdk-ci.pdl@broadcom.com>
2020-01-10 08:42:51 +00:00

72 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
rootdir=$(readlink -f $(dirname $0))/..
function usage {
echo "Usage: [-j] $0 -a TRANSPORT_ADDR -n BDEV_NAME [-u UUID] [-c CACHE]"
echo "UUID is required when restoring device state"
echo
echo "-j json format"
echo "TRANSPORT_ADDR - SSD's PCIe address"
echo "BDEV_NAME - name of the bdev"
echo "UUID - bdev's uuid (used when in restore mode)"
echo "CACHE - name of the bdev to be used as write buffer cache"
}
function create_classic_config {
echo "[Ftl]"
echo " TransportID \"trtype:PCIe traddr:$1\" $2 $3 $4"
}
function create_json_config()
{
echo "{"
echo '"subsystem": "bdev",'
echo '"config": ['
echo '{'
echo '"method": "bdev_ftl_create",'
echo '"params": {'
echo "\"name\": \"$2\","
echo '"trtype": "PCIe",'
echo "\"traddr\": \"$1\","
if [ -n "$4" ]; then
echo "\"uuid\": \"$3\","
echo "\"cache\": \"$4\""
else
echo "\"uuid\": \"$3\""
fi
echo '}'
echo '}'
echo ']'
echo '}'
}
uuid=00000000-0000-0000-0000-000000000000
while getopts "ja:n:l:m:u:c:h" arg; do
case "$arg" in
j) json=1 ;;
a) addr=$OPTARG ;;
n) name=$OPTARG ;;
u) uuid=$OPTARG ;;
c) cache=$OPTARG ;;
h) usage
exit 0 ;;
*) usage
exit 1 ;;
esac
done
if [[ -z "$addr" || -z "$name" ]]; then
usage
exit 1
fi
if [ -n "$json" ]; then
create_json_config $addr $name $uuid $cache
else
create_classic_config $addr $name $uuid $cache
fi