On Tue, Apr 26, 2016 at 11:18:25AM +1000, David Gibson wrote:
> On Mon, Apr 25, 2016 at 05:24:25PM -0500, Michael Roth wrote:
> > CPU/memory resources can be signalled en-masse via
> > spapr_hotplug_req_add_by_count(), and when doing so, actually change
> > the meaning of the 'drc' parameter passed to
> > spapr_hotplug_req_event() to be a count rather than an index.
> > 
> > f40eb92 added a hook in spapr_hotplug_req_event() to record when a
> > device had been 'signalled' to the guest, but that code assumes that
> > drc is always an index. In cases where it's a count, such as memory
> > hotplug, the DRC lookup will fail, leading to an assert.
> > 
> > Fix this by only explicitly setting the signalled state for cases where
> > we are doing PCI hotplug.
> > 
> > For other resources types, since we cannot selectively track whether a
> > resource has been signalled in cases where we signal attach as a count,
> > set the 'signalled' state to true immediately upon making the
> > resource available via drck->attach().
> > 
> > Reported-by: Bharata B Rao <[email protected]>
> > Cc: Bharata B Rao <[email protected]>
> > Cc: [email protected]
> > Cc: [email protected]
> > Signed-off-by: Michael Roth <[email protected]>
> 
> Applued to 2.6, I'll send a pull request today.

Checked that memory hotplug is working fine after this fix. So if it
matters now,

Tested-by: Bharata B Rao <[email protected]>

Regards,
Bharata.


Reply via email to