Re: [PATCH v2] virtio-rng: fix stuck of hot-unplugging busy device

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

 



On Wed, Sep 10, 2014 at 11:04:54AM +0530, Amit Shah wrote:
> Hi Amos,
> 
> On (Tue) 09 Sep 2014 [19:14:02], Amos Kong wrote:
> > When we try to hot-remove a busy virtio-rng device from QEMU monitor,
> > the device can't be hot-removed. Because virtio-rng driver hangs at
> > wait_for_completion_killable().
> > 
> > This patch exits the waiting by completing have_data completion before
> > unregistering, resets data_avail to avoid the hwrng core use wrong
> > buffer bytes. Before real unregistering we should return -ENODEV for
> > reading.
> > 
> > When we hot-unplug the device, dd process in guest will exit.
> >   $ dd if=/dev/hwrng of=/dev/null
> >   dd: error reading ‘/dev/hwrng’: No such device
> > 
> > Signed-off-by: Amos Kong <akong@xxxxxxxxxx>
> > Cc: stable@xxxxxxxxxxxxxxx
> > ---
> > V2: reset data_avail (Amit)
> >     adjust unregister order
> 
> Thanks, this looks good.
> 
> Can you please split into two parts, the complete() in one, and the
> hwrng_register_done stuff into another?

I just posted the V3, split to two patches, and updated the commitlog
to describe why we need to return ENODEV for reading.
 
> Thanks,
> 
> 		Amit

-- 
			Amos.
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]