Here is some patches for mount(8)/unmount(8) from util-linux-1.[789].tar.gz
to mount the loop device in one swoop (no need for losetup).

After applying the patch, and compiling the following is an example
of mounting a loop filesystem  (assuming you have the module or your
kernel patch installed) 

1)	# dd if=/dev/zero of=foo bs=1k count=100
2)	# mkfs.ext2 foo 100
3)	# mount -t lo@/dev/loop0 -o vfs=ext2 foo /mnt
                   |           |    |      |  |    |
                   |           |    |      |  |    |
                   +-----------+    +------+  |    |
                         |              |     |    |
                        (A)            (B)   (C)  (D)

Step 1: Create a empty file (foo) 100k big.
Step 2: Create an "ext2" file system on it (foo).
Step 3: mount the file "foo" on /mnt

Where the options to the new mount for loop devices are:
	(A) Tells "mount" that this is a loop  mount on device /dev/loop0.
	(B) says that the VFS filesystem type on the loop device is ext2.
	(C) is the file to be mounted.
	(D) is the mount point.

The mount command on its own should now display something like (assuming
your mount was successful)

	% mount
	....[blah, blah]...
	/dev/loop0 on /mnt type loop (rw,vfs=ext2,offset=0,encryption=none)
	....[blah, blah]...

For the -o options (as in (3) above) you may also specify `encryption' and
`offset' like you would with the original `losetup' command. Example:

	# mount -t lo@/dev/loop0 -o vfs=ext2,offset=0,encryption=xor foo /mnt

The umount command is as before:

	# umount /mnt

which will automatically perform the original `losetup -d /dev/loopN'.

MItch
