From: Wei Liu <wei.liu@kernel.org>
To: Saurabh Singh Sengar <ssengar@linux.microsoft.com>
Cc: Naman Jain <namjain@linux.microsoft.com>,
"K . Y . Srinivasan" <kys@microsoft.com>,
Haiyang Zhang <haiyangz@microsoft.com>,
Wei Liu <wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Stephen Hemminger <stephen@networkplumber.org>,
Michael Kelley <mhklinux@outlook.com>,
linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org,
stable@vger.kernel.org
Subject: Re: [PATCH v2 2/2] Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic
Date: Thu, 5 Sep 2024 07:30:10 +0000 [thread overview]
Message-ID: <ZtleAkNfOIwmY8iN@liuwe-devbox-debian-v2> (raw)
In-Reply-To: <20240829134016.GA29554@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
On Thu, Aug 29, 2024 at 06:40:16AM -0700, Saurabh Singh Sengar wrote:
> On Thu, Aug 29, 2024 at 12:43:12PM +0530, Naman Jain wrote:
> > Rescind offer handling relies on rescind callbacks for some of the
> > resources cleanup, if they are registered. It does not unregister
> > vmbus device for the primary channel closure, when callback is
> > registered. Without it, next onoffer does not come, rescind flag
> > remains set and device goes to unusable state.
> >
> > Add logic to unregister vmbus for the primary channel in rescind callback
> > to ensure channel removal and relid release, and to ensure that next
> > onoffer can be received and handled properly.
> >
> > Cc: stable@vger.kernel.org
> > Fixes: ca3cda6fcf1e ("uio_hv_generic: add rescind support")
> > Signed-off-by: Naman Jain <namjain@linux.microsoft.com>
> > ---
> > drivers/hv/vmbus_drv.c | 1 +
> > drivers/uio/uio_hv_generic.c | 8 ++++++++
> > 2 files changed, 9 insertions(+)
> >
> > diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c
> > index 7242c4920427..c405295b930a 100644
> > --- a/drivers/hv/vmbus_drv.c
> > +++ b/drivers/hv/vmbus_drv.c
> > @@ -1980,6 +1980,7 @@ void vmbus_device_unregister(struct hv_device *device_obj)
> > */
> > device_unregister(&device_obj->device);
> > }
> > +EXPORT_SYMBOL_GPL(vmbus_device_unregister);
> >
> > #ifdef CONFIG_ACPI
> > /*
> > diff --git a/drivers/uio/uio_hv_generic.c b/drivers/uio/uio_hv_generic.c
> > index e3e66a3e85a8..870409599411 100644
> > --- a/drivers/uio/uio_hv_generic.c
> > +++ b/drivers/uio/uio_hv_generic.c
> > @@ -121,6 +121,14 @@ static void hv_uio_rescind(struct vmbus_channel *channel)
> >
> > /* Wake up reader */
> > uio_event_notify(&pdata->info);
> > +
> > + /*
> > + * With rescind callback registered, rescind path will not unregister the device
> > + * from vmbus when the primary channel is rescinded.
> > + * Without it, rescind handling is incomplete and next onoffer msg does not come.
> > + * Unregister the device from vmbus here.
> > + */
> > + vmbus_device_unregister(channel->device_obj);
> > }
> >
> > /* Sysfs API to allow mmap of the ring buffers
> > --
> > 2.34.1
> >
>
> For the series,
> Reviewed-by: Saurabh Sengar <ssengar@linux.microsoft.com>
Applied to hyperv-fixes, thanks.
>
next prev parent reply other threads:[~2024-09-05 7:30 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-29 7:13 [PATCH v2 0/2] Drivers: vmbus: Fix rescind handling in uio_hv_generic Naman Jain
2024-08-29 7:13 ` [PATCH v2 1/2] uio_hv_generic: Fix kernel NULL pointer dereference in hv_uio_rescind Naman Jain
2024-08-29 7:13 ` [PATCH v2 2/2] Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic Naman Jain
2024-08-29 13:40 ` Saurabh Singh Sengar
2024-09-05 7:30 ` Wei Liu [this message]
2024-09-05 7:36 ` Wei Liu
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=ZtleAkNfOIwmY8iN@liuwe-devbox-debian-v2 \
--to=wei.liu@kernel.org \
--cc=decui@microsoft.com \
--cc=gregkh@linuxfoundation.org \
--cc=haiyangz@microsoft.com \
--cc=kys@microsoft.com \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mhklinux@outlook.com \
--cc=namjain@linux.microsoft.com \
--cc=ssengar@linux.microsoft.com \
--cc=stable@vger.kernel.org \
--cc=stephen@networkplumber.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.