virtio balloon: do not call blocking ops when !TASK_RUNNING

Michael S. Tsirkin
Thu, 26 Feb 2015 08:45:29 -0000

On Thu, Feb 26, 2015 at 11:50:42AM +1030, Rusty Russell
wrote:
> Thomas Huth <thuth at linux.vnet.ibm.com> writes:
> >  Hi all,
> >
> > with the recent kernel 3.19, I get a kernel warning when I start my
> > KVM guest on s390 with virtio balloon enabled:
>
> The deeper problem is that virtio_ccw_get_config just silently fails on
> OOM.

Same problem with virtio_ccw_reset.
But avoiding kmalloc calls in virtio_ccw_get_config isn't enough I think,
it might still sleep.


>
> Neither get_config nor set_config are expected to fail.
>
> Cornelia, I think ccw and config_area should be allocated inside vcdev.
> You could either use pointers, or simply allocate vcdev with GDP_DMA.
>
> This would avoid the kmalloc inside these calls.
>
> Thanks,
> Rusty.