Bug 62740

Summary: get_anon_super() can leak unnamed devices
Product: [Retired] Red Hat Public Beta Reporter: Paul Menage <paul.menage>
Component: kernelAssignee: Arjan van de Ven <arjanv>
Status: CLOSED RAWHIDE QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: skipjack-beta1   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2002-04-05 03:04:31 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Paul Menage 2002-04-05 03:04:27 UTC
Description of Problem:

In fs/super.c:get_anon_super(), if the compare() function ever returns success,
the new super block is destroyed, but the newly allocated unnamed device doesn't
get released.

Version-Release number of selected component (if applicable):

2.4.18-0.4, 2.4.18-0.12

Steps to reproduce:

mkdir /tmp/pts
while true; do
  mount -t devpts devpts /tmp/pts
  umount /tmp/pts
done

Soon gives "Mount table full" errors

This seems to be fixed in 2.5.x by a reorganisation of the super-block
allocation code.

Comment 1 Arjan van de Ven 2002-04-05 16:40:15 UTC
fix backported; will appear in rawhide soon.
thanks for reporting this!

Comment 2 Pete Zaitcev 2002-04-09 20:05:24 UTC
HEAD 2.4.18-0.19