On Tue, 29 May 2007 13:44:42 -0500 Josh Boyer wrote: > On 5/29/07, Randy Dunlap <[EMAIL PROTECTED]> wrote: > > Robert P. J. Day wrote: > > > On Tue, 29 May 2007, Randy Dunlap wrote: > > > > > >> On Tue, 29 May 2007 14:07:01 -0400 (EDT) Robert P. J. Day wrote: > > >> > > >>> On Tue, 29 May 2007, Andrew Morton wrote: > > >>> > > >>>> kernel/sysctl.c: > > >>>> > > >>>> { > > >>>> .ctl_name = FS_STATINODE, > > >>>> .procname = "inode-state", > > >>>> .data = &inodes_stat, > > >>>> .maxlen = 7*sizeof(int), <----- > > >>>> .mode = 0444, > > >>>> .proc_handler = &proc_dointvec, > > >>>> }, > > >>>> > > >>>> akpm:/home/akpm> cat /proc/sys/fs/inode-state > > >>>> 608039 178454 0 0 0 0 0 > > >>>> > > >>>> So it _is_ used: to present those five zeroes. I think this is > > >>>> for back-compatibility with some cretaceous-era kernel. > > >>> ah, gotcha. well, i'll leave this up to someone else to do > > >>> anything with if they are so inclined. > > >> There's little to be done, except possibly put a /* comment */ on > > >> the struct's dummy line so that we don't go thru this again in N > > >> years. > > > > > > so, just to clarify, what *is* the value of those trailing five > > > zeroes? andrew suggests it's to be backward-compatible with an old > > > kernel, which doesn't make much sense to me. it would make more sense > > > to say that that's backward-compatible with some old userspace app > > > that always wants to see seven values and just ignores the last five. > > > > Agreed, it's for compat with some (unknown) userspace app that reads > > /proc/sys/fs/inode-state and scans for 7 (or more than 2) numbers there. > > The mantra is "don't break userspace," so we leave the numbers there... > > Couldn't you remove the dummy member and just have the proc entry > print out 5 dummy zeros?
In theory someone could do that, but it would (a) require a comment so that someone else didn't try to remove it 5 years from now and (b) require more proc/sysctl code just for that one sysctl entry since the sysctl entries are all table-driven right now and printing 5 zeros would require a new /proc/sys handler for just this one sysctl. --- ~Randy *** Remember to use Documentation/SubmitChecklist when testing your code *** - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/