Date: Wed, 13 Sep 2017 16:18:04 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-fs@FreeBSD.org Subject: [Bug 222288] g_bio leak after zfs ABD commit Message-ID: <bug-222288-3630-C6u2Y13bdP@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-222288-3630@https.bugs.freebsd.org/bugzilla/> References: <bug-222288-3630@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D222288 Andriy Gapon <avg@FreeBSD.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|New |Open CC| |freebsd-fs@FreeBSD.org Assignee|freebsd-bugs@FreeBSD.org |avg@FreeBSD.org --- Comment #1 from Andriy Gapon <avg@FreeBSD.org> --- (In reply to Dan Nelson from comment #0) Thank you very much for the report! As soon as I read it I noticed that I have the same kind of issue. I dug through the biozone to examine the leaked bio-s and they all seem to have bio_cmd =3D 5 and bio_flags =3D 8. So, they seem to be BIO_FLUSH bio-s. T= heir zio-s must have been ZIO_TYPE_IOCTL. Now, those zio-s use ZIO_IOCTL_PIPELINE and it is defined as: #define ZIO_IOCTL_PIPELINE \ (ZIO_INTERLOCK_STAGES | \ ZIO_STAGE_VDEV_IO_START | \ ZIO_STAGE_VDEV_IO_ASSESS) So, ZIO_STAGE_VDEV_IO_START is in the pipeline, but ZIO_STAGE_VDEV_IO_DONE = is not as you have correctly theorised. The normal I/O pipelines always include ZIO_VDEV_IO_STAGES #define ZIO_VDEV_IO_STAGES \ (ZIO_STAGE_VDEV_IO_START | \ ZIO_STAGE_VDEV_IO_DONE | \ ZIO_STAGE_VDEV_IO_ASSESS) so the problem does not affect them. I will double-check why the ioctl pipeline omitted ZIO_STAGE_VDEV_IO_DONE a= nd will test adding that stage. --=20 You are receiving this mail because: You are on the CC list for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-222288-3630-C6u2Y13bdP>