Hi Sjur, On Fri, Dec 21, 2012 at 01:20:02PM +0100, Sjur BRENDELAND wrote: > Hi Ido, > > > From: Ido Yariv [mailto:i...@wizery.com] > > > Postpone the registration of virtio devices until all > > > vritio ring resource has been allocated. > > > This fixes the following bug: The driver's start callback > > > is called before all vring notify ids are allocated and > > > max_notifyid will be increased after starting the remoteproc. > > > > It seems that this patch wont solve this issue, since > > rproc_add_virtio_dev eventually increases max_notifyid, so the same > > problem will simply occur at a later stage. > > > > Also, it seems that the original rproc_add_virtio_dev calls were not > > removed, so devices would be added twice. > > Indeed. This was introduced by a faulty merge - I'll fix this up. > > > If max_notifyid needs to be set before the first virtio device is added, > > how about counting the number of notification ids in advance before > > adding the devices, by traversing the resource list twice? > > Ugh, thanks I missed this. How about calling rproc_alloc_vring from > rproc_parse_vring so that the resource allocation are done before > the virtio devices are started?
I don't think that would solve it - rproc_parse_vring is called from rproc_handle_vdev which is called more than once (for each vdev), so max_notifyid could still be increased after the first call to rproc_add_virtio_dev. > BTW, I think most of the other review comments from you are OK. I'll > try to address them in my next patch-set sometime early next year. Great, thanks! Happy new year :) Ido. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/