drbd: Fix module refcount leak in drbd_accept()
authorPhilipp Reisner <philipp.reisner@linbit.com>
Thu, 23 Feb 2012 11:52:31 +0000 (12:52 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Thu, 8 Nov 2012 15:58:16 +0000 (16:58 +0100)
commitdd9b360475655838ff8719d8eedecdf4c4cf80d1
treed57f4f413adcda209ea0e397c776813ef6b84d32
parent93f5afe9560b80e03a58ba5324ec71124df7655f
drbd: Fix module refcount leak in drbd_accept()

drbd_accept was modelled after kernel_accept
with drbd commit 53eb779 in July 2008.

Only, kernel_accept was then broken, and only fixed later
with kernel commit 1b08534e in Dec 2008:
net: Fix module refcount leak in kernel_accept()

Impact: protocol families provided as modules, e.g. ipv6 or ib_sdp,
would soon have their reference count become negative, preventing
them from being unloaded (likely), or worse, hit zero without actually
being unused, allowing them to be unloaded while still in use (unlikely,
but if triggered, causing a kernel crash).

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
drivers/block/drbd/drbd_receiver.c