FreeBSD src
Go to file
Gvozden Neskovic d22323e89f dmu_objset: release bonus buffer in failure path
Reported by kmemleak during testing of a new patch:

```
unreferenced object 0xffff9f1c12e38800 (size 1024):
  comm "z_upgrade", pid 17842, jiffies 4296870904 (age 8746.268s)
  backtrace:
    kmemleak_alloc+0x7a/0x100
    __kmalloc_node+0x26c/0x510
    range_tree_create+0x39/0xa0 [zfs]
    dmu_zfetch_init+0x73/0xe0 [zfs]
    dnode_create+0x12c/0x3b0 [zfs]
    dnode_hold_impl+0x1096/0x1130 [zfs]
    dnode_hold+0x23/0x30 [zfs]
    dmu_bonus_hold_impl+0x6b/0x370 [zfs]
    dmu_bonus_hold+0x1e/0x30 [zfs]
    dmu_objset_space_upgrade+0x114/0x310 [zfs]
    dmu_objset_userobjspace_upgrade_cb+0xd8/0x150 [zfs]
    dmu_objset_upgrade_task_cb+0x136/0x1e0 [zfs]    
    kthread+0x119/0x150
```

Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Signed-off-by: Gvozden Neskovic <neskovic@gmail.com>
Closes #6575
2017-08-30 12:09:18 -07:00
.github Provide links to info about ZFS Buildbot options 2017-06-15 17:52:18 -07:00
cmd Add support for DMU_OTN_* types in dbufstat.py 2017-08-22 11:53:40 -07:00
config Implement --enable-debuginfo to force debuginfo 2017-08-29 13:16:24 -04:00
contrib dracut: make module-setup.sh shebang explicit 2017-08-14 10:56:04 -07:00
etc Disable mount(8) canonical paths in do_mount() 2017-08-21 09:31:54 -07:00
include Enhance comments for large dnode project 2017-08-29 09:00:28 -07:00
lib OpenZFS 6447 - handful of nvpair cleanups 2017-08-30 12:04:27 -07:00
man Remove copyright duplicate in zpool man page 2017-08-24 10:36:17 -07:00
module dmu_objset: release bonus buffer in failure path 2017-08-30 12:09:18 -07:00
rpm Retire legacy test infrastructure 2017-08-15 17:26:38 -07:00
scripts zimport.sh: Allow custom pool create options 2017-08-21 10:00:12 -07:00
tests Fix range locking in ZIL commit codepath 2017-08-21 08:59:48 -07:00
udev Fix spelling 2017-01-03 11:31:18 -06:00
.gitignore Retire legacy test infrastructure 2017-08-15 17:26:38 -07:00
.gitmodules Add zimport.sh compatibility test script 2014-02-21 12:10:31 -08:00
AUTHORS Add a missing > to AUTHORS 2014-09-02 14:18:53 -07:00
autogen.sh build: do not call boilerplate ourself 2013-04-02 10:55:20 -07:00
configure.ac Implement --enable-debuginfo to force debuginfo 2017-08-29 13:16:24 -04:00
copy-builtin Allow c99 when building ZFS in the kernel tree 2017-03-27 12:31:15 -07:00
COPYRIGHT Retire legacy test infrastructure 2017-08-15 17:26:38 -07:00
DISCLAIMER Fix minor typos and update marketing copy. 2013-03-21 12:51:06 -07:00
Makefile.am Retire legacy test infrastructure 2017-08-15 17:26:38 -07:00
META Tag zfs-0.7.0 2017-07-26 10:13:25 -07:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
README.markdown Add CONTRIBUTING information and templates 2016-12-09 12:48:12 -07:00
TEST Retire filebench testing 2017-06-01 06:24:28 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00

ZFS is an advanced file system and volume manager which was originally developed for Solaris and is now maintained by the Illumos community.

ZFS on Linux, which is also known as ZoL, is currently feature complete. It includes fully functional and stable SPA, DMU, ZVOL, and ZPL layers. And it's native!

Official Resources

Installation

Full documentation for installing ZoL on your favorite Linux distribution can be found at our site.

Contribute & Develop

We have a separate document with contribution guidelines.