In the Linux kernel, the following vulnerability has been resolved: IB/hfi1: Fix leak of rcvhdrtaildummykvaddr This buffer is currently allocated in hfi1init(): if (reinit) ret = initafterreset(dd); else ret = loadtimeinit(dd); if (ret) goto done; /* allocate dummy tail memory for all receive contexts */ dd->rcvhdrtaildummykvaddr = dmaalloccoherent(&dd->pcidev->dev, sizeof(u64), &dd->rcvhdrtaildummydma, GFPKERNEL); if (!dd->rcvhdrtaildummykvaddr) { dddeverr(dd, "cannot allocate dummy tail memory\n"); ret = -ENOMEM; goto done; } The reinit triggered path will overwrite the old allocation and leak it. Fix by moving the allocation to hfi1allocdevdata() and the deallocation to hfi1free_devdata().