On Thu, 2015-02-12 at 20:33 +0200, Or Gerlitz wrote: > On 02/12/2015 03:43 AM, Doug Ledford wrote: > > In b2d408f78b3 (IB/ipoib: make delayed tasks not hold up everything) I > > added the ability to have some joins processed around delayed joins. > > Because the join task processes one join at a time, we needed to queue > > the task to run again immediately and then again at the appropriate > > delay time. I didn't think about the fact that our work struct can only > > be on the workqueue once at a given time and instead tried to queue the > > same struct up twice. Instead, kick the queue again immediately on a > > delayed restart attempt, when the task sees that it has nothing to do > > but delayed work, it will pick the shortest work item and queue a delay > > equal to its expiration. Finally, in case we have delayed work, in the > > send_mcast routine we need to cancel any delayed work before kicking the > > thread immediately. > This is strictly a fix to a downstream patch of the series, lets squash > it there somehow, I see no point to submit > commit that has a bug and later a fix in the same series. A number of them *are* strictly fixes. That's a given. But both you and Erez emailed me and wanted this patch set sooner rather than later because Erez in particular had some other things he wanted to send through and wanted them to be based upon this patchset so they would apply cleanly. When I went to squash these things, it became clear very quickly that I would end up rewriting significant portions of this work, and that I would have to retest all but the first few patches one patch at a time. And I'm actually OK doing that, but it wasn't possible to meet both requirements at the same time. So, I'll keep a new branch and this branch, and I'll reorder things (like the singleton fix you brought up in another email being first) and squash things, and when I get done, I'll do a diff between the two branches to make sure that there are no logical differences. That should avoid invalidating all of the testing/QE work that has already been done on this patchset. In the meantime, Erez can work off of these patches knowing the end result will be the same either way. -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: 0E572FDD
Attachment:
signature.asc
Description: This is a digitally signed message part