Re: [PATCH] Increase number of dynamic inodes in procfs (2.6.5)

From: Nathan Lynch
Date: Wed Apr 14 2004 - 22:14:56 EST


Andrew Morton wrote:
Nathan Lynch <nathanl@xxxxxxxxxxxxxx> wrote:

This open-codes a simple version of lib/idr.c. Please use lib/idr.c

> instead. There's an example in fs/super.c

Ok, thanks for the tip. Is this better?


Looks OK. How well tested was it? Nothing calls init_proc_inum_idr().
Maybe all-zeroes happens to work.

Sorry, I tested it all day; it just happens to work :) Olof just pointed the error out to me, too.

I successfully allocated 152371 proc entries using this.

During testing I made sure that release_inode_number was actually releasing id's by inserting a call to idr_find before idr_remove, and using a dummy token for idr_get_new instead of NULL. I can pass those bits along if you like.

BTW I found the use of idr in kernel/posix-timers.c to be more consistent with the comments in lib/idr.c so I emulated that. I think the call to idr_remove in fs/super.c::set_anon_super needs to be holding unnamed_dev_lock.

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