/* :set tabstop=4 tested: Indy IRIX 6.2, NFS server HPUX 9, autofs on Indy ftp:/pub on /hosts/ftp/pub type nfs (nosuid,nodev,vers=2,dev=180000) => PANIC Same Indy, xfs at NFS server Indigo 2, mounted with mount(1M) (vers=3,rw,nosuid,quota,soft,dev=140003) => works as supposed. Same Indy, xfs at NFS server Indigo 2, mounted with mount(1M) -o vers=2 (vers=2,rw,dev=180000) => PANIC Indigo 2, IRIX 6.2, xfs at NFS server Challenge L autofs: (nosuid,nodev,vers=2,dev=180007) => PANIC All of them have: Patch SG0002284: XFS rollup #9 for 6.2 Patch SG0002253: ONC3 6.2 AutoFS Rollup for BDS Patch SG0002187: 6.2 all platform kernel rollup Patch SG0002147: Automount command rollup for IRIX 6.2 Patch SG0002143: Mount command rollup for 6.2 Patch SG0002104: NFS rollup #8 for Irix 6.2 and others... Analysis: <0>PANIC: KERNEL FAULT PC: 0x8819e99c ep: 0xffffcc08 EXC code:128, `Software detected SEGV ' Bad addr: 0x0, cause: 0x8 sr: 0xff03 ... CPU 0 was in kernel mode running the command 'ustat-panic' Same systems, w/o those patches, doesn't panic: Patch SG0002042: NFS rollup #7 for Irix 6.2 Patch SG0001907: XFS rollup #8 for 6.2 Patch SG0001717: All platform kernel rollup patch Mi guess: Patch SG0002104 breaks nfs 2 Comercial software afected: Softimage 3.5 :-( */ /* * ustat-panic.c * Wed Oct 22 22:01:28 DST 1997 * spd@daphne.cps.unizar.es * * cc -o ustat-panic ustat-panic.c * Usage: ustat-panic * If resides on a remote NFS server, and you have the * right (?) patches; your host will PANIC * */ #include #include #include #include #include main (int argc, char **argv) { struct stat s; struct ustat ubuf; if ( -1 == ( stat(argv[1], &s))) { perror("stat"); exit(1); } if ( -1 == ustat( s.st_dev, &ubuf)) perror("ustat"); else { printf("%ld\t%s\n",ubuf.f_tfree, "Total free blocks"); printf("%d\t%s\n",ubuf.f_tinode, "Number of free inodes"); printf("%s\t%s\n",ubuf.f_fname,"Filsys name"); printf("%s\t%s\n",ubuf.f_fpack, "Filsys pack name"); } }