History log of /titanic_44/usr/src/uts/common/fs/zfs/zfs_dir.c (Results 1 – 25 of 45)
Revision Date Author Comments
# 4f23c764 08-Jul-2016 Arne Jansen <jansen@webgods.de>

This commit fixes https://www.illumos.org/issues/6779.

Chronology of the events:

1. we have an empty directory
2. the filesystem is nearly out of quota
3. a snapshot prevents any space from being f

This commit fixes https://www.illumos.org/issues/6779.

Chronology of the events:

1. we have an empty directory
2. the filesystem is nearly out of quota
3. a snapshot prevents any space from being freed
4. a remote clients calls opendir via nfs4
5. the same client removes the directory
6. the client proceeds with readdir --> boom.

During 4, the client obtains a FH for the directory.
During 5, the directory entry gets removed, the inode is added to the
unlinked set and z_unlinked is set.
Then the inode contents is deleted (dmu_free_long_range).
Deletion of the inode itself fails because the fs ran out of space exactly
at this moment. The inode is left in the unlinked set, the znode is freed.
During 6, the readdir of the client instantiates a new znode for the (empty)
inode, this time with z_unlinked unset.
During zap read, the contents of the empty file is interpreted as a fatzap,
which leads to the crash.

This patch addresses the problem twofold:
1. when instantiating a znode, set z_unlinked when z_links == 0
2. mark the deletion of the inode as netfree (in zfs_rmnode).

refs #3026

(cherry picked from commit 67738a4fd5331c5c62b9fead7a7739afa2476cf9)

show more ...


# 4bb73804 07-Jul-2014 Matthew Ahrens <mahrens@delphix.com>

4950 files sometimes can't be removed from a full filesystem
Reviewed by: Adam Leventhal <adam.leventhal@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Sebastien Roy

4950 files sometimes can't be removed from a full filesystem
Reviewed by: Adam Leventhal <adam.leventhal@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Sebastien Roy <sebastien.roy@delphix.com>
Reviewed by: Boris Protopopov <bprotopopov@hotmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>

show more ...


# e722410c 26-Nov-2013 Matthew Ahrens <mahrens@delphix.com>

4347 ZPL can use dmu_tx_assign(TXG_WAIT)
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Reviewed b

4347 ZPL can use dmu_tx_assign(TXG_WAIT)
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Reviewed by: Boris Protopopov <boris.protopopov@nexenta.com>
Approved by: Dan McDonald <danmcd@nexenta.com>

show more ...


# be6fd75a 08-Mar-2013 Matthew Ahrens <mahrens@delphix.com>

3598 want to dtrace when errors are generated in zfs
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@d

3598 want to dtrace when errors are generated in zfs
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Approved by: Garrett D'Amore <garrett@damore.org>

show more ...


# b420f3ad 01-Aug-2012 Richard Lowe <richlowe@richlowe.net>

backout 3006: causes 3046 (panics after mounting root)


# 9fa718d2 31-Jul-2012 Madhav Suresh <madhav.suresh@delphix.com>

3006 VERIFY[S,U,P] and ASSERT[S,U,P] frequently check if first argument is zero
Reviewed by: Matt Ahrens <matthew.ahrens@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved b

3006 VERIFY[S,U,P] and ASSERT[S,U,P] frequently check if first argument is zero
Reviewed by: Matt Ahrens <matthew.ahrens@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved by: Garrett D'Amore <garrett@damore.org>

show more ...


# 6a634c9d 19-Aug-2010 Richard Lowe <richlowe@richlowe.net>

merge with onnv_147
Reviewed by: garrett@nexenta.com
Approved by: garrett@nexenta.com


# f1696b23 11-Aug-2010 Mark Shellenbaum <Mark.Shellenbaum@Oracle.COM>

6971929 Unable to add/remove ACE after doing idmap flush -a


# 1412a1a2 14-Jun-2010 Mark Shellenbaum <Mark.Shellenbaum@Oracle.COM>

6957974 assertion failed: 0 == sa_lookup(zp->z_sa_hdl, SA_ZPL_ZNODE_ACL(zp->z_zfsvfs)
6960907 zfs_rezget() has uninitialized z_mode variable


# 6ed5e6ab 14-May-2010 Sam Falkner <Sam.Falkner@Sun.COM>

6894240 zfs has a partially deleted file


# c8c24165 04-May-2010 Mark Shellenbaum <Mark.Shellenbaum@Sun.COM>

6946681 System panics in a loop with "pf zfs_fuid_create"


# f3e6fb2f 22-Apr-2010 Mark Shellenbaum <Mark.Shellenbaum@Sun.COM>

6945935 potential mutex problem in zfs_zaccess_aces_check()


# 0a586cea 16-Mar-2010 Mark Shellenbaum <Mark.Shellenbaum@Sun.COM>

6716117 ZFS needs native system attribute infrastructure
6516171 zpl symlinks should have their own object type


# afefc7e4 15-Dec-2009 Sanjeev Bagewadi <Sanjeev.Bagewadi@Sun.COM>

6847615 deadlock between zfs_dirent_lock and zfs_rmdir


# 14843421 18-Apr-2009 Matthew Ahrens <Matthew.Ahrens@Sun.COM>

PSARC/2009/204 ZFS user/group quotas & space accounting
6501037 want user/group quotas on ZFS
6830813 zfs list -t all fails assertion
6827260 assertion failed in arc_read(): hdr == pbuf->b_hdr
681559

PSARC/2009/204 ZFS user/group quotas & space accounting
6501037 want user/group quotas on ZFS
6830813 zfs list -t all fails assertion
6827260 assertion failed in arc_read(): hdr == pbuf->b_hdr
6815592 panic: No such hold X on refcount Y from zfs_znode_move
6759986 zfs list shows temporary %clone when doing online zfs recv

show more ...


# 89459e17 26-Mar-2009 Mark Shellenbaum <Mark.Shellenbaum@Sun.COM>

6790064 zfs needs to determine uid and gid earlier in create process


# 1209a471 25-Nov-2008 Neil Perrin <Neil.Perrin@Sun.COM>

6765294 Refactor replay


# a6e57bd4 19-Sep-2008 Neil Perrin <Neil.Perrin@Sun.COM>

6741237 zfs hang in txg_wait_open() on boot


# 088f3894 07-Jul-2008 ahrens <none@none>

6343667 scrub/resilver has to start over when a snapshot is taken
6343693 'zpool status' gives delayed start for 'zpool scrub'
6670746 scrub on degraded pool return the status of 'resilver completed'

6343667 scrub/resilver has to start over when a snapshot is taken
6343693 'zpool status' gives delayed start for 'zpool scrub'
6670746 scrub on degraded pool return the status of 'resilver completed'?
6675685 DTL entries are lost resulting in checksum errors
6706404 get_history_one() can dereference off end of hist_event_table[]
6715414 assertion failed: ds->ds_owner != tag in dsl_dataset_rele()
6716437 ztest gets SEGV in arc_released()
6722838 bfu does not update grub

show more ...


# cdb0ab79 01-Jul-2008 maybee <none@none>

6573681 deleting a very large file can be slow
6706950 ((&dnp->dn_blkptr[0])->blk_birth == 0) || list_head(list) != 0L || dn->dn_next_blksz[txgoff]


# ab04eb8e 27-Apr-2008 timh <none@none>

6654808 FIGNORECASE lookups in a zfs xattr dir don't provide 'realname' data
6666748 System panic occurred when attempting to view .zfs snapshot directory from CIFS client.
6693201 libzpool needlessl

6654808 FIGNORECASE lookups in a zfs xattr dir don't provide 'realname' data
6666748 System panic occurred when attempting to view .zfs snapshot directory from CIFS client.
6693201 libzpool needlessly defines u8_textprep_str()
6694236 case-insensitive zfs file system doesn't work when created on sparc and then imported on x86

show more ...


# e0d35c44 01-Feb-2008 marks <none@none>

6650192 zfs ACL/fuid code could use some minor cleanup
6650223 zdb znode output should include uid/gid and possible SID information
6657644 zfs_fuid_init() panic


# 40ff3960 18-Jan-2008 ck153898 <none@none>

6580259 onnv ZFS panic with zfs_purgedir in zfs_dir.c
6617656 zpool destroy should deal with newer pools


# 4c841f60 14-Jan-2008 marks <none@none>

6603908 can't change mode if FS/dir is out of quota


# bda89588 04-Jan-2008 jp151216 <none@none>

6552639 Each zone should have it's own idmapd


12