Fix ru_oublocks accounting for ZFS. There are two code paths that can be

called from zfs_write() - one of them, through dmu_write(), was handled
correctly; the other wasn't.

Reviewed by:	avg@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D4923
This commit is contained in:
Edward Tomasz Napierala 2016-01-23 12:13:09 +00:00
parent 1b18fc10b3
commit aa9b057c08
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=294625

View File

@ -1420,6 +1420,9 @@ dmu_assign_arcbuf(dmu_buf_t *handle, uint64_t offset, arc_buf_t *buf,
*/
if (offset == db->db.db_offset && blksz == db->db.db_size &&
DBUF_GET_BUFC_TYPE(db) == ARC_BUFC_DATA) {
#ifdef _KERNEL
curthread->td_ru.ru_oublock++;
#endif
dbuf_assign_arcbuf(db, buf, tx);
dbuf_rele(db, FTAG);
} else {