Patch for a leak of anonymous devices

Pete Zaitcev (zaitcev@redhat.com)
Tue, 9 Apr 2002 16:25:10 -0400


Hi, Al:

Arjan used your fix from 2.5 which simply moves the allocation
of the device. Are you going to change in in 2.4 too?
Here's what I did for 2.4.18-pre6 temporarily:

--- linux-2.4.18-pre6/fs/super.c Tue Apr 9 11:58:25 2002
+++ linux-2.4.18-pre6-p3/fs/super.c Tue Apr 9 11:53:43 2002
@@ -632,6 +632,9 @@
continue;
if (!grab_super(old))
goto retry;
+ spin_lock(&unnamed_dev_lock);
+ clear_bit(dev, unnamed_dev_in_use);
+ spin_unlock(&unnamed_dev_lock);
destroy_super(s);
return old;
}

Another question: your code allows to allocate device (0,0).
I assume you found it safe; everything works. However, why
is it safe? Do we have no functions that return zero as a
device number to indicate a failure?

My moremounts patch simple pre-sets the first bit of the
unnamed_dev_in_use bitmap to avoid this. But perhaps I am
paranoid here.

-- Pete
-
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/