ZVOL Device Nodes Disappear

Fajar A. Nugraha list at fajar.net
Wed May 25 06:35:25 EDT 2011

On Wed, May 25, 2011 at 1:51 PM, Richard Laager <rlaager at wiktel.com> wrote:
> On Wed, 2011-05-25 at 12:26 +0700, Fajar A. Nugraha wrote:
>> It works fine in my setup (I'm using my own test). Then again I needed
>> to add vmalloc to kernel command line to have zfs work properly. If
>> you use 32bit, try adding it (see below for my kernel cmdline). Also,
>> verify that you have the same udev files that I do (and no extra
>> *zvol* rule on /etc/udev/rules.d)
> I'm on a 64-bit machine. I have the same zvol rule as you and no extras.
> I did some further testing. /dev/zd0 is present throughout; it's
> the /dev/zvol/zvol_test/zvol symlink that disappears. In dmesg, I get
> "zd0: unknown partition table", but this happens immediately after `zfs
> create`, not after the mkfs.
> The problem also happens with mkfs.ext4, but not mkfs.vfat or mkfs.xfs.

Don't know how I can help you, cause I can't reproduce the problem.

Can you please try this though:
- on one window: sudo udevadm monitor
- on another: do your tests

Keep your eyes on both windows.

The point is trying to capture what events are emitted. There should
be "add" event (when you create the zvol) and "change" event (when
running mkfs)

Then run "sudo udevadm test --action=change /block/zd0" (or whatever
your zvol node is).
The point here is to verify that the zvol udev rule and all the
required dependecies (like zvol_id) runs correctly. It should also
show whether some other rules interfere with zvol rule during "change"


More information about the zfs-discuss mailing list