In the Linux kernel, the following vulnerability has been resolved:
openvswitch: fix memory leak at failed datapath creation
ovsdpcmdnew()->ovsdpchange()->ovsdpsetupcallportids() allocates array via kmalloc. If for some reason newvport() fails during ovsdpcmdnew() dp->upcallportids must be freed. Add missing kfree.
Kmemleak example: unreferenced object 0xffff88800c382500 (size 64): comm "dumpstate", pid 323, jiffies 4294955418 (age 104.347s) hex dump (first 32 bytes): 5e c2 79 e4 1f 7a 38 c7 09 21 38 0c 80 88 ff ff ^.y..z8..!8..... 03 00 00 00 0a 00 00 00 14 00 00 00 28 00 00 00 ............(... backtrace: [<0000000071bebc9f>] ovsdpsetupcallportids+0x38/0xa0 [<000000000187d8bd>] ovsdpchange+0x63/0xe0 [<000000002397e446>] ovsdpcmdnew+0x1f0/0x380 [<00000000aa06f36e>] genlfamilyrcvmsgdoit+0xea/0x150 [<000000008f583bc4>] genlrcvmsg+0xdc/0x1e0 [<00000000fa10e377>] netlinkrcvskb+0x50/0x100 [<000000004959cece>] genlrcv+0x24/0x40 [<000000004699ac7f>] netlinkunicast+0x23e/0x360 [<00000000c153573e>] netlinksendmsg+0x24e/0x4b0 [<000000006f4aa380>] socksendmsg+0x62/0x70 [<00000000d0068654>] _syssendmsg+0x230/0x270 [<0000000012dacf7d>] syssendmsg+0x88/0xd0 [<0000000011776020>] _syssendmsg+0x59/0xa0 [<000000002e8f2dc1>] dosyscall64+0x3b/0x90 [<000000003243e7cb>] entrySYSCALL64afterhwframe+0x63/0xcd