qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: qianfan <qianfanguijin@163.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	qemu-devel@nongnu.org
Cc: "Niek Linnenbank" <nieklinnenbank@gmail.com>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>
Subject: Re: [PULL 18/42] tests: avocado: boot_linux_console: Add test case for bpim2u
Date: Fri, 30 Jun 2023 17:45:06 +0200	[thread overview]
Message-ID: <091ce590-1499-1aea-9cfa-67e4035615b4@redhat.com> (raw)
In-Reply-To: <77ef230f-b896-9f18-e7b1-d9821a664e0a@163.com>

On 30/06/2023 11.04, qianfan wrote:
> 
> 
> 在 2023/6/30 16:53, Thomas Huth 写道:
>> On 30/06/2023 10.45, qianfan wrote:
>>>
>>>
>>> 在 2023/6/30 15:27, Thomas Huth 写道:
>>>> On 30/06/2023 08.15, qianfan wrote:
>>>>>
>>>>>
>>>>> 在 2023/6/29 19:35, Thomas Huth 写道:
>>>>>> On 06/06/2023 11.47, Peter Maydell wrote:
>>>>>>> From: qianfan Zhao <qianfanguijin@163.com>
>>>>>>>
>>>>>>> Add test case for booting from initrd and sd card.
...
>>>>>>
>>>>>> FYI, the test_arm_bpim2u_gmac test just failed during one of my CI runs:
>>>>>>
>>>>>> https://gitlab.com/thuth/qemu/-/jobs/4565108610#L300
...
>>>> Oh, that's ugly, I think the problem is likely that the numbering
>>>> of device names that are directly in /dev/ is never guaranteed by
>>>> the Linux kernel.
>>>>
>>>> Could you please try whether this work more reliably for you
>>>> instead:
>>>>
>>>> diff a/tests/avocado/boot_linux_console.py 
>>>> b/tests/avocado/boot_linux_console.py
>>>> --- a/tests/avocado/boot_linux_console.py
>>>> +++ b/tests/avocado/boot_linux_console.py
>>>> @@ -869,7 +869,7 @@ def test_arm_bpim2u_gmac(self):
>>>>          self.vm.set_console()
>>>>          kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE +
>>>>                                 'console=ttyS0,115200 '
>>>> -                               'root=/dev/mmcblk0 rootwait rw '
>>>> +                               'root=b300 rootwait rw '
>>>>                                 'panic=-1 noreboot')
>>>>          self.vm.add_args('-kernel', kernel_path,
>>>>                           '-dtb', dtb_path,
>>>>
>>>> ?
>>> Yes, this patch is useful.
>>>
>>> The rootfs can mount successful even if the mmc block enumed as mmcblk1, 
>>> next is the
>>> kernel logs:
>>>
>>> mmc1: new high speed SD card at address 4567
>>> mmcblk1: mmc1:4567 QEMU! 64.0 MiB
>>> EXT4-fs (mmcblk1): mounting ext2 file system using the ext4 subsystem
>>> EXT4-fs (mmcblk1): mounted filesystem without journal. Opts: (null)
>>> VFS: Mounted root (ext2 filesystem) on device 179:0.
>>
>> Great!
>>
>>> But the test scripts still fail due to it always waiting mmc0blk:
>>>
>>>      exec_command_and_wait_for_pattern(self, 'cat /proc/partitions', 
>>> 'mmcblk0')
>>
>> Ok, so the "0" likely got to be dropped here?
>>
>>> Could you please explain where is the "b300" come from?
>>
>> I ran the kernel once without the "root=/dev/mmcblk0 rootwait"
>> part in its command line. Then it prints out something like this:
>>
>>  VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
>>  Please append a correct "root=" boot option; here are the available 
>> partitions:
>>  0100            4096 ram0
>>  (driver?)
>>  0101            4096 ram1
>>  (driver?)
>>  0102            4096 ram2
>>  (driver?)
>>  0103            4096 ram3
>>  (driver?)
>>  b300           65536 mmcblk0
>>  driver: mmcblk
>>  Kernel panic - not syncing: VFS: Unable to mount root fs on 
>> unknown-block(0,0)
>>
>> Seems like the "b300" is stable here, no matter whether
>> its mmcblk0 or mmcblk1.
> This way is really hack.

Ack, it's not really nice - but it's still better than a flaky, unreliable 
test, isn't it?

I'll send it as a proper patch for discussion.

> And who case this issue, linux kernel or qemu? I 
> can't make sure.

It's likely the Linux kernel - I think the numbering of entries in /dev/ is 
not guaranteed.

  Thomas




  reply	other threads:[~2023-06-30 15:46 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-06  9:47 [PULL 00/42] target-arm queue Peter Maydell
2023-06-06  9:47 ` [PULL 01/42] arm: move KVM breakpoints helpers Peter Maydell
2023-06-06  9:47 ` [PULL 02/42] hvf: handle access for more registers Peter Maydell
2023-06-06  9:47 ` [PULL 03/42] hvf: add breakpoint handlers Peter Maydell
2023-06-06  9:47 ` [PULL 04/42] hvf: add guest debugging handlers for Apple Silicon hosts Peter Maydell
2023-06-06  9:47 ` [PULL 05/42] hw/net/can: Introduce Xilinx Versal CANFD controller Peter Maydell
2023-06-06  9:47 ` [PULL 06/42] xlnx-versal: Connect Xilinx VERSAL CANFD controllers Peter Maydell
2023-06-06  9:47 ` [PULL 07/42] MAINTAINERS: Include canfd tests under Xilinx CAN Peter Maydell
2023-06-06  9:47 ` [PULL 08/42] tests/qtest: Introduce tests for Xilinx VERSAL CANFD controller Peter Maydell
2023-06-06  9:47 ` [PULL 09/42] hw: arm: Add bananapi M2-Ultra and allwinner-r40 support Peter Maydell
2023-06-06  9:47 ` [PULL 10/42] hw/arm/allwinner-r40: add Clock Control Unit Peter Maydell
2023-06-06  9:47 ` [PULL 11/42] hw: allwinner-r40: Complete uart devices Peter Maydell
2023-06-06  9:47 ` [PULL 12/42] hw: arm: allwinner-r40: Add i2c0 device Peter Maydell
2023-06-06  9:47 ` [PULL 13/42] hw/misc: Rename axp209 to axp22x and add support AXP221 PMU Peter Maydell
2023-06-06  9:47 ` [PULL 14/42] hw/arm/allwinner-r40: add SDRAM controller device Peter Maydell
2023-06-06  9:47 ` [PULL 15/42] hw: sd: allwinner-sdhost: Add sun50i-a64 SoC support Peter Maydell
2023-06-06  9:47 ` [PULL 16/42] hw: arm: allwinner-r40: Add emac and gmac support Peter Maydell
2023-06-06  9:47 ` [PULL 17/42] hw: arm: allwinner-sramc: Add SRAM Controller support for R40 Peter Maydell
2023-06-06  9:47 ` [PULL 18/42] tests: avocado: boot_linux_console: Add test case for bpim2u Peter Maydell
2023-06-29 11:35   ` Thomas Huth
2023-06-30  6:15     ` qianfan
2023-06-30  6:22       ` qianfan
2023-06-30  7:27       ` Thomas Huth
2023-06-30  8:45         ` qianfan
2023-06-30  8:53           ` Thomas Huth
2023-06-30  9:04             ` qianfan
2023-06-30 15:45               ` Thomas Huth [this message]
2023-07-03 11:14                 ` Peter Maydell
2023-06-06  9:47 ` [PULL 19/42] docs: system: arm: Introduce bananapi_m2u Peter Maydell
2023-06-06  9:47 ` [PULL 20/42] target/arm: Add commentary for CPUARMState.exclusive_high Peter Maydell
2023-06-06  9:47 ` [PULL 21/42] target/arm: Add feature test for FEAT_LSE2 Peter Maydell
2023-06-06  9:47 ` [PULL 22/42] target/arm: Introduce finalize_memop_{atom,pair} Peter Maydell
2023-06-06  9:47 ` [PULL 23/42] target/arm: Use tcg_gen_qemu_ld_i128 for LDXP Peter Maydell
2023-06-06  9:47 ` [PULL 24/42] target/arm: Use tcg_gen_qemu_{st, ld}_i128 for do_fp_{st, ld} Peter Maydell
2023-06-06  9:47 ` [PULL 25/42] target/arm: Use tcg_gen_qemu_st_i128 for STZG, STZ2G Peter Maydell
2023-06-06  9:47 ` [PULL 26/42] target/arm: Use tcg_gen_qemu_{ld, st}_i128 in gen_sve_{ld, st}r Peter Maydell
2023-06-12 15:20   ` Jonathan Cameron via
2023-06-12 18:40     ` Mark Cave-Ayland
2023-06-13  9:26       ` Jonathan Cameron via
2023-06-06  9:47 ` [PULL 27/42] target/arm: Sink gen_mte_check1 into load/store_exclusive Peter Maydell
2023-06-06  9:48 ` [PULL 28/42] target/arm: Load/store integer pair with one tcg operation Peter Maydell
2023-06-06  9:48 ` [PULL 29/42] target/arm: Hoist finalize_memop out of do_gpr_{ld, st} Peter Maydell
2023-06-06  9:48 ` [PULL 30/42] target/arm: Hoist finalize_memop out of do_fp_{ld, st} Peter Maydell
2023-06-06  9:48 ` [PULL 31/42] target/arm: Pass memop to gen_mte_check1* Peter Maydell
2023-06-06  9:48 ` [PULL 32/42] target/arm: Pass single_memop to gen_mte_checkN Peter Maydell
2023-06-06  9:48 ` [PULL 33/42] target/arm: Check alignment in helper_mte_check Peter Maydell
2023-06-06  9:48 ` [PULL 34/42] target/arm: Add SCTLR.nAA to TBFLAG_A64 Peter Maydell
2023-06-06  9:48 ` [PULL 35/42] target/arm: Relax ordered/atomic alignment checks for LSE2 Peter Maydell
2023-06-06  9:48 ` [PULL 36/42] target/arm: Move mte check for store-exclusive Peter Maydell
2023-06-06  9:48 ` [PULL 37/42] tests/tcg/aarch64: Use stz2g in mte-7.c Peter Maydell
2023-06-06  9:48 ` [PULL 38/42] tests/tcg/multiarch: Adjust sigbus.c Peter Maydell
2023-06-06  9:48 ` [PULL 39/42] target/arm: Enable FEAT_LSE2 for -cpu max Peter Maydell
2023-06-06  9:48 ` [PULL 40/42] target/arm: allow DC CVA[D]P in user mode emulation Peter Maydell
2023-06-06  9:48 ` [PULL 41/42] tests/tcg/aarch64: add DC CVA[D]P tests Peter Maydell
2023-06-06  9:48 ` [PULL 42/42] target/arm: trap DCC access in user mode emulation Peter Maydell
2023-06-06 21:36 ` [PULL 00/42] target-arm queue Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=091ce590-1499-1aea-9cfa-67e4035615b4@redhat.com \
    --to=thuth@redhat.com \
    --cc=nieklinnenbank@gmail.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qianfanguijin@163.com \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).