qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] tests/migration: Add source to PC boot block


From: Wei Huang
Subject: Re: [Qemu-devel] [PATCH v2] tests/migration: Add source to PC boot block
Date: Mon, 12 Feb 2018 10:14:24 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0


On 02/12/2018 09:07 AM, Dr. David Alan Gilbert wrote:
> * Andrew Jones (address@hidden) wrote:
>> On Mon, Feb 05, 2018 at 06:18:46PM +0000, Dr. David Alan Gilbert (git) wrote:
>>> diff --git a/tests/migration/rebuild-x86-bootblock.sh 
>>> b/tests/migration/rebuild-x86-bootblock.sh
>>> new file mode 100755
>>> index 0000000000..c40f025e1a
>>> --- /dev/null
>>> +++ b/tests/migration/rebuild-x86-bootblock.sh
>>> @@ -0,0 +1,37 @@
>>> +#!/bin/sh
>>> +# Copyright (c) 2016 Red Hat, Inc. and/or its affiliates
>>> +# This work is licensed under the terms of the GNU GPL, version 2 or later.
>>> +# See the COPYING file in the top-level directory.
>>> +#
>>> +# Author: address@hidden
>>> +
>>> +ASMFILE=tests/migration/x86-a-b-bootblock.s
>>> +HEADER=tests/migration/x86-a-b-bootblock.h
>>> +
>>> +if [ ! -e "$ASMFILE" ]
>>> +then
>>> +  echo "Couldn't find $ASMFILE" >&2
>>> +  exit 1
>>> +fi
>>> +
>>> +ASM_WORK_DIR=/tmp/X86BB$$
>>
>> mktemp?
> 
> Yes, that's probably fair.

I echo this. So we will use something like:

-ASM_WORK_DIR=/tmp/AARCH64BB$$
+ASM_WORK_DIR="$(mktemp -d /tmp/AARCH64XXXXXX)"

-mkdir $ASM_WORK_DIR &&


> 
>>> +mkdir $ASM_WORK_DIR &&
>>> +as --32 -march=i486 "$ASMFILE" -o $ASM_WORK_DIR/bb.o &&
>>> +objcopy -O binary $ASM_WORK_DIR/bb.o $ASM_WORK_DIR/bb.boot &&
>>> +dd if=$ASM_WORK_DIR/bb.boot of=$ASM_WORK_DIR/bb.bootsect \
>>> +  bs=256 count=2 skip=124 &&
>>> +xxd -i $ASM_WORK_DIR/bb.bootsect |
>>
>> Is xxd now considered a common enough tool for portable scripts? I've
>> always liked xxd for manual use, but scripted with 'od'.
> 
> This script isn't part of a normal build or make check or anything, so
> jumping through hoops to make it portable for the mythical other person
> who might ever run it seems OTT, especially since xxd is very common,

xxd isn't installed by default (at least on my aarch64 server). But it
is part of vim-common package; so it is fair to say xxd command is
available on all major distros.

> and I'm not sure how much I'd bet on the portability of od's output
> format either.
> 
> Dave
> 
>>> +sed -e 's/_tmp.*_bootsect/x86_bootsect/' -e 's/.*int.*//' > \
>>> +  $ASM_WORK_DIR/bb.hex &&
>>> +cat - $ASM_WORK_DIR/bb.hex <<HERE > "$HEADER"
>>> +/* This file is automatically generated from
>>> + * tests/migration/x86-a-b-bootblock.s, edit that and then run
>>> + * tests/migration/rebuild-x86-bootblock.sh to update,
>>> + * and then remember to send both in your patch submission.
>>> + */
>>> +HERE
>>> +
>>> +rm $ASM_WORK_DIR/bb.hex $ASM_WORK_DIR/bb.bootsect $ASM_WORK_DIR/bb.boot
>>> +rm $ASM_WORK_DIR/bb.o
>>> +rmdir $ASM_WORK_DIR
>>> +
>>
>> Thanks,
>> drew
> --
> Dr. David Alan Gilbert / address@hidden / Manchester, UK
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]