[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <SA1PR21MB13350F1693DE51A69AE27AA6BFDE9@SA1PR21MB1335.namprd21.prod.outlook.com>
Date: Fri, 10 Feb 2023 19:18:24 +0000
From: Dexuan Cui <decui@...rosoft.com>
To: Mohammed Gamal <mgamal@...hat.com>
CC: "linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Haiyang Zhang <haiyangz@...rosoft.com>,
"Michael Kelley (LINUX)" <mikelley@...rosoft.com>,
"parri.andrea@...il.com" <parri.andrea@...il.com>,
Vitaly Kuznetsov <vkuznets@...hat.com>,
"wei.liu@...nel.org" <wei.liu@...nel.org>,
Xiaoqiang Xiong <xxiong@...hat.com>
Subject: RE: [PATCH] Drivers: vmbus: Check for channel allocation before
looking up relids
> From: Mohammed Gamal <mgamal@...hat.com>
> Sent: Friday, February 10, 2023 1:12 AM
> > ...
> > Upon crash, Linux sends a CHANNELMSG_UNLOAD messge to the host,
> > and the host is supposed to quiesce/reset the VMBus devices, so
> > normally we should not see a crash in relid2channel().
>
> Does this not happen in the case of kdump? Shouldn't a
> CHANNELMSG_UNLOAD
> message be sent to the host in that case as well?
The message is sent to the host in the case of kdump.
> > > > [ 21.906679] Hardware name: Microsoft Corporation Virtual
> > > > Machine/Virtual Machine, BIOS 090007 05/18/2018
> >
> > I guess you see the crash because you're running an old Hyper-V,
> > probably Windows Server 2016 or 2019, which may be unable to
> > reliably handle the guest's CHANNELMSG_UNLOAD messge.
>
> We've actually seen this on Windows Server 2016, 2019, and 2022.
I didn't expect this to happen to WS 2022. It looks like some of the
VMBus devices are not reset by the host upon the message
CHANNELMSG_UNLOAD. If you can check all the 'relids' in the first
kernel beforehand, and print the 'relid' in relid2channel, we'll be
able to tell which device is not reset. Maybe it's a good idea to print
the 'relid' in the newly-added warning for debug purposes.
Powered by blists - more mailing lists