Date: Tue, 28 Aug 2012 12:43:23 -0400 From: Trent Nelson <trent@snakebite.org> To: Andriy Gapon <avg@FreeBSD.org> Cc: "freebsd-fs@FreeBSD.org" <freebsd-fs@FreeBSD.org> Subject: Re: chmod -h 000x against symlink has bizarre results on ZFS Message-ID: <20120828164323.GA25443@snakebite.org> In-Reply-To: <503CDD4E.6050902@FreeBSD.org> References: <20120824011517.GJ42732@snakebite.org> <503CD4F1.6060001@FreeBSD.org> <503CDD4E.6050902@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 28, 2012 at 08:01:34AM -0700, Andriy Gapon wrote: > on 28/08/2012 17:25 Andriy Gapon said the following: > [snip] > > I can reproduce this problem > > I can also provide some additional bits of information using a modified version of > > zdb: > > > > $ ln -fs definitelywaylongerthantwentyfour definitelywaylongerthantwentyfour.lnk > > $ stat -s definitelywaylongerthantwentyfour.lnk > > st_dev=3895460379 st_ino=27165 st_mode=0120755 st_nlink=1 st_uid=0 st_gid=0 > > st_rdev=4294967295 st_size=33 st_atime=1346161009 st_mtime=1346161009 > > st_ctime=1346161009 st_birthtime=1346161009 st_blksize=131072 st_blocks=1 st_flags=0 > > $ zdb -ddddddd tank/tmp 27165 > > Dataset tank/tmp [ZPL], ID 69, cr_txg 31, 4.57G, 24910 objects, rootbp > > DVA[0]=<0:5c5375e000:200> DVA[1]=<0:4c1a80ce00:200> [L0 DMU objset] fletcher4 lzjb > > LE contiguous unique double size=800L/200P birth=70882769L/70882769P fill=24910 > > cksum=1c72e8f065:89bbdf9d575:1732432c541ff:2d672d98b0ff66 > > > > Object lvl iblk dblk dsize lsize %full type > > 27165 1 16K 512 0 512 0.00 ZFS plain file (K=inherit) > > (Z=inherit) > > 209 bonus System attributes > > dnode flags: USERUSED_ACCOUNTED > > dnode maxblkid: 0 > > path /definitelywaylongerthantwentyfour.lnk > > uid 0 > > gid 0 > > atime Tue Aug 28 16:36:49 2012 > > mtime Tue Aug 28 16:36:49 2012 > > ctime Tue Aug 28 16:36:49 2012 > > crtime Tue Aug 28 16:36:49 2012 > > gen 70882769 > > mode 120755 > > size 33 > > parent 3 > > links 1 > > pflags 40800000104 > > symlink definitelywaylongerthantwentyfour > > symlink size 33 > > Indirect blocks: > > > > $ chmod -h 0007 definitelywaylongerthantwentyfour.lnk > > $ stat -s definitelywaylongerthantwentyfour.lnk > > st_dev=3895460379 st_ino=27165 st_mode=0120007 st_nlink=1 st_uid=0 st_gid=0 > > st_rdev=4294967295 st_size=33 st_atime=1346161009 st_mtime=1346161009 > > st_ctime=1346161227 st_birthtime=1346161227 st_blksize=131072 st_blocks=1 st_flags=0 > > $ zdb -ddddddd tank/tmp 27165 > > Dataset tank/tmp [ZPL], ID 69, cr_txg 31, 4.57G, 24910 objects, rootbp > > DVA[0]=<0:5c556b4400:200> DVA[1]=<0:4c1a989600:200> [L0 DMU objset] fletcher4 lzjb > > LE contiguous unique double size=800L/200P birth=70882812L/70882812P fill=24910 > > cksum=170e778d58:737e87307d3:140a45f4106a6:283187f7da9de7 > > > > Object lvl iblk dblk dsize lsize %full type > > 27165 1 16K 512 0 512 0.00 ZFS plain file (K=inherit) > > (Z=inherit) > > 216 bonus System attributes > > dnode flags: USERUSED_ACCOUNTED > > dnode maxblkid: 0 > > path /definitelywaylongerthantwentyfour.lnk > > uid 0 > > gid 0 > > atime Tue Aug 28 16:36:49 2012 > > mtime Tue Aug 28 16:36:49 2012 > > ctime Tue Aug 28 16:40:27 2012 > > crtime Tue Aug 28 16:36:49 2012 > > gen 70882769 > > mode 120007 > > size 33 > > parent 3 > > links 1 > > pflags 40800000004 > > symlink definitelywaylongerthant > > symlink size 24 > > Indirect blocks: > > > > Note how the file/object size remains 33, but size of ZPL_SYMLINK attribute is > > changed to 24. > > > > Will you be able to test the following patch? Sure. Just out of interest, is it FreeBSD-specific? Or likely to affect other ZFS platforms as well? Just out of interest, is it FreeBSD-specific? Or likely to affect other ZFS platforms as well? Just out of interest, is it FreeBSD-specific? Or likely to affect other ZFS platforms as well? Just out of interest, is it FreeBSD -specific? Or likely to affect other ZFS platforms as well? > Preferably on a temporary test pool - I don't want to risk your data. Ah, thanks for the heads up. I'll work something out and report back. Trent.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120828164323.GA25443>