[OpenAFS] [REVIEW] Can haz Solaris 10 8/07 compatibility patch

Brian Sebby sebby@anl.gov
Wed, 3 Oct 2007 18:47:52 -0500


I wanted to note that we have discovered that Sun has now released patches
that will cause the same problems introduced in update 4 to occur in pre-u4
systems.  Specifically, the installation of the following patches.

Sparc:

120011-14: SunOS 5.10: kernel patch 
Prerequisites:
125547-02: SunOS 5.10: zoneadm indirect dependency patch
122660-10: SunOS 5.10: zones patch

x86:

120012-14: SunOS 5.10_x86: kernel patch

I don't know what the prerequisites are for x86; we're a Sparc-only shop.

I just wanted to send out a warning in case anyone hasn't updated their
u3 and earlier Solaris 10 systems.  Once we installed the module with
Dale's patch, the systems worked fine.


Brian

On Wed, Sep 26, 2007 at 07:35:44PM -0400, Dale Ghent wrote:
> 
> Here's a candidate patch for those of you running any version of  
> Solaris 10, or have hopes of running OpenAFS on Solaris 10 8/07  
> (update 4);
> 
> This patch removes use of the non-Public ILL structures by OpenAFS to  
> gather network interface information in order to make RX packet size  
> and server locality decisions. I replaced it with a Solaris taskq(9f)  
> that executes a function which polls the network interfaces on the  
> machine and populates a global array with collected information.  
> Network information consumers then walk this array to gain the info  
> they require. This polling function, by default, runs every 30 seconds.
> 
> I made a design change from previous versions in that I dispensed  
> with the while(1) loop for the polling mechanism. The osi_NetIfPoller  
> function now chains itself.
> 
> The interval between polls may be adjusted either by /etc/system or  
> in real time by the use of mdb:
> 
> Set afs interface poll interval to 15 seconds using /etc/system:
>     set afs:afs_if_poll_interval=15
> 
> Get current poll interval using mdb:
>     # echo afs_if_poll_interval/D | mdb -k
>     afs_if_poll_interval:
>     afs_if_poll_interval:           30
> 
> Set a new poll interval to 15 seconds (in hex):
>     # echo "afs_if_poll_interval/W 0f" | mdb -kw
>     afs_if_poll_interval:           0x1e            =       0xf
> 
> You may see if the poller is doing its job by watching the "executed"  
> line of the  afs_taskq kstat:
>     # kstat -n afs_taskq
>     module: unix                            instance: 0
>     name:   afs_taskq                       class:    taskq
>             crtime                          141.142208577
>             executed                        126
>             maxtasks                        1
>             nactive                         2
>             nalloc                          0
>             priority                        60
>             snaptime                        2286.25972396
>             tasks                           126
>             threads                         2
>             totaltime                       28790720
> 
> The following patch applies against OpenAFS 1.4.4. I urge that it be  
> tested on any version of Solaris that you may have at your disposal,  
> not just 10u4. Please discuss any issues on the -devel list.
> 
> http://elektronkind.org/outbox/afs/openafs-s10u4-compat.patch
> 
> /dale
> --
> Dale Ghent
> Specialist, Storage and UNIX Systems
> UMBC - Office of Information Technology
> ECS 201 - x51705
> 
> 
> 
> _______________________________________________
> OpenAFS-info mailing list
> OpenAFS-info@openafs.org
> https://lists.openafs.org/mailman/listinfo/openafs-info

-- 
Brian Sebby  (sebby@anl.gov)  |  Unix and Operation Services
Phone: +1 630.252.9935        |  Computing and Information Systems
Fax:   +1 630.252.4601        |  Argonne National Laboratory