Re: loop Device doesn't work in kernel 2.4.14

Adrian Bunk (bunk@fs.tum.de)
Mon, 12 Nov 2001 10:15:36 +0100 (CET)


On Mon, 12 Nov 2001 johann.pfefferl.jp@germany.agfa.com wrote:

> Hello,

Hi Hans,

>...
> # modprobe -v loop
> /sbin/insmod /lib/modules/2.4.14/kernel/drivers/block/loop.o
> Using /lib/modules/2.4.14/kernel/drivers/block/loop.o
> Symbol version prefix ''
> /lib/modules/2.4.14/kernel/drivers/block/loop.o: unresolved symbol deactivate_page
> /lib/modules/2.4.14/kernel/drivers/block/loop.o: insmod /lib/modules/2.4.14/kernel/drivers/block/loop.o failed
> /lib/modules/2.4.14/kernel/drivers/block/loop.o: insmod loop failed
>
> # find /usr/src/linux-2.4.14 -type f -name '*.[ch]' |xargs grep deactivate_page
> /usr/src/linux-2.4.14/drivers/block/loop.c: deactivate_page(page);
>...
> There seems to be a problem with the routine deactivate_page, which is no longer present
> in the 2.4.14 kernel but is used somehow in the loop device code.

this is a known bug.

The following patch fixes it:

--- linux-2.4.14-broken/drivers/block/loop.c Thu Oct 25 13:58:34 2001
+++ linux-2.4.14/drivers/block/loop.c Mon Nov 5 17:06:08 2001
@@ -207,7 +207,6 @@
index++;
pos += size;
UnlockPage(page);
- deactivate_page(page);
page_cache_release(page);
}
return 0;
@@ -218,7 +217,6 @@
kunmap(page);
unlock:
UnlockPage(page);
- deactivate_page(page);
page_cache_release(page);
fail:
return -1;

> Hans

cu
Adrian

-- 

Get my GPG key: finger bunk@debian.org | gpg --import

Fingerprint: B29C E71E FE19 6755 5C8A 84D4 99FC EA98 4F12 B400

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/