In the Linux kernel, the following vulnerability has been resolved:
net/sunrpc: fix potential memory leaks in rpcsysfsxprtstatechange()
The issue happens on some error handling paths. When the function
fails to grab the object xprt
, it simply returns 0, forgetting to
decrease the reference count of another object xps
, which is
increased by rpcsysfsxprtkobjgetxprtswitch(), causing refcount
leaks. Also, the function forgets to check whether xps
is valid
before using it, which may result in NULL-dereferencing issues.
Fix it by adding proper error handling code when either xprt
or
xps
is NULL.