Skip to content
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

cannot create duplicate filename #42

Closed
behlendorf opened this issue Jul 28, 2010 · 1 comment
Closed

cannot create duplicate filename #42

behlendorf opened this issue Jul 28, 2010 · 1 comment

Comments

@behlendorf
Copy link
Contributor

Observed during zconfig test 4 using Ubuntu 2.6.32-22-generic kernel.

ZFS: 7dfe24e

SPL: Loaded Solaris Porting Layer v0.5.0
ZFS: Loaded ZFS Filesystem v0.5.0
------------[ cut here ]------------
WARNING: at /build/buildd/linux-2.6.32/fs/sysfs/dir.c:491 sysfs_add_one+0xa0/0x100()
Hardware name: Inspiron 531
sysfs: cannot create duplicate filename '/devices/virtual/block/test4!fish2'
Pid: 8679, comm: zfs Tainted: P           2.6.32-22-generic #36-Ubuntu
Call Trace:
 [] warn_slowpath_common+0x72/0xa0
 [] ? sysfs_add_one+0xa0/0x100
 [] ? sysfs_add_one+0xa0/0x100
 [] warn_slowpath_fmt+0x2b/0x30
 [] sysfs_add_one+0xa0/0x100
 [] create_dir+0x4e/0x90
 [] sysfs_create_dir+0x30/0x50
 [] kobject_add_internal+0x92/0x1d0
 [] ? vsnprintf+0xc8/0x410
 [] kobject_add_varg+0x2d/0x50
 [] ? get_device_parent+0xcb/0x1a0
 [] kobject_add+0x2c/0x60
 [] device_add+0x99/0x430
 [] ? kobject_set_name_vargs+0x64/0x70
 [] register_disk+0x36/0x140
 [] ? blk_register_region+0x32/0x40
 [] ? exact_match+0x0/0x10
 [] add_disk+0x85/0x150
 [] ? exact_match+0x0/0x10
 [] ? exact_lock+0x0/0x20
 [] zvol_create_minor+0x31a/0x380 [zfs]
 [] zfs_ioc_create+0x2a4/0x350 [zfs]
 [] ? zvol_create_cb+0x0/0x190 [zfs]
 [] ? zvol_create_cb+0x0/0x190 [zfs]
 [] zfs_ioctl+0xda/0x1c0 [zfs]
 [] ? zfs_ioctl+0x0/0x1c0 [zfs]
 [] vfs_ioctl+0x21/0x90
 [] do_vfs_ioctl+0x79/0x310
 [] ? do_page_fault+0x160/0x3a0
 [] sys_ioctl+0x67/0x80
 [] syscall_call+0x7/0xb
@behlendorf
Copy link
Contributor Author

This issue I'm fairly sure was fixed by the recent zvol minor fixes. (f162433) It could occur if gendisks kobject was not properly removed from the system and then a new one with the same name was created. The was possible before this cleanup.

The updated code unconditionally cleans up the kobjects on module unload. The only other cases would be a volume destroy or pool export. In both of these cases we will not remove the minor if it is busy, but in that case we also will not remove the dataset. This makes it impossible to create a dataset with the same name and hit the issue.

For now I'm closing the issue. Please open a new one if this is ever observed again... I haven't seen it myself.

FransUrbo added a commit to FransUrbo/zfs that referenced this issue Dec 19, 2013
'Requires' pull request openzfs#42, which changed the param to a bool.
akatrevorjay added a commit to akatrevorjay/zfs that referenced this issue Dec 16, 2017
# This is the 1st commit message:
Merge branch 'master' of https://github.com/zfsonlinux/zfs

* 'master' of https://github.com/zfsonlinux/zfs:
  Enable QAT support in zfs-dkms RPM

# This is the commit message openzfs#2:

Import 0.6.5.7-0ubuntu3

# This is the commit message openzfs#3:

gbp changes

# This is the commit message openzfs#4:

Bump ver

# This is the commit message openzfs#5:

-j9 baby

# This is the commit message openzfs#6:

Up

# This is the commit message openzfs#7:

Yup

# This is the commit message openzfs#8:

Add new module

# This is the commit message openzfs#9:

Up

# This is the commit message openzfs#10:

Up

# This is the commit message openzfs#11:

Bump

# This is the commit message openzfs#12:

Grr

# This is the commit message openzfs#13:

Yay

# This is the commit message openzfs#14:

Yay

# This is the commit message openzfs#15:

Yay

# This is the commit message openzfs#16:

Yay

# This is the commit message openzfs#17:

Yay

# This is the commit message openzfs#18:

Yay

# This is the commit message openzfs#19:

yay

# This is the commit message openzfs#20:

yay

# This is the commit message openzfs#21:

yay

# This is the commit message openzfs#22:

Update ppa script

# This is the commit message openzfs#23:

Update gbp conf with br changes

# This is the commit message openzfs#24:

Update gbp conf with br changes

# This is the commit message openzfs#25:

Bump

# This is the commit message openzfs#26:

No pristine

# This is the commit message openzfs#27:

Bump

# This is the commit message openzfs#28:

Lol whoops

# This is the commit message openzfs#29:

Fix name

# This is the commit message openzfs#30:

Fix name

# This is the commit message openzfs#31:

rebase

# This is the commit message openzfs#32:

Bump

# This is the commit message openzfs#33:

Bump

# This is the commit message openzfs#34:

Bump

# This is the commit message openzfs#35:

Bump

# This is the commit message openzfs#36:

ntrim

# This is the commit message openzfs#37:

Bump

# This is the commit message openzfs#38:

9

# This is the commit message openzfs#39:

Bump

# This is the commit message openzfs#40:

Bump

# This is the commit message openzfs#41:

Bump

# This is the commit message openzfs#42:

Revert "9"

This reverts commit de488f1.

# This is the commit message openzfs#43:

Bump

# This is the commit message openzfs#44:

Account for zconfig.sh being removed

# This is the commit message openzfs#45:

Bump

# This is the commit message openzfs#46:

Add artful

# This is the commit message openzfs#47:

Add in zed.d and zpool.d scripts

# This is the commit message openzfs#48:

Bump

# This is the commit message openzfs#49:

Bump

# This is the commit message openzfs#50:

Bump

# This is the commit message openzfs#51:

Bump

# This is the commit message openzfs#52:

ugh

# This is the commit message openzfs#53:

fix zed upgrade

# This is the commit message openzfs#54:

Bump

# This is the commit message openzfs#55:

conf file zed.d

# This is the commit message #56:

Bump
jkryl referenced this issue in mayadata-io/cstor Feb 27, 2018
* Use of RTE ring buffer API from DPDK in vdev disk AIO backend
jkryl referenced this issue in mayadata-io/cstor Mar 11, 2018
jkryl referenced this issue in mayadata-io/cstor Mar 12, 2018
jkryl referenced this issue in mayadata-io/cstor Mar 13, 2018
jkryl referenced this issue in mayadata-io/cstor Mar 13, 2018
jkryl referenced this issue in mayadata-io/cstor Mar 15, 2018
jkryl referenced this issue in mayadata-io/cstor Mar 15, 2018
richardelling pushed a commit to richardelling/zfs that referenced this issue Oct 15, 2018
…fs#42)

* Use of RTE ring buffer API from DPDK in vdev disk AIO backend
richardelling pushed a commit to richardelling/zfs that referenced this issue Oct 15, 2018
sdimitro pushed a commit to sdimitro/zfs that referenced this issue Apr 10, 2019
Deleting a clone requires finding blocks are clone-only, not shared
with the snapshot. This was done by traversing the entire block tree
which results in a large performance penalty for sparsely
written clones.

This is new method keeps track of clone blocks when they are
modified in a "Livelist" so that, when it’s time to delete,
the clone-specific blocks are already at hand.

We see performance improvements because now deletion work is
proportional to the number of clone-modified blocks, not the size
of the original dataset.

Signed-off-by: sara hartse <sara.hartse@delphix.com>
@kocoman1 kocoman1 mentioned this issue Nov 23, 2021
18 tasks
sdimitro pushed a commit to sdimitro/zfs that referenced this issue Dec 7, 2021
Move libzoa.so from package zfsutils-linux to libzfslinux-dev and
obtain it from its "installed" location (lib/) rather than the src tree
anodos325 pushed a commit to anodos325/zfs that referenced this issue Mar 18, 2022
Make xattr_compat a tunable, zfs_xattr_compat
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant