Annotation of 43BSDReno/sys/tahoestand/vdformat/exercise.c, revision 1.1

1.1     ! root        1: #ifndef lint
        !             2: static char sccsid[] = "@(#)exercise.c 1.3 (Berkeley/CCI) 11/23/87";
        !             3: #endif
        !             4: 
        !             5: #include       "vdfmt.h"
        !             6: 
        !             7: #define        verbose 1
        !             8: 
        !             9: /*
        !            10: **
        !            11: */
        !            12: 
        !            13: exercise()
        !            14: {
        !            15:        int             cyl, trk;
        !            16:        dskadr          ead, sad;
        !            17: 
        !            18:        print("Starting disk exercise on ");
        !            19:        printf("controller %d, drive %d, ", cur.controller, cur.drive);
        !            20:        printf("type %s.\n", lab->d_typename);
        !            21: 
        !            22:        if(read_bad_sector_map() == true) {
        !            23:                if(bad_map->bs_id != D_INFO->id) {
        !            24:                        print("Module serial numbers do not match!\n");
        !            25:                        print("Use `info' to find the real serial number.\n");
        !            26:                        _longjmp(abort_environ, 1);
        !            27:                }
        !            28:        }
        !            29:        else if(is_formatted() == false) {
        !            30:                print("Can not exercise unformatted drives!\n");
        !            31:                _longjmp(abort_environ, 1);
        !            32:        }
        !            33:        print("Starting read test.\n");
        !            34:        cur.state = exec;
        !            35:        sad.track = sad.sector = 0;
        !            36:        indent();
        !            37:        for(sad.cylinder=0; sad.cylinder<lab->d_ncylinders; sad.cylinder++) {
        !            38:                print("pass %d...\n", sad.cylinder);
        !            39:                for(cyl=0; cyl<lab->d_ncylinders-NUMSYS; cyl++){
        !            40:                        ead.cylinder = cyl;
        !            41:                        for(trk=0; trk<lab->d_ntracks; trk++) {
        !            42:                                ead.track = trk;
        !            43:                                ead.sector = 0;
        !            44:                                access_dsk((char *)scratch, &sad,
        !            45:                                    VDOP_SEEK, 1, 1);
        !            46:                                verify_track(&ead, 16, verbose);
        !            47:                                if(kill_processes == true)
        !            48:                                        goto exit;
        !            49:                        }
        !            50:                }
        !            51:        }
        !            52:        exdent(2);
        !            53: exit:  sync_bad_sector_map();
        !            54:        printf("Exercise completed successfully.\n");
        !            55: }
        !            56: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.