Thanks for your suggestion. I will rewrite the commit log and send the v2 patch. On 2021/3/24 2:24, Bjorn Helgaas wrote: > On Sun, Mar 21, 2021 at 11:29:30PM +0800, Zhiqiang Liu wrote: >> From: Feilong Lin <linfeilong@xxxxxxxxxx> >> >> Repeated hot-plugging of pci devices for a virtual >> machine driven by virtio, we found that there is a >> leak in kmalloc-4k, which was confirmed as the memory >> of the pci_device structure. Then we found out that >> it was missing pci_dev_put() after pci_get_slot() in >> enable_slot() of acpiphp_glue.c. >> >> Signed-off-by: Feilong Lin <linfeilong@xxxxxxxxxx> >> Reviewed-by: Zhiqiang Liu <liuzhiqiang26@xxxxxxxxxx> > Since this came from you, Zhiqiang, it needs a signed-off-by (not just > a reviewed-by) from you. See > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?id=v5.11#n361 > > Also see > https://lore.kernel.org/r/20171026223701.GA25649@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx > and > > - Wrap commit log to fill 80 columns > - s/pci/PCI/ (subject and commit log) > - Run "git log --oneline drivers/pci/hotplug/acpiphp_glue.c". It's > not completely consistent, but at least match the style of one of > them. > > There is no "pci_device" structure. I think you mean the "struct > pci_dev". > > The commit log doesn't actually say what the patch does. It's obvious > from the patch, but it should say in the commit log. Look at previous > commit logs to see how they do it. > >> --- >> drivers/pci/hotplug/acpiphp_glue.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/drivers/pci/hotplug/acpiphp_glue.c b/drivers/pci/hotplug/acpiphp_glue.c >> index 3365c93abf0e..f031302ad401 100644 >> --- a/drivers/pci/hotplug/acpiphp_glue.c >> +++ b/drivers/pci/hotplug/acpiphp_glue.c >> @@ -533,6 +533,7 @@ static void enable_slot(struct acpiphp_slot *slot, bool bridge) >> slot->flags &= ~SLOT_ENABLED; >> continue; >> } >> + pci_dev_put(dev); >> } >> } >> >> -- >> 2.19.1 >> >> > .