freebsd-nq/module/zfs
Xin Li c475167627 Illumos #1661: Fix flaw in sa_find_sizes() calculation
When calculating space needed for SA_BONUS buffers, hdrsize is
always rounded up to next 8-aligned boundary. However, in two places
the round up was done against sum of 'total' plus hdrsize. On the
other hand, hdrsize increments by 4 each time, which means in certain
conditions, we would end up returning with will_spill == 0 and
(total + hdrsize) larger than full_space, leading to a failed
assertion because it's invalid for dmu_set_bonus.

Reviewed by: Matthew Ahrens <matt@delphix.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Approved by: Gordon Ross <gwr@nexenta.com>

References to Illumos issue:
  https://www.illumos.org/issues/1661

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #426
2011-10-24 09:57:52 -07:00
..
arc.c Add L2ARC tunables 2011-07-08 12:44:11 -07:00
bplist.c
bpobj.c
dbuf.c Illumos #764: panic in zfs:dbuf_sync_list 2011-08-01 12:09:11 -07:00
ddt_zap.c Fix stack ddt_zap_lookup() 2011-05-31 12:17:27 -07:00
ddt.c Fix stack ddt_class_contains() 2011-05-31 12:17:27 -07:00
dmu_diff.c
dmu_object.c
dmu_objset.c
dmu_send.c Illumos #755: dmu_recv_stream builds incomplete guid_to_ds_map 2011-10-18 11:18:14 -07:00
dmu_traverse.c Revert "Fix stack traverse_visitbp()" 2011-05-31 12:17:27 -07:00
dmu_tx.c
dmu_zfetch.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
dmu.c
dnode_sync.c
dnode.c Fix zio_execute() deadlock 2011-07-19 11:55:42 -07:00
dsl_dataset.c Illumos #1092: zfs refratio property 2011-08-01 12:09:11 -07:00
dsl_deadlist.c
dsl_deleg.c
dsl_dir.c
dsl_pool.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
dsl_prop.c
dsl_scan.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
dsl_synctask.c
fm.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
gzip.c
lzjb.c
Makefile.in Implemented NFS export_operations. 2011-04-29 12:36:13 -07:00
metaslab.c Illumos #1051: zfs should handle imbalanced luns 2011-08-01 12:09:11 -07:00
refcount.c
rrwlock.c
sa.c Illumos #1661: Fix flaw in sa_find_sizes() calculation 2011-10-24 09:57:52 -07:00
sha256.c
spa_boot.c
spa_config.c
spa_errlog.c
spa_history.c
spa_misc.c Illumos #1051: zfs should handle imbalanced luns 2011-08-01 12:09:11 -07:00
spa.c Change sun.com URLs to zfsonlinux.org 2011-10-24 09:52:21 -07:00
space_map.c
txg.c Illumos #1313: Integer overflow in txg_delay() 2011-08-01 12:09:43 -07:00
uberblock.c
unique.c
vdev_cache.c Illumos #175: zfs vdev cache consumes excessive memory 2011-08-01 12:09:11 -07:00
vdev_disk.c Linux 2.6.37 compat, WRITE_FLUSH_FUA 2011-06-17 14:37:26 -07:00
vdev_file.c
vdev_label.c
vdev_mirror.c
vdev_missing.c
vdev_queue.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
vdev_raidz.c
vdev_root.c
vdev.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
zap_leaf.c
zap_micro.c Export symbols for the full ZAP API 2011-09-27 16:12:36 -07:00
zap.c
zfs_acl.c Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
zfs_byteswap.c
zfs_debug.c
zfs_dir.c Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
zfs_fm.c
zfs_fuid.c
zfs_ioctl.c Suppress kmem_alloc() warning in zfs_prop_set_special() 2011-09-15 20:26:51 -07:00
zfs_log.c
zfs_onexit.c
zfs_replay.c
zfs_rlock.c Range lock performance improvements 2011-03-08 12:44:06 -08:00
zfs_sa.c Export symbols for the full SA API 2011-10-05 15:59:56 -07:00
zfs_vfsops.c Export symbols for the VFS API 2011-10-11 10:25:59 -07:00
zfs_vnops.c Cleanup mmap(2) writes 2011-08-02 10:34:55 -07:00
zfs_znode.c Fix usage of zsb after free 2011-09-09 10:29:48 -07:00
zil.c Illumos #883: ZIL reuse during remount corruption 2011-08-01 12:09:11 -07:00
zio_checksum.c
zio_compress.c
zio_inject.c Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
zio.c Illumos #1051: zfs should handle imbalanced luns 2011-08-01 12:09:11 -07:00
zle.c
zpl_export.c Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
zpl_file.c Fix incompatible pointer type warning 2011-08-19 15:16:30 -07:00
zpl_inode.c Set mtime on symbolic links 2011-10-18 15:49:31 -07:00
zpl_super.c Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
zpl_xattr.c Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
zrlock.c
zvol.c Fix 'zfs set volsize=N pool/dataset' 2011-05-02 08:54:40 -07:00