[Bug 222288] g_bio leak after zfs ABD commit
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Sep 13 14:57:01 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222288
Bug ID: 222288
Summary: g_bio leak after zfs ABD commit
Product: Base System
Version: 11.1-STABLE
Hardware: Any
OS: Any
Status: New
Severity: Affects Many People
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: dnelson at allantgroup.com
It looks like the ABD commit may have introduced a leak of geom bio structs.
It's a slow leak so it's not obvious, but after a few weeks of uptime, one of
my 8GB-RAM systems had accumulated a couple million g_bio objects according to
vmstat (over 2GB of RAM) and was starting to swap. I rebooted it, and after 11
hours, I'm up to 310182:
# uptime
9:55AM up 11:08, 11 users, load averages: 0.50, 0.54, 0.55
# vmstat -z | egrep 'ITEM|g_bio'
ITEM SIZE LIMIT USED FREE REQ FAIL SLEEP
g_bio: 376, 0, 310182, 818, 38182778, 0, 0
Looking at base r321610 itself, it looks like there's a g_bio_destroy() call
that got relocated from vdev_geom_io_intr() to vdev_geom_io_done(); maybe there
are cases where vdev_geom_io_intr is called, but vdev_geom_io_done isn't? I
don't know enough about ZFS internals to get any farther than this.
Rolling the kernel back to r321609 makes the leak stop, and updating to r321610
makes it appear again.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list