[dm-devel] bug in dm-loop? - was:Re: Re: device mapper integrated loops - and one more year !
devzero at web.de
devzero at web.de
Sun Jan 21 17:16:43 UTC 2007
hello !
if these is the most recent versions of dm-loop patch (don`t actually know for sure, see my last mail):
http://kernel.org/pub/linux/kernel/people/agk/patches/2.6/editing/dm-loop.patch
http://kernel.org/pub/linux/kernel/people/agk/patches/2.6/editing/dm-add-loop.patch
then i may have found some bug, i`d like to report.
i was doing some testing of dm-loop with latest dmsetup on a 2.6.20-rc5 system.
i did some basic test, which seems to work ok.
i can now map a file to become /dev/mapper/loop0
dmlosetup loop0 test.img
-> device-mapper: loop: Finalized extent map of 1232 bytes, 44 entries.
root at localhost ~ # ls -la /dev/mapper/loop0
brw------- 1 root root 252, 0 21. Jan 17:25 /dev/mapper/loop0
works !
hooray - great work !
while fiddling around a little bit, i accidentally tried to map that file a second time - anyway, i would expect this is quite ok and should work.
dmlosetup loop1 test.img
this bails out with the following error, leaving trace in dmesg:
device-mapper: loop: file is already in use: /root/device-mapper/dmsetup/test.dat
BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000
printing eip:
d097589c
*pde = 00000000
Oops: 0000 [#1]
PREEMPT SMP
Modules linked in: dm_loop ipv6 snd_ens1371 gameport snd_rawmidi snd_ac97_codec ac97_bus pcnet32 i2c_piix4 i2c_core agpgart
CPU: 0
EIP: 0060:[<d097589c>] Not tainted VLI
EFLAGS: 00010292 (2.6.20-rc5 #1)
EIP is at loop_setup_size+0x1c/0x1f0 [dm_loop]
eax: 00000000 ebx: cb3289c0 ecx: d097105c edx: d0971020
esi: ffffffea edi: 00000001 ebp: d0971020 esp: cad47e58
ds: 007b es: 007b ss: 0068
Process dmlosetup (pid: 1787, ti=cad46000 task=cfe13aa0 task.ti=cad46000)
Stack: c018ab46 00000008 cd08fbc0 c017a806 00000000 00000000 cfec9ee8 cfec9ec0
c018fcd3 cd4bc180 cacbe118 d097105c d0971020 cb3289c0 cb3289c0 ffffffea
00000001 d0971020 d0975bd3 d0978181 d09761b5 cb3289f8 cb3280c0 d0971020
Call Trace:
[<c018ab46>] dput+0x86/0x140
[<c017a806>] __fput+0xf6/0x170
[<c018fcd3>] mntput_no_expire+0x13/0x70
[<d0975bd3>] loop_ctr+0xd3/0x170 [dm_loop]
[<c049016b>] dm_table_add_target+0x12b/0x1e0
[<c04928c0>] populate_table+0x80/0xe0
[<c049297e>] table_load+0x5e/0x110
[<c0492920>] table_load+0x0/0x110
[<c04930db>] ctl_ioctl+0xcb/0x130
[<c0534ebc>] __up+0x1c/0x20
[<c018595a>] do_ioctl+0x6a/0xa0
[<c0185b1e>] vfs_ioctl+0x5e/0x1d0
[<c0185ccd>] sys_ioctl+0x3d/0x70
[<c0103252>] sysenter_past_esp+0x5f/0x85
=======================
Code: d0 e8 f9 19 7b ef eb b3 8d b4 26 00 00 00 00 55 57 56 53 83 ec 38 89 44 24 34 89 54 24 30 89 4c 24 2c 8b 40 04 8b 80 8c 00 00 00 <8b> 18 8b 4b 44 eb 0d 90 90 90 90 90 90 90 90 90 90 90 90 90 89
EIP: [<d097589c>] loop_setup_size+0x1c/0x1f0 [dm_loop] SS:ESP 0068:cad47e58
after this, if i do
dmlosetup -d loop1
dmlosetup -d loop0
i cannot "rmmod dm-loop" , now telling me "device is in use", but it isn`t !
so, this looks like a bug to me, leaving dm-loop in an inconsitent state.
furthermore, one question about naming conventions :
dmlosetup testloop1 test.dat
dmlosetup: Could not parse loop_device testloop1
Usage:
losetup [-d|-a] [-e encryption] [-o offset] [-f|loop_device] [file]
Couldn't process command line.
so, it`s mandatory that loop_device needs to begin with "loop...." !?
regards
roland
> -----Ursprüngliche Nachricht-----
> Von: devzero at web.de
> Gesendet: 20.01.07 15:57:23
> An: breeves at redhat.com
> CC: dm-devel at redhat.com
> Betreff: Re: Re: device mapper integrated loops - and one more year !
> Hello Bryn,
>
>
> >I'll see if we can get a revised version of the current patch for wider
> >testing in the next couple of weeks - let me know if you would be
> >interested in trying this out.
>
> not sure if i sent a reply to this or have missed this - but, yes - i`m still interested very much in using dm-loop !
>
> is there anything new with this?
> do i have to expect issues with files >2gb ? (i need to loopback mount dvd iso-images)
>
> is there a download url for the latest dm-loop patch so i can do some tests and report feedback ?
>
> i couldn`t find it at http://sources.redhat.com/cgi-bin/cvsweb.cgi/device-mapper/?cvsroot=dm and i`m not sure if i should take that one from http://kernel.org/pub/linux/kernel/people/agk/patches/2.6/
>
> TIA
> roland
>
>
>
> > Hello !
> >
> > after desparately seeking for a solution to have more than 256 loop
> > devices (for a huge cd-rom server), i have recently come across
> > dm-loop, which looks very promising (to replace loop.c)
> >
> > can i have more than 256 devices which this?
>
> Hi Roland,
>
> Yes, dm-loop will support as many loop devices as device-mapper can allow.
>
> > our cd-rom server is going to have more than 256 iso-images soon and
> > i need to upgrade to a more recent OS, anyway, so this won`t be a
> > problem that dm-loop is so brand new.
> >
> > but - any timeline for dm-loop mainline inclusion ?
> >
> > should i wait for 2.6.19 or 2.6.20 ?
>
> There isn't a fixed timeline. We are currently working to improve the
> lookup code - the prototype patch uses a linear search which doesn't
> scale well for large/fragmented image files. I have some tests running
> at the moment and we hope to have something soon - the results so far
> are good, it's just a case of selecting between a couple of different
> methods.
>
> The changes dm-loop requires in device-mapper core are pretty minor and
> have already been merged in 2.6.19, so it's just the dm-loop patch
> itself remaining.
>
> > is it already useable with less recent kernels, i.e. can i download
> > dm-loop patch and recent dmsetup tool and use with older kernel ?
>
> This should work fine - there are a couple of known issues with the
> existing patch, but unless you are using large images (>2G), or have a
> severely fragmented filesystem you shouldn't run into these.
>
> I'll see if we can get a revised version of the current patch for wider
> testing in the next couple of weeks - let me know if you would be
> interested in trying this out.
>
> Thanks,
>
> Bryn.
_____________________________________________________________________
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071&distributionid=000000000066
More information about the dm-devel
mailing list