-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ZFS diff - Unable to determine path or stats for object #7678
Comments
Also happen with encryption in 0.8.1 leb ~/cron # modinfo zfs | grep version: |
Trying to 'zfs diff' a snapshot with large dnodes will incorrectly try to access its interior slots when dnodesize > sizeof(dnode_phys_t). This is normally not an issue because the interior slots are zero-filled, which report_dnode() handles calling report_free_dnode_range(). However this is not the case for encrypted large dnodes or filesystem using many SA based xattrs where the extra data past the legacy dnode size boundary is interpreted as a dnode_phys_t. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Tom Caputi <tcaputi@datto.com> Reviewed-by: Ryan Moeller <ryan@ixsystems.com> Signed-off-by: loli10K <ezomori.nozomu@gmail.com> Closes #7678 Closes #8931 Closes #9343
Trying to 'zfs diff' a snapshot with large dnodes will incorrectly try to access its interior slots when dnodesize > sizeof(dnode_phys_t). This is normally not an issue because the interior slots are zero-filled, which report_dnode() handles calling report_free_dnode_range(). However this is not the case for encrypted large dnodes or filesystem using many SA based xattrs where the extra data past the legacy dnode size boundary is interpreted as a dnode_phys_t. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Tom Caputi <tcaputi@datto.com> Reviewed-by: Ryan Moeller <ryan@ixsystems.com> Signed-off-by: loli10K <ezomori.nozomu@gmail.com> Closes openzfs#7678 Closes openzfs#8931 Closes openzfs#9343
Trying to 'zfs diff' a snapshot with large dnodes will incorrectly try to access its interior slots when dnodesize > sizeof(dnode_phys_t). This is normally not an issue because the interior slots are zero-filled, which report_dnode() handles calling report_free_dnode_range(). However this is not the case for encrypted large dnodes or filesystem using many SA based xattrs where the extra data past the legacy dnode size boundary is interpreted as a dnode_phys_t. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Tom Caputi <tcaputi@datto.com> Reviewed-by: Ryan Moeller <ryan@ixsystems.com> Signed-off-by: loli10K <ezomori.nozomu@gmail.com> Closes openzfs#7678 Closes openzfs#8931 Closes openzfs#9343
this occurs on 0.8.2, no encryption is it only fixed in master? |
@mailinglists35 d359e99 appears to be in master only |
Trying to 'zfs diff' a snapshot with large dnodes will incorrectly try to access its interior slots when dnodesize > sizeof(dnode_phys_t). This is normally not an issue because the interior slots are zero-filled, which report_dnode() handles calling report_free_dnode_range(). However this is not the case for encrypted large dnodes or filesystem using many SA based xattrs where the extra data past the legacy dnode size boundary is interpreted as a dnode_phys_t. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Tom Caputi <tcaputi@datto.com> Reviewed-by: Ryan Moeller <ryan@ixsystems.com> Signed-off-by: loli10K <ezomori.nozomu@gmail.com> Closes #7678 Closes #8931 Closes #9343
System information
Describe the problem you're observing
I have dataset shared via samba.
Some non default settings:
samba settings for this share
I use zfs-auto-snapshot scrip for create daily snapshots
If I save file form Safari browser directly to mounted fileshare and the try to use zfs diff , I get error "Unable to determine path or stats for object".
For example file - extrafiles.dms
zfs diff store/share@zfs-auto-snap_daily-2018-07-04-1215
M /store/share/Files
Unable to determine path or stats for object 754017 in store/share@zfs-diff-10119-000000010b75f5ed: File exists
let's see inodes for this folder
The object id for file with xattr - 754016, "problematic" object id - 754017
If I understand correctly ID 754017 must not be used, because dnode size is 1K
If I remove all xattr from file with "attr -r ..." - some time it's solve problem, some time no.
UPD:
When I set dnodesize to "legacy" - it's no any problem with xattr and SA.
What dnodesize I must choose for samba sharing dataset ?
Describe how to reproduce the problem
make dataset
set dnode size
make test file (non zero size file is important)
make snapshot
create an attr similar to those used in mac os
run zfs diff
Include any warning/errors/backtraces from the system logs
The text was updated successfully, but these errors were encountered: