[OpenAFS] Thinking about 1.6

Simon Wilkinson sxw@inf.ed.ac.uk
Wed, 16 Dec 2009 18:04:58 +0000


It's well past the time that we really should be getting a 1.6 release  
out of the door. Before then, we have a window in which we can kill  
off those things in 1.5.x that really shouldn't be supported into the  
future, and remove the configuration options for those things that are  
now so standard everyone should have them enabled. In doing so, we  
reduce the amount of stuff we should test before doing releases, and  
hopefully reduce the pain of configuring OpenAFS builds.

So, here's a rough list of things that I'd like to advocate doing.  
Comments welcome:

*) Remove the --disable-afsdb switch, and associated #ifdefs, so AFSDB  
comes as standard.
*) Remove the --disable-largefile-fileserver switch, and associated  
#ifdefs - all fileservers will be capable of serving large files,  
providing their underlying filesystem supports them
*) Remove the --enable-bos-restricted switch, and associated #ifdefs  
and make this behaviour the default - it's still controllable from the  
command line, and the
default case is safe.
*) Remove the --enable-supergroups switch, and enable supergroups by  
default. A number of sites have been running with supergroups enabled  
for years - making them optional just complicates configuration.  
Before doing this we need to ensure that a downgrade tool is available.
*) Remove the --enable-fast-restart switch, and default this code to  
off. The code will still be available for those sites which absolutely  
have to run it, but the interface to enable it will no longer be  
exposed.
*) Remove the --enable-bitmap-later switch, and default this code to  
off.
*) Remove --disable-full-vos-listvol switch, and associated #ifdefs
*) Remove the --enable-pthreaded-ubik switch, and default the code to  
off until it works (this would just be removed for the 'stable' series  
- the switch can stay for the master branch)
*) Disable syscall probing entirely on Linux where keyrings are  
available
*) Add --disable-kaserver to support building without kaserver or  
related binaries (this is in the no-more-DES timeline)
*) Remove --enable-disconnected switch, and default the code to on.  
This code has had a fair amount of testing, and there are currently no  
performance issues with having it enabled by default. However, there  
are still usability issues with the implementation.
*) Remove the --enable-icmp-pmtu-discovery switch, and default the  
code to on.
*) Make cache bypass a run time, rather than compile time option on  
Linux
*) Make Linux use the exportfs interface for cache files universally,  
rather than just when iget() is unavailable
*) Make demand attach the default, but provide --disable-demand-attach- 
fs to allow old-style fileservers to still be built

Comments?

Simon.