xref: /linux/tools/testing/selftests/ublk/test_generic_10.sh (revision ab93e0dd72c37d378dd936f031ffb83ff2bd87ce)
1*f40b1f26SMing Lei#!/bin/bash
2*f40b1f26SMing Lei# SPDX-License-Identifier: GPL-2.0
3*f40b1f26SMing Lei
4*f40b1f26SMing Lei. "$(cd "$(dirname "$0")" && pwd)"/test_common.sh
5*f40b1f26SMing Lei
6*f40b1f26SMing LeiTID="generic_10"
7*f40b1f26SMing LeiERR_CODE=0
8*f40b1f26SMing Lei
9*f40b1f26SMing Leiif ! _have_feature "UPDATE_SIZE"; then
10*f40b1f26SMing Lei	exit "$UBLK_SKIP_CODE"
11*f40b1f26SMing Leifi
12*f40b1f26SMing Lei
13*f40b1f26SMing Lei_prep_test "null" "check update size"
14*f40b1f26SMing Lei
15*f40b1f26SMing Leidev_id=$(_add_ublk_dev -t null)
16*f40b1f26SMing Lei_check_add_dev $TID $?
17*f40b1f26SMing Lei
18*f40b1f26SMing Leisize=$(_get_disk_size /dev/ublkb"${dev_id}")
19*f40b1f26SMing Leisize=$(( size / 2 ))
20*f40b1f26SMing Leiif ! "$UBLK_PROG" update_size -n "$dev_id" -s "$size"; then
21*f40b1f26SMing Lei	ERR_CODE=255
22*f40b1f26SMing Leifi
23*f40b1f26SMing Lei
24*f40b1f26SMing Leinew_size=$(_get_disk_size /dev/ublkb"${dev_id}")
25*f40b1f26SMing Leiif [ "$new_size" != "$size" ]; then
26*f40b1f26SMing Lei	ERR_CODE=255
27*f40b1f26SMing Leifi
28*f40b1f26SMing Lei
29*f40b1f26SMing Lei_cleanup_test "null"
30*f40b1f26SMing Lei_show_result $TID $ERR_CODE
31