#!/bin/bash # # This file is part of util-linux. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # TS_TOPDIR="${0%/*}/../.." . $TS_TOPDIR/functions.sh ts_init "$*" ts_check_test_command "$TS_CMD_LSMEM" ts_check_prog "tar" ts_check_prog "bzip2" LSCOLUMNS="RANGE,SIZE,STATE,REMOVABLE,BLOCK,NODE" function do_lsmem { local opts="$*" echo -e "\n---\n" >>${TS_OUTPUT} echo "\$ lsmem $opts" >>${TS_OUTPUT} ${TS_CMD_LSMEM} $opts --sysroot "${dumpdir}/${name}" >>${TS_OUTPUT} 2>&1 } for dump in $(ls $TS_SELF/dumps/*.tar.bz2 | sort); do name=$(basename $dump .tar.bz2) dumpdir="$TS_OUTDIR/dumps" ts_init_subtest $name mkdir -p $dumpdir tar -C $dumpdir -jxf $dump do_lsmem --split=STATE,REMOVABLE do_lsmem --output RANGE,SIZE --split none do_lsmem --output RANGE,SIZE,STATE --split STATE do_lsmem --all --output $LSCOLUMNS do_lsmem --raw --output $LSCOLUMNS --split $LSCOLUMNS do_lsmem --json --output $LSCOLUMNS --split $LSCOLUMNS do_lsmem -o +ZONES do_lsmem ts_finalize_subtest done ts_finalize