Messages in this thread | | | From | Niklas Cassel <> | Subject | Re: [PATCH] nvme: add cond_resched() to nvme_complete_batch() | Date | Thu, 4 May 2023 09:39:54 +0000 |
| |
On Wed, May 03, 2023 at 05:42:22PM -0600, Keith Busch wrote: > On Wed, May 03, 2023 at 10:28:53AM -0600, Keith Busch wrote: > > On Tue, May 02, 2023 at 08:54:12PM +0800, jiweisun126@126.com wrote: > > > According to the above two logs, we can know the nvme_irq() cost too much > > > time, in the above case, about 4.8 second. And we can also know that the > > > main bottlenecks is in the competition for the spin lock pool->lock. > > > > I have a fix that makes pool->lock critical section much shorter and constant > > time. It was staged in mm tree for months, but mysteriously it's missing... > > Well this is certainly odd: the commit I'm referring to is in Linus' log, but > the file it modified is not updated. What kind of 'git' madness is this?? > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a4de12a032fa6d0670aa0bb43a2bf9f812680d0f > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/mm/dmapool.c >
Hmm, this is very interesting indeed.
It looks like: a4de12a032fa ("dmapool: link blocks across pages") matches https://patchwork.kernel.org/project/linux-mm/patch/20230126215125.4069751-12-kbusch@meta.com/ so everything good.
However, the following commit: 2d55c16c0c54 ("dmapool: create/destroy cleanup") does not match what was on the list: https://patchwork.kernel.org/project/linux-mm/patch/20230126215125.4069751-13-kbusch@meta.com/
It kind of looks like 2d55c16c0c54 ("dmapool: create/destroy cleanup") is actually a revert of a4de12a032fa ("dmapool: link blocks across pages"), plus some additional changes. Scary.
Additionally, it seems like the fix: https://patchwork.kernel.org/project/linux-mm/patch/20230221165400.1595247-1-kbusch@meta.com/ was never merged.
Something is fishy here...
(Perhaps the maintainer did a git revert instead of applying the fix... and accidentally squashed the revert with a proper commit... But even that does not make sense, as there simply seems to be too many lines changed in 2d55c16c0c54 ("dmapool: create/destroy cleanup") for that to be the case...)
Kind regards, Niklas
| |