qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "longguang.yue" <kvmluck@163.com>
To: qemu-devel <qemu-devel@nongnu.org>,
	 linux-kernel <linux-kernel@vger.kernel.org>
Subject: LTP test related to virtio releasing and reassigning resource leads to guest hung
Date: Thu, 10 Aug 2023 16:57:38 +0800 (GMT+08:00)	[thread overview]
Message-ID: <461df15f.15e2d.189deaa6eed.Coremail.kvmluck@163.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 4967 bytes --]

Hi, all:
A ltp test leads to guest hung(io hung), the test releases virtio device resource and then reassign.
I find device’s mem prefetchable resource 64-bit is changed.


ltp test: https://github.com/linux-test-project/ltp/blob/522d7fba4afc84e07b252aa4cd91b241e81d6613/testcases/kernel/device-drivers/pci/tpci_kernel/ltp_tpci.c#L428


Do you know what cause the problem?


Thanks very much.


--------------------------
ENV: kernel 5.10.0, qemu 6.2


———————————
[  301.194813] ltp_tpci: name = 0000:00:05.0, flags = 1319436, start 0xfe004000, end 0xfe007fff
[  301.194814] virtio-pci 0000:00:05.0: BAR 4: releasing [mem 0xfe004000-0xfe007fff 64bit pref]
[  301.194816] virtio-pci 0000:00:05.0: BAR 4: assigned [mem 0x240004000-0x240007fff 64bit pref]

----------------------
ps -aux| grep D

root           7  0.0  0.0      0     0 ?        D    14:37   0:00 [kworker/u16:0+flush-253:0]
root         483  0.0  0.0      0     0 ?      D    14:37   0:00 [jbd2/vda3-8]





——————hung task panic————---
[ 9585.419571][   T62] INFO: task jbd2/vda3-8:475 blocked for more than 122 seconds.
[ 9585.420274][   T62]       Tainted: G        W  OE     5.10.0-60.67.0.96.ule3.x86_64 #1
[ 9585.421027][   T62] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 9585.421854][   T62] task:jbd2/vda3-8     state:D stack:    0 pid:  475 ppid:     2 flags:0x00004000
[ 9585.422715][   T62] Call Trace:
[ 9585.423020][   T62]  __schedule+0x3f6/0x7d0
[ 9585.423435][   T62]  ? bit_wait+0x60/0x60
[ 9585.423825][   T62]  schedule+0x46/0xb0
[ 9585.424194][   T62]  io_schedule+0x42/0x70
[ 9585.424597][   T62]  bit_wait_io+0xd/0x60
[ 9585.424977][   T62]  __wait_on_bit+0x28/0x90
[ 9585.425383][   T62]  out_of_line_wait_on_bit+0x92/0xb0
[ 9585.425879][   T62]  ? var_wake_function+0x30/0x30
[ 9585.426341][   T62]  jbd2_journal_commit_transaction+0xd02/0x15e0 [jbd2]
[ 9585.427005][   T62]  kjournald2+0xab/0x270 [jbd2]
[ 9585.427455][   T62]  ? wait_woken+0x80/0x80
[ 9585.427863][   T62]  ? commit_timeout+0x10/0x10 [jbd2]
[ 9585.428355][   T62]  kthread+0xfb/0x140
[ 9585.428733][   T62]  ? kthread_park+0x90/0x90
[ 9585.429144][   T62]  ret_from_fork+0x1f/0x30
[ 9585.429578][   T62] INFO: task kworker/u16:0:4392 blocked for more than 122 seconds.
[ 9585.430303][   T62]       Tainted: G        W  OE     5.10.0-60.67.0.96.ule3.x86_64 #1
[ 9585.431062][   T62] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 9585.431885][   T62] task:kworker/u16:0   state:D stack:    0 pid: 4392 ppid:     2 flags:0x00004080
[ 9585.432751][   T62] Workqueue: writeback wb_workfn (flush-253:0)
[ 9585.433328][   T62] Call Trace:
[ 9585.433642][   T62]  __schedule+0x3f6/0x7d0
[ 9585.434035][   T62]  ? bit_wait+0x60/0x60
[ 9585.434424][   T62]  schedule+0x46/0xb0
[ 9585.434809][   T62]  io_schedule+0x42/0x70
[ 9585.435201][   T62]  bit_wait_io+0xd/0x60
[ 9585.435605][   T62]  __wait_on_bit+0x28/0x90
[ 9585.436016][   T62]  out_of_line_wait_on_bit+0x92/0xb0
[ 9585.436507][   T62]  ? var_wake_function+0x30/0x30
[ 9585.437006][   T62]  do_get_write_access+0x244/0x320 [jbd2]
[ 9585.437613][   T62]  jbd2_journal_get_write_access+0x67/0x90 [jbd2]
[ 9585.438222][   T62]  __ext4_journal_get_write_access+0x44/0x90 [ext4]
[ 9585.438859][   T62]  ? ext4_get_inode_loc+0x3e/0xa0 [ext4]
[ 9585.439390][   T62]  ext4_reserve_inode_write+0x83/0xc0 [ext4]
[ 9585.439956][   T62]  __ext4_mark_inode_dirty+0x50/0x120 [ext4]
[ 9585.440528][   T62]  ext4_ext_insert_extent+0x386/0x670 [ext4]
[ 9585.441099][   T62]  ? ext4_mb_new_blocks+0x14c/0x540 [ext4]
[ 9585.441663][   T62]  ext4_ext_map_blocks+0x30e/0x8f0 [ext4]
[ 9585.442187][   T62]  ? find_get_pages_range_tag+0x1b0/0x220
[ 9585.442736][   T62]  ext4_map_blocks+0x18e/0x5a0 [ext4]
[ 9585.443239][   T62]  ? mpage_prepare_extent_to_map+0x2db/0x300 [ext4]
[ 9585.443866][   T62]  mpage_map_one_extent+0x64/0x150 [ext4]
[ 9585.444401][   T62]  mpage_map_and_submit_extent+0x77/0x210 [ext4]
[ 9585.444996][   T62]  ext4_writepages+0x627/0x790 [ext4]
[ 9585.445499][   T62]  ? update_nohz_stats+0x43/0x60
[ 9585.445967][   T62]  do_writepages+0x31/0xc0
[ 9585.446378][   T62]  __writeback_single_inode+0x39/0x200
[ 9585.446888][   T62]  writeback_sb_inodes+0x20a/0x4f0
[ 9585.447358][   T62]  __writeback_inodes_wb+0x4c/0xd0
[ 9585.447837][   T62]  wb_writeback+0x1d8/0x2a0
[ 9585.448256][   T62]  wb_check_old_data_flush+0xb6/0xc0
[ 9585.448764][   T62]  wb_do_writeback+0xc1/0x180
[ 9585.449199][   T62]  ? set_worker_desc+0xaa/0xc0
[ 9585.449652][   T62]  wb_workfn+0x5a/0x180
[ 9585.450035][   T62]  process_one_work+0x1ad/0x350
[ 9585.450490][   T62]  worker_thread+0x49/0x310
[ 9585.450912][   T62]  ? rescuer_thread+0x370/0x370
[ 9585.451364][   T62]  kthread+0xfb/0x140
[ 9585.451738][   T62]  ? kthread_park+0x90/0x90
[ 9585.452145][   T62]  ret_from_fork+0x1f/0x30
[ 9585.452571][   T62] Kernel panic - not syncing: hung_task: blocked tasks



[-- Attachment #2: Type: text/html, Size: 7355 bytes --]

             reply	other threads:[~2023-08-10  8:58 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-10  8:57 longguang.yue [this message]
2023-08-10  9:08 ` LTP test related to virtio releasing and reassigning resource leads to guest hung Michael Tokarev
2023-08-10 10:35   ` longguang.yue
2023-08-10 14:13     ` Stefan Hajnoczi
2023-08-10 15:24       ` Stefan Hajnoczi
2023-08-11  2:26         ` longguang.yue
2023-08-15 15:18           ` Stefan Hajnoczi

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=461df15f.15e2d.189deaa6eed.Coremail.kvmluck@163.com \
    --to=kvmluck@163.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=qemu-devel@nongnu.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).