I have a bit of a mystery.
I have a CF card stuck in a CF-SATA adapter, connected to an SATA port on my ICH8 motherboard.
I have partitioned the CF card with GPT, and if I create a UFS partition on it, newfs and mount it, it works perfectly.
If I create a (test) zpool on the CF card, then create a filesystem on it and do a bunch of I/O on it, it works perfectly.
If I take that same partition and add it as a cache to an existing mirrored pool, it fails. Usually with timeouts almost immediately while mounting, leading ultimately to a kernel panic.
To recap
works
fails.
WTF?
I have a CF card stuck in a CF-SATA adapter, connected to an SATA port on my ICH8 motherboard.
I have partitioned the CF card with GPT, and if I create a UFS partition on it, newfs and mount it, it works perfectly.
If I create a (test) zpool on the CF card, then create a filesystem on it and do a bunch of I/O on it, it works perfectly.
If I take that same partition and add it as a cache to an existing mirrored pool, it fails. Usually with timeouts almost immediately while mounting, leading ultimately to a kernel panic.
To recap
Code:
zpool create temp ada2p1
zfs create temp/test
dd if=/dev/random of=/temp/test/foo
Code:
zfs add tank cache ada2p1
fails.
WTF?