Re: [dm-devel] Re: Problem w/ CONFIG_DEBUG_BLOCK_EXT_DEVT

Previous thread: [PATCH 1/1] ALSA: add dummy function to support shared mmap in nommu Blackfin arch (v2) by Bryan Wu on Tuesday, September 2, 2008 - 2:58 am. (3 messages)

Next thread: Please #include <limits.h> in hackbench.c by Török Edwin on Tuesday, September 2, 2008 - 3:37 am. (2 messages)
From: Alan D. Brunelle
Date: Tuesday, September 2, 2008 - 3:36 am

I have found two problems in LVM2/DM w/ a potential new &quot;experimental
feature&quot; in 2.6.28: CONFIG_DEBUG_BLOCK_EXT_DEVT (this is from Jens
Axboe's origin/for-2.6.28 git branch)

&quot;Conventionally, block device numbers are allocated from predetermined
contiguous area.  However, extended block area may introduce
non-contiguous block device numbers.  This option forces most block
device numbers to be allocated from the extended space and spreads them
to discover kernel or userland code paths which assume predetermined
contiguous device number allocation.&quot;

W/ LVM2 &amp; DM there are (at least) two issues:

(1) Device major numbers for some reason are /not/ being entered
correctly into /proc/devices -- w/ CONFIG_DEBUG_BLOCK_EXT_DEVT=y I am
seeing some devices w/ major &quot;259&quot; (a SATA controller) but no entry in
/proc/devices. LVM2/DM will not find the entry in /proc/devices, and not
allow any device w/ that major to be used with LVM commands.

(2) Device minor numbers can be quite large, and the 10-character limits
in dm/lib/libdm-deptree.c are too small.

Alan
--

From: Tejun Heo
Date: Tuesday, September 2, 2008 - 3:47 am

Hello,


It's a debug option and I don't expect it to be enabled in any

Hmmm.. Adding a call to register_blkdev(), which will create the
corresponding entry in /proc/devices, isn't difficult at all but which
name would it use?  It'll be mix of block devices (hd and sds
currently).  If we introduce a new name there, say, ext-block, would
that work?  BTW, is there any specific reason why LVM2/DM can't use

Would it be difficult to increase that?

Thanks.

-- 
tejun
--

From: Alan D. Brunelle
Date: Tuesday, September 2, 2008 - 3:55 am

From: Jens Axboe
Date: Tuesday, September 2, 2008 - 3:57 am

It has already been changed to default to 'n'.

-- 
Jens Axboe

--

From: Tejun Heo
Date: Tuesday, September 2, 2008 - 4:06 am

Well, dev_t is 32bits and MINORBITS is 20.  So, major 12 bits, minor 20
bits, so 4 characters for major, 7 characters for minor.

-- 
tejun
--

From: Alasdair G Kergon
Date: Tuesday, September 2, 2008 - 5:20 am

Upstream libdevmapper CVS patched - will appear in next release (1.02.28).

Alasdair
-- 
agk@redhat.com
--

From: Tejun Heo
Date: Tuesday, September 2, 2008 - 5:23 am

Alright, thanks.  What about the /proc/devices one?  Would adding an
entry help?  I'm kind of lost /proc/devices.  It's now mostly
non-functional legacy stuff we've been carrying around.  Is it
deprecated or do we intend to keep it around forever?

Ooh.. which also reminds me that I forgot to reserve the major number w/
lanana.  Will do that.

Thanks.

-- 
tejun
--

Previous thread: [PATCH 1/1] ALSA: add dummy function to support shared mmap in nommu Blackfin arch (v2) by Bryan Wu on Tuesday, September 2, 2008 - 2:58 am. (3 messages)

Next thread: Please #include <limits.h> in hackbench.c by Török Edwin on Tuesday, September 2, 2008 - 3:37 am. (2 messages)