On 15.09.2015 16:34, Eric Blake wrote:
> On 09/15/2015 12:03 AM, Fam Zheng wrote:
>> Since commit 934659c460d46c948cf348822fda1d38556ed9a4 (iotests: Do not 
>> suppress
>> segfaults in bash tests), sudo in 128 complains about unknown command
>> "_qemu_io_wrapper", but I don't know how to fix that. Any idea?
> 
> Ugg. That's because _qemu_io_wrapper is a shell function, but sudo can't
> directly invoke shell functions.
> 
> It passes on systems where $sudo expands to '' because the test is being
> run as root.
> 
> I think that test will have to be rewritten to use raw invocation
> (untested):
> 
> $sudo "$QEMU_IO_PROG" $QEMU_IO_OPTIONS --format "$IMGFMT" --nocache -c
> "read 0 65536" "$TEST_IMG" > out 2> err
> 
> and then manually feed "out" through _filter_qemu_io and replay "err"
> (since you can no longer take advantage of the '(subshell)|pipeline'
> trick added by 934659c to force bash to display core dumps).

It's ugly, but maybe

QEMU_IO_OPTIONS="-n \"$QEMU_IO_PROG\" $QEMU_IO_OPTIONS" \
    QEMU_IO_PROG=sudo \
    _qemu_io_wrapper --format "$IMGFMT" ...

would do the trick.

But it's probably too ugly. So maybe the best solution would be to copy
the wrapper function to 128, but with it using $sudo there.

Max

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to