Ahh! I didn't know LVM had a device type lookup table. You can see if you look further that it also reads new types from the lvm.conf file. Adding this line to lvm.conf fixes the problem: types = [ "bcache", 16 ] I would imagine if merged it would be added to the internal compiled in table. Thanks for the pointer. Joseph. On 3 March 2012 13:17, Kent Overstreet <koverstreet@xxxxxxxxxx> wrote: > I found the bug. Ugh... > > pvcreate refuses to use a device it doesn't recognize - look at the > lvm2 source, lib/filters/filter.c > > I don't know why and I don't think I want to know. I imagine it'd work > if you commented out the offending check (line 143 in my version). > > Maybe one of them can explain what's going on. > > On Fri, Mar 2, 2012 at 4:48 PM, Joseph Glanville > <joseph.glanville@xxxxxxxxxxxxxx> wrote: >> Cheers, I will try with a full disk device sometime later today. >> >> Thanks for you help, >> Joseph. >> >> On 3 March 2012 11:01, Kent Overstreet <koverstreet@xxxxxxxxxx> wrote: >>> Strange, I don't see anything obvious in that log. Well, shouldn't be >>> too hard to track down, I'll see if I can reproduce it. >>> >>> On Fri, Mar 2, 2012 at 2:37 PM, Joseph Glanville >>> <joseph.glanville@xxxxxxxxxxxxxx> wrote: >>>> Hi Kent, >>>> >>>> The block device did indeed get created in /dev and the correct >>>> pointer exists in /sys/block/bcache0/dev >>>> I straced pvcreate and attached the outout, I couldn't see anything >>>> that far out of the ordinary though - bar the return that the device >>>> had been filtered. >>>> I am using commit f4c09286dd3f761310b24bc03e5ce95793a9a30c of >>>> bcache-tools.git and commit 7c3e597ca0f5c87767548d1e9aced024aa558b2a >>>> of linux-bcache.git >>>> >>>> The other thing I noticed was that the /dev/disk-by/uuid symlink >>>> wasn't created. I went ahead and created this myself but I will >>>> investigate why the udev rule didn't do this for me. >>>> >>>> Below is relevant lines from pvscan and pvcreate: >>>> >>>> dev05 ~ # cat pvscan.log | grep bcache >>>> execve("/sbin/pvscan", ["pvscan", "/dev/bcache0"], [/* 23 vars */]) = 0 >>>> read(3, "strace\0pvscan\0/dev/bcache0\0", 31) = 27 >>>> readlink("/sys/class/block/bcache0", >>>> "../../devices/virtual/block/bcache0"..., 1024) = 35 >>>> stat("/sys/devices/virtual/block/bcache0/uevent", >>>> {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0 >>>> readlink("/sys/devices/virtual/block/bcache0", 0x7fff9e17aea0, 1024) = >>>> -1 EINVAL (Invalid argument) >>>> stat("/sys/devices/virtual/block/bcache0/uevent", >>>> {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0 >>>> open("/sys/devices/virtual/block/bcache0/uevent", O_RDONLY|O_CLOEXEC) = 4 >>>> read(4, "MAJOR=252\nMINOR=0\nDEVNAME=bcache"..., 4096) = 47 >>>> readlink("/sys/devices/virtual/block/bcache0/subsystem", >>>> "../../../../class/block"..., 1024) = 23 >>>> read(4, "N:bcache0\nW:40\nI:580433490\n", 4096) = 27 >>>> stat("/dev/bcache0", {st_mode=S_IFBLK|0660, st_rdev=makedev(252, 0), ...}) = 0 >>>> stat("/sys/class/block/bcache0/dev", {st_mode=S_IFREG|0444, >>>> st_size=4096, ...}) = 0 >>>> open("/sys/class/block/bcache0/dev", O_RDONLY) = 6 >>>> >>>> dev05 ~ # cat pvcreate-strace.log | grep bcache >>>> execve("/sbin/pvcreate", ["pvcreate", "/dev/bcache0"], [/* 23 vars */]) = 0 >>>> read(3, "strace\0pvcreate\0/dev/bcache0\0", 31) = 29 >>>> stat("/dev/bcache0", {st_mode=S_IFBLK|0660, st_rdev=makedev(252, 0), ...}) = 0 >>>> readlink("/sys/dev/block/252:0", >>>> "../../devices/virtual/block/bcache0", 1024) = 35 >>>> stat("/sys/devices/virtual/block/bcache0/uevent", >>>> {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0 >>>> stat("/sys/class/block/bcache0/dev", {st_mode=S_IFREG|0444, >>>> st_size=4096, ...}) = 0 >>>> open("/sys/class/block/bcache0/dev", O_RDONLY) = 6 >>>> stat("/dev/bcache0", {st_mode=S_IFBLK|0660, st_rdev=makedev(252, 0), ...}) = 0 >>>> stat("/dev/bcache0", {st_mode=S_IFBLK|0660, st_rdev=makedev(252, 0), ...}) = 0 >>>> stat("/sys/class/block/bcache0/dev", {st_mode=S_IFREG|0444, >>>> st_size=4096, ...}) = 0 >>>> open("/sys/class/block/bcache0/dev", O_RDONLY) = 6 >>>> write(2, "Device /dev/bcache0 not found (o"..., 56Device /dev/bcache0 >>>> not found (or ignored by filtering).) = 56 >>>> >>>> Kind regards, >>>> Joseph. >>>> >>>> >>>> On 2 March 2012 17:44, Kent Overstreet <kent.overstreet@xxxxxxxxx> wrote: >>>>> Oh - try stracing the pvcreate and see what happens. >>>>> >>>>> On Thu, Mar 1, 2012 at 10:03 PM, Kent Overstreet >>>>> <kent.overstreet@xxxxxxxxx> wrote: >>>>>> Weird. >>>>>> >>>>>> Did the /dev/bcache0 device get create created by udev? >>>>>> >>>>>> It's possible my code isn't poking the right thing. *mutters about the >>>>>> block layer...* >>>>>> >>>>>> On Thu, Mar 1, 2012 at 9:49 PM, Joseph Glanville >>>>>> <joseph.glanville@xxxxxxxxxxxxxx> wrote: >>>>>>> Hi, >>>>>>> >>>>>>> I can't use bcache devices as members of lvm volume groups because >>>>>>> dmsetup can't find the devices. >>>>>>> It provides the ever useful feedback of: >>>>>>> # pvcreate /dev/bcache0 >>>>>>> Device /dev/bcache0 not found (or ignored by filtering). >>>>>>> >>>>>>> My LVM.conf is only filtering out nbd devices: >>>>>>> filter = [ "r|/dev/nbd.*|", "a/.*/" ] >>>>>>> >>>>>>> Any insight would be greatly appreciated. :) >>>>>>> >>>>>>> I also noted that bcache devices don't appear in iostat.. >>>>>>> >>>>>>> Joseph. >>>>>>> >>>>>>> -- >>>>>>> Founder | Director | VP Research >>>>>>> Orion Virtualisation Solutions | www.orionvm.com.au | Phone: 1300 56 >>>>>>> 99 52 | Mobile: 0428 754 846 >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Founder | Director | VP Research >>>>>>> Orion Virtualisation Solutions | www.orionvm.com.au | Phone: 1300 56 >>>>>>> 99 52 | Mobile: 0428 754 846 >>>>>>> -- >>>>>>> To unsubscribe from this list: send the line "unsubscribe linux-bcache" in >>>>>>> the body of a message to majordomo@xxxxxxxxxxxxxxx >>>>>>> More majordomo info at http://vger.kernel.org/majordomo-info.html >>>> >>>> >>>> >>>> -- >>>> Founder | Director | VP Research >>>> Orion Virtualisation Solutions | www.orionvm.com.au | Phone: 1300 56 >>>> 99 52 | Mobile: 0428 754 846 >>>> -- >>>> To unsubscribe from this list: send the line "unsubscribe linux-bcache" in >>>> the body of a message to majordomo@xxxxxxxxxxxxxxx >>>> More majordomo info at http://vger.kernel.org/majordomo-info.html >> >> >> >> -- >> Founder | Director | VP Research >> Orion Virtualisation Solutions | www.orionvm.com.au | Phone: 1300 56 >> 99 52 | Mobile: 0428 754 846 -- Founder | Director | VP Research Orion Virtualisation Solutions | www.orionvm.com.au | Phone: 1300 56 99 52 | Mobile: 0428 754 846 -- To unsubscribe from this list: send the line "unsubscribe linux-bcache" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html