BOOK.PS
上传用户:jnzhq888
上传日期:2007-01-18
资源大小:51694k
文件大小:2328k
- (I_PIPE))294 2412 A
- (return(ESPIPE);)630 2748 A
- 4410 V
- (23379)210 648 A
- 4500 V
- (23380)210 648 A
- 1110(/*)S
- (The)126 1236 A
- (value)210 1404 A
- 1656(of)S
- ('whence')336 1782 A
- (determines)420 2160 A
- (the)126 2622 A
- (start)210 2790 A
- (position)336 3042 A
- 3420(to)S
- (use.)168 3546 A
- 3756(*/)S
- 4590 V
- (23381)210 648 A
- (switch(whence))588 1110 A
- 1740({)S
- 4680 V
- (23382)210 648 A
- (case)168 1362 A
- 1572(0:)S
- (pos)126 1698 A
- 1866(=)S
- 1950(0;)S
- (break;)252 2370 A
- 4770 V
- (23383)210 648 A
- (case)168 1362 A
- 1572(1:)S
- (pos)126 1698 A
- 1866(=)S
- (rfilp->filp_pos;)672 1950 A
- (break;)252 2706 A
- 4860 V
- (23384)210 648 A
- (case)168 1362 A
- 1572(2:)S
- (pos)126 1698 A
- 1866(=)S
- (rfilp->filp_ino->i_size;)1008 1950 A
- (break;)252 3042 A
- 4950 V
- (23385)210 648 A
- (default:)336 1362 A
- (return(EINVAL);)630 1740 A
- 5040 V
- (23386)210 648 A
- 1110(})S
- 5130 V
- (23387)210 648 A
- 5220 V
- (23388)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- (for)126 1488 A
- (overflow.)378 1656 A
- 2076(*/)S
- 5310 V
- (23389)210 648 A
- 1110(if)S
- ((((long)offset)588 1236 A
- 1866(>)S
- 1950(0))S
- 2076(&&)S
- (((long)(pos)462 2202 A
- 2706(+)S
- (offset))294 2790 A
- 3126(<)S
- ((long)pos)))462 3210 A
- (return(EINVAL);)630 3714 A
- 5400 V
- (23390)210 648 A
- 1110(if)S
- ((((long)offset)588 1236 A
- 1866(<)S
- 1950(0))S
- 2076(&&)S
- (((long)(pos)462 2202 A
- 2706(+)S
- (offset))294 2790 A
- 3126(>)S
- ((long)pos)))462 3210 A
- (return(EINVAL);)630 3714 A
- 5490 V
- (23391)210 648 A
- (pos)126 1110 A
- 1278(=)S
- (pos)126 1362 A
- 1530(+)S
- (offset;)294 1614 A
- 5580 V
- (23392)210 648 A
- 5670 V
- (23393)210 648 A
- 1110(if)S
- ((pos)168 1236 A
- 1446(!=)S
- (rfilp->filp_pos))672 1572 A
- 5760 V
- (23394)210 648 A
- (rfilp->filp_ino->i_seek)966 1362 A
- 2370(=)S
- (ISEEK;)252 2454 A
- 3042(/*)S
- (inhibit)294 3168 A
- (read)168 3504 A
- (ahead)210 3714 A
- 3966(*/)S
- 5850 V
- (23395)210 648 A
- (rfilp->filp_pos)630 1110 A
- 1782(=)S
- (pos;)168 1866 A
- 5940 V
- (23396)210 648 A
- (reply_l1)336 1110 A
- 1488(=)S
- (pos;)168 1572 A
- 2370(/*)S
- (insert)252 2496 A
- (the)126 2790 A
- (long)168 2958 A
- (into)168 3168 A
- (the)126 3378 A
- (output)252 3546 A
- (message)294 3840 A
- 4176(*/)S
- 6030 V
- (23397)210 648 A
- (return(OK);)462 1110 A
- 6120 V
- (23398)210 648 A
- 1026(})S
- 8418 V
- EP
- %%Page: 321 321
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 12 B
- (321)180 4248 A
- 990 V
- 7 LST
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1080 V
- (src/fs/read.c)546 2034 A
- 1170 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1350 V
- (23400)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (the)126 1950 A
- (heart)210 2118 A
- 2370(of)S
- (the)126 2496 A
- (mechanism)378 2664 A
- (used)168 3084 A
- 3294(to)S
- (read)168 3420 A
- ((and)168 3630 A
- (write))252 3840 A
- 1440 V
- (23401)210 648 A
- 1068(*)S
- (files.)252 1152 A
- (Read)168 1488 A
- (and)126 1698 A
- (write)210 1866 A
- (requests)336 2118 A
- (are)126 2496 A
- (split)210 2664 A
- 2916(up)S
- (into)168 3042 A
- (chunks)252 3252 A
- (that)168 3546 A
- 3756(do)S
- (not)126 3882 A
- (cross)210 4050 A
- 1530 V
- (23402)210 648 A
- 1068(*)S
- (block)210 1152 A
- (boundaries.)462 1404 A
- (Each)168 1950 A
- (chunk)210 2160 A
- 2412(is)S
- (then)168 2538 A
- (processed)378 2748 A
- 3168(in)S
- (turn.)210 3294 A
- (Reads)210 3588 A
- 3840(on)S
- (special)294 3966 A
- 1620 V
- (23403)210 648 A
- 1068(*)S
- (files)210 1152 A
- (are)126 1404 A
- (also)168 1572 A
- (detected)336 1782 A
- (and)126 2160 A
- (handled.)336 2328 A
- 1710 V
- (23404)210 648 A
- 1068(*)S
- 1800 V
- (23405)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entry)210 1320 A
- (points)252 1572 A
- (into)168 1866 A
- (this)168 2076 A
- (file)168 2286 A
- (are)126 2496 A
- 1890 V
- (23406)210 648 A
- 1068(*)S
- (do_read:)336 1236 A
- (perform)294 1740 A
- (the)126 2076 A
- (READ)168 2244 A
- (system)252 2454 A
- (call)168 2748 A
- 2958(by)S
- (calling)294 3084 A
- (read_write)420 3420 A
- 1980 V
- (23407)210 648 A
- 1068(*)S
- (read_write:)462 1236 A
- (actually)336 1740 A
- 2118(do)S
- (the)126 2244 A
- (work)168 2412 A
- 2622(of)S
- (READ)168 2748 A
- (and)126 2958 A
- (WRITE)210 3126 A
- 2070 V
- (23408)210 648 A
- 1068(*)S
- (read_map:)378 1236 A
- (given)210 1740 A
- 1992(an)S
- (inode)210 2118 A
- (and)126 2370 A
- (file)168 2538 A
- (position,)378 2748 A
- (look)168 3168 A
- 3378(up)S
- (its)126 3504 A
- (zone)168 3672 A
- (number)252 3882 A
- 2160 V
- (23409)210 648 A
- 1068(*)S
- (rd_indir:)378 1236 A
- (read)168 1740 A
- 1950(an)S
- (entry)210 2076 A
- 2328(in)S
- 2454(an)S
- (indirect)336 2580 A
- (block)210 2958 A
- 2250 V
- (23410)210 648 A
- 1068(*)S
- (read_ahead:)462 1236 A
- (manage)252 1740 A
- (the)126 2034 A
- (block)210 2202 A
- (read)168 2454 A
- (ahead)210 2664 A
- (business)336 2916 A
- 2340 V
- (23411)210 648 A
- 1068(*/)S
- 2430 V
- (23412)210 648 A
- 2520 V
- (23413)210 648 A
- (#include)336 1026 A
- ("fs.h")252 1404 A
- 2610 V
- (23414)210 648 A
- (#include)336 1026 A
- (<fcntl.h>)378 1404 A
- 2700 V
- (23415)210 648 A
- (#include)336 1026 A
- (<minix/com.h>)546 1404 A
- 2790 V
- (23416)210 648 A
- (#include)336 1026 A
- ("buf.h")294 1404 A
- 2880 V
- (23417)210 648 A
- (#include)336 1026 A
- ("file.h")336 1404 A
- 2970 V
- (23418)210 648 A
- (#include)336 1026 A
- ("fproc.h")378 1404 A
- 3060 V
- (23419)210 648 A
- (#include)336 1026 A
- ("inode.h")378 1404 A
- 3150 V
- (23420)210 648 A
- (#include)336 1026 A
- ("param.h")378 1404 A
- 3240 V
- (23421)210 648 A
- (#include)336 1026 A
- ("super.h")378 1404 A
- 3330 V
- (23422)210 648 A
- 3420 V
- (23423)210 648 A
- (#define)294 1026 A
- (FD_MASK)294 1362 A
- (077)126 2076 A
- 2370(/*)S
- (max)126 2496 A
- (file)168 2664 A
- (descriptor)420 2874 A
- 3336(is)S
- 3462(63)S
- 3588(*/)S
- 3510 V
- (23424)210 648 A
- 3600 V
- (23425)210 648 A
- (PRIVATE)294 1026 A
- (message)294 1362 A
- (umess;)252 1698 A
- 2370(/*)S
- (message)294 2496 A
- (for)126 2832 A
- (asking)252 3000 A
- (SYSTASK)294 3294 A
- (for)126 3630 A
- (user)168 3798 A
- (copy)168 4008 A
- 4218(*/)S
- 3690 V
- (23426)210 648 A
- 3780 V
- (23427)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (rw_chunk,)378 2034 A
- ((struct)294 2454 A
- (inode)210 2790 A
- (*rip,)210 3042 A
- (off_t)210 3294 A
- (position,)378 3546 A
- 3870 V
- (23428)210 648 A
- (unsigned)336 2034 A
- (off,)168 2412 A
- (int)126 2622 A
- (chunk,)252 2790 A
- (unsigned)336 3084 A
- (left,)210 3462 A
- (int)126 3714 A
- (rw_flag,)336 3882 A
- 3960 V
- (23429)210 648 A
- (char)168 2034 A
- (*buff,)252 2244 A
- (int)126 2538 A
- (seg,)168 2706 A
- (int)126 2916 A
- (usr))168 3084 A
- 4050();)S
- 4050 V
- (23430)210 648 A
- 4140 V
- (23431)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4230 V
- (23432)210 648 A
- 1068(*)S
- (do_read)294 2370 A
- 4260(*)S
- 4320 V
- (23433)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4410 V
- (23434)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_read())378 1488 A
- 4500 V
- (23435)210 648 A
- 1026({)S
- 4590 V
- (23436)210 648 A
- (return(read_write(READING));)1176 1110 A
- 4680 V
- (23437)210 648 A
- 1026(})S
- 4950 V
- (23440)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5040 V
- (23441)210 648 A
- 1068(*)S
- (read_write)420 2370 A
- 4260(*)S
- 5130 V
- (23442)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5220 V
- (23443)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (read_write(rw_flag))798 1488 A
- 5310 V
- (23444)210 648 A
- (int)126 1026 A
- (rw_flag;)336 1194 A
- 2370(/*)S
- (READING)294 2496 A
- 2832(or)S
- (WRITING)294 2958 A
- 3294(*/)S
- 5400 V
- (23445)210 648 A
- 1026({)S
- 5490 V
- (23446)210 648 A
- 1026(/*)S
- (Perform)294 1152 A
- (read(fd,)336 1488 A
- (buffer,)294 1866 A
- (nbytes))294 2202 A
- 2538(or)S
- (write(fd,)378 2664 A
- (buffer,)294 3084 A
- (nbytes))294 3420 A
- (call.)210 3756 A
- 4008(*/)S
- 5580 V
- (23447)210 648 A
- 5670 V
- (23448)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (inode)210 1782 A
- (*rip;)210 2034 A
- 5760 V
- (23449)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (filp)168 1782 A
- (*f;)126 1992 A
- 5850 V
- (23450)210 648 A
- (off_t)210 1110 A
- (bytes_left,)462 1362 A
- (f_size,)294 1866 A
- (position;)378 2202 A
- 5940 V
- (23451)210 648 A
- (unsigned)336 1110 A
- (int)126 1488 A
- (off,)168 1656 A
- (cum_io;)294 1866 A
- 6030 V
- (23452)210 648 A
- (int)126 1110 A
- (op,)126 1278 A
- (oflags,)294 1446 A
- 1782(r,)S
- (chunk,)252 1908 A
- (usr,)168 2202 A
- (seg,)168 2412 A
- (block_spec,)462 2622 A
- (char_spec;)420 3126 A
- 6120 V
- (23453)210 648 A
- (int)126 1110 A
- (regular,)336 1278 A
- (partial_pipe)504 1656 A
- 2202(=)S
- 2286(0,)S
- (partial_cnt)462 2412 A
- 2916(=)S
- 3000(0;)S
- 6210 V
- (23454)210 648 A
- (dev_t)210 1110 A
- (dev;)168 1362 A
- 8418 V
- EP
- %%Page: 322 322
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (322)180 648 A
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (23455)210 648 A
- (mode_t)252 1110 A
- (mode_word;)420 1404 A
- 990 V
- (23456)210 648 A
- (struct)252 1110 A
- (filp)168 1404 A
- (*wf;)168 1614 A
- 1080 V
- (23457)210 648 A
- 1170 V
- (23458)210 648 A
- 1110(/*)S
- 1236(MM)S
- (loads)210 1362 A
- (segments)336 1614 A
- 1992(by)S
- (putting)294 2118 A
- (funny)210 2454 A
- (things)252 2706 A
- 3000(in)S
- (upper)210 3126 A
- 3378(10)S
- (bits)168 3504 A
- 3714(of)S
- ('fd'.)210 3840 A
- 4092(*/)S
- 1260 V
- (23459)210 648 A
- 1110(if)S
- ((who)168 1236 A
- 1446(==)S
- (MM_PROC_NR)420 1572 A
- 2034(&&)S
- ((fd)126 2160 A
- 2328(&)S
- ((304BYTE)))336 2412 A
- 2790())S
- 2874({)S
- 1350 V
- (23460)210 648 A
- (usr)126 1362 A
- 1530(=)S
- ((fd)126 1614 A
- 1782(>>)S
- 1908(8))S
- 2034(&)S
- (BYTE;)210 2118 A
- 1440 V
- (23461)210 648 A
- (seg)126 1362 A
- 1530(=)S
- ((fd)126 1614 A
- 1782(>>)S
- 1908(6))S
- 2034(&)S
- (03;)126 2118 A
- 1530 V
- (23462)210 648 A
- 1362(fd)S
- 1488(&=)S
- (FD_MASK;)336 1614 A
- 2370(/*)S
- (get)126 2496 A
- (rid)126 2664 A
- 2832(of)S
- (user)168 2958 A
- (and)126 3168 A
- (segment)294 3336 A
- (bits)168 3672 A
- 3882(*/)S
- 1620 V
- (23463)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 1710 V
- (23464)210 648 A
- (usr)126 1362 A
- 1530(=)S
- (who;)168 1614 A
- 2370(/*)S
- (normal)252 2496 A
- (case)168 2790 A
- 3000(*/)S
- 1800 V
- (23465)210 648 A
- (seg)126 1362 A
- 1530(=)S
- 1614(D;)S
- 1890 V
- (23466)210 648 A
- 1110(})S
- 1980 V
- (23467)210 648 A
- 2070 V
- (23468)210 648 A
- 1110(/*)S
- 1236(If)S
- (the)126 1362 A
- (file)168 1530 A
- (descriptor)420 1740 A
- 2202(is)S
- (valid,)252 2328 A
- (get)126 2622 A
- (the)126 2790 A
- (inode,)252 2958 A
- (size)168 3252 A
- (and)126 3462 A
- (mode.)210 3630 A
- 3882(*/)S
- 2160 V
- (23469)210 648 A
- 1110(if)S
- ((nbytes)294 1236 A
- 1572(<)S
- 1656(0))S
- (return(EINVAL);)630 1782 A
- 2250 V
- (23470)210 648 A
- 1110(if)S
- (((f)126 1236 A
- 1404(=)S
- (get_filp(fd)))546 1488 A
- 2076(==)S
- (NIL_FILP))378 2202 A
- (return(err_code);)714 2622 A
- 2340 V
- (23471)210 648 A
- 1110(if)S
- ((((f->filp_mode))672 1236 A
- 1950(&)S
- ((rw_flag)336 2034 A
- 2412(==)S
- (READING)294 2538 A
- 2874(?)S
- (R_BIT)210 2958 A
- 3210(:)S
- (W_BIT)))294 3294 A
- 3630(==)S
- 3756(0))S
- 3882({)S
- 2430 V
- (23472)210 648 A
- (return(f->filp_mode)798 1362 A
- 2202(==)S
- (FILP_CLOSED)462 2328 A
- 2832(?)S
- (EIO)126 2916 A
- 3084(:)S
- (EBADF);)294 3168 A
- 2520 V
- (23473)210 648 A
- 1110(})S
- 2610 V
- (23474)210 648 A
- 1110(if)S
- ((nbytes)294 1236 A
- 1572(==)S
- 1698(0))S
- (return(0);)420 1824 A
- 2370(/*)S
- 2496(so)S
- (char)168 2622 A
- (special)294 2832 A
- (files)210 3168 A
- (need)168 3420 A
- (not)126 3630 A
- (check)210 3798 A
- (for)126 4050 A
- (0*/)126 4218 A
- 2700 V
- (23475)210 648 A
- (position)336 1110 A
- 1488(=)S
- (f->filp_pos;)504 1572 A
- 2790 V
- (23476)210 648 A
- 1110(if)S
- ((position)378 1236 A
- 1656(>)S
- (MAX_FILE_POS))546 1740 A
- (return(EINVAL);)630 2328 A
- 2880 V
- (23477)210 648 A
- 1110(if)S
- ((position)378 1236 A
- 1656(+)S
- (nbytes)252 1740 A
- 2034(<)S
- (position))378 2118 A
- (return(EINVAL);)630 2538 A
- 3210(/*)S
- (unsigned)336 3336 A
- (overflow)336 3714 A
- 4092(*/)S
- 2970 V
- (23478)210 648 A
- (oflags)252 1110 A
- 1404(=)S
- (f->filp_flags;)588 1488 A
- 3060 V
- (23479)210 648 A
- (rip)126 1110 A
- 1278(=)S
- (f->filp_ino;)504 1362 A
- 3150 V
- (23480)210 648 A
- (f_size)252 1110 A
- 1404(=)S
- (rip->i_size;)504 1488 A
- 3240 V
- (23481)210 648 A
- 1110(r)S
- 1194(=)S
- (OK;)126 1278 A
- 3330 V
- (23482)210 648 A
- 1110(if)S
- ((rip->i_pipe)504 1236 A
- 1782(==)S
- (I_PIPE))294 1908 A
- 2244({)S
- 3420 V
- (23483)210 648 A
- 1362(/*)S
- (fp->fp_cum_io_partial)882 1488 A
- 2412(is)S
- (only)168 2538 A
- (nonzero)294 2748 A
- (when)168 3084 A
- (doing)210 3294 A
- (partial)294 3546 A
- (writes)252 3882 A
- 4176(*/)S
- 3510 V
- (23484)210 648 A
- (cum_io)252 1362 A
- 1656(=)S
- (fp->fp_cum_io_partial;)924 1740 A
- 3600 V
- (23485)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 3690 V
- (23486)210 648 A
- (cum_io)252 1362 A
- 1656(=)S
- 1740(0;)S
- 3780 V
- (23487)210 648 A
- 1110(})S
- 3870 V
- (23488)210 648 A
- 1110(op)S
- 1236(=)S
- ((rw_flag)336 1320 A
- 1698(==)S
- (READING)294 1824 A
- 2160(?)S
- (DEV_READ)336 2244 A
- 2622(:)S
- (DEV_WRITE);)462 2706 A
- 3960 V
- (23489)210 648 A
- (mode_word)378 1110 A
- 1530(=)S
- (rip->i_mode)462 1614 A
- 2118(&)S
- (I_TYPE;)294 2202 A
- 4050 V
- (23490)210 648 A
- (regular)294 1110 A
- 1446(=)S
- (mode_word)378 1530 A
- 1950(==)S
- (I_REGULAR)378 2076 A
- 2496(||)S
- (mode_word)378 2622 A
- 3042(==)S
- (I_NAMED_PIPE;)546 3168 A
- 4140 V
- (23491)210 648 A
- 4230 V
- (23492)210 648 A
- (char_spec)378 1110 A
- 1530(=)S
- ((mode_word)420 1614 A
- 2076(==)S
- (I_CHAR_SPECIAL)588 2202 A
- 2832(?)S
- 2916(1)S
- 3000(:)S
- (0);)126 3084 A
- 4320 V
- (23493)210 648 A
- (block_spec)420 1110 A
- 1572(=)S
- ((mode_word)420 1656 A
- 2118(==)S
- (I_BLOCK_SPECIAL)630 2244 A
- 2916(?)S
- 3000(1)S
- 3084(:)S
- (0);)126 3168 A
- 4410 V
- (23494)210 648 A
- 1110(if)S
- ((block_spec))504 1236 A
- (f_size)252 1782 A
- 2076(=)S
- (LONG_MAX;)378 2160 A
- 4500 V
- (23495)210 648 A
- (rdwt_err)336 1110 A
- 1488(=)S
- (OK;)126 1572 A
- 2370(/*)S
- (set)126 2496 A
- 2664(to)S
- (EIO)126 2790 A
- 2958(if)S
- (disk)168 3084 A
- (error)210 3294 A
- (occurs)252 3546 A
- 3840(*/)S
- 4590 V
- (23496)210 648 A
- 4680 V
- (23497)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- (for)126 1488 A
- (character)378 1656 A
- (special)294 2076 A
- (files.)252 2412 A
- 2706(*/)S
- 4770 V
- (23498)210 648 A
- 1110(if)S
- ((char_spec))462 1236 A
- 1740({)S
- 4860 V
- (23499)210 648 A
- (dev)126 1362 A
- 1530(=)S
- ((dev_t))294 1614 A
- (rip->i_zone[0];)630 1950 A
- 4950 V
- (23500)210 648 A
- 1362(r)S
- 1446(=)S
- (dev_io(op,)420 1530 A
- (oflags)252 1992 A
- 2286(&)S
- (O_NONBLOCK,)462 2370 A
- (dev,)168 2874 A
- (position,)378 3084 A
- (nbytes,)294 3504 A
- (who,buffer);)504 3840 A
- 5040 V
- (23501)210 648 A
- 1362(if)S
- 1488((r)S
- 1614(>=)S
- 1740(0))S
- 1866({)S
- 5130 V
- (23502)210 648 A
- (cum_io)252 1698 A
- 1992(=)S
- 2076(r;)S
- 5220 V
- (23503)210 648 A
- (position)336 1698 A
- 2076(+=)S
- 2202(r;)S
- 5310 V
- (23504)210 648 A
- 1698(r)S
- 1782(=)S
- (OK;)126 1866 A
- 5400 V
- (23505)210 648 A
- 1362(})S
- 5490 V
- (23506)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 5580 V
- (23507)210 648 A
- 1362(if)S
- ((rw_flag)336 1488 A
- 1866(==)S
- (WRITING)294 1992 A
- 2328(&&)S
- (block_spec)420 2454 A
- 2916(==)S
- 3042(0))S
- 3168({)S
- 5670 V
- (23508)210 648 A
- 1698(/*)S
- (Check)210 1824 A
- 2076(in)S
- (advance)294 2202 A
- 2538(to)S
- (see)126 2664 A
- 2832(if)S
- (file)168 2958 A
- (will)168 3168 A
- (grow)168 3378 A
- (too)126 3588 A
- (big.)168 3756 A
- 3966(*/)S
- 5760 V
- (23509)210 648 A
- 1698(if)S
- ((position)378 1824 A
- 2244(>)S
- (rip->i_sp->s_max_size)882 2328 A
- 3252(-)S
- (nbytes))294 3336 A
- (return(EFBIG);)588 3672 A
- 5850 V
- (23510)210 648 A
- 5940 V
- (23511)210 648 A
- 1698(/*)S
- (Check)210 1824 A
- (for)126 2076 A
- (O_APPEND)336 2244 A
- (flag.)210 2622 A
- 2874(*/)S
- 6030 V
- (23512)210 648 A
- 1698(if)S
- ((oflags)294 1824 A
- 2160(&)S
- (O_APPEND))378 2244 A
- (position)336 2664 A
- 3042(=)S
- (f_size;)294 3126 A
- 6120 V
- (23513)210 648 A
- 6210 V
- (23514)210 648 A
- 1698(/*)S
- (Clear)210 1824 A
- (the)126 2076 A
- (zone)168 2244 A
- (containing)420 2454 A
- (present)294 2916 A
- (EOF)126 3252 A
- 3420(if)S
- (hole)168 3546 A
- (about)210 3756 A
- 8418 V
- EP
- %%Page: 323 323
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 12 B
- (323)180 4248 A
- 900 V
- 7 LST
- (23515)210 648 A
- 1740(*)S
- 1824(to)S
- 1950(be)S
- (created.)336 2076 A
- (This)168 2496 A
- 2706(is)S
- (necessary)378 2832 A
- (because)294 3252 A
- (all)126 3588 A
- (unwritten)378 3756 A
- 990 V
- (23516)210 648 A
- 1740(*)S
- (blocks)252 1824 A
- (prior)210 2118 A
- 2370(to)S
- (the)126 2496 A
- (EOF)126 2664 A
- (must)168 2832 A
- (read)168 3042 A
- 3252(as)S
- (zeros.)252 3378 A
- 1080 V
- (23517)210 648 A
- 1740(*/)S
- 1170 V
- (23518)210 648 A
- 1698(if)S
- ((position)378 1824 A
- 2244(>)S
- (f_size))294 2328 A
- (clear_zone(rip,)630 2664 A
- (f_size,)294 3336 A
- (0);)126 3672 A
- 1260 V
- (23519)210 648 A
- 1362(})S
- 1350 V
- (23520)210 648 A
- 1440 V
- (23521)210 648 A
- 1362(/*)S
- (Pipes)210 1488 A
- (are)126 1740 A
- 1908(a)S
- (little)252 1992 A
- (different.)420 2286 A
- (Check.)252 2790 A
- 3084(*/)S
- 1530 V
- (23522)210 648 A
- 1362(if)S
- ((rip->i_pipe)504 1488 A
- 2034(==)S
- (I_PIPE))294 2160 A
- 2496({)S
- 1620 V
- (23523)210 648 A
- 1656(r)S
- 1740(=)S
- (pipe_check(rip,rw_flag,oflags,nbytes,position,&partial_cnt);)2520 1824 A
- 1710 V
- (23524)210 648 A
- 1656(if)S
- 1782((r)S
- 1908(<=)S
- 2034(0))S
- (return(r);)420 2160 A
- 1800 V
- (23525)210 648 A
- 1362(})S
- 1890 V
- (23526)210 648 A
- 1980 V
- (23527)210 648 A
- 1362(if)S
- ((partial_cnt)504 1488 A
- 2034(>)S
- 2118(0))S
- (partial_pipe)504 2244 A
- 2790(=)S
- 2874(1;)S
- 2070 V
- (23528)210 648 A
- 2160 V
- (23529)210 648 A
- 1362(/*)S
- (Split)210 1488 A
- (the)126 1740 A
- (transfer)336 1908 A
- (into)168 2286 A
- (chunks)252 2496 A
- (that)168 2790 A
- (don't)210 3000 A
- (span)168 3252 A
- (two)126 3462 A
- (blocks.)294 3630 A
- 3966(*/)S
- 2250 V
- (23530)210 648 A
- (while)210 1362 A
- ((nbytes)294 1614 A
- 1950(!=)S
- 2076(0))S
- 2202({)S
- 2340 V
- (23531)210 648 A
- (off)126 1698 A
- 1866(=)S
- ((unsigned)378 1950 A
- (int))168 2370 A
- ((position)378 2580 A
- 3000(%)S
- (BLOCK_SIZE);/*)588 3084 A
- (offset)252 3714 A
- 4008(in)S
- (blk*/)210 4134 A
- 2430 V
- (23532)210 648 A
- 1698(if)S
- ((partial_pipe))588 1824 A
- 2454({)S
- 2580(/*)S
- (pipes)210 2706 A
- (only)168 2958 A
- 3168(*/)S
- 2520 V
- (23533)210 648 A
- (chunk)210 2034 A
- 2286(=)S
- (MIN(partial_cnt,)672 2370 A
- (BLOCK_SIZE)420 3084 A
- 3546(-)S
- (off);)210 3630 A
- 2610 V
- (23534)210 648 A
- 1698(})S
- (else)168 1782 A
- 2700 V
- (23535)210 648 A
- (chunk)210 2034 A
- 2286(=)S
- (MIN(nbytes,)462 2370 A
- (BLOCK_SIZE)420 2874 A
- 3336(-)S
- (off);)210 3420 A
- 2790 V
- (23536)210 648 A
- 1698(if)S
- ((chunk)252 1824 A
- 2118(<)S
- 2202(0))S
- (chunk)210 2328 A
- 2580(=)S
- (BLOCK_SIZE)420 2664 A
- 3126(-)S
- (off;)168 3210 A
- 2880 V
- (23537)210 648 A
- 2970 V
- (23538)210 648 A
- 1698(if)S
- ((rw_flag)336 1824 A
- 2202(==)S
- (READING))336 2328 A
- 2706({)S
- 3060 V
- (23539)210 648 A
- (bytes_left)420 2034 A
- 2496(=)S
- (f_size)252 2580 A
- 2874(-)S
- (position;)378 2958 A
- 3150 V
- (23540)210 648 A
- 2034(if)S
- ((position)378 2160 A
- 2580(>=)S
- (f_size))294 2706 A
- (break;)252 3042 A
- 3378(/*)S
- 3504(we)S
- (are)126 3630 A
- (beyond)252 3798 A
- (EOF)126 4092 A
- 4260(*/)S
- 3240 V
- (23541)210 648 A
- 2034(if)S
- ((chunk)252 2160 A
- 2454(>)S
- (bytes_left))462 2538 A
- (chunk)210 3042 A
- 3294(=)S
- ((int))210 3378 A
- (bytes_left;)462 3630 A
- 3330 V
- (23542)210 648 A
- 1698(})S
- 3420 V
- (23543)210 648 A
- 3510 V
- (23544)210 648 A
- 1698(/*)S
- (Read)168 1824 A
- 2034(or)S
- (write)210 2160 A
- ('chunk')294 2412 A
- (bytes.)252 2748 A
- 3042(*/)S
- 3600 V
- (23545)210 648 A
- 1698(r)S
- 1782(=)S
- (rw_chunk(rip,)546 1866 A
- (position,)378 2454 A
- (off,)168 2874 A
- (chunk,)252 3084 A
- ((unsigned))420 3378 A
- (nbytes,)294 3840 A
- 3690 V
- (23546)210 648 A
- (rw_flag,)336 2244 A
- (buffer,)294 2622 A
- (seg,)168 2958 A
- (usr);)210 3168 A
- 3780 V
- (23547)210 648 A
- 1698(if)S
- 1824((r)S
- 1950(!=)S
- (OK))126 2076 A
- (break;)252 2244 A
- 2706(/*)S
- (EOF)126 2832 A
- (reached)294 3000 A
- 3336(*/)S
- 3870 V
- (23548)210 648 A
- 1698(if)S
- ((rdwt_err)378 1824 A
- 2244(<)S
- 2328(0))S
- (break;)252 2454 A
- 3960 V
- (23549)210 648 A
- 4050 V
- (23550)210 648 A
- 1698(/*)S
- (Update)252 1824 A
- (counters)336 2118 A
- (and)126 2496 A
- (pointers.)378 2664 A
- 3084(*/)S
- 4140 V
- (23551)210 648 A
- (buffer)252 1698 A
- 1992(+=)S
- (chunk;)252 2118 A
- 2706(/*)S
- (user)168 2832 A
- (buffer)252 3042 A
- (address)294 3336 A
- 3672(*/)S
- 4230 V
- (23552)210 648 A
- (nbytes)252 1698 A
- 1992(-=)S
- (chunk;)252 2118 A
- 2706(/*)S
- (bytes)210 2832 A
- (yet)126 3084 A
- 3252(to)S
- 3378(be)S
- (read)168 3504 A
- 3714(*/)S
- 4320 V
- (23553)210 648 A
- (cum_io)252 1698 A
- 1992(+=)S
- (chunk;)252 2118 A
- 2706(/*)S
- (bytes)210 2832 A
- (read)168 3084 A
- 3294(so)S
- (far)126 3420 A
- 3588(*/)S
- 4410 V
- (23554)210 648 A
- (position)336 1698 A
- 2076(+=)S
- (chunk;)252 2202 A
- 2706(/*)S
- (position)336 2832 A
- (within)252 3210 A
- (the)126 3504 A
- (file)168 3672 A
- 3882(*/)S
- 4500 V
- (23555)210 648 A
- 4590 V
- (23556)210 648 A
- 1698(if)S
- ((partial_pipe))588 1824 A
- 2454({)S
- 4680 V
- (23557)210 648 A
- (partial_cnt)462 2034 A
- 2538(-=)S
- (chunk;)252 2664 A
- 4770 V
- (23558)210 648 A
- 2034(if)S
- ((partial_cnt)504 2160 A
- 2706(<=)S
- 2832(0))S
- (break;)252 3000 A
- 4860 V
- (23559)210 648 A
- 1698(})S
- 4950 V
- (23560)210 648 A
- 1362(})S
- 5040 V
- (23561)210 648 A
- 1110(})S
- 5130 V
- (23562)210 648 A
- 5220 V
- (23563)210 648 A
- 1110(/*)S
- 1236(On)S
- (write,)252 1362 A
- (update)252 1656 A
- (file)168 1950 A
- (size)168 2160 A
- (and)126 2370 A
- (access)252 2538 A
- (time.)210 2832 A
- 3084(*/)S
- 5310 V
- (23564)210 648 A
- 1110(if)S
- ((rw_flag)336 1236 A
- 1614(==)S
- (WRITING))336 1740 A
- 2118({)S
- 5400 V
- (23565)210 648 A
- 1362(if)S
- ((regular)336 1488 A
- 1866(||)S
- (mode_word)378 1992 A
- 2412(==)S
- (I_DIRECTORY))504 2538 A
- 3084({)S
- 5490 V
- (23566)210 648 A
- 1698(if)S
- ((position)378 1824 A
- 2244(>)S
- (f_size))294 2328 A
- (rip->i_size)462 2664 A
- 3168(=)S
- (position;)378 3252 A
- 5580 V
- (23567)210 648 A
- 1362(})S
- 5670 V
- (23568)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 5760 V
- (23569)210 648 A
- 1362(if)S
- ((rip->i_pipe)504 1488 A
- 2034(==)S
- (I_PIPE)252 2160 A
- 2454(&&)S
- (position)336 2580 A
- 2958(>=)S
- (rip->i_size))504 3084 A
- 3630({)S
- 5850 V
- (23570)210 648 A
- 1698(/*)S
- (Reset)210 1824 A
- (pipe)168 2076 A
- (pointers.)378 2286 A
- 2706(*/)S
- 5940 V
- (23571)210 648 A
- (rip->i_size)462 1698 A
- 2202(=)S
- 2286(0;)S
- 2706(/*)S
- 2832(no)S
- (data)168 2958 A
- (left)168 3168 A
- 3378(*/)S
- 6030 V
- (23572)210 648 A
- (position)336 1698 A
- 2076(=)S
- 2160(0;)S
- 2706(/*)S
- (reset)210 2832 A
- (reader(s))378 3084 A
- 3504(*/)S
- 6120 V
- (23573)210 648 A
- 1698(if)S
- 1824(()S
- ((wf)126 1908 A
- 2076(=)S
- (find_filp(rip,)588 2160 A
- (W_BIT)))294 2790 A
- 3126(!=)S
- (NIL_FILP))378 3252 A
- (wf->filp_pos)504 3672 A
- (=0;)126 4218 A
- 6210 V
- (23574)210 648 A
- 1362(})S
- 8418 V
- EP
- %%Page: 324 324
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (324)180 648 A
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (23575)210 648 A
- 1110(})S
- 990 V
- (23576)210 648 A
- (f->filp_pos)462 1110 A
- 1614(=)S
- (position;)378 1698 A
- 1080 V
- (23577)210 648 A
- 1170 V
- (23578)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- 1488(to)S
- (see)126 1614 A
- 1782(if)S
- (read-ahead)420 1908 A
- 2370(is)S
- (called)252 2496 A
- (for,)168 2790 A
- (and)126 3000 A
- 3168(if)S
- (so,)126 3294 A
- (set)126 3462 A
- 3630(it)S
- (up.)126 3756 A
- 3924(*/)S
- 1260 V
- (23579)210 648 A
- 1110(if)S
- ((rw_flag)336 1236 A
- 1614(==)S
- (READING)294 1740 A
- 2076(&&)S
- (rip->i_seek)462 2202 A
- 2706(==)S
- (NO_SEEK)294 2832 A
- 3168(&&)S
- (position)336 3294 A
- 3672(%)S
- (BLOCK_SIZE==)504 3756 A
- 4302(0)S
- 1350 V
- (23580)210 648 A
- 1698(&&)S
- ((regular)336 1824 A
- 2202(||)S
- (mode_word)378 2328 A
- 2748(==)S
- (I_DIRECTORY)))546 2874 A
- 3462({)S
- 1440 V
- (23581)210 648 A
- (rdahed_inode)504 1362 A
- 1908(=)S
- (rip;)168 1992 A
- 1530 V
- (23582)210 648 A
- (rdahedpos)378 1362 A
- 1782(=)S
- (position;)378 1866 A
- 1620 V
- (23583)210 648 A
- 1110(})S
- 1710 V
- (23584)210 648 A
- (rip->i_seek)462 1110 A
- 1614(=)S
- (NO_SEEK;)336 1698 A
- 1800 V
- (23585)210 648 A
- 1890 V
- (23586)210 648 A
- 1110(if)S
- ((rdwt_err)378 1236 A
- 1656(!=)S
- (OK))126 1782 A
- 1950(r)S
- 2034(=)S
- (rdwt_err;)378 2118 A
- 2706(/*)S
- (check)210 2832 A
- (for)126 3084 A
- (disk)168 3252 A
- (error)210 3462 A
- 3714(*/)S
- 1980 V
- (23587)210 648 A
- 1110(if)S
- ((rdwt_err)378 1236 A
- 1656(==)S
- (END_OF_FILE))504 1782 A
- 2328(r)S
- 2412(=)S
- (OK;)126 2496 A
- 2070 V
- (23588)210 648 A
- 1110(if)S
- 1236((r)S
- 1362(==)S
- (OK))126 1488 A
- 1656({)S
- 2160 V
- (23589)210 648 A
- 1362(if)S
- ((rw_flag)336 1488 A
- 1866(==)S
- (READING))336 1992 A
- (rip->i_update)546 2370 A
- 2958(|=)S
- (ATIME;)252 3084 A
- 2250 V
- (23590)210 648 A
- 1362(if)S
- ((rw_flag)336 1488 A
- 1866(==)S
- (WRITING))336 1992 A
- (rip->i_update)546 2370 A
- 2958(|=)S
- (CTIME)210 3084 A
- 3336(|)S
- (MTIME;)252 3420 A
- 2340 V
- (23591)210 648 A
- (rip->i_dirt)462 1362 A
- 1866(=)S
- (DIRTY;)252 1950 A
- 2706(/*)S
- (inode)210 2832 A
- 3084(is)S
- (thus)168 3210 A
- (now)126 3420 A
- (dirty)210 3588 A
- 3840(*/)S
- 2430 V
- (23592)210 648 A
- 1362(if)S
- ((partial_pipe))588 1488 A
- 2118({)S
- 2520 V
- (23593)210 648 A
- (partial_pipe)504 1698 A
- 2244(=)S
- 2328(0;)S
- 2610 V
- (23594)210 648 A
- 2034(/*)S
- (partial)294 2160 A
- (write)210 2496 A
- 2748(on)S
- (pipe)168 2874 A
- (with)168 3084 A
- 3294(*/)S
- 2700 V
- (23595)210 648 A
- 2034(/*)S
- (O_NONBLOCK,)462 2160 A
- (return)252 2664 A
- (write)210 2958 A
- (count)210 3210 A
- 3462(*/)S
- 2790 V
- (23596)210 648 A
- 1698(if)S
- ((!(oflags)378 1824 A
- 2244(&)S
- (O_NONBLOCK)))504 2328 A
- 2874({)S
- 2880 V
- (23597)210 648 A
- (fp->fp_cum_io_partial)882 2034 A
- 2958(=)S
- (cum_io;)294 3042 A
- 2970 V
- (23598)210 648 A
- (suspend(XPIPE);)630 2034 A
- 2706(/*)S
- (partial)294 2832 A
- (write)210 3168 A
- 3420(on)S
- (pipe)168 3546 A
- (with)168 3756 A
- 3966(*/)S
- 3060 V
- (23599)210 648 A
- (return(0);)420 2034 A
- 2706(/*)S
- (nbyte)210 2832 A
- 3084(>)S
- (PIPE_SIZE)378 3168 A
- 3588(-)S
- (non-atomic)420 3672 A
- 4134(*/)S
- 3150 V
- (23600)210 648 A
- 1698(})S
- 3240 V
- (23601)210 648 A
- 1362(})S
- 3330 V
- (23602)210 648 A
- (fp->fp_cum_io_partial)882 1362 A
- 2286(=)S
- 2370(0;)S
- 3420 V
- (23603)210 648 A
- (return(cum_io);)630 1362 A
- 3510 V
- (23604)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 3600 V
- (23605)210 648 A
- (return(r);)420 1362 A
- 3690 V
- (23606)210 648 A
- 1110(})S
- 3780 V
- (23607)210 648 A
- 1026(})S
- 4050 V
- (23610)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4140 V
- (23611)210 648 A
- 1068(*)S
- (rw_chunk)336 2370 A
- 4260(*)S
- 4230 V
- (23612)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4320 V
- (23613)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (rw_chunk(rip,)546 1530 A
- (position,)378 2118 A
- (off,)168 2538 A
- (chunk,)252 2748 A
- (left,)210 3042 A
- (rw_flag,)336 3294 A
- (buff,)210 3672 A
- (seg,)168 3924 A
- (usr))168 4134 A
- 4410 V
- (23614)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (inode)210 2958 A
- (for)126 3210 A
- (file)168 3378 A
- 3588(to)S
- 3714(be)S
- (rd/wr)210 3840 A
- 4092(*/)S
- 4500 V
- (23615)210 648 A
- (off_t)210 1026 A
- (position;)378 1278 A
- 2370(/*)S
- (position)336 2496 A
- (within)252 2874 A
- (file)168 3168 A
- 3378(to)S
- (read)168 3504 A
- 3714(or)S
- (write)210 3840 A
- 4092(*/)S
- 4590 V
- (23616)210 648 A
- (unsigned)336 1026 A
- (off;)168 1404 A
- 2370(/*)S
- (off)126 2496 A
- (within)252 2664 A
- (the)126 2958 A
- (current)294 3126 A
- (block)210 3462 A
- 3714(*/)S
- 4680 V
- (23617)210 648 A
- (int)126 1026 A
- (chunk;)252 1194 A
- 2370(/*)S
- (number)252 2496 A
- 2790(of)S
- (bytes)210 2916 A
- 3168(to)S
- (read)168 3294 A
- 3504(or)S
- (write)210 3630 A
- 3882(*/)S
- 4770 V
- (23618)210 648 A
- (unsigned)336 1026 A
- (left;)210 1404 A
- 2370(/*)S
- (max)126 2496 A
- (number)252 2664 A
- 2958(of)S
- (bytes)210 3084 A
- (wanted)252 3336 A
- (after)210 3630 A
- (position)336 3882 A
- 4260(*/)S
- 4860 V
- (23619)210 648 A
- (int)126 1026 A
- (rw_flag;)336 1194 A
- 2370(/*)S
- (READING)294 2496 A
- 2832(or)S
- (WRITING)294 2958 A
- 3294(*/)S
- 4950 V
- (23620)210 648 A
- (char)168 1026 A
- (*buff;)252 1236 A
- 2370(/*)S
- (virtual)294 2496 A
- (address)294 2832 A
- 3168(of)S
- (the)126 3294 A
- (user)168 3462 A
- (buffer)252 3672 A
- 3966(*/)S
- 5040 V
- (23621)210 648 A
- (int)126 1026 A
- (seg;)168 1194 A
- 2370(/*)S
- 2496(T)S
- 2580(or)S
- 2706(D)S
- (segment)294 2790 A
- 3126(in)S
- (user)168 3252 A
- (space)210 3462 A
- 3714(*/)S
- 5130 V
- (23622)210 648 A
- (int)126 1026 A
- (usr;)168 1194 A
- 2370(/*)S
- (which)210 2496 A
- (user)168 2748 A
- (process)294 2958 A
- 3294(*/)S
- 5220 V
- (23623)210 648 A
- 1026({)S
- 5310 V
- (23624)210 648 A
- 1026(/*)S
- (Read)168 1152 A
- 1362(or)S
- (write)210 1488 A
- ((part)210 1740 A
- (of))126 1992 A
- 2160(a)S
- (block.)252 2244 A
- 2538(*/)S
- 5400 V
- (23625)210 648 A
- 5490 V
- (23626)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (buf)126 1782 A
- (*bp;)168 1950 A
- 5580 V
- (23627)210 648 A
- (register)336 1110 A
- (int)126 1488 A
- 1656(r;)S
- 5670 V
- (23628)210 648 A
- (int)126 1110 A
- 1278(n,)S
- (block_spec;)462 1404 A
- 5760 V
- (23629)210 648 A
- (block_t)294 1110 A
- 1446(b;)S
- 5850 V
- (23630)210 648 A
- (dev_t)210 1110 A
- (dev;)168 1362 A
- 5940 V
- (23631)210 648 A
- 6030 V
- (23632)210 648 A
- (block_spec)420 1110 A
- 1572(=)S
- ((rip->i_mode)504 1656 A
- 2202(&)S
- (I_TYPE))294 2286 A
- 2622(==)S
- (I_BLOCK_SPECIAL;)672 2748 A
- 6120 V
- (23633)210 648 A
- 1110(if)S
- ((block_spec))504 1236 A
- 1782({)S
- 6210 V
- (23634)210 648 A
- 1362(b)S
- 1446(=)S
- (position/BLOCK_SIZE;)840 1530 A
- 8418 V
- EP
- %%Page: 325 325
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 12 B
- (325)180 4248 A
- 900 V
- 7 LST
- (23635)210 648 A
- (dev)126 1362 A
- 1530(=)S
- ((dev_t))294 1614 A
- (rip->i_zone[0];)630 1950 A
- 990 V
- (23636)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 1080 V
- (23637)210 648 A
- 1362(b)S
- 1446(=)S
- (read_map(rip,)546 1530 A
- (position);)420 2118 A
- 1170 V
- (23638)210 648 A
- (dev)126 1362 A
- 1530(=)S
- (rip->i_dev;)462 1614 A
- 1260 V
- (23639)210 648 A
- 1110(})S
- 1350 V
- (23640)210 648 A
- 1440 V
- (23641)210 648 A
- 1110(if)S
- ((!block_spec)504 1236 A
- 1782(&&)S
- 1908(b)S
- 1992(==)S
- (NO_BLOCK))378 2118 A
- 2538({)S
- 1530 V
- (23642)210 648 A
- 1362(if)S
- ((rw_flag)336 1488 A
- 1866(==)S
- (READING))336 1992 A
- 2370({)S
- 1620 V
- (23643)210 648 A
- 1698(/*)S
- (Reading)294 1824 A
- (from)168 2160 A
- 2370(a)S
- (nonexistent)462 2454 A
- (block.)252 2958 A
- (Must)168 3294 A
- (read)168 3504 A
- 3714(as)S
- (all)126 3840 A
- (zeros.*/)336 4008 A
- 1710 V
- (23644)210 648 A
- 1698(bp)S
- 1824(=)S
- (get_block(NO_DEV,)714 1908 A
- (NO_BLOCK,)378 2664 A
- (NORMAL);)336 3084 A
- 3588(/*)S
- (get)126 3714 A
- 3882(a)S
- (buffer)252 3966 A
- 4260(*/)S
- 1800 V
- (23645)210 648 A
- (zero_block(bp);)630 1698 A
- 1890 V
- (23646)210 648 A
- 1362(})S
- (else)168 1446 A
- 1656({)S
- 1980 V
- (23647)210 648 A
- 1698(/*)S
- (Writing)294 1824 A
- 2160(to)S
- 2286(a)S
- (nonexistent)462 2370 A
- (block.)252 2874 A
- (Create)252 3168 A
- (and)126 3462 A
- (enter)210 3630 A
- 3882(in)S
- (inode.*/)336 4008 A
- 2070 V
- (23648)210 648 A
- 1698(if)S
- (((bp=)210 1824 A
- (new_block(rip,)588 2076 A
- (position)))420 2706 A
- 3168(==)S
- (NIL_BUF)return(err_code);)1050 3294 A
- 2160 V
- (23649)210 648 A
- 1362(})S
- 2250 V
- (23650)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404(if)S
- ((rw_flag)336 1530 A
- 1908(==)S
- (READING))336 2034 A
- 2412({)S
- 2340 V
- (23651)210 648 A
- 1362(/*)S
- (Read)168 1488 A
- (and)126 1698 A
- (read)168 1866 A
- (ahead)210 2076 A
- 2328(if)S
- (convenient.)462 2454 A
- 2958(*/)S
- 2430 V
- (23652)210 648 A
- 1362(bp)S
- 1488(=)S
- (rahead(rip,)462 1572 A
- 2076(b,)S
- (position,)378 2202 A
- (left);)252 2622 A
- 2520 V
- (23653)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 2610 V
- (23654)210 648 A
- 1362(/*)S
- (Normally)336 1488 A
- 1866(an)S
- (existing)336 1992 A
- (block)210 2370 A
- 2622(to)S
- 2748(be)S
- (partially)378 2874 A
- (overwritten)462 3294 A
- 3798(is)S
- (first)210 3924 A
- (read)168 4176 A
- 2700 V
- (23655)210 648 A
- 1404(*)S
- (in.)126 1488 A
- (However,)336 1698 A
- 2076(a)S
- (full)168 2160 A
- (block)210 2370 A
- (need)168 2622 A
- (not)126 2832 A
- 3000(be)S
- (read)168 3126 A
- (in.)126 3336 A
- 3546(If)S
- 3672(it)S
- 3798(is)S
- (already)294 3924 A
- 4260(in)S
- 2790 V
- (23656)210 648 A
- 1404(*)S
- (the)126 1488 A
- (cache,)252 1656 A
- (acquire)294 1950 A
- (it,)126 2286 A
- (otherwise)378 2454 A
- (just)168 2874 A
- (acquire)294 3084 A
- 3420(a)S
- (free)168 3504 A
- (buffer.)294 3714 A
- 2880 V
- (23657)210 648 A
- 1404(*/)S
- 2970 V
- (23658)210 648 A
- 1362(n)S
- 1446(=)S
- ((chunk)252 1530 A
- 1824(==)S
- (BLOCK_SIZE)420 1950 A
- 2412(?)S
- (NO_READ)294 2496 A
- 2832(:)S
- (NORMAL);)336 2916 A
- 3060 V
- (23659)210 648 A
- 1362(if)S
- ((!block_spec)504 1488 A
- 2034(&&)S
- (off)126 2160 A
- 2328(==)S
- 2454(0)S
- 2538(&&)S
- (position)336 2664 A
- 3042(>=)S
- (rip->i_size))504 3168 A
- 3714(n)S
- 3798(=)S
- (NO_READ;)336 3882 A
- 3150 V
- (23660)210 648 A
- 1362(bp)S
- 1488(=)S
- (get_block(dev,)588 1572 A
- 2202(b,)S
- (n);)126 2328 A
- 3240 V
- (23661)210 648 A
- 1110(})S
- 3330 V
- (23662)210 648 A
- 3420 V
- (23663)210 648 A
- 1110(/*)S
- 1236(In)S
- (all)126 1362 A
- (cases,)252 1530 A
- 1824(bp)S
- (now)126 1950 A
- (points)252 2118 A
- 2412(to)S
- 2538(a)S
- (valid)210 2622 A
- (buffer.)294 2874 A
- 3210(*/)S
- 3510 V
- (23664)210 648 A
- 1110(if)S
- ((rw_flag)336 1236 A
- 1614(==)S
- (WRITING)294 1740 A
- 2076(&&)S
- (chunk)210 2202 A
- 2454(!=)S
- (BLOCK_SIZE)420 2580 A
- 3042(&&)S
- (!block_spec)462 3168 A
- 3672(&&)S
- 3600 V
- (23665)210 648 A
- (position)336 2706 A
- 3084(>=)S
- (rip->i_size)462 3210 A
- 3714(&&)S
- (off)126 3840 A
- 4008(==)S
- 4134(0))S
- 4260({)S
- 3690 V
- (23666)210 648 A
- (zero_block(bp);)630 1362 A
- 3780 V
- (23667)210 648 A
- 1110(})S
- 3870 V
- (23668)210 648 A
- 1110(if)S
- ((rw_flag)336 1236 A
- 1614(==)S
- (READING))336 1740 A
- 2118({)S
- 3960 V
- (23669)210 648 A
- 1362(/*)S
- (Copy)168 1488 A
- 1698(a)S
- (chunk)210 1782 A
- (from)168 2034 A
- (the)126 2244 A
- (block)210 2412 A
- (buffer)252 2664 A
- 2958(to)S
- (user)168 3084 A
- (space.)252 3294 A
- 3588(*/)S
- 4050 V
- (23670)210 648 A
- 1362(r)S
- 1446(=)S
- (sys_copy(FS_PROC_NR,)840 1530 A
- 2412(D,)S
- ((phys_bytes))504 2538 A
- ((bp->b_data+off),)714 3084 A
- 4140 V
- (23671)210 648 A
- (usr,)168 2034 A
- (seg,)168 2244 A
- ((phys_bytes))504 2454 A
- (buff,)210 3000 A
- 4230 V
- (23672)210 648 A
- ((phys_bytes))504 2034 A
- (chunk);)294 2580 A
- 4320 V
- (23673)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 4410 V
- (23674)210 648 A
- 1362(/*)S
- (Copy)168 1488 A
- 1698(a)S
- (chunk)210 1782 A
- (from)168 2034 A
- (user)168 2244 A
- (space)210 2454 A
- 2706(to)S
- (the)126 2832 A
- (block)210 3000 A
- (buffer.)294 3252 A
- 3588(*/)S
- 4500 V
- (23675)210 648 A
- 1362(r)S
- 1446(=)S
- (sys_copy(usr,)546 1530 A
- (seg,)168 2118 A
- ((phys_bytes))504 2328 A
- (buff,)210 2874 A
- 4590 V
- (23676)210 648 A
- (FS_PROC_NR,)462 2034 A
- 2538(D,)S
- ((phys_bytes))504 2664 A
- ((bp->b_data+off),)714 3210 A
- 4680 V
- (23677)210 648 A
- ((phys_bytes))504 2034 A
- (chunk);)294 2580 A
- 4770 V
- (23678)210 648 A
- (bp->b_dirt)420 1362 A
- 1824(=)S
- (DIRTY;)252 1908 A
- 4860 V
- (23679)210 648 A
- 1110(})S
- 4950 V
- (23680)210 648 A
- 1110(n)S
- 1194(=)S
- ((off)168 1278 A
- 1488(+)S
- (chunk)210 1572 A
- 1824(==)S
- (BLOCK_SIZE)420 1950 A
- 2412(?)S
- (FULL_DATA_BLOCK)630 2496 A
- 3168(:)S
- (PARTIAL_DATA_BLOCK);)840 3252 A
- 5040 V
- (23681)210 648 A
- (put_block(bp,)546 1110 A
- (n);)126 1698 A
- 5130 V
- (23682)210 648 A
- (return(r);)420 1110 A
- 5220 V
- (23683)210 648 A
- 1026(})S
- 5490 V
- (23686)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5580 V
- (23687)210 648 A
- 1068(*)S
- (read_map)336 2370 A
- 4260(*)S
- 5670 V
- (23688)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5760 V
- (23689)210 648 A
- (PUBLIC)252 1026 A
- (block_t)294 1320 A
- (read_map(rip,)546 1656 A
- (position))378 2244 A
- 5850 V
- (23690)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (ptr)126 2496 A
- 2664(to)S
- (inode)210 2790 A
- 3042(to)S
- (map)126 3168 A
- (from)168 3336 A
- 3546(*/)S
- 5940 V
- (23691)210 648 A
- (off_t)210 1026 A
- (position;)378 1278 A
- 2370(/*)S
- (position)336 2496 A
- 2874(in)S
- (file)168 3000 A
- (whose)210 3210 A
- (blk)126 3462 A
- (wanted)252 3630 A
- 3924(*/)S
- 6030 V
- (23692)210 648 A
- 1026({)S
- 6120 V
- (23693)210 648 A
- 1026(/*)S
- (Given)210 1152 A
- 1404(an)S
- (inode)210 1530 A
- (and)126 1782 A
- 1950(a)S
- (position)336 2034 A
- (within)252 2412 A
- (the)126 2706 A
- (corresponding)546 2874 A
- (file,)210 3462 A
- (locate)252 3714 A
- (the)126 4008 A
- 6210 V
- (23694)210 648 A
- 1068(*)S
- (block)210 1152 A
- ((not)168 1404 A
- (zone))210 1614 A
- (number)252 1866 A
- 2160(in)S
- (which)210 2286 A
- (that)168 2538 A
- (position)336 2748 A
- 3126(is)S
- 3252(to)S
- 3378(be)S
- (found)210 3504 A
- (and)126 3756 A
- (return)252 3924 A
- (it.)126 4218 A
- 8418 V
- EP
- %%Page: 326 326
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (326)180 648 A
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (23695)210 648 A
- 1068(*/)S
- 990 V
- (23696)210 648 A
- 1080 V
- (23697)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (buf)126 1782 A
- (*bp;)168 1950 A
- 1170 V
- (23698)210 648 A
- (register)336 1110 A
- (zone_t)252 1488 A
- 1782(z;)S
- 1260 V
- (23699)210 648 A
- (int)126 1110 A
- (scale,)252 1278 A
- (boff,)210 1572 A
- (dzones,)294 1824 A
- (nr_indirects,)546 2160 A
- (index,)252 2748 A
- (zind,)210 3042 A
- (ex;)126 3294 A
- 1350 V
- (23700)210 648 A
- (block_t)294 1110 A
- 1446(b;)S
- 1440 V
- (23701)210 648 A
- (long)168 1110 A
- (excess,)294 1320 A
- (zone,)210 1656 A
- (block_pos;)420 1908 A
- 1530 V
- (23702)210 648 A
- 1620 V
- (23703)210 648 A
- (scale)210 1110 A
- 1362(=)S
- (rip->i_sp->s_log_zone_size;)1134 1446 A
- 2706(/*)S
- (for)126 2832 A
- (block-zone)420 3000 A
- (conversion)420 3462 A
- 3924(*/)S
- 1710 V
- (23704)210 648 A
- (block_pos)378 1110 A
- 1530(=)S
- (position/BLOCK_SIZE;)840 1614 A
- 2706(/*)S
- (relative)336 2832 A
- (blk)126 3210 A
- 3378(#)S
- 3462(in)S
- (file)168 3588 A
- 3798(*/)S
- 1800 V
- (23705)210 648 A
- (zone)168 1110 A
- 1320(=)S
- (block_pos)378 1404 A
- 1824(>>)S
- (scale;)252 1950 A
- 2370(/*)S
- (position's)420 2496 A
- (zone)168 2958 A
- 3168(*/)S
- 1890 V
- (23706)210 648 A
- (boff)168 1110 A
- 1320(=)S
- ((int))210 1404 A
- ((block_pos)420 1656 A
- 2118(-)S
- ((zone)210 2202 A
- 2454(<<)S
- (scale))252 2580 A
- 2874();)S
- 3000(/*)S
- (relative)336 3126 A
- (blk)126 3504 A
- 3672(#)S
- (within)252 3756 A
- (zone)168 4050 A
- 4260(*/)S
- 1980 V
- (23707)210 648 A
- (dzones)252 1110 A
- 1404(=)S
- (rip->i_ndzones;)630 1488 A
- 2070 V
- (23708)210 648 A
- (nr_indirects)504 1110 A
- 1656(=)S
- (rip->i_nindirs;)630 1740 A
- 2160 V
- (23709)210 648 A
- 2250 V
- (23710)210 648 A
- 1110(/*)S
- 1236(Is)S
- ('position')420 1362 A
- 1824(to)S
- 1950(be)S
- (found)210 2076 A
- 2328(in)S
- (the)126 2454 A
- (inode)210 2622 A
- (itself?)294 2874 A
- 3210(*/)S
- 2340 V
- (23711)210 648 A
- 1110(if)S
- ((zone)210 1236 A
- 1488(<)S
- (dzones))294 1572 A
- 1908({)S
- 2430 V
- (23712)210 648 A
- (zind)168 1362 A
- 1572(=)S
- ((int))210 1656 A
- (zone;)210 1908 A
- 2370(/*)S
- (index)210 2496 A
- (should)252 2748 A
- 3042(be)S
- 3168(an)S
- (int)126 3294 A
- 3462(*/)S
- 2520 V
- (23713)210 648 A
- 1362(z)S
- 1446(=)S
- (rip->i_zone[zind];)756 1530 A
- 2610 V
- (23714)210 648 A
- 1362(if)S
- 1488((z)S
- 1614(==)S
- (NO_ZONE))336 1740 A
- (return(NO_BLOCK);)714 2118 A
- 2700 V
- (23715)210 648 A
- 1362(b)S
- 1446(=)S
- (((block_t))420 1530 A
- 1992(z)S
- 2076(<<)S
- (scale))252 2202 A
- 2496(+)S
- (boff;)210 2580 A
- 2790 V
- (23716)210 648 A
- (return(b);)420 1362 A
- 2880 V
- (23717)210 648 A
- 1110(})S
- 2970 V
- (23718)210 648 A
- 3060 V
- (23719)210 648 A
- 1110(/*)S
- 1236(It)S
- 1362(is)S
- (not)126 1488 A
- 1656(in)S
- (the)126 1782 A
- (inode,)252 1950 A
- 2244(so)S
- 2370(it)S
- (must)168 2496 A
- 2706(be)S
- (single)252 2832 A
- 3126(or)S
- (double)252 3252 A
- (indirect.)378 3546 A
- 3966(*/)S
- 3150 V
- (23720)210 648 A
- (excess)252 1110 A
- 1404(=)S
- (zone)168 1488 A
- 1698(-)S
- (dzones;)294 1782 A
- 2370(/*)S
- (first)210 2496 A
- (Vx_NR_DZONES)504 2748 A
- (don't)210 3294 A
- (count)210 3546 A
- 3798(*/)S
- 3240 V
- (23721)210 648 A
- 3330 V
- (23722)210 648 A
- 1110(if)S
- ((excess)294 1236 A
- 1572(<)S
- (nr_indirects))546 1656 A
- 2244({)S
- 3420 V
- (23723)210 648 A
- 1362(/*)S
- ('position')420 1488 A
- (can)126 1950 A
- 2118(be)S
- (located)294 2244 A
- (via)126 2580 A
- (the)126 2748 A
- (single)252 2916 A
- (indirect)336 3210 A
- (block.)252 3588 A
- 3882(*/)S
- 3510 V
- (23724)210 648 A
- 1362(z)S
- 1446(=)S
- (rip->i_zone[dzones];)840 1530 A
- 3600 V
- (23725)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 3690 V
- (23726)210 648 A
- 1362(/*)S
- ('position')420 1488 A
- (can)126 1950 A
- 2118(be)S
- (located)294 2244 A
- (via)126 2580 A
- (the)126 2748 A
- (double)252 2916 A
- (indirect)336 3210 A
- (block.)252 3588 A
- 3882(*/)S
- 3780 V
- (23727)210 648 A
- 1362(if)S
- 1488(()S
- 1572((z)S
- 1698(=)S
- (rip->i_zone[dzones+1]))924 1782 A
- 2748(==)S
- (NO_ZONE))336 2874 A
- (return(NO_BLOCK);)714 3252 A
- 3870 V
- (23728)210 648 A
- (excess)252 1362 A
- 1656(-=)S
- (nr_indirects;)546 1782 A
- 3042(/*)S
- (single)252 3168 A
- (indir)210 3462 A
- (doesn't)294 3714 A
- (count*/)294 4050 A
- 3960 V
- (23729)210 648 A
- 1362(b)S
- 1446(=)S
- ((block_t))378 1530 A
- 1950(z)S
- 2034(<<)S
- (scale;)252 2160 A
- 4050 V
- (23730)210 648 A
- 1362(bp)S
- 1488(=)S
- (get_block(rip->i_dev,)882 1572 A
- 2496(b,)S
- (NORMAL);)336 2622 A
- 3042(/*)S
- (get)126 3168 A
- (double)252 3336 A
- (indirect)336 3630 A
- (block)210 4008 A
- 4260(*/)S
- 4140 V
- (23731)210 648 A
- (index)210 1362 A
- 1614(=)S
- ((int))210 1698 A
- ((excess/nr_indirects);)924 1950 A
- 4230 V
- (23732)210 648 A
- 1362(z)S
- 1446(=)S
- (rd_indir(bp,)504 1530 A
- (index);)294 2076 A
- 3042(/*)S
- 3168(z=)S
- (zone)168 3294 A
- (for)126 3504 A
- (single*/)336 3672 A
- 4320 V
- (23733)210 648 A
- (put_block(bp,)546 1362 A
- (INDIRECT_BLOCK);)672 1950 A
- 3042(/*)S
- (release)294 3168 A
- (double)252 3504 A
- (ind)126 3798 A
- (block)210 3966 A
- 4218(*/)S
- 4410 V
- (23734)210 648 A
- (excess)252 1362 A
- 1656(=)S
- (excess)252 1740 A
- 2034(%)S
- (nr_indirects;)546 2118 A
- 3042(/*)S
- (index)210 3168 A
- (into)168 3420 A
- (single)252 3630 A
- (ind)126 3924 A
- (blk)126 4092 A
- 4260(*/)S
- 4500 V
- (23735)210 648 A
- 1110(})S
- 4590 V
- (23736)210 648 A
- 4680 V
- (23737)210 648 A
- 1110(/*)S
- ('z')126 1236 A
- 1404(is)S
- (zone)168 1530 A
- (num)126 1740 A
- (for)126 1908 A
- (single)252 2076 A
- (indirect)336 2370 A
- (block;)252 2748 A
- ('excess')336 3042 A
- 3420(is)S
- (index)210 3546 A
- (into)168 3798 A
- (it.)126 4008 A
- 4176(*/)S
- 4770 V
- (23738)210 648 A
- 1110(if)S
- 1236((z)S
- 1362(==)S
- (NO_ZONE))336 1488 A
- (return(NO_BLOCK);)714 1866 A
- 4860 V
- (23739)210 648 A
- 1110(b)S
- 1194(=)S
- ((block_t))378 1278 A
- 1698(z)S
- 1782(<<)S
- (scale;)252 1908 A
- 3042(/*)S
- 3168(b)S
- 3252(is)S
- (blk)126 3378 A
- 3546(#)S
- (for)126 3630 A
- (single)252 3798 A
- (ind)126 4092 A
- 4260(*/)S
- 4950 V
- (23740)210 648 A
- 1110(bp)S
- 1236(=)S
- (get_block(rip->i_dev,)882 1320 A
- 2244(b,)S
- (NORMAL);)336 2370 A
- 3042(/*)S
- (get)126 3168 A
- (single)252 3336 A
- (indirect)336 3630 A
- (block)210 4008 A
- 4260(*/)S
- 5040 V
- (23741)210 648 A
- 1110(ex)S
- 1236(=)S
- ((int))210 1320 A
- (excess;)294 1572 A
- 3042(/*)S
- (need)168 3168 A
- 3378(an)S
- (integer)294 3504 A
- 3840(*/)S
- 5130 V
- (23742)210 648 A
- 1110(z)S
- 1194(=)S
- (rd_indir(bp,)504 1278 A
- (ex);)168 1824 A
- 3042(/*)S
- (get)126 3168 A
- (block)210 3336 A
- (pointed)294 3588 A
- 3924(to)S
- 4050(*/)S
- 5220 V
- (23743)210 648 A
- (put_block(bp,)546 1110 A
- (INDIRECT_BLOCK);)672 1698 A
- 3042(/*)S
- (release)294 3168 A
- (single)252 3504 A
- (indir)210 3798 A
- (blk)126 4050 A
- 4218(*/)S
- 5310 V
- (23744)210 648 A
- 1110(if)S
- 1236((z)S
- 1362(==)S
- (NO_ZONE))336 1488 A
- (return(NO_BLOCK);)714 1866 A
- 5400 V
- (23745)210 648 A
- 1110(b)S
- 1194(=)S
- (((block_t))420 1278 A
- 1740(z)S
- 1824(<<)S
- (scale))252 1950 A
- 2244(+)S
- (boff;)210 2328 A
- 5490 V
- (23746)210 648 A
- (return(b);)420 1110 A
- 5580 V
- (23747)210 648 A
- 1026(})S
- 5850 V
- (23750)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5940 V
- (23751)210 648 A
- 1068(*)S
- (rd_indir)336 2370 A
- 4260(*)S
- 6030 V
- (23752)210 648 A
- (*===========================================================================*/)3276 1068 A
- 6120 V
- (23753)210 648 A
- (PUBLIC)252 1026 A
- (zone_t)252 1320 A
- (rd_indir(bp,)504 1614 A
- (index))252 2160 A
- 6210 V
- (23754)210 648 A
- (struct)252 1026 A
- (buf)126 1320 A
- (*bp;)168 1488 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (indirect)336 2958 A
- (block)210 3336 A
- 3588(*/)S
- 8418 V
- EP
- %%Page: 327 327
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 12 B
- (327)180 4248 A
- 900 V
- 7 LST
- (23755)210 648 A
- (int)126 1026 A
- (index;)252 1194 A
- 2370(/*)S
- (index)210 2496 A
- (into)168 2748 A
- (*bp)126 2958 A
- 3126(*/)S
- 990 V
- (23756)210 648 A
- 1026({)S
- 1080 V
- (23757)210 648 A
- 1026(/*)S
- (Given)210 1152 A
- 1404(a)S
- (pointer)294 1488 A
- 1824(to)S
- 1950(an)S
- (indirect)336 2076 A
- (block,)252 2454 A
- (read)168 2748 A
- (one)126 2958 A
- (entry.)252 3126 A
- (The)126 3462 A
- (reason)252 3630 A
- (for)126 3924 A
- 1170 V
- (23758)210 648 A
- 1068(*)S
- (making)252 1152 A
- 1446(a)S
- (separate)336 1530 A
- (routine)294 1908 A
- (out)126 2244 A
- 2412(of)S
- (this)168 2538 A
- 2748(is)S
- (that)168 2874 A
- (there)210 3084 A
- (are)126 3336 A
- (four)168 3504 A
- (cases:)252 3714 A
- 1260 V
- (23759)210 648 A
- 1068(*)S
- 1152(V1)S
- ((IBM)168 1278 A
- (and)126 1488 A
- (68000),)294 1656 A
- (and)126 1992 A
- 2160(V2)S
- ((IBM)168 2286 A
- (and)126 2496 A
- (68000).)294 2664 A
- 1350 V
- (23760)210 648 A
- 1068(*/)S
- 1440 V
- (23761)210 648 A
- 1530 V
- (23762)210 648 A
- (struct)252 1110 A
- (super_block)462 1404 A
- (*sp;)168 1908 A
- 1620 V
- (23763)210 648 A
- (zone_t)252 1110 A
- (zone;)210 1404 A
- 2370(/*)S
- 2496(V2)S
- (zones)210 2622 A
- (are)126 2874 A
- (longs)210 3042 A
- ((shorts)294 3294 A
- 3630(in)S
- (V1))126 3756 A
- 3924(*/)S
- 1710 V
- (23764)210 648 A
- 1800 V
- (23765)210 648 A
- 1110(sp)S
- 1236(=)S
- (get_super(bp->b_dev);)882 1320 A
- 2370(/*)S
- (need)168 2496 A
- (super)210 2706 A
- (block)210 2958 A
- 3210(to)S
- (find)168 3336 A
- (file)168 3546 A
- (sys)126 3756 A
- (type)168 3924 A
- 4134(*/)S
- 1890 V
- (23766)210 648 A
- 1980 V
- (23767)210 648 A
- 1110(/*)S
- (read)168 1236 A
- 1446(a)S
- (zone)168 1530 A
- (from)168 1740 A
- 1950(an)S
- (indirect)336 2076 A
- (block)210 2454 A
- 2706(*/)S
- 2070 V
- (23768)210 648 A
- 1110(if)S
- ((sp->s_version)588 1236 A
- 1866(==)S
- (V1))126 1992 A
- 2160 V
- (23769)210 648 A
- (zone)168 1362 A
- 1572(=)S
- ((zone_t))336 1656 A
- (conv2(sp->s_native,)798 2034 A
- ((int))210 2874 A
- (bp->b_v1_ind[index]);)882 3168 A
- 2250 V
- (23770)210 648 A
- (else)168 1110 A
- 2340 V
- (23771)210 648 A
- (zone)168 1362 A
- 1572(=)S
- ((zone_t))336 1656 A
- (conv4(sp->s_native,)798 2034 A
- ((long))252 2874 A
- (bp->b_v2_ind[index]);)882 3168 A
- 2430 V
- (23772)210 648 A
- 2520 V
- (23773)210 648 A
- 1110(if)S
- ((zone)210 1236 A
- 1488(!=)S
- (NO_ZONE)294 1614 A
- 1950(&&)S
- 2610 V
- (23774)210 648 A
- ((zone)210 1698 A
- 1950(<)S
- ((zone_t))336 2034 A
- (sp->s_firstdatazone)798 2412 A
- 3252(||)S
- (zone)168 3378 A
- 3588(>=)S
- (sp->s_zones)))546 3714 A
- 4302({)S
- 2700 V
- (23775)210 648 A
- (printf("Illegal)630 1362 A
- (zone)168 2034 A
- (number)252 2244 A
- (%ld)126 2538 A
- 2706(in)S
- (indirect)336 2832 A
- (block,)252 3210 A
- (index)210 3504 A
- (%d\n",)252 3756 A
- 2790 V
- (23776)210 648 A
- ((long))252 1656 A
- (zone,)210 1950 A
- (index);)294 2202 A
- 2880 V
- (23777)210 648 A
- (panic("check)504 1362 A
- (file)168 1908 A
- (system",)336 2118 A
- (NO_NUM);)336 2496 A
- 2970 V
- (23778)210 648 A
- 1110(})S
- 3060 V
- (23779)210 648 A
- (return(zone);)546 1110 A
- 3150 V
- (23780)210 648 A
- 1026(})S
- 3420 V
- (23783)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3510 V
- (23784)210 648 A
- 1068(*)S
- (read_ahead)420 2370 A
- 4260(*)S
- 3600 V
- (23785)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3690 V
- (23786)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (read_ahead())504 1530 A
- 3780 V
- (23787)210 648 A
- 1026({)S
- 3870 V
- (23788)210 648 A
- 1026(/*)S
- (Read)168 1152 A
- 1362(a)S
- (block)210 1446 A
- (into)168 1698 A
- (the)126 1908 A
- (cache)210 2076 A
- (before)252 2328 A
- 2622(it)S
- 2748(is)S
- (needed.)294 2874 A
- 3210(*/)S
- 3960 V
- (23789)210 648 A
- 4050 V
- (23790)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (inode)210 1782 A
- (*rip;)210 2034 A
- 4140 V
- (23791)210 648 A
- (struct)252 1110 A
- (buf)126 1404 A
- (*bp;)168 1572 A
- 4230 V
- (23792)210 648 A
- (block_t)294 1110 A
- 1446(b;)S
- 4320 V
- (23793)210 648 A
- 4410 V
- (23794)210 648 A
- (rip)126 1110 A
- 1278(=)S
- (rdahed_inode;)546 1362 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (inode)210 2958 A
- 3210(to)S
- (read)168 3336 A
- (ahead)210 3546 A
- (from)168 3798 A
- 4008(*/)S
- 4500 V
- (23795)210 648 A
- (rdahed_inode)504 1110 A
- 1656(=)S
- (NIL_INODE;)420 1740 A
- 2370(/*)S
- (turn)168 2496 A
- (off)126 2706 A
- (read)168 2874 A
- (ahead)210 3084 A
- 3336(*/)S
- 4590 V
- (23796)210 648 A
- 1110(if)S
- 1236(()S
- 1320((b)S
- 1446(=)S
- (read_map(rip,)546 1530 A
- (rdahedpos)))462 2118 A
- 2622(==)S
- (NO_BLOCK))378 2748 A
- (return;)294 3168 A
- 3714(/*)S
- 3840(at)S
- (EOF)126 3966 A
- 4134(*/)S
- 4680 V
- (23797)210 648 A
- 1110(bp)S
- 1236(=)S
- (rahead(rip,)462 1320 A
- 1824(b,)S
- (rdahedpos,)420 1950 A
- (BLOCK_SIZE);)504 2412 A
- 4770 V
- (23798)210 648 A
- (put_block(bp,)546 1110 A
- (PARTIAL_DATA_BLOCK);)840 1698 A
- 4860 V
- (23799)210 648 A
- 1026(})S
- 5130 V
- (23802)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5220 V
- (23803)210 648 A
- 1068(*)S
- (rahead)252 2370 A
- 4260(*)S
- 5310 V
- (23804)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5400 V
- (23805)210 648 A
- (PUBLIC)252 1026 A
- (struct)252 1320 A
- (buf)126 1614 A
- (*rahead(rip,)504 1782 A
- (baseblock,)420 2328 A
- (position,)378 2790 A
- (bytes_ahead))504 3210 A
- 5490 V
- (23806)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (inode)210 2958 A
- (for)126 3210 A
- (file)168 3378 A
- 3588(to)S
- 3714(be)S
- (read)168 3840 A
- 4050(*/)S
- 5580 V
- (23807)210 648 A
- (block_t)294 1026 A
- (baseblock;)420 1362 A
- 2370(/*)S
- (block)210 2496 A
- 2748(at)S
- (current)294 2874 A
- (position)336 3210 A
- 3588(*/)S
- 5670 V
- (23808)210 648 A
- (off_t)210 1026 A
- (position;)378 1278 A
- 2370(/*)S
- (position)336 2496 A
- (within)252 2874 A
- (file)168 3168 A
- 3378(*/)S
- 5760 V
- (23809)210 648 A
- (unsigned)336 1026 A
- (bytes_ahead;)504 1404 A
- 2370(/*)S
- (bytes)210 2496 A
- (beyond)252 2748 A
- (position)336 3042 A
- (for)126 3420 A
- (immediate)378 3588 A
- (use)126 4008 A
- 4176(*/)S
- 5850 V
- (23810)210 648 A
- 1026({)S
- 5940 V
- (23811)210 648 A
- 1026(/*)S
- (Fetch)210 1152 A
- 1404(a)S
- (block)210 1488 A
- (from)168 1740 A
- (the)126 1950 A
- (cache)210 2118 A
- 2370(or)S
- (the)126 2496 A
- (device.)294 2664 A
- 3042(If)S
- 3168(a)S
- (physical)336 3252 A
- (read)168 3630 A
- 3840(is)S
- 6030 V
- (23812)210 648 A
- 1068(*)S
- (required,)378 1152 A
- (prefetch)336 1572 A
- 1950(as)S
- (many)168 2076 A
- (more)168 2286 A
- (blocks)252 2496 A
- 2790(as)S
- (convenient)420 2916 A
- (into)168 3378 A
- (the)126 3588 A
- (cache.)252 3756 A
- 6120 V
- (23813)210 648 A
- 1068(*)S
- (This)168 1152 A
- (usually)294 1362 A
- (covers)252 1698 A
- (bytes_ahead)462 1992 A
- (and)126 2496 A
- 2664(is)S
- 2790(at)S
- (least)210 2916 A
- (BLOCKS_MINIMUM.)630 3168 A
- 6210 V
- (23814)210 648 A
- 1068(*)S
- (The)126 1152 A
- (device)252 1320 A
- (driver)252 1614 A
- (may)126 1908 A
- (decide)252 2076 A
- 2370(it)S
- (knows)210 2496 A
- (better)252 2748 A
- (and)126 3042 A
- (stop)168 3210 A
- (reading)294 3420 A
- 3756(at)S
- 3882(a)S
- 8418 V
- EP
- %%Page: 328 328
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (328)180 648 A
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (23815)210 648 A
- 1068(*)S
- (cylinder)336 1152 A
- (boundary)336 1530 A
- ((or)126 1908 A
- (after)210 2076 A
- 2328(an)S
- (error).)294 2454 A
- (Rw_scattered())588 2832 A
- (puts)168 3462 A
- 3672(an)S
- (optional)336 3798 A
- 990 V
- (23816)210 648 A
- 1068(*)S
- (flag)168 1152 A
- 1362(on)S
- (all)126 1488 A
- (reads)210 1656 A
- 1908(to)S
- (allow)210 2034 A
- (this.)210 2286 A
- 1080 V
- (23817)210 648 A
- 1068(*/)S
- 1170 V
- (23818)210 648 A
- 1260 V
- (23819)210 648 A
- 1026(/*)S
- (Minimum)294 1152 A
- (number)252 1488 A
- 1782(of)S
- (blocks)252 1908 A
- 2202(to)S
- (prefetch.)378 2328 A
- 2748(*/)S
- 1350 V
- (23820)210 648 A
- 1026(#)S
- (define)252 1110 A
- (BLOCKS_MINIMUM)588 1404 A
- ((NR_BUFS)336 2370 A
- 2748(<)S
- 2832(50)S
- 2958(?)S
- 3042(18)S
- 3168(:)S
- (32))126 3252 A
- 1440 V
- (23821)210 648 A
- 1530 V
- (23822)210 648 A
- (int)126 1110 A
- (block_spec,)462 1278 A
- (scale,)252 1782 A
- (read_q_size;)504 2076 A
- 1620 V
- (23823)210 648 A
- (unsigned)336 1110 A
- (int)126 1488 A
- (blocks_ahead,)546 1656 A
- (fragment;)378 2244 A
- 1710 V
- (23824)210 648 A
- (block_t)294 1110 A
- (block,)252 1446 A
- (blocks_left;)504 1740 A
- 1800 V
- (23825)210 648 A
- (off_t)210 1110 A
- (ind1_pos;)378 1362 A
- 1890 V
- (23826)210 648 A
- (dev_t)210 1110 A
- (dev;)168 1362 A
- 1980 V
- (23827)210 648 A
- (struct)252 1110 A
- (buf)126 1404 A
- (*bp;)168 1572 A
- 2070 V
- (23828)210 648 A
- (static)252 1110 A
- (struct)252 1404 A
- (buf)126 1698 A
- (*read_q[NR_BUFS];)714 1866 A
- 2160 V
- (23829)210 648 A
- 2250 V
- (23830)210 648 A
- (block_spec)420 1110 A
- 1572(=)S
- ((rip->i_mode)504 1656 A
- 2202(&)S
- (I_TYPE))294 2286 A
- 2622(==)S
- (I_BLOCK_SPECIAL;)672 2748 A
- 2340 V
- (23831)210 648 A
- 1110(if)S
- ((block_spec))504 1236 A
- 1782({)S
- 2430 V
- (23832)210 648 A
- (dev)126 1362 A
- 1530(=)S
- ((dev_t))294 1614 A
- (rip->i_zone[0];)630 1950 A
- 2520 V
- (23833)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 2610 V
- (23834)210 648 A
- (dev)126 1362 A
- 1530(=)S
- (rip->i_dev;)462 1614 A
- 2700 V
- (23835)210 648 A
- 1110(})S
- 2790 V
- (23836)210 648 A
- 2880 V
- (23837)210 648 A
- (block)210 1110 A
- 1362(=)S
- (baseblock;)420 1446 A
- 2970 V
- (23838)210 648 A
- 1110(bp)S
- 1236(=)S
- (get_block(dev,)588 1320 A
- (block,)252 1950 A
- (PREFETCH);)420 2244 A
- 3060 V
- (23839)210 648 A
- 1110(if)S
- ((bp->b_dev)420 1236 A
- 1698(!=)S
- (NO_DEV))294 1824 A
- (return(bp);)462 2160 A
- 3150 V
- (23840)210 648 A
- 3240 V
- (23841)210 648 A
- 1110(/*)S
- (The)126 1236 A
- (best)168 1404 A
- (guess)210 1614 A
- (for)126 1866 A
- (the)126 2034 A
- (number)252 2202 A
- 2496(of)S
- (blocks)252 2622 A
- 2916(to)S
- (prefetch:)378 3042 A
- 3504(A)S
- (lot.)168 3588 A
- 3330 V
- (23842)210 648 A
- 1152(*)S
- 1236(It)S
- 1362(is)S
- (impossible)420 1488 A
- 1950(to)S
- (tell)168 2076 A
- (what)168 2286 A
- (the)126 2496 A
- (device)252 2664 A
- (looks)210 2958 A
- (like,)210 3210 A
- 3462(so)S
- 3588(we)S
- (don't)210 3714 A
- (even)168 3966 A
- 3420 V
- (23843)210 648 A
- 1152(*)S
- (try)126 1236 A
- 1404(to)S
- (guess)210 1530 A
- (the)126 1782 A
- (geometry,)378 1950 A
- (but)126 2370 A
- (leave)210 2538 A
- 2790(it)S
- 2916(to)S
- (the)126 3042 A
- (driver.)294 3210 A
- 3510 V
- (23844)210 648 A
- 1152(*)S
- 3600 V
- (23845)210 648 A
- 1152(*)S
- (The)126 1236 A
- (floppy)252 1404 A
- (driver)252 1698 A
- (can)126 1992 A
- (read)168 2160 A
- 2370(a)S
- (full)168 2454 A
- (track)210 2664 A
- (with)168 2916 A
- 3126(no)S
- (rotational)420 3252 A
- (delay,)252 3714 A
- (and)126 4008 A
- 4176(it)S
- 3690 V
- (23846)210 648 A
- 1152(*)S
- (avoids)252 1236 A
- (reading)294 1530 A
- (partial)294 1866 A
- (tracks)252 2202 A
- 2496(if)S
- 2622(it)S
- (can,)168 2748 A
- 2958(so)S
- (handing)294 3084 A
- 3420(it)S
- (enough)252 3546 A
- (buffers)294 3840 A
- 4176(to)S
- 3780 V
- (23847)210 648 A
- 1152(*)S
- (read)168 1236 A
- (two)126 1446 A
- (tracks)252 1614 A
- 1908(is)S
- (perfect.)336 2034 A
- ((Two,)210 2454 A
- (because)294 2706 A
- (some)168 3042 A
- (diskette)336 3252 A
- (types)210 3630 A
- (have)168 3882 A
- 3870 V
- (23848)210 648 A
- 1152(*)S
- 1236(an)S
- (odd)126 1362 A
- (number)252 1530 A
- 1824(of)S
- (sectors)294 1950 A
- (per)126 2286 A
- (track,)252 2454 A
- 2748(so)S
- 2874(a)S
- (block)210 2958 A
- (may)126 3210 A
- (span)168 3378 A
- (tracks.))336 3588 A
- 3960 V
- (23849)210 648 A
- 1152(*)S
- 4050 V
- (23850)210 648 A
- 1152(*)S
- (The)126 1236 A
- (disk)168 1404 A
- (drivers)294 1614 A
- (don't)210 1950 A
- (try)126 2202 A
- 2370(to)S
- 2496(be)S
- (smart.)252 2622 A
- (With)168 2958 A
- (todays)252 3168 A
- (disks)210 3462 A
- 3714(it)S
- 3840(is)S
- 4140 V
- (23851)210 648 A
- 1152(*)S
- (impossible)420 1236 A
- 1698(to)S
- (tell)168 1824 A
- (what)168 2034 A
- (the)126 2244 A
- (real)168 2412 A
- (geometry)336 2622 A
- (looks)210 3000 A
- (like,)210 3252 A
- 3504(so)S
- 3630(it)S
- 3756(is)S
- (best)168 3882 A
- 4092(to)S
- 4230 V
- (23852)210 648 A
- 1152(*)S
- (read)168 1236 A
- 1446(as)S
- (much)168 1572 A
- 1782(as)S
- (you)126 1908 A
- (can.)168 2076 A
- (With)168 2328 A
- (luck)168 2538 A
- (the)126 2748 A
- (caching)294 2916 A
- 3252(on)S
- (the)126 3378 A
- (drive)210 3546 A
- (allows)252 3798 A
- 4320 V
- (23853)210 648 A
- 1152(*)S
- (for)126 1236 A
- 1404(a)S
- (little)252 1488 A
- (time)168 1782 A
- 1992(to)S
- (start)210 2118 A
- (the)126 2370 A
- (next)168 2538 A
- (read.)210 2748 A
- 4410 V
- (23854)210 648 A
- 1152(*)S
- 4500 V
- (23855)210 648 A
- 1152(*)S
- (The)126 1236 A
- (current)294 1404 A
- (solution)336 1740 A
- (below)210 2118 A
- 2370(is)S
- 2496(a)S
- (bit)126 2580 A
- 2748(of)S
- 2874(a)S
- (hack,)210 2958 A
- 3210(it)S
- (just)168 3336 A
- (reads)210 3546 A
- (blocks)252 3798 A
- (from)168 4092 A
- 4590 V
- (23856)210 648 A
- 1152(*)S
- (the)126 1236 A
- (current)294 1404 A
- (file)168 1740 A
- (position)336 1950 A
- (hoping)252 2328 A
- (that)168 2622 A
- (more)168 2832 A
- 3042(of)S
- (the)126 3168 A
- (file)168 3336 A
- (can)126 3546 A
- 3714(be)S
- (found.)252 3840 A
- 4176(A)S
- 4680 V
- (23857)210 648 A
- 1152(*)S
- (better)252 1236 A
- (solution)336 1530 A
- (must)168 1908 A
- (look)168 2118 A
- 2328(at)S
- (the)126 2454 A
- (already)294 2622 A
- (available)378 2958 A
- (zone)168 3378 A
- (pointers)336 3588 A
- (and)126 3966 A
- 4770 V
- (23858)210 648 A
- 1152(*)S
- (indirect)336 1236 A
- (blocks)252 1614 A
- ((but)168 1908 A
- (don't)210 2118 A
- (call)168 2370 A
- (read_map!).)462 2580 A
- 4860 V
- (23859)210 648 A
- 1152(*/)S
- 4950 V
- (23860)210 648 A
- 5040 V
- (23861)210 648 A
- (fragment)336 1110 A
- 1488(=)S
- (position)336 1572 A
- 1950(%)S
- (BLOCK_SIZE;)462 2034 A
- 5130 V
- (23862)210 648 A
- (position)336 1110 A
- 1488(-=)S
- (fragment;)378 1614 A
- 5220 V
- (23863)210 648 A
- (bytes_ahead)462 1110 A
- 1614(+=)S
- (fragment;)378 1740 A
- 5310 V
- (23864)210 648 A
- 5400 V
- (23865)210 648 A
- (blocks_ahead)504 1110 A
- 1656(=)S
- ((bytes_ahead)504 1740 A
- 2286(+)S
- (BLOCK_SIZE)420 2370 A
- 2832(-)S
- 2916(1))S
- 3042(/)S
- (BLOCK_SIZE;)462 3126 A
- 5490 V
- (23866)210 648 A
- 5580 V
- (23867)210 648 A
- 1110(if)S
- ((block_spec)462 1236 A
- 1740(&&)S
- (rip->i_size)462 1866 A
- 2370(==)S
- 2496(0))S
- 2622({)S
- 5670 V
- (23868)210 648 A
- (blocks_left)462 1362 A
- 1866(=)S
- (NR_IOREQS;)420 1950 A
- 5760 V
- (23869)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 5850 V
- (23870)210 648 A
- (blocks_left)462 1362 A
- 1866(=)S
- ((rip->i_size)504 1950 A
- 2496(-)S
- (position)336 2580 A
- 2958(+)S
- (BLOCK_SIZE)420 3042 A
- 3504(-)S
- 3588(1))S
- 3714(/)S
- (BLOCK_SIZE;)462 3798 A
- 5940 V
- (23871)210 648 A
- 6030 V
- (23872)210 648 A
- 1362(/*)S
- 1488(Go)S
- (for)126 1614 A
- (the)126 1782 A
- (first)210 1950 A
- (indirect)336 2202 A
- (block)210 2580 A
- 2832(if)S
- 2958(we)S
- (are)126 3084 A
- 3252(in)S
- (its)126 3378 A
- (neighborhood.)546 3546 A
- 4134(*/)S
- 6120 V
- (23873)210 648 A
- 1362(if)S
- ((!block_spec))546 1488 A
- 2076({)S
- 6210 V
- (23874)210 648 A
- (scale)210 1698 A
- 1950(=)S
- (rip->i_sp->s_log_zone_size;)1134 2034 A
- 8418 V
- EP
- %%Page: 329 329
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2150(File:)S
- 2383(src/fs/read.c)S
- 12 B
- (329)180 4248 A
- 900 V
- 7 LST
- (23875)210 648 A
- (ind1_pos)336 1698 A
- 2076(=)S
- ((off_t))294 2160 A
- (rip->i_ndzones)588 2496 A
- 3126(*)S
- ((BLOCK_SIZE)462 3210 A
- 3714(<<)S
- (scale);)294 3840 A
- 990 V
- (23876)210 648 A
- 1698(if)S
- ((position)378 1824 A
- 2244(<=)S
- (ind1_pos)336 2370 A
- 2748(&&)S
- (rip->i_size)462 2874 A
- 3378(>)S
- (ind1_pos))378 3462 A
- 3882({)S
- 1080 V
- (23877)210 648 A
- (blocks_ahead++;)630 2034 A
- 1170 V
- (23878)210 648 A
- (blocks_left++;)588 2034 A
- 1260 V
- (23879)210 648 A
- 1698(})S
- 1350 V
- (23880)210 648 A
- 1362(})S
- 1440 V
- (23881)210 648 A
- 1110(})S
- 1530 V
- (23882)210 648 A
- 1620 V
- (23883)210 648 A
- 1110(/*)S
- 1236(No)S
- (more)168 1362 A
- (than)168 1572 A
- (the)126 1782 A
- (maximum)294 1950 A
- (request.)336 2286 A
- 2664(*/)S
- 1710 V
- (23884)210 648 A
- 1110(if)S
- ((blocks_ahead)546 1236 A
- 1824(>)S
- (NR_IOREQS))420 1908 A
- (blocks_ahead)504 2370 A
- 2916(=)S
- (NR_IOREQS;)420 3000 A
- 1800 V
- (23885)210 648 A
- 1890 V
- (23886)210 648 A
- 1110(/*)S
- (Read)168 1236 A
- 1446(at)S
- (least)210 1572 A
- (the)126 1824 A
- (minimum)294 1992 A
- (number)252 2328 A
- 2622(of)S
- (blocks,)294 2748 A
- (but)126 3084 A
- (not)126 3252 A
- (after)210 3420 A
- 3672(a)S
- (seek.)210 3756 A
- 4008(*/)S
- 1980 V
- (23887)210 648 A
- 1110(if)S
- ((blocks_ahead)546 1236 A
- 1824(<)S
- (BLOCKS_MINIMUM)588 1908 A
- 2538(&&)S
- (rip->i_seek)462 2664 A
- 3168(==)S
- (NO_SEEK))336 3294 A
- 2070 V
- (23888)210 648 A
- (blocks_ahead)504 1362 A
- 1908(=)S
- (BLOCKS_MINIMUM;)630 1992 A
- 2160 V
- (23889)210 648 A
- 2250 V
- (23890)210 648 A
- 1110(/*)S
- (Can't)210 1236 A
- 1488(go)S
- (past)168 1614 A
- (end)126 1824 A
- 1992(of)S
- (file.)210 2118 A
- 2370(*/)S
- 2340 V
- (23891)210 648 A
- 1110(if)S
- ((blocks_ahead)546 1236 A
- 1824(>)S
- (blocks_left))504 1908 A
- (blocks_ahead)504 2454 A
- 3000(=)S
- (blocks_left;)504 3084 A
- 2430 V
- (23892)210 648 A
- 2520 V
- (23893)210 648 A
- (read_q_size)462 1110 A
- 1614(=)S
- 1698(0;)S
- 2610 V
- (23894)210 648 A
- 2700 V
- (23895)210 648 A
- 1110(/*)S
- (Acquire)294 1236 A
- (block)210 1572 A
- (buffers.)336 1824 A
- 2202(*/)S
- 2790 V
- (23896)210 648 A
- (for)126 1110 A
- ((;;))168 1278 A
- 1488({)S
- 2880 V
- (23897)210 648 A
- (read_q[read_q_size++])882 1362 A
- 2286(=)S
- (bp;)126 2370 A
- 2970 V
- (23898)210 648 A
- 3060 V
- (23899)210 648 A
- 1362(if)S
- ((--blocks_ahead)630 1488 A
- 2160(==)S
- 2286(0))S
- (break;)252 2412 A
- 3150 V
- (23900)210 648 A
- 3240 V
- (23901)210 648 A
- 1362(/*)S
- (Don't)210 1488 A
- (trash)210 1740 A
- (the)126 1992 A
- (cache,)252 2160 A
- (leave)210 2454 A
- 2706(4)S
- (free.)210 2790 A
- 3042(*/)S
- 3330 V
- (23902)210 648 A
- 1362(if)S
- ((bufs_in_use)504 1488 A
- 2034(>=)S
- (NR_BUFS)294 2160 A
- 2496(-)S
- 2580(4))S
- (break;)252 2706 A
- 3420 V
- (23903)210 648 A
- 3510 V
- (23904)210 648 A
- (block++;)336 1362 A
- 3600 V
- (23905)210 648 A
- 3690 V
- (23906)210 648 A
- 1362(bp)S
- 1488(=)S
- (get_block(dev,)588 1572 A
- (block,)252 2202 A
- (PREFETCH);)420 2496 A
- 3780 V
- (23907)210 648 A
- 1362(if)S
- ((bp->b_dev)420 1488 A
- 1950(!=)S
- (NO_DEV))294 2076 A
- 2412({)S
- 3870 V
- (23908)210 648 A
- 1698(/*)S
- (Oops,)210 1824 A
- (block)210 2076 A
- (already)294 2328 A
- 2664(in)S
- (the)126 2790 A
- (cache,)252 2958 A
- (get)126 3252 A
- (out.)168 3420 A
- 3630(*/)S
- 3960 V
- (23909)210 648 A
- (put_block(bp,)546 1698 A
- (FULL_DATA_BLOCK);)714 2286 A
- 4050 V
- (23910)210 648 A
- (break;)252 1698 A
- 4140 V
- (23911)210 648 A
- 1362(})S
- 4230 V
- (23912)210 648 A
- 1110(})S
- 4320 V
- (23913)210 648 A
- (rw_scattered(dev,)714 1110 A
- (read_q,)294 1866 A
- (read_q_size,)504 2202 A
- (READING);)378 2748 A
- 4410 V
- (23914)210 648 A
- (return(get_block(dev,)882 1110 A
- (baseblock,)420 2034 A
- (NORMAL));)378 2496 A
- 4500 V
- (23915)210 648 A
- 1026(})S
- 5040 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 5130 V
- (src/fs/write.c)588 2034 A
- 5220 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 5400 V
- (24000)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- 1572(is)S
- (the)126 1698 A
- (counterpart)462 1866 A
- 2370(of)S
- ("read.c".)378 2496 A
- 2958(It)S
- (contains)336 3084 A
- (the)126 3462 A
- (code)168 3630 A
- (for)126 3840 A
- (writing)294 4008 A
- 5490 V
- (24001)210 648 A
- 1068(*)S
- (insofar)294 1152 A
- 1488(as)S
- (this)168 1614 A
- 1824(is)S
- (not)126 1950 A
- (contained)378 2118 A
- 2538(in)S
- (read_write().)546 2664 A
- 5580 V
- (24002)210 648 A
- 1068(*)S
- 5670 V
- (24003)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entry)210 1320 A
- (points)252 1572 A
- (into)168 1866 A
- (this)168 2076 A
- (file)168 2286 A
- (are)126 2496 A
- 5760 V
- (24004)210 648 A
- 1068(*)S
- (do_write:)378 1236 A
- (call)168 1824 A
- (read_write)420 2034 A
- 2496(to)S
- (perform)294 2622 A
- (the)126 2958 A
- (WRITE)210 3126 A
- (system)252 3378 A
- (call)168 3672 A
- 5850 V
- (24005)210 648 A
- 1068(*)S
- (clear_zone:)462 1236 A
- (erase)210 1824 A
- 2076(a)S
- (zone)168 2160 A
- 2370(in)S
- (the)126 2496 A
- (middle)252 2664 A
- 2958(of)S
- 3084(a)S
- (file)168 3168 A
- 5940 V
- (24006)210 648 A
- 1068(*)S
- (new_block:)420 1236 A
- (acquire)294 1824 A
- 2160(a)S
- (new)126 2244 A
- (block)210 2412 A
- 6030 V
- (24007)210 648 A
- 1068(*/)S
- 6120 V
- (24008)210 648 A
- 6210 V
- (24009)210 648 A
- (#include)336 1026 A
- ("fs.h")252 1404 A
- 8418 V
- EP
- %%Page: 330 330
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (330)180 648 A
- 11 R
- 2132(File:)S
- 2365(src/fs/write.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (24010)210 648 A
- (#include)336 1026 A
- (<string.h>)420 1404 A
- 990 V
- (24011)210 648 A
- (#include)336 1026 A
- ("buf.h")294 1404 A
- 1080 V
- (24012)210 648 A
- (#include)336 1026 A
- ("file.h")336 1404 A
- 1170 V
- (24013)210 648 A
- (#include)336 1026 A
- ("fproc.h")378 1404 A
- 1260 V
- (24014)210 648 A
- (#include)336 1026 A
- ("inode.h")378 1404 A
- 1350 V
- (24015)210 648 A
- (#include)336 1026 A
- ("super.h")378 1404 A
- 1440 V
- (24016)210 648 A
- 1530 V
- (24017)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (write_map,)420 2034 A
- ((struct)294 2496 A
- (inode)210 2832 A
- (*rip,)210 3084 A
- (off_t)210 3336 A
- (position,)378 3588 A
- 1620 V
- (24018)210 648 A
- (zone_t)252 2034 A
- (new_zone))378 2328 A
- 4050();)S
- 1710 V
- (24019)210 648 A
- 1800 V
- (24020)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (wr_indir,)378 2076 A
- ((struct)294 2496 A
- (buf)126 2832 A
- (*bp,)168 3000 A
- (int)126 3210 A
- (index,)252 3378 A
- (zone_t)252 3672 A
- (zone))210 3966 A
- 4218();)S
- 1890 V
- (24021)210 648 A
- 1980 V
- (24022)210 648 A
- (/*===========================================================================*)3276 1026 A
- 2070 V
- (24023)210 648 A
- 1068(*)S
- (do_write)336 2370 A
- 4260(*)S
- 2160 V
- (24024)210 648 A
- (*===========================================================================*/)3276 1068 A
- 2250 V
- (24025)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_write())420 1488 A
- 2340 V
- (24026)210 648 A
- 1026({)S
- 2430 V
- (24027)210 648 A
- 1026(/*)S
- (Perform)294 1152 A
- (the)126 1488 A
- (write(fd,)378 1656 A
- (buffer,)294 2076 A
- (nbytes))294 2412 A
- (system)252 2748 A
- (call.)210 3042 A
- 3294(*/)S
- 2520 V
- (24028)210 648 A
- 2610 V
- (24029)210 648 A
- (return(read_write(WRITING));)1176 1110 A
- 2700 V
- (24030)210 648 A
- 1026(})S
- 2970 V
- (24033)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3060 V
- (24034)210 648 A
- 1068(*)S
- (write_map)378 2370 A
- 4260(*)S
- 3150 V
- (24035)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3240 V
- (24036)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (write_map(rip,)588 1530 A
- (position,)378 2160 A
- (new_zone))378 2580 A
- 3330 V
- (24037)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (inode)210 2958 A
- 3210(to)S
- 3336(be)S
- (changed)294 3462 A
- 3798(*/)S
- 3420 V
- (24038)210 648 A
- (off_t)210 1026 A
- (position;)378 1278 A
- 2370(/*)S
- (file)168 2496 A
- (address)294 2706 A
- 3042(to)S
- 3168(be)S
- (mapped)252 3294 A
- 3588(*/)S
- 3510 V
- (24039)210 648 A
- (zone_t)252 1026 A
- (new_zone;)378 1320 A
- 2370(/*)S
- (zone)168 2496 A
- 2706(#)S
- 2790(to)S
- 2916(be)S
- (inserted)336 3042 A
- 3420(*/)S
- 3600 V
- (24040)210 648 A
- 1026({)S
- 3690 V
- (24041)210 648 A
- 1026(/*)S
- (Write)210 1152 A
- 1404(a)S
- (new)126 1488 A
- (zone)168 1656 A
- (into)168 1866 A
- 2076(an)S
- (inode.)252 2202 A
- 2496(*/)S
- 3780 V
- (24042)210 648 A
- (int)126 1110 A
- (scale,)252 1278 A
- (ind_ex,)294 1572 A
- (new_ind,)336 1908 A
- (new_dbl,)336 2286 A
- (zones,)252 2664 A
- (nr_indirects,)546 2958 A
- (single,)294 3546 A
- (zindex,)294 3882 A
- (ex;)126 4218 A
- 3870 V
- (24043)210 648 A
- (zone_t)252 1110 A
- 1404(z,)S
- (z1;)126 1530 A
- 3960 V
- (24044)210 648 A
- (register)336 1110 A
- (block_t)294 1488 A
- 1824(b;)S
- 4050 V
- (24045)210 648 A
- (long)168 1110 A
- (excess,)294 1320 A
- (zone;)210 1656 A
- 4140 V
- (24046)210 648 A
- (struct)252 1110 A
- (buf)126 1404 A
- (*bp;)168 1572 A
- 4230 V
- (24047)210 648 A
- 4320 V
- (24048)210 648 A
- (rip->i_dirt)462 1110 A
- 1614(=)S
- (DIRTY;)252 1698 A
- 2370(/*)S
- (inode)210 2496 A
- (will)168 2748 A
- 2958(be)S
- (changed)294 3084 A
- 3420(*/)S
- 4410 V
- (24049)210 648 A
- 1110(bp)S
- 1236(=)S
- (NIL_BUF;)336 1320 A
- 4500 V
- (24050)210 648 A
- (scale)210 1110 A
- 1362(=)S
- (rip->i_sp->s_log_zone_size;)1134 1446 A
- 3042(/*)S
- (for)126 3168 A
- (zone-block)420 3336 A
- (conversion)420 3798 A
- 4260(*/)S
- 4590 V
- (24051)210 648 A
- (zone)168 1110 A
- 1320(=)S
- ((position/BLOCK_SIZE))882 1404 A
- 2328(>>)S
- (scale;)252 2454 A
- 3042(/*)S
- (relative)336 3168 A
- (zone)168 3546 A
- 3756(#)S
- 3840(to)S
- (insert)252 3966 A
- 4260(*/)S
- 4680 V
- (24052)210 648 A
- (zones)210 1110 A
- 1362(=)S
- (rip->i_ndzones;)630 1446 A
- 2370(/*)S
- 2496(#)S
- (direct)252 2580 A
- (zones)210 2874 A
- 3126(in)S
- (the)126 3252 A
- (inode)210 3420 A
- 3672(*/)S
- 4770 V
- (24053)210 648 A
- (nr_indirects)504 1110 A
- 1656(=)S
- (rip->i_nindirs;/*)714 1740 A
- 2496(#)S
- (indirect)336 2580 A
- (zones)210 2958 A
- (per)126 3210 A
- (indirect)336 3378 A
- (block)210 3756 A
- 4008(*/)S
- 4860 V
- (24054)210 648 A
- 4950 V
- (24055)210 648 A
- 1110(/*)S
- 1236(Is)S
- ('position')420 1362 A
- 1824(to)S
- 1950(be)S
- (found)210 2076 A
- 2328(in)S
- (the)126 2454 A
- (inode)210 2622 A
- (itself?)294 2874 A
- 3210(*/)S
- 5040 V
- (24056)210 648 A
- 1110(if)S
- ((zone)210 1236 A
- 1488(<)S
- (zones))252 1572 A
- 1866({)S
- 5130 V
- (24057)210 648 A
- (zindex)252 1362 A
- 1656(=)S
- ((int))210 1740 A
- (zone;)210 1992 A
- 2370(/*)S
- 2496(we)S
- (need)168 2622 A
- 2832(an)S
- (integer)294 2958 A
- (here)168 3294 A
- 3504(*/)S
- 5220 V
- (24058)210 648 A
- (rip->i_zone[zindex])798 1362 A
- 2202(=)S
- (new_zone;)378 2286 A
- 5310 V
- (24059)210 648 A
- (return(OK);)462 1362 A
- 5400 V
- (24060)210 648 A
- 1110(})S
- 5490 V
- (24061)210 648 A
- 5580 V
- (24062)210 648 A
- 1110(/*)S
- 1236(It)S
- 1362(is)S
- (not)126 1488 A
- 1656(in)S
- (the)126 1782 A
- (inode,)252 1950 A
- 2244(so)S
- 2370(it)S
- (must)168 2496 A
- 2706(be)S
- (single)252 2832 A
- 3126(or)S
- (double)252 3252 A
- (indirect.)378 3546 A
- 3966(*/)S
- 5670 V
- (24063)210 648 A
- (excess)252 1110 A
- 1404(=)S
- (zone)168 1488 A
- 1698(-)S
- (zones;)252 1782 A
- 2370(/*)S
- (first)210 2496 A
- (Vx_NR_DZONES)504 2748 A
- (don't)210 3294 A
- (count)210 3546 A
- 3798(*/)S
- 5760 V
- (24064)210 648 A
- (new_ind)294 1110 A
- 1446(=)S
- (FALSE;)252 1530 A
- 5850 V
- (24065)210 648 A
- (new_dbl)294 1110 A
- 1446(=)S
- (FALSE;)252 1530 A
- 5940 V
- (24066)210 648 A
- 6030 V
- (24067)210 648 A
- 1110(if)S
- ((excess)294 1236 A
- 1572(<)S
- (nr_indirects))546 1656 A
- 2244({)S
- 6120 V
- (24068)210 648 A
- 1362(/*)S
- ('position')420 1488 A
- (can)126 1950 A
- 2118(be)S
- (located)294 2244 A
- (via)126 2580 A
- (the)126 2748 A
- (single)252 2916 A
- (indirect)336 3210 A
- (block.)252 3588 A
- 3882(*/)S
- 6210 V
- (24069)210 648 A
- 1362(z1)S
- 1488(=)S
- (rip->i_zone[zones];)798 1572 A
- 2706(/*)S
- (single)252 2832 A
- (indirect)336 3126 A
- (zone)168 3504 A
- 3714(*/)S
- 8418 V
- EP
- %%Page: 331 331
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2132(File:)S
- 2365(src/fs/write.c)S
- 12 B
- (331)180 4248 A
- 900 V
- 7 LST
- (24070)210 648 A
- (single)252 1362 A
- 1656(=)S
- (TRUE;)210 1740 A
- 990 V
- (24071)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 1080 V
- (24072)210 648 A
- 1362(/*)S
- ('position')420 1488 A
- (can)126 1950 A
- 2118(be)S
- (located)294 2244 A
- (via)126 2580 A
- (the)126 2748 A
- (double)252 2916 A
- (indirect)336 3210 A
- (block.)252 3588 A
- 3882(*/)S
- 1170 V
- (24073)210 648 A
- 1362(if)S
- 1488(()S
- 1572((z)S
- 1698(=)S
- (rip->i_zone[zones+1]))882 1782 A
- 2706(==)S
- (NO_ZONE))336 2832 A
- 3210({)S
- 1260 V
- (24074)210 648 A
- 1698(/*)S
- (Create)252 1824 A
- (the)126 2118 A
- (double)252 2286 A
- (indirect)336 2580 A
- (block.)252 2958 A
- 3252(*/)S
- 1350 V
- (24075)210 648 A
- 1698(if)S
- 1824(()S
- 1908((z)S
- 2034(=)S
- (alloc_zone(rip->i_dev,)924 2118 A
- (rip->i_zone[0])))672 3084 A
- 3798(==)S
- (NO_ZONE))336 3924 A
- 1440 V
- (24076)210 648 A
- (return(err_code);)714 2034 A
- 1530 V
- (24077)210 648 A
- (rip->i_zone[zones+1])840 1698 A
- 2580(=)S
- 2664(z;)S
- 1620 V
- (24078)210 648 A
- (new_dbl)294 1698 A
- 2034(=)S
- (TRUE;)210 2118 A
- 2370(/*)S
- (set)126 2496 A
- (flag)168 2664 A
- (for)126 2874 A
- (later)210 3042 A
- 3294(*/)S
- 1710 V
- (24079)210 648 A
- 1362(})S
- 1800 V
- (24080)210 648 A
- 1890 V
- (24081)210 648 A
- 1362(/*)S
- (Either)252 1488 A
- (way,)168 1782 A
- ('z')126 1992 A
- 2160(is)S
- (zone)168 2286 A
- (number)252 2496 A
- (for)126 2790 A
- (double)252 2958 A
- (indirect)336 3252 A
- (block.)252 3630 A
- 3924(*/)S
- 1980 V
- (24082)210 648 A
- (excess)252 1362 A
- 1656(-=)S
- (nr_indirects;)546 1782 A
- 2370(/*)S
- (single)252 2496 A
- (indirect)336 2790 A
- (doesn't)294 3168 A
- (count)210 3504 A
- 3756(*/)S
- 2070 V
- (24083)210 648 A
- (ind_ex)252 1362 A
- 1656(=)S
- ((int))210 1740 A
- ((excess)294 1992 A
- 2328(/)S
- (nr_indirects);)588 2412 A
- 2160 V
- (24084)210 648 A
- (excess)252 1362 A
- 1656(=)S
- (excess)252 1740 A
- 2034(%)S
- (nr_indirects;)546 2118 A
- 2250 V
- (24085)210 648 A
- 1362(if)S
- ((ind_ex)294 1488 A
- 1824(>=)S
- (nr_indirects))546 1950 A
- (return(EFBIG);)588 2538 A
- 2340 V
- (24086)210 648 A
- 1362(b)S
- 1446(=)S
- ((block_t))378 1530 A
- 1950(z)S
- 2034(<<)S
- (scale;)252 2160 A
- 2430 V
- (24087)210 648 A
- 1362(bp)S
- 1488(=)S
- (get_block(rip->i_dev,)882 1572 A
- 2496(b,)S
- ((new_dbl)336 2622 A
- 3000(?)S
- (NO_READ)294 3084 A
- 3420(:)S
- (NORMAL));)378 3504 A
- 2520 V
- (24088)210 648 A
- 1362(if)S
- ((new_dbl))378 1488 A
- (zero_block(bp);)630 1908 A
- 2610 V
- (24089)210 648 A
- 1362(z1)S
- 1488(=)S
- (rd_indir(bp,)504 1572 A
- (ind_ex);)336 2118 A
- 2700 V
- (24090)210 648 A
- (single)252 1362 A
- 1656(=)S
- (FALSE;)252 1740 A
- 2790 V
- (24091)210 648 A
- 1110(})S
- 2880 V
- (24092)210 648 A
- 2970 V
- (24093)210 648 A
- 1110(/*)S
- 1236(z1)S
- 1362(is)S
- (now)126 1488 A
- (single)252 1656 A
- (indirect)336 1950 A
- (zone;)210 2328 A
- ('excess')336 2580 A
- 2958(is)S
- (index.)252 3084 A
- 3378(*/)S
- 3060 V
- (24094)210 648 A
- 1110(if)S
- ((z1)126 1236 A
- 1404(==)S
- (NO_ZONE))336 1530 A
- 1908({)S
- 3150 V
- (24095)210 648 A
- 1362(/*)S
- (Create)252 1488 A
- (indirect)336 1782 A
- (block)210 2160 A
- (and)126 2412 A
- (store)210 2580 A
- (zone)168 2832 A
- 3042(#)S
- 3126(in)S
- (inode)210 3252 A
- 3504(or)S
- (dbl)126 3630 A
- (indir)210 3798 A
- (blk.)168 4050 A
- 4260(*/)S
- 3240 V
- (24096)210 648 A
- 1362(z1)S
- 1488(=)S
- (alloc_zone(rip->i_dev,)924 1572 A
- (rip->i_zone[0]);)672 2538 A
- 3330 V
- (24097)210 648 A
- 1362(if)S
- ((single))336 1488 A
- 3420 V
- (24098)210 648 A
- (rip->i_zone[zones])756 1698 A
- 2496(=)S
- (z1;)126 2580 A
- 3042(/*)S
- (update)252 3168 A
- (inode)210 3462 A
- 3714(*/)S
- 3510 V
- (24099)210 648 A
- (else)168 1362 A
- 3600 V
- (24100)210 648 A
- (wr_indir(bp,)504 1698 A
- (ind_ex,)294 2244 A
- (z1);)168 2580 A
- 3042(/*)S
- (update)252 3168 A
- (dbl)126 3462 A
- (indir)210 3630 A
- 3882(*/)S
- 3690 V
- (24101)210 648 A
- 3780 V
- (24102)210 648 A
- (new_ind)294 1362 A
- 1698(=)S
- (TRUE;)210 1782 A
- 3870 V
- (24103)210 648 A
- 1362(if)S
- ((bp)126 1488 A
- 1656(!=)S
- (NIL_BUF))336 1782 A
- (bp->b_dirt)420 2160 A
- 2622(=)S
- (DIRTY;)252 2706 A
- 3042(/*)S
- 3168(if)S
- (double)252 3294 A
- (ind,)168 3588 A
- 3798(it)S
- 3924(is)S
- (dirty*/)294 4050 A
- 3960 V
- (24104)210 648 A
- 1362(if)S
- ((z1)126 1488 A
- 1656(==)S
- (NO_ZONE))336 1782 A
- 2160({)S
- 4050 V
- (24105)210 648 A
- (put_block(bp,)546 1698 A
- (INDIRECT_BLOCK);)672 2286 A
- 3042(/*)S
- (release)294 3168 A
- (dbl)126 3504 A
- (indirect)336 3672 A
- (blk)126 4050 A
- 4218(*/)S
- 4140 V
- (24106)210 648 A
- (return(err_code);)714 1698 A
- 2706(/*)S
- (couldn't)336 2832 A
- (create)252 3210 A
- (single)252 3504 A
- (ind)126 3798 A
- 3966(*/)S
- 4230 V
- (24107)210 648 A
- 1362(})S
- 4320 V
- (24108)210 648 A
- 1110(})S
- 4410 V
- (24109)210 648 A
- (put_block(bp,)546 1110 A
- (INDIRECT_BLOCK);)672 1698 A
- 2706(/*)S
- (release)294 2832 A
- (double)252 3168 A
- (indirect)336 3462 A
- (blk)126 3840 A
- 4008(*/)S
- 4500 V
- (24110)210 648 A
- 4590 V
- (24111)210 648 A
- 1110(/*)S
- 1236(z1)S
- 1362(is)S
- (indirect)336 1488 A
- (block's)294 1866 A
- (zone)168 2202 A
- (number.)294 2412 A
- 2748(*/)S
- 4680 V
- (24112)210 648 A
- 1110(b)S
- 1194(=)S
- ((block_t))378 1278 A
- 1698(z1)S
- 1824(<<)S
- (scale;)252 1950 A
- 4770 V
- (24113)210 648 A
- 1110(bp)S
- 1236(=)S
- (get_block(rip->i_dev,)882 1320 A
- 2244(b,)S
- ((new_ind)336 2370 A
- 2748(?)S
- (NO_READ)294 2832 A
- 3168(:)S
- (NORMAL))294 3252 A
- 3588();)S
- 4860 V
- (24114)210 648 A
- 1110(if)S
- ((new_ind))378 1236 A
- (zero_block(bp);)630 1656 A
- 4950 V
- (24115)210 648 A
- 1110(ex)S
- 1236(=)S
- ((int))210 1320 A
- (excess;)294 1572 A
- 2706(/*)S
- 2832(we)S
- (need)168 2958 A
- 3168(an)S
- (int)126 3294 A
- (here)168 3462 A
- 3672(*/)S
- 5040 V
- (24116)210 648 A
- (wr_indir(bp,)504 1110 A
- (ex,)126 1656 A
- (new_zone);)420 1824 A
- 5130 V
- (24117)210 648 A
- (bp->b_dirt)420 1110 A
- 1572(=)S
- (DIRTY;)252 1656 A
- 5220 V
- (24118)210 648 A
- (put_block(bp,)546 1110 A
- (INDIRECT_BLOCK);)672 1698 A
- 5310 V
- (24119)210 648 A
- 5400 V
- (24120)210 648 A
- (return(OK);)462 1110 A
- 5490 V
- (24121)210 648 A
- 1026(})S
- 5760 V
- (24124)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5850 V
- (24125)210 648 A
- 1068(*)S
- (wr_indir)336 2370 A
- 4260(*)S
- 5940 V
- (24126)210 648 A
- (*===========================================================================*/)3276 1068 A
- 6030 V
- (24127)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (wr_indir(bp,)504 1572 A
- (index,)252 2118 A
- (zone))210 2412 A
- 6120 V
- (24128)210 648 A
- (struct)252 1026 A
- (buf)126 1320 A
- (*bp;)168 1488 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (indirect)336 2958 A
- (block)210 3336 A
- 3588(*/)S
- 6210 V
- (24129)210 648 A
- (int)126 1026 A
- (index;)252 1194 A
- 2370(/*)S
- (index)210 2496 A
- (into)168 2748 A
- (*bp)126 2958 A
- 3126(*/)S
- 8418 V
- EP
- %%Page: 332 332
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (332)180 648 A
- 11 R
- 2132(File:)S
- 2365(src/fs/write.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (24130)210 648 A
- (zone_t)252 1026 A
- (zone;)210 1320 A
- 2370(/*)S
- (zone)168 2496 A
- 2706(to)S
- (write)210 2832 A
- 3084(*/)S
- 990 V
- (24131)210 648 A
- 1026({)S
- 1080 V
- (24132)210 648 A
- 1026(/*)S
- (Given)210 1152 A
- 1404(a)S
- (pointer)294 1488 A
- 1824(to)S
- 1950(an)S
- (indirect)336 2076 A
- (block,)252 2454 A
- (write)210 2748 A
- (one)126 3000 A
- (entry.)252 3168 A
- 3462(*/)S
- 1170 V
- (24133)210 648 A
- 1260 V
- (24134)210 648 A
- (struct)252 1110 A
- (super_block)462 1404 A
- (*sp;)168 1908 A
- 1350 V
- (24135)210 648 A
- 1440 V
- (24136)210 648 A
- 1110(sp)S
- 1236(=)S
- (get_super(bp->b_dev);)882 1320 A
- 2370(/*)S
- (need)168 2496 A
- (super)210 2706 A
- (block)210 2958 A
- 3210(to)S
- (find)168 3336 A
- (file)168 3546 A
- (sys)126 3756 A
- (type)168 3924 A
- 4134(*/)S
- 1530 V
- (24137)210 648 A
- 1620 V
- (24138)210 648 A
- 1110(/*)S
- (write)210 1236 A
- 1488(a)S
- (zone)168 1572 A
- (into)168 1782 A
- 1992(an)S
- (indirect)336 2118 A
- (block)210 2496 A
- 2748(*/)S
- 1710 V
- (24139)210 648 A
- 1110(if)S
- ((sp->s_version)588 1236 A
- 1866(==)S
- (V1))126 1992 A
- 1800 V
- (24140)210 648 A
- (bp->b_v1_ind[index])798 1362 A
- 2202(=)S
- ((zone1_t))378 2286 A
- (conv2(sp->s_native,)798 2706 A
- ((int))210 3546 A
- (zone);)252 3840 A
- 1890 V
- (24141)210 648 A
- (else)168 1110 A
- 1980 V
- (24142)210 648 A
- (bp->b_v2_ind[index])798 1362 A
- 2202(=)S
- ((zone_t))336 2286 A
- (conv4(sp->s_native,)798 2706 A
- ((long))252 3546 A
- (zone);)252 3840 A
- 2070 V
- (24143)210 648 A
- 1026(})S
- 2340 V
- (24146)210 648 A
- (/*===========================================================================*)3276 1026 A
- 2430 V
- (24147)210 648 A
- 1068(*)S
- (clear_zone)420 2370 A
- 4260(*)S
- 2520 V
- (24148)210 648 A
- (*===========================================================================*/)3276 1068 A
- 2610 V
- (24149)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (clear_zone(rip,)630 1530 A
- (pos,)168 2202 A
- (flag))210 2412 A
- 2700 V
- (24150)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (inode)210 2496 A
- 2748(to)S
- (clear)210 2874 A
- 3126(*/)S
- 2790 V
- (24151)210 648 A
- (off_t)210 1026 A
- (pos;)168 1278 A
- 2370(/*)S
- (points)252 2496 A
- 2790(to)S
- (block)210 2916 A
- 3168(to)S
- (clear)210 3294 A
- 3546(*/)S
- 2880 V
- (24152)210 648 A
- (int)126 1026 A
- (flag;)210 1194 A
- 2370(/*)S
- 2496(0)S
- 2580(if)S
- (called)252 2706 A
- 3000(by)S
- (read_write,)462 3126 A
- 3630(1)S
- 3714(by)S
- (new_block)378 3840 A
- 4260(*/)S
- 2970 V
- (24153)210 648 A
- 1026({)S
- 3060 V
- (24154)210 648 A
- 1026(/*)S
- (Zero)168 1152 A
- 1362(a)S
- (zone,)210 1446 A
- (possibly)336 1698 A
- (starting)336 2076 A
- 2454(in)S
- (the)126 2580 A
- (middle.)294 2748 A
- (The)126 3126 A
- (parameter)378 3294 A
- ('pos')210 3714 A
- (gives)210 3966 A
- 3150 V
- (24155)210 648 A
- 1068(*)S
- 1152(a)S
- (byte)168 1236 A
- 1446(in)S
- (the)126 1572 A
- (first)210 1740 A
- (block)210 1992 A
- 2244(to)S
- 2370(be)S
- (zeroed.)294 2496 A
- (Clearzone())462 2874 A
- 3378(is)S
- (called)252 3504 A
- (from)168 3798 A
- 3240 V
- (24156)210 648 A
- 1068(*)S
- (read_write)420 1152 A
- (and)126 1614 A
- (new_block().)504 1782 A
- 3330 V
- (24157)210 648 A
- 1068(*/)S
- 3420 V
- (24158)210 648 A
- 3510 V
- (24159)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (buf)126 1782 A
- (*bp;)168 1950 A
- 3600 V
- (24160)210 648 A
- (register)336 1110 A
- (block_t)294 1488 A
- 1824(b,)S
- (blo,)168 1950 A
- (bhi;)168 2160 A
- 3690 V
- (24161)210 648 A
- (register)336 1110 A
- (off_t)210 1488 A
- (next;)210 1740 A
- 3780 V
- (24162)210 648 A
- (register)336 1110 A
- (int)126 1488 A
- (scale;)252 1656 A
- 3870 V
- (24163)210 648 A
- (register)336 1110 A
- (zone_t)252 1488 A
- (zone_size;)420 1782 A
- 3960 V
- (24164)210 648 A
- 4050 V
- (24165)210 648 A
- 1110(/*)S
- 1236(If)S
- (the)126 1362 A
- (block)210 1530 A
- (size)168 1782 A
- (and)126 1992 A
- (zone)168 2160 A
- (size)168 2370 A
- (are)126 2580 A
- (the)126 2748 A
- (same,)210 2916 A
- (clear_zone())504 3168 A
- (not)126 3714 A
- (needed.)294 3882 A
- 4218(*/)S
- 4140 V
- (24166)210 648 A
- (scale)210 1110 A
- 1362(=)S
- (rip->i_sp->s_log_zone_size;)1134 1446 A
- 4230 V
- (24167)210 648 A
- 1110(if)S
- ((scale)252 1236 A
- 1530(==)S
- 1656(0))S
- (return;)294 1782 A
- 4320 V
- (24168)210 648 A
- 4410 V
- (24169)210 648 A
- (zone_size)378 1110 A
- 1530(=)S
- ((zone_t))336 1614 A
- (BLOCK_SIZE)420 1992 A
- 2454(<<)S
- (scale;)252 2580 A
- 4500 V
- (24170)210 648 A
- 1110(if)S
- ((flag)210 1236 A
- 1488(==)S
- 1614(1))S
- (pos)126 1740 A
- 1908(=)S
- ((pos/zone_size))630 1992 A
- 2664(*)S
- (zone_size;)420 2748 A
- 4590 V
- (24171)210 648 A
- (next)168 1110 A
- 1320(=)S
- (pos)126 1404 A
- 1572(+)S
- (BLOCK_SIZE)420 1656 A
- 2118(-)S
- 2202(1;)S
- 4680 V
- (24172)210 648 A
- 4770 V
- (24173)210 648 A
- 1110(/*)S
- 1236(If)S
- ('pos')210 1362 A
- 1614(is)S
- 1740(in)S
- (the)126 1866 A
- (last)168 2034 A
- (block)210 2244 A
- 2496(of)S
- 2622(a)S
- (zone,)210 2706 A
- 2958(do)S
- (not)126 3084 A
- (clear)210 3252 A
- (the)126 3504 A
- (zone.)210 3672 A
- 3924(*/)S
- 4860 V
- (24174)210 648 A
- 1110(if)S
- ((next/zone_size)630 1236 A
- 1908(!=)S
- (pos/zone_size))588 2034 A
- (return;)294 2664 A
- 4950 V
- (24175)210 648 A
- 1110(if)S
- 1236(()S
- ((blo)168 1320 A
- 1530(=)S
- (read_map(rip,)546 1614 A
- (next)))252 2202 A
- 2496(==)S
- (NO_BLOCK))378 2622 A
- (return;)294 3042 A
- 5040 V
- (24176)210 648 A
- (bhi)126 1110 A
- 1278(=)S
- 1362(()S
- (((blo>>scale)+1))672 1488 A
- 2202(<<)S
- (scale))252 2328 A
- 2706(-)S
- 2790(1;)S
- 5130 V
- (24177)210 648 A
- 5220 V
- (24178)210 648 A
- 1110(/*)S
- (Clear)210 1236 A
- (all)126 1488 A
- (the)126 1656 A
- (blocks)252 1824 A
- (between)294 2118 A
- ('blo')210 2454 A
- (and)126 2706 A
- ('bhi'.)252 2874 A
- 3168(*/)S
- 5310 V
- (24179)210 648 A
- (for)126 1110 A
- 1278((b)S
- 1404(=)S
- (blo;)168 1488 A
- 1698(b)S
- 1782(<=)S
- (bhi;)168 1908 A
- (b++))168 2118 A
- 2328({)S
- 5400 V
- (24180)210 648 A
- 1362(bp)S
- 1488(=)S
- (get_block(rip->i_dev,)882 1572 A
- 2496(b,)S
- (NO_READ);)378 2622 A
- 5490 V
- (24181)210 648 A
- (zero_block(bp);)630 1362 A
- 5580 V
- (24182)210 648 A
- (put_block(bp,)546 1362 A
- (FULL_DATA_BLOCK);)714 1950 A
- 5670 V
- (24183)210 648 A
- 1110(})S
- 5760 V
- (24184)210 648 A
- 1026(})S
- 6030 V
- (24187)210 648 A
- (/*===========================================================================*)3276 1026 A
- 6120 V
- (24188)210 648 A
- 1068(*)S
- (new_block)378 2370 A
- 4260(*)S
- 6210 V
- (24189)210 648 A
- (*===========================================================================*/)3276 1068 A
- 8418 V
- EP
- %%Page: 333 333
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2132(File:)S
- 2365(src/fs/write.c)S
- 12 B
- (333)180 4248 A
- 900 V
- 7 LST
- (24190)210 648 A
- (PUBLIC)252 1026 A
- (struct)252 1320 A
- (buf)126 1614 A
- (*new_block(rip,)630 1782 A
- (position))378 2454 A
- 990 V
- (24191)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (inode)210 2958 A
- 3210(*/)S
- 1080 V
- (24192)210 648 A
- (off_t)210 1026 A
- (position;)378 1278 A
- 2370(/*)S
- (file)168 2496 A
- (pointer)294 2706 A
- 3042(*/)S
- 1170 V
- (24193)210 648 A
- 1026({)S
- 1260 V
- (24194)210 648 A
- 1026(/*)S
- (Acquire)294 1152 A
- 1488(a)S
- (new)126 1572 A
- (block)210 1740 A
- (and)126 1992 A
- (return)252 2160 A
- 2454(a)S
- (pointer)294 2538 A
- 2874(to)S
- (it.)126 3000 A
- (Doing)210 3210 A
- 3462(so)S
- (may)126 3588 A
- (require)294 3756 A
- 1350 V
- (24195)210 648 A
- 1068(*)S
- (allocating)420 1152 A
- 1614(a)S
- (complete)336 1698 A
- (zone,)210 2076 A
- (and)126 2328 A
- (then)168 2496 A
- (returning)378 2706 A
- (the)126 3126 A
- (initial)294 3294 A
- (block.)252 3630 A
- 1440 V
- (24196)210 648 A
- 1068(*)S
- 1152(On)S
- (the)126 1278 A
- (other)210 1446 A
- (hand,)210 1698 A
- (the)126 1950 A
- (current)294 2118 A
- (zone)168 2454 A
- (may)126 2664 A
- (still)210 2832 A
- (have)168 3084 A
- (some)168 3294 A
- (unused)252 3504 A
- (blocks.)294 3798 A
- 1530 V
- (24197)210 648 A
- 1068(*/)S
- 1620 V
- (24198)210 648 A
- 1710 V
- (24199)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (buf)126 1782 A
- (*bp;)168 1950 A
- 1800 V
- (24200)210 648 A
- (block_t)294 1110 A
- 1446(b,)S
- (base_block;)462 1572 A
- 1890 V
- (24201)210 648 A
- (zone_t)252 1110 A
- 1404(z;)S
- 1980 V
- (24202)210 648 A
- (zone_t)252 1110 A
- (zone_size;)420 1404 A
- 2070 V
- (24203)210 648 A
- (int)126 1110 A
- (scale,)252 1278 A
- 1572(r;)S
- 2160 V
- (24204)210 648 A
- (struct)252 1110 A
- (super_block)462 1404 A
- (*sp;)168 1908 A
- 2250 V
- (24205)210 648 A
- 2340 V
- (24206)210 648 A
- 1110(/*)S
- 1236(Is)S
- (another)294 1362 A
- (block)210 1698 A
- (available)378 1950 A
- 2370(in)S
- (the)126 2496 A
- (current)294 2664 A
- (zone?)210 3000 A
- 3252(*/)S
- 2430 V
- (24207)210 648 A
- 1110(if)S
- 1236(()S
- 1320((b)S
- 1446(=)S
- (read_map(rip,)546 1530 A
- (position)))420 2118 A
- 2580(==)S
- (NO_BLOCK))378 2706 A
- 3126({)S
- 2520 V
- (24208)210 648 A
- 1362(/*)S
- (Choose)252 1488 A
- (first)210 1782 A
- (zone)168 2034 A
- 2244(if)S
- (possible.)378 2370 A
- 2790(*/)S
- 2610 V
- (24209)210 648 A
- 1362(/*)S
- (Lose)168 1488 A
- 1698(if)S
- (the)126 1824 A
- (file)168 1992 A
- 2202(is)S
- (nonempty)336 2328 A
- (but)126 2706 A
- (the)126 2874 A
- (first)210 3042 A
- (zone)168 3294 A
- (number)252 3504 A
- 3798(is)S
- (NO_ZONE)294 3924 A
- 2700 V
- (24210)210 648 A
- 1404(*)S
- (corresponding)546 1488 A
- 2076(to)S
- 2202(a)S
- (zone)168 2286 A
- (full)168 2496 A
- 2706(of)S
- (zeros.)252 2832 A
- 3168(It)S
- (would)210 3294 A
- 3546(be)S
- (better)252 3672 A
- 3966(to)S
- 2790 V
- (24211)210 648 A
- 1404(*)S
- (search)252 1488 A
- (near)168 1782 A
- (the)126 1992 A
- (last)168 2160 A
- (real)168 2370 A
- (zone.)210 2580 A
- 2880 V
- (24212)210 648 A
- 1404(*/)S
- 2970 V
- (24213)210 648 A
- 1362(if)S
- ((rip->i_zone[0])630 1488 A
- 2160(==)S
- (NO_ZONE))336 2286 A
- 2664({)S
- 3060 V
- (24214)210 648 A
- 1698(sp)S
- 1824(=)S
- (rip->i_sp;)420 1908 A
- 3150 V
- (24215)210 648 A
- 1698(z)S
- 1782(=)S
- (sp->s_firstdatazone;)840 1866 A
- 3240 V
- (24216)210 648 A
- 1362(})S
- (else)168 1446 A
- 1656({)S
- 3330 V
- (24217)210 648 A
- 1698(z)S
- 1782(=)S
- (rip->i_zone[0];)630 1866 A
- 2706(/*)S
- (hunt)168 2832 A
- (near)168 3042 A
- (first)210 3252 A
- (zone)168 3504 A
- 3714(*/)S
- 3420 V
- (24218)210 648 A
- 1362(})S
- 3510 V
- (24219)210 648 A
- 1362(if)S
- 1488(()S
- 1572((z)S
- 1698(=)S
- (alloc_zone(rip->i_dev,)924 1782 A
- (z)))126 2748 A
- 2916(==)S
- (NO_ZONE))336 3042 A
- (return(NIL_BUF);)672 3420 A
- 3600 V
- (24220)210 648 A
- 1362(if)S
- 1488(()S
- 1572((r)S
- 1698(=)S
- (write_map(rip,)588 1782 A
- (position,)378 2412 A
- (z)))126 2832 A
- 3000(!=)S
- (OK))126 3126 A
- 3294({)S
- 3690 V
- (24221)210 648 A
- (free_zone(rip->i_dev,)882 1698 A
- (z);)126 2622 A
- 3780 V
- (24222)210 648 A
- (err_code)336 1698 A
- 2076(=)S
- 2160(r;)S
- 3870 V
- (24223)210 648 A
- (return(NIL_BUF);)672 1698 A
- 3960 V
- (24224)210 648 A
- 1362(})S
- 4050 V
- (24225)210 648 A
- 4140 V
- (24226)210 648 A
- 1362(/*)S
- 1488(If)S
- 1614(we)S
- (are)126 1740 A
- (not)126 1908 A
- (writing)294 2076 A
- 2412(at)S
- (EOF,)168 2538 A
- (clear)210 2748 A
- (the)126 3000 A
- (zone,)210 3168 A
- (just)168 3420 A
- 3630(to)S
- 3756(be)S
- (safe.)210 3882 A
- 4134(*/)S
- 4230 V
- (24227)210 648 A
- 1362(if)S
- 1488(()S
- (position)336 1572 A
- 1950(!=)S
- (rip->i_size))504 2076 A
- (clear_zone(rip,)630 2622 A
- (position,)378 3294 A
- (1);)126 3714 A
- 4320 V
- (24228)210 648 A
- (scale)210 1362 A
- 1614(=)S
- (rip->i_sp->s_log_zone_size;)1134 1698 A
- 4410 V
- (24229)210 648 A
- (base_block)420 1362 A
- 1824(=)S
- ((block_t))378 1908 A
- 2328(z)S
- 2412(<<)S
- (scale;)252 2538 A
- 4500 V
- (24230)210 648 A
- (zone_size)378 1362 A
- 1782(=)S
- ((zone_t))336 1866 A
- (BLOCK_SIZE)420 2244 A
- 2706(<<)S
- (scale;)252 2832 A
- 4590 V
- (24231)210 648 A
- 1362(b)S
- 1446(=)S
- (base_block)420 1530 A
- 1992(+)S
- ((block_t)((position)798 2076 A
- 2916(%)S
- (zone_size)/BLOCK_SIZE);)966 3000 A
- 4680 V
- (24232)210 648 A
- 1110(})S
- 4770 V
- (24233)210 648 A
- 4860 V
- (24234)210 648 A
- 1110(bp)S
- 1236(=)S
- (get_block(rip->i_dev,)882 1320 A
- 2244(b,)S
- (NO_READ);)378 2370 A
- 4950 V
- (24235)210 648 A
- (zero_block(bp);)630 1110 A
- 5040 V
- (24236)210 648 A
- (return(bp);)462 1110 A
- 5130 V
- (24237)210 648 A
- 1026(})S
- 5400 V
- (24240)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5490 V
- (24241)210 648 A
- 1068(*)S
- (zero_block)420 2370 A
- 4260(*)S
- 5580 V
- (24242)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5670 V
- (24243)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (zero_block(bp))588 1530 A
- 5760 V
- (24244)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (buf)126 1698 A
- (*bp;)168 1866 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (buffer)252 2958 A
- 3252(to)S
- (zero)168 3378 A
- 3588(*/)S
- 5850 V
- (24245)210 648 A
- 1026({)S
- 5940 V
- (24246)210 648 A
- 1026(/*)S
- (Zero)168 1152 A
- 1362(a)S
- (block.)252 1446 A
- 1740(*/)S
- 6030 V
- (24247)210 648 A
- 6120 V
- (24248)210 648 A
- (memset(bp->b_data,)756 1110 A
- 1908(0,)S
- (BLOCK_SIZE);)504 2034 A
- 6210 V
- (24249)210 648 A
- (bp->b_dirt)420 1110 A
- 1572(=)S
- (DIRTY;)252 1656 A
- 8418 V
- EP
- %%Page: 334 334
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (334)180 648 A
- 11 R
- 2132(File:)S
- 2365(src/fs/write.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (24250)210 648 A
- 1026(})S
- 1440 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1530 V
- (src/fs/pipe.c)546 2034 A
- 1620 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1800 V
- (24300)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (deals)210 1572 A
- (with)168 1824 A
- (the)126 2034 A
- (suspension)420 2202 A
- (and)126 2664 A
- (revival)294 2832 A
- 3168(of)S
- (processes.)420 3294 A
- 3798(A)S
- (process)294 3882 A
- (can)126 4218 A
- 1890 V
- (24301)210 648 A
- 1068(*)S
- 1152(be)S
- (suspended)378 1278 A
- (because)294 1698 A
- 2034(it)S
- (wants)210 2160 A
- 2412(to)S
- (read)168 2538 A
- 2748(or)S
- (write)210 2874 A
- (from)168 3126 A
- 3336(a)S
- (pipe)168 3420 A
- (and)126 3630 A
- (can't,)252 3798 A
- 4092(or)S
- 1980 V
- (24302)210 648 A
- 1068(*)S
- (because)294 1152 A
- 1488(it)S
- (wants)210 1614 A
- 1866(to)S
- (read)168 1992 A
- 2202(or)S
- (write)210 2328 A
- (from)168 2580 A
- 2790(a)S
- (special)294 2874 A
- (file)168 3210 A
- (and)126 3420 A
- (can't.)252 3588 A
- (When)168 3924 A
- 4134(a)S
- 2070 V
- (24303)210 648 A
- 1068(*)S
- (process)294 1152 A
- (can't)210 1488 A
- (continue)336 1740 A
- 2118(it)S
- 2244(is)S
- (suspended,)420 2370 A
- (and)126 2832 A
- (revived)294 3000 A
- (later)210 3336 A
- (when)168 3588 A
- 3798(it)S
- 3924(is)S
- (able)168 4050 A
- 2160 V
- (24304)210 648 A
- 1068(*)S
- 1152(to)S
- (continue.)378 1278 A
- 2250 V
- (24305)210 648 A
- 1068(*)S
- 2340 V
- (24306)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entry)210 1320 A
- (points)252 1572 A
- (into)168 1866 A
- (this)168 2076 A
- (file)168 2286 A
- (are)126 2496 A
- 2430 V
- (24307)210 648 A
- 1068(*)S
- (do_pipe:)336 1236 A
- (perform)294 1782 A
- (the)126 2118 A
- (PIPE)168 2286 A
- (system)252 2496 A
- (call)168 2790 A
- 2520 V
- (24308)210 648 A
- 1068(*)S
- (pipe_check:)462 1236 A
- (check)210 1782 A
- 2034(to)S
- (see)126 2160 A
- (that)168 2328 A
- 2538(a)S
- (read)168 2622 A
- 2832(or)S
- (write)210 2958 A
- 3210(on)S
- 3336(a)S
- (pipe)168 3420 A
- 3630(is)S
- (feasible)336 3756 A
- (now)126 4134 A
- 2610 V
- (24309)210 648 A
- 1068(*)S
- (suspend:)336 1236 A
- (suspend)294 1782 A
- 2118(a)S
- (process)294 2202 A
- (that)168 2538 A
- (cannot)252 2748 A
- 3042(do)S
- 3168(a)S
- (requested)378 3252 A
- (read)168 3672 A
- 3882(or)S
- (write)210 4008 A
- 2700 V
- (24310)210 648 A
- 1068(*)S
- (release:)336 1236 A
- (check)210 1782 A
- 2034(to)S
- (see)126 2160 A
- 2328(if)S
- 2454(a)S
- (suspended)378 2538 A
- (process)294 2958 A
- (can)126 3294 A
- 3462(be)S
- (released)336 3588 A
- (and)126 3966 A
- 4134(do)S
- 4260(it)S
- 2790 V
- (24311)210 648 A
- 1068(*)S
- (revive:)294 1236 A
- (mark)168 1782 A
- 1992(a)S
- (suspended)378 2076 A
- (process)294 2496 A
- 2832(as)S
- (able)168 2958 A
- 3168(to)S
- (run)126 3294 A
- (again)210 3462 A
- 2880 V
- (24312)210 648 A
- 1068(*)S
- (do_unpause:)462 1236 A
- 1782(a)S
- (signal)252 1866 A
- (has)126 2160 A
- (been)168 2328 A
- (sent)168 2538 A
- 2748(to)S
- 2874(a)S
- (process;)336 2958 A
- (see)126 3336 A
- 3504(if)S
- 3630(it)S
- (suspended)378 3756 A
- 2970 V
- (24313)210 648 A
- 1068(*/)S
- 3060 V
- (24314)210 648 A
- 3150 V
- (24315)210 648 A
- (#include)336 1026 A
- ("fs.h")252 1404 A
- 3240 V
- (24316)210 648 A
- (#include)336 1026 A
- (<fcntl.h>)378 1404 A
- 3330 V
- (24317)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 3420 V
- (24318)210 648 A
- (#include)336 1026 A
- (<minix/boot.h>)588 1404 A
- 3510 V
- (24319)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 3600 V
- (24320)210 648 A
- (#include)336 1026 A
- (<minix/com.h>)546 1404 A
- 3690 V
- (24321)210 648 A
- (#include)336 1026 A
- ("dev.h")294 1404 A
- 3780 V
- (24322)210 648 A
- (#include)336 1026 A
- ("file.h")336 1404 A
- 3870 V
- (24323)210 648 A
- (#include)336 1026 A
- ("fproc.h")378 1404 A
- 3960 V
- (24324)210 648 A
- (#include)336 1026 A
- ("inode.h")378 1404 A
- 4050 V
- (24325)210 648 A
- (#include)336 1026 A
- ("param.h")378 1404 A
- 4140 V
- (24326)210 648 A
- 4230 V
- (24327)210 648 A
- (PRIVATE)294 1026 A
- (message)294 1362 A
- (mess;)210 1698 A
- 4320 V
- (24328)210 648 A
- 4410 V
- (24329)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4500 V
- (24330)210 648 A
- 1068(*)S
- (do_pipe)294 2370 A
- 4260(*)S
- 4590 V
- (24331)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4680 V
- (24332)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_pipe())378 1488 A
- 4770 V
- (24333)210 648 A
- 1026({)S
- 4860 V
- (24334)210 648 A
- 1026(/*)S
- (Perform)294 1152 A
- (the)126 1488 A
- (pipe(fil_des))546 1656 A
- (system)252 2244 A
- (call.)210 2538 A
- 2790(*/)S
- 4950 V
- (24335)210 648 A
- 5040 V
- (24336)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (fproc)210 1782 A
- (*rfp;)210 2034 A
- 5130 V
- (24337)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (inode)210 1782 A
- (*rip;)210 2034 A
- 5220 V
- (24338)210 648 A
- (int)126 1110 A
- 1278(r;)S
- 5310 V
- (24339)210 648 A
- (struct)252 1110 A
- (filp)168 1404 A
- (*fil_ptr0,)420 1614 A
- (*fil_ptr1;)420 2076 A
- 5400 V
- (24340)210 648 A
- (int)126 1110 A
- (fil_des[2];)462 1278 A
- 2370(/*)S
- (reply)210 2496 A
- (goes)168 2748 A
- (here)168 2958 A
- 3168(*/)S
- 5490 V
- (24341)210 648 A
- 5580 V
- (24342)210 648 A
- 1110(/*)S
- (Acquire)294 1236 A
- (two)126 1572 A
- (file)168 1740 A
- (descriptors.)504 1950 A
- 2496(*/)S
- 5670 V
- (24343)210 648 A
- (rfp)126 1110 A
- 1278(=)S
- (fp;)126 1362 A
- 5760 V
- (24344)210 648 A
- 1110(if)S
- 1236(()S
- 1320((r)S
- 1446(=)S
- (get_fd(0,)378 1530 A
- (R_BIT,)252 1950 A
- (&fil_des[0],)504 2244 A
- (&fil_ptr0)))462 2790 A
- 3294(!=)S
- (OK))126 3420 A
- (return(r);)420 3588 A
- 5850 V
- (24345)210 648 A
- (rfp->fp_filp[fil_des[0]])1008 1110 A
- 2160(=)S
- (fil_ptr0;)378 2244 A
- 5940 V
- (24346)210 648 A
- (fil_ptr0->filp_count)840 1110 A
- 1992(=)S
- 2076(1;)S
- 6030 V
- (24347)210 648 A
- 1110(if)S
- 1236(()S
- 1320((r)S
- 1446(=)S
- (get_fd(0,)378 1530 A
- (W_BIT,)252 1950 A
- (&fil_des[1],)504 2244 A
- (&fil_ptr1)))462 2790 A
- 3294(!=)S
- (OK))126 3420 A
- 3588({)S
- 6120 V
- (24348)210 648 A
- (rfp->fp_filp[fil_des[0]])1008 1362 A
- 2412(=)S
- (NIL_FILP;)378 2496 A
- 6210 V
- (24349)210 648 A
- (fil_ptr0->filp_count)840 1362 A
- 2244(=)S
- 2328(0;)S
- 8418 V
- EP
- %%Page: 335 335
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2151(File:)S
- 2384(src/fs/pipe.c)S
- 12 B
- (335)180 4248 A
- 900 V
- 7 LST
- (24350)210 648 A
- (return(r);)420 1362 A
- 990 V
- (24351)210 648 A
- 1110(})S
- 1080 V
- (24352)210 648 A
- (rfp->fp_filp[fil_des[1]])1008 1110 A
- 2160(=)S
- (fil_ptr1;)378 2244 A
- 1170 V
- (24353)210 648 A
- (fil_ptr1->filp_count)840 1110 A
- 1992(=)S
- 2076(1;)S
- 1260 V
- (24354)210 648 A
- 1350 V
- (24355)210 648 A
- 1110(/*)S
- (Make)168 1236 A
- (the)126 1446 A
- (inode)210 1614 A
- 1866(on)S
- (the)126 1992 A
- (pipe)168 2160 A
- (device.)294 2370 A
- 2706(*/)S
- 1440 V
- (24356)210 648 A
- 1110(if)S
- 1236(()S
- ((rip)168 1320 A
- 1530(=)S
- (alloc_inode(PIPE_DEV,)882 1614 A
- (I_REGULAR))420 2538 A
- 3000())S
- 3084(==)S
- (NIL_INODE))420 3210 A
- 3672({)S
- 1530 V
- (24357)210 648 A
- (rfp->fp_filp[fil_des[0]])1008 1362 A
- 2412(=)S
- (NIL_FILP;)378 2496 A
- 1620 V
- (24358)210 648 A
- (fil_ptr0->filp_count)840 1362 A
- 2244(=)S
- 2328(0;)S
- 1710 V
- (24359)210 648 A
- (rfp->fp_filp[fil_des[1]])1008 1362 A
- 2412(=)S
- (NIL_FILP;)378 2496 A
- 1800 V
- (24360)210 648 A
- (fil_ptr1->filp_count)840 1362 A
- 2244(=)S
- 2328(0;)S
- 1890 V
- (24361)210 648 A
- (return(err_code);)714 1362 A
- 1980 V
- (24362)210 648 A
- 1110(})S
- 2070 V
- (24363)210 648 A
- 2160 V
- (24364)210 648 A
- 1110(if)S
- ((read_only(rip))630 1236 A
- 1908(!=)S
- (OK))126 2034 A
- (panic("pipe)462 2202 A
- (device)252 2706 A
- 3000(is)S
- (read)168 3126 A
- (only",)252 3336 A
- (NO_NUM);)336 3630 A
- 2250 V
- (24365)210 648 A
- 2340 V
- (24366)210 648 A
- (rip->i_pipe)462 1110 A
- 1614(=)S
- (I_PIPE;)294 1698 A
- 2430 V
- (24367)210 648 A
- (rip->i_mode)462 1110 A
- 1614(&=)S
- (304I_REGULAR;)462 1740 A
- 2520 V
- (24368)210 648 A
- (rip->i_mode)462 1110 A
- 1614(|=)S
- (I_NAMED_PIPE;)546 1740 A
- 2370(/*)S
- (pipes)210 2496 A
- (and)126 2748 A
- (FIFOs)210 2916 A
- (have)168 3168 A
- (this)168 3378 A
- (bit)126 3588 A
- (set)126 3756 A
- 3924(*/)S
- 2610 V
- (24369)210 648 A
- (fil_ptr0->filp_ino)756 1110 A
- 1908(=)S
- (rip;)168 1992 A
- 2700 V
- (24370)210 648 A
- (fil_ptr0->filp_flags)840 1110 A
- 1992(=)S
- (O_RDONLY;)378 2076 A
- 2790 V
- (24371)210 648 A
- (dup_inode(rip);)630 1110 A
- 2370(/*)S
- (for)126 2496 A
- (double)252 2664 A
- (usage)210 2958 A
- 3210(*/)S
- 2880 V
- (24372)210 648 A
- (fil_ptr1->filp_ino)756 1110 A
- 1908(=)S
- (rip;)168 1992 A
- 2970 V
- (24373)210 648 A
- (fil_ptr1->filp_flags)840 1110 A
- 1992(=)S
- (O_WRONLY;)378 2076 A
- 3060 V
- (24374)210 648 A
- (rw_inode(rip,)546 1110 A
- (WRITING);)378 1698 A
- 2370(/*)S
- (mark)168 2496 A
- (inode)210 2706 A
- 2958(as)S
- (allocated)378 3084 A
- 3504(*/)S
- 3150 V
- (24375)210 648 A
- (reply_i1)336 1110 A
- 1488(=)S
- (fil_des[0];)462 1572 A
- 3240 V
- (24376)210 648 A
- (reply_i2)336 1110 A
- 1488(=)S
- (fil_des[1];)462 1572 A
- 3330 V
- (24377)210 648 A
- (rip->i_update)546 1110 A
- 1698(=)S
- (ATIME)210 1782 A
- 2034(|)S
- (CTIME)210 2118 A
- 2370(|)S
- (MTIME;)252 2454 A
- 3420 V
- (24378)210 648 A
- (return(OK);)462 1110 A
- 3510 V
- (24379)210 648 A
- 1026(})S
- 3780 V
- (24382)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3870 V
- (24383)210 648 A
- 1068(*)S
- (pipe_check)420 2370 A
- 4260(*)S
- 3960 V
- (24384)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4050 V
- (24385)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (pipe_check(rip,)630 1488 A
- (rw_flag,)336 2160 A
- (oflags,)294 2538 A
- (bytes,)252 2874 A
- (position,)378 3168 A
- (canwrite))378 3588 A
- 4140 V
- (24386)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*rip;)210 1950 A
- 2370(/*)S
- (the)126 2496 A
- (inode)210 2664 A
- 2916(of)S
- (the)126 3042 A
- (pipe)168 3210 A
- 3420(*/)S
- 4230 V
- (24387)210 648 A
- (int)126 1026 A
- (rw_flag;)336 1194 A
- 2370(/*)S
- (READING)294 2496 A
- 2832(or)S
- (WRITING)294 2958 A
- 3294(*/)S
- 4320 V
- (24388)210 648 A
- (int)126 1026 A
- (oflags;)294 1194 A
- 2370(/*)S
- (flags)210 2496 A
- (set)126 2748 A
- 2916(by)S
- (open)168 3042 A
- 3252(or)S
- (fcntl)210 3378 A
- 3630(*/)S
- 4410 V
- (24389)210 648 A
- (register)336 1026 A
- (int)126 1404 A
- (bytes;)252 1572 A
- 2370(/*)S
- (bytes)210 2496 A
- 2748(to)S
- 2874(be)S
- (read)168 3000 A
- 3210(or)S
- (written)294 3336 A
- ((all)168 3672 A
- (chunks))294 3882 A
- 4218(*/)S
- 4500 V
- (24390)210 648 A
- (register)336 1026 A
- (off_t)210 1404 A
- (position;)378 1656 A
- 2370(/*)S
- (current)294 2496 A
- (file)168 2832 A
- (position)336 3042 A
- 3420(*/)S
- 4590 V
- (24391)210 648 A
- (int)126 1026 A
- (*canwrite;)420 1194 A
- 2370(/*)S
- (return:)294 2496 A
- (number)252 2832 A
- 3126(of)S
- (bytes)210 3252 A
- 3504(we)S
- (can)126 3630 A
- (write)210 3798 A
- 4050(*/)S
- 4680 V
- (24392)210 648 A
- 1026({)S
- 4770 V
- (24393)210 648 A
- 1026(/*)S
- (Pipes)210 1152 A
- (are)126 1404 A
- 1572(a)S
- (little)252 1656 A
- (different.)420 1950 A
- 2454(If)S
- 2580(a)S
- (process)294 2664 A
- (reads)210 3000 A
- (from)168 3252 A
- 3462(an)S
- (empty)210 3588 A
- (pipe)168 3840 A
- (for)126 4050 A
- 4860 V
- (24394)210 648 A
- 1068(*)S
- (which)210 1152 A
- 1404(a)S
- (writer)252 1488 A
- (still)210 1782 A
- (exists,)294 2034 A
- (suspend)294 2370 A
- (the)126 2706 A
- (reader.)294 2874 A
- 3252(If)S
- (the)126 3378 A
- (pipe)168 3546 A
- 3756(is)S
- (empty)210 3882 A
- 4950 V
- (24395)210 648 A
- 1068(*)S
- (and)126 1152 A
- (there)210 1320 A
- 1572(is)S
- 1698(no)S
- (writer,)294 1824 A
- (return)252 2160 A
- 2454(0)S
- (bytes.)252 2538 A
- 2874(If)S
- 3000(a)S
- (process)294 3084 A
- 3420(is)S
- (writing)294 3546 A
- 3882(to)S
- 4008(a)S
- 5040 V
- (24396)210 648 A
- 1068(*)S
- (pipe)168 1152 A
- (and)126 1362 A
- 1530(no)S
- (one)126 1656 A
- 1824(is)S
- (reading)294 1950 A
- (from)168 2286 A
- (it,)126 2496 A
- (give)168 2664 A
- 2874(a)S
- (broken)252 2958 A
- (pipe)168 3252 A
- (error.)252 3462 A
- 5130 V
- (24397)210 648 A
- 1068(*/)S
- 5220 V
- (24398)210 648 A
- 5310 V
- (24399)210 648 A
- (int)126 1110 A
- 1278(r)S
- 1362(=)S
- 1446(0;)S
- 5400 V
- (24400)210 648 A
- 5490 V
- (24401)210 648 A
- 1110(/*)S
- 1236(If)S
- (reading,)336 1362 A
- (check)210 1740 A
- (for)126 1992 A
- (empty)210 2160 A
- (pipe.)210 2412 A
- 2664(*/)S
- 5580 V
- (24402)210 648 A
- 1110(if)S
- ((rw_flag)336 1236 A
- 1614(==)S
- (READING))336 1740 A
- 2118({)S
- 5670 V
- (24403)210 648 A
- 1362(if)S
- ((position)378 1488 A
- 1908(>=)S
- (rip->i_size))504 2034 A
- 2580({)S
- 5760 V
- (24404)210 648 A
- 1698(/*)S
- (Process)294 1824 A
- 2160(is)S
- (reading)294 2286 A
- (from)168 2622 A
- 2832(an)S
- (empty)210 2958 A
- (pipe.)210 3210 A
- 3462(*/)S
- 5850 V
- (24405)210 648 A
- 1698(if)S
- ((find_filp(rip,)630 1824 A
- (W_BIT))252 2496 A
- 2790(!=)S
- (NIL_FILP))378 2916 A
- 3336({)S
- 5940 V
- (24406)210 648 A
- 2034(/*)S
- (Writer)252 2160 A
- (exists)252 2454 A
- 2748(*/)S
- 6030 V
- (24407)210 648 A
- 2034(if)S
- ((oflags)294 2160 A
- 2496(&)S
- (O_NONBLOCK))462 2580 A
- 6120 V
- (24408)210 648 A
- 2370(r)S
- 2454(=)S
- (EAGAIN;)294 2538 A
- 6210 V
- (24409)210 648 A
- (else)168 2034 A
- 8418 V
- EP
- %%Page: 336 336
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (336)180 648 A
- 11 R
- 2151(File:)S
- 2384(src/fs/pipe.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (24410)210 648 A
- (suspend(XPIPE);)630 2370 A
- 3042(/*)S
- (block)210 3168 A
- (reader)252 3420 A
- 3714(*/)S
- 990 V
- (24411)210 648 A
- 1080 V
- (24412)210 648 A
- 2034(/*)S
- 2160(If)S
- (need)168 2286 A
- (be,)126 2496 A
- (activate)336 2664 A
- (sleeping)336 3042 A
- (writers.)336 3420 A
- 3798(*/)S
- 1170 V
- (24413)210 648 A
- 2034(if)S
- ((susp_count)462 2160 A
- 2664(>)S
- 2748(0))S
- (release(rip,)504 2874 A
- (WRITE,)252 3420 A
- (susp_count);)504 3714 A
- 1260 V
- (24414)210 648 A
- 1698(})S
- 1350 V
- (24415)210 648 A
- (return(r);)420 1698 A
- 1440 V
- (24416)210 648 A
- 1362(})S
- 1530 V
- (24417)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 1620 V
- (24418)210 648 A
- 1362(/*)S
- (Process)294 1488 A
- 1824(is)S
- (writing)294 1950 A
- 2286(to)S
- 2412(a)S
- (pipe.)210 2496 A
- 2748(*/)S
- 1710 V
- (24419)210 648 A
- 1026(/*)S
- 1362(if)S
- ((bytes)252 1488 A
- 1782(>)S
- (PIPE_SIZE))420 1866 A
- (return(EFBIG);)588 2328 A
- 2958(*/)S
- 1800 V
- (24420)210 648 A
- 1362(if)S
- ((find_filp(rip,)630 1488 A
- (R_BIT))252 2160 A
- 2454(==)S
- (NIL_FILP))378 2580 A
- 3000({)S
- 1890 V
- (24421)210 648 A
- 1698(/*)S
- (Tell)168 1824 A
- (kernel)252 2034 A
- 2328(to)S
- (generate)336 2454 A
- 2832(a)S
- (SIGPIPE)294 2916 A
- (signal.)294 3252 A
- 3588(*/)S
- 1980 V
- (24422)210 648 A
- (sys_kill((int)(fp)714 1698 A
- 2454(-)S
- (fproc),)294 2538 A
- (SIGPIPE);)378 2874 A
- 2070 V
- (24423)210 648 A
- (return(EPIPE);)588 1698 A
- 2160 V
- (24424)210 648 A
- 1362(})S
- 2250 V
- (24425)210 648 A
- 2340 V
- (24426)210 648 A
- 1362(if)S
- ((position)378 1488 A
- 1908(+)S
- (bytes)210 1992 A
- 2244(>)S
- (PIPE_SIZE))420 2328 A
- 2790({)S
- 2430 V
- (24427)210 648 A
- 1698(if)S
- (((oflags)336 1824 A
- 2202(&)S
- (O_NONBLOCK))462 2286 A
- 2790(&&)S
- (bytes)210 2916 A
- 3168(<)S
- (PIPE_SIZE))420 3252 A
- 2520 V
- (24428)210 648 A
- (return(EAGAIN);)630 2034 A
- 2610 V
- (24429)210 648 A
- (else)168 1698 A
- 1908(if)S
- (((oflags)336 2034 A
- 2412(&)S
- (O_NONBLOCK))462 2496 A
- 3000(&&)S
- (bytes)210 3126 A
- 3378(>)S
- (PIPE_SIZE))420 3462 A
- 3924({)S
- 2700 V
- (24430)210 648 A
- 2034(if)S
- 2160(()S
- ((*canwrite)420 2244 A
- 2706(=)S
- ((PIPE_SIZE)420 2790 A
- 3252(-)S
- (position)))420 3336 A
- 3798(>)S
- 3882(0))S
- 4050({)S
- 2790 V
- (24431)210 648 A
- 2370(/*)S
- 2496(Do)S
- 2622(a)S
- (partial)294 2706 A
- (write.)252 3042 A
- (Need)168 3336 A
- 3546(to)S
- (wakeup)252 3672 A
- (reader)252 3966 A
- 4260(*/)S
- 2880 V
- (24432)210 648 A
- (release(rip,)504 2370 A
- (READ,)210 2916 A
- (susp_count);)504 3168 A
- 2970 V
- (24433)210 648 A
- (return(1);)420 2370 A
- 3060 V
- (24434)210 648 A
- 2034(})S
- (else)168 2118 A
- 2328({)S
- 3150 V
- (24435)210 648 A
- (return(EAGAIN);)630 2370 A
- 3240 V
- (24436)210 648 A
- 2034(})S
- 3330 V
- (24437)210 648 A
- 1908(})S
- 3420 V
- (24438)210 648 A
- 1698(if)S
- ((bytes)252 1824 A
- 2118(>)S
- (PIPE_SIZE))420 2202 A
- 2664({)S
- 3510 V
- (24439)210 648 A
- 2034(if)S
- (((*canwrite)462 2160 A
- 2664(=)S
- (PIPE_SIZE)378 2748 A
- 3168(-)S
- (position))378 3252 A
- 3672(>)S
- 3756(0))S
- 3882({)S
- 3600 V
- (24440)210 648 A
- 2370(/*)S
- 2496(Do)S
- 2622(a)S
- (partial)294 2706 A
- (write.)252 3042 A
- (Need)168 3336 A
- 3546(to)S
- (wakeup)252 3672 A
- (reader)252 3966 A
- 3690 V
- (24441)210 648 A
- 2412(*)S
- (since)210 2496 A
- (we'll)210 2748 A
- (suspend)294 3000 A
- (ourself)294 3336 A
- 3672(in)S
- (read_write())504 3798 A
- 3780 V
- (24442)210 648 A
- 2412(*/)S
- 3870 V
- (24443)210 648 A
- (release(rip,)504 2370 A
- (READ,)210 2916 A
- (susp_count);)504 3168 A
- 3960 V
- (24444)210 648 A
- (return(1);)420 2370 A
- 4050 V
- (24445)210 648 A
- 2034(})S
- 4140 V
- (24446)210 648 A
- 1698(})S
- 4230 V
- (24447)210 648 A
- (suspend(XPIPE);)630 1698 A
- 2370(/*)S
- (stop)168 2496 A
- (writer)252 2706 A
- 3000(--)S
- (pipe)168 3126 A
- (full)168 3336 A
- 3546(*/)S
- 4320 V
- (24448)210 648 A
- (return(0);)420 1698 A
- 4410 V
- (24449)210 648 A
- 1362(})S
- 4500 V
- (24450)210 648 A
- 4590 V
- (24451)210 648 A
- 1362(/*)S
- (Writing)294 1488 A
- 1824(to)S
- 1950(an)S
- (empty)210 2076 A
- (pipe.)210 2328 A
- (Search)252 2622 A
- (for)126 2916 A
- (suspended)378 3084 A
- (reader.)294 3504 A
- 3840(*/)S
- 4680 V
- (24452)210 648 A
- 1362(if)S
- ((position)378 1488 A
- 1908(==)S
- 2034(0))S
- (release(rip,)504 2160 A
- (READ,)210 2706 A
- (susp_count);)504 2958 A
- 4770 V
- (24453)210 648 A
- 1110(})S
- 4860 V
- (24454)210 648 A
- 4950 V
- (24455)210 648 A
- (*canwrite)378 1110 A
- 1530(=)S
- 1614(0;)S
- 5040 V
- (24456)210 648 A
- (return(1);)420 1110 A
- 5130 V
- (24457)210 648 A
- 1026(})S
- 5400 V
- (24460)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5490 V
- (24461)210 648 A
- 1068(*)S
- (suspend)294 2370 A
- 4260(*)S
- 5580 V
- (24462)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5670 V
- (24463)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (suspend(task))546 1530 A
- 5760 V
- (24464)210 648 A
- (int)126 1026 A
- (task;)210 1194 A
- 2370(/*)S
- (who)126 2496 A
- 2664(is)S
- (proc)168 2790 A
- (waiting)294 3000 A
- (for?)168 3336 A
- ((PIPE)210 3546 A
- 3798(=)S
- (pipe))210 3882 A
- 4134(*/)S
- 5850 V
- (24465)210 648 A
- 1026({)S
- 5940 V
- (24466)210 648 A
- 1026(/*)S
- (Take)168 1152 A
- (measures)336 1362 A
- 1740(to)S
- (suspend)294 1866 A
- (the)126 2202 A
- (processing)420 2370 A
- 2832(of)S
- (the)126 2958 A
- (present)294 3126 A
- (system)252 3462 A
- (call.)210 3756 A
- 6030 V
- (24467)210 648 A
- 1068(*)S
- (Store)210 1152 A
- (the)126 1404 A
- (parameters)420 1572 A
- 2034(to)S
- 2160(be)S
- (used)168 2286 A
- (upon)168 2496 A
- (resuming)336 2706 A
- 3084(in)S
- (the)126 3210 A
- (process)294 3378 A
- (table.)252 3714 A
- 6120 V
- (24468)210 648 A
- 1068(*)S
- ((Actually)378 1152 A
- (they)168 1572 A
- (are)126 1782 A
- (not)126 1950 A
- (used)168 2118 A
- (when)168 2328 A
- 2538(a)S
- (process)294 2622 A
- 2958(is)S
- (waiting)294 3084 A
- (for)126 3420 A
- 3588(an)S
- (I/O)126 3714 A
- (device,)294 3882 A
- 6210 V
- (24469)210 648 A
- 1068(*)S
- (but)126 1152 A
- (they)168 1320 A
- (are)126 1530 A
- (needed)252 1698 A
- (for)126 1992 A
- (pipes,)252 2160 A
- (and)126 2454 A
- 2622(it)S
- 2748(is)S
- (not)126 2874 A
- (worth)210 3042 A
- (making)252 3294 A
- (the)126 3588 A
- (distinction.))546 3756 A
- 8418 V
- EP
- %%Page: 337 337
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2151(File:)S
- 2384(src/fs/pipe.c)S
- 12 B
- (337)180 4248 A
- 900 V
- 7 LST
- (24470)210 648 A
- 1068(*/)S
- 990 V
- (24471)210 648 A
- 1080 V
- (24472)210 648 A
- 1110(if)S
- ((task)210 1236 A
- 1488(==)S
- (XPIPE)210 1614 A
- 1866(||)S
- (task)168 1992 A
- 2202(==)S
- (XPOPEN))294 2328 A
- (susp_count++;/*)630 2664 A
- (#procs)252 3336 A
- (susp'ed)294 3630 A
- 3966(on)S
- (pipe*/)252 4092 A
- 1170 V
- (24473)210 648 A
- (fp->fp_suspended)672 1110 A
- 1824(=)S
- (SUSPENDED;)420 1908 A
- 1260 V
- (24474)210 648 A
- (fp->fp_fd)378 1110 A
- 1530(=)S
- 1614(fd)S
- 1740(<<)S
- 1866(8)S
- 1950(|)S
- (fs_call;)336 2034 A
- 1350 V
- (24475)210 648 A
- (fp->fp_task)462 1110 A
- 1614(=)S
- (-task;)252 1698 A
- 1440 V
- (24476)210 648 A
- 1110(if)S
- ((task)210 1236 A
- 1488(==)S
- (XLOCK))252 1614 A
- 1908({)S
- 1530 V
- (24477)210 648 A
- (fp->fp_buffer)546 1362 A
- 1950(=)S
- ((char)210 2034 A
- 2286(*))S
- (name1;)252 2412 A
- 2706(/*)S
- (third)210 2874 A
- (arg)126 3126 A
- 3294(to)S
- (fcntl())294 3420 A
- 3756(*/)S
- 1620 V
- (24478)210 648 A
- (fp->fp_nbytes)546 1362 A
- (=request;)378 1950 A
- 2706(/*)S
- (second)252 2832 A
- (arg)126 3126 A
- 3294(to)S
- (fcntl())294 3420 A
- 3756(*/)S
- 1710 V
- (24479)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 1800 V
- (24480)210 648 A
- (fp->fp_buffer)546 1362 A
- 1950(=)S
- (buffer;)294 2034 A
- 2706(/*)S
- (for)126 2832 A
- (reads)210 3000 A
- (and)126 3252 A
- (writes)252 3420 A
- 3714(*/)S
- 1890 V
- (24481)210 648 A
- (fp->fp_nbytes)546 1362 A
- 1950(=)S
- (nbytes;)294 2034 A
- 1980 V
- (24482)210 648 A
- 1110(})S
- 2070 V
- (24483)210 648 A
- (dont_reply)420 1110 A
- 1572(=)S
- (TRUE;)210 1656 A
- 2370(/*)S
- 2496(do)S
- (not)126 2622 A
- (send)168 2790 A
- (caller)252 3000 A
- 3294(a)S
- (reply)210 3378 A
- (message)294 3630 A
- (now)126 3966 A
- 4134(*/)S
- 2160 V
- (24484)210 648 A
- 1026(})S
- 2430 V
- (24487)210 648 A
- (/*===========================================================================*)3276 1026 A
- 2520 V
- (24488)210 648 A
- 1068(*)S
- (release)294 2370 A
- 4260(*)S
- 2610 V
- (24489)210 648 A
- (*===========================================================================*/)3276 1068 A
- 2700 V
- (24490)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (release(ip,)462 1530 A
- (call_nr,)336 2034 A
- (count))252 2412 A
- 2790 V
- (24491)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (inode)210 1698 A
- (*ip;)168 1950 A
- 2370(/*)S
- (inode)210 2496 A
- 2748(of)S
- (pipe)168 2874 A
- 3084(*/)S
- 2880 V
- (24492)210 648 A
- (int)126 1026 A
- (call_nr;)336 1194 A
- 2370(/*)S
- (READ,)210 2496 A
- (WRITE,)252 2748 A
- (OPEN)168 3042 A
- 3252(or)S
- (CREAT)210 3378 A
- 3630(*/)S
- 2970 V
- (24493)210 648 A
- (int)126 1026 A
- (count;)252 1194 A
- 2370(/*)S
- (max)126 2496 A
- (number)252 2664 A
- 2958(of)S
- (processes)378 3084 A
- 3504(to)S
- (release)294 3630 A
- 3966(*/)S
- 3060 V
- (24494)210 648 A
- 1026({)S
- 3150 V
- (24495)210 648 A
- 1026(/*)S
- (Check)210 1152 A
- 1404(to)S
- (see)126 1530 A
- 1698(if)S
- (any)126 1824 A
- (process)294 1992 A
- 2328(is)S
- (hanging)294 2454 A
- 2790(on)S
- (the)126 2916 A
- (pipe)168 3084 A
- (whose)210 3294 A
- (inode)210 3546 A
- 3798(is)S
- 3924(in)S
- ('ip'.)210 4050 A
- 3240 V
- (24496)210 648 A
- 1068(*)S
- 1152(If)S
- (one)126 1278 A
- (is,)126 1446 A
- (and)126 1614 A
- 1782(it)S
- (was)126 1908 A
- (trying)252 2076 A
- 2370(to)S
- (perform)294 2496 A
- (the)126 2832 A
- (call)168 3000 A
- (indicated)378 3210 A
- 3630(by)S
- ('call_nr',)420 3756 A
- 3330 V
- (24497)210 648 A
- 1068(*)S
- (release)294 1152 A
- (it.)126 1488 A
- 3420 V
- (24498)210 648 A
- 1068(*/)S
- 3510 V
- (24499)210 648 A
- 3600 V
- (24500)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (fproc)210 1782 A
- (*rp;)168 2034 A
- 3690 V
- (24501)210 648 A
- 3780 V
- (24502)210 648 A
- 1110(/*)S
- (Search)252 1236 A
- (the)126 1530 A
- (proc)168 1698 A
- (table.)252 1908 A
- 2202(*/)S
- 3870 V
- (24503)210 648 A
- (for)126 1110 A
- ((rp)126 1278 A
- 1446(=)S
- (&fproc[0];)420 1530 A
- 1992(rp)S
- 2118(<)S
- (&fproc[NR_PROCS];)714 2202 A
- (rp++))210 2958 A
- 3210({)S
- 3960 V
- (24504)210 648 A
- 1362(if)S
- ((rp->fp_suspended)714 1488 A
- 2244(==)S
- (SUSPENDED)378 2370 A
- 2790(&&)S
- 4050 V
- (24505)210 648 A
- (rp->fp_revived)588 2034 A
- 2664(==)S
- (NOT_REVIVING)504 2790 A
- 3336(&&)S
- 4140 V
- (24506)210 648 A
- ((rp->fp_fd)420 2034 A
- 2496(&)S
- (BYTE))210 2580 A
- 2832(==)S
- (call_nr)294 2958 A
- 3294(&&)S
- 4230 V
- (24507)210 648 A
- (rp->fp_filp[rp->fp_fd>>8]->filp_ino)1470 2034 A
- 3546(==)S
- (ip))126 3672 A
- 3840({)S
- 4320 V
- (24508)210 648 A
- (revive((int)(rp)630 1698 A
- 2370(-)S
- (fproc),)294 2454 A
- (0);)126 2790 A
- 4410 V
- (24509)210 648 A
- (susp_count--;)546 1698 A
- 2370(/*)S
- (keep)168 2496 A
- (track)210 2706 A
- 2958(of)S
- (who)126 3084 A
- 3252(is)S
- (suspended)378 3378 A
- 3798(*/)S
- 4500 V
- (24510)210 648 A
- 1698(if)S
- ((--count)336 1824 A
- 2202(==)S
- 2328(0))S
- (return;)294 2454 A
- 4590 V
- (24511)210 648 A
- 1362(})S
- 4680 V
- (24512)210 648 A
- 1110(})S
- 4770 V
- (24513)210 648 A
- 1026(})S
- 5040 V
- (24516)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5130 V
- (24517)210 648 A
- 1068(*)S
- (revive)252 2370 A
- 4260(*)S
- 5220 V
- (24518)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5310 V
- (24519)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (revive(proc_nr,)630 1530 A
- (bytes))252 2202 A
- 5400 V
- (24520)210 648 A
- (int)126 1026 A
- (proc_nr;)336 1194 A
- 2370(/*)S
- (process)294 2496 A
- 2832(to)S
- (revive)252 2958 A
- 3252(*/)S
- 5490 V
- (24521)210 648 A
- (int)126 1026 A
- (bytes;)252 1194 A
- 2370(/*)S
- 2496(if)S
- (hanging)294 2622 A
- 2958(on)S
- (task,)210 3084 A
- (how)126 3336 A
- (many)168 3504 A
- (bytes)210 3714 A
- (read)168 3966 A
- 4176(*/)S
- 5580 V
- (24522)210 648 A
- 1026({)S
- 5670 V
- (24523)210 648 A
- 1026(/*)S
- (Revive)252 1152 A
- 1446(a)S
- (previously)420 1530 A
- (blocked)294 1992 A
- (process.)336 2328 A
- (When)168 2706 A
- 2916(a)S
- (process)294 3000 A
- (hangs)210 3336 A
- 3588(on)S
- (tty,)168 3714 A
- (this)168 3924 A
- 5760 V
- (24524)210 648 A
- 1068(*)S
- 1152(is)S
- (the)126 1278 A
- (way)126 1446 A
- 1614(it)S
- 1740(is)S
- (eventually)420 1866 A
- (released.)378 2328 A
- 5850 V
- (24525)210 648 A
- 1068(*/)S
- 5940 V
- (24526)210 648 A
- 6030 V
- (24527)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (fproc)210 1782 A
- (*rfp;)210 2034 A
- 6120 V
- (24528)210 648 A
- (register)336 1110 A
- (int)126 1488 A
- (task;)210 1656 A
- 6210 V
- (24529)210 648 A
- 8418 V
- EP
- %%Page: 338 338
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (338)180 648 A
- 11 R
- 2151(File:)S
- 2384(src/fs/pipe.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (24530)210 648 A
- 1110(if)S
- ((proc_nr)336 1236 A
- 1614(<)S
- 1698(0)S
- 1782(||)S
- (proc_nr)294 1908 A
- 2244(>=)S
- (NR_PROCS))378 2370 A
- (panic("revive)546 2790 A
- (err",)210 3378 A
- (proc_nr);)378 3630 A
- 990 V
- (24531)210 648 A
- (rfp)126 1110 A
- 1278(=)S
- (&fproc[proc_nr];)672 1362 A
- 1080 V
- (24532)210 648 A
- 1110(if)S
- ((rfp->fp_suspended)756 1236 A
- 2034(==)S
- (NOT_SUSPENDED)546 2160 A
- 2748(||)S
- (rfp->fp_revived)630 2874 A
- 3546(==)S
- (REVIVING)return;)672 3672 A
- 1170 V
- (24533)210 648 A
- 1260 V
- (24534)210 648 A
- 1110(/*)S
- (The)126 1236 A
- ('reviving')420 1404 A
- (flag)168 1866 A
- (only)168 2076 A
- (applies)294 2286 A
- 2622(to)S
- (pipes.)252 2748 A
- (Processes)378 3084 A
- (waiting)294 3504 A
- (for)126 3840 A
- (TTY)126 4008 A
- (get)126 4176 A
- 1350 V
- (24535)210 648 A
- 1152(*)S
- 1236(a)S
- (message)294 1320 A
- (right)210 1656 A
- (away.)210 1908 A
- (The)126 2202 A
- (revival)294 2370 A
- (process)294 2706 A
- 3042(is)S
- (different)378 3168 A
- (for)126 3588 A
- (TTY)126 3756 A
- (and)126 3924 A
- (pipes.)252 4092 A
- 1440 V
- (24536)210 648 A
- 1152(*)S
- (For)126 1236 A
- (TTY)126 1404 A
- (revival,)336 1572 A
- (the)126 1950 A
- (work)168 2118 A
- 2328(is)S
- (already)294 2454 A
- (done,)210 2790 A
- (for)126 3042 A
- (pipes)210 3210 A
- 3462(it)S
- 3588(is)S
- (not:)168 3714 A
- (the)126 3924 A
- (proc)168 4092 A
- 1530 V
- (24537)210 648 A
- 1152(*)S
- (must)168 1236 A
- 1446(be)S
- (restarted)378 1572 A
- 1992(so)S
- 2118(it)S
- (can)126 2244 A
- (try)126 2412 A
- (again.)252 2580 A
- 1620 V
- (24538)210 648 A
- 1152(*/)S
- 1710 V
- (24539)210 648 A
- (task)168 1110 A
- 1320(=)S
- (-rfp->fp_task;)588 1404 A
- 1800 V
- (24540)210 648 A
- 1110(if)S
- ((task)210 1236 A
- 1488(==)S
- (XPIPE)210 1614 A
- 1866(||)S
- (task)168 1992 A
- 2202(==)S
- (XLOCK))252 2328 A
- 2622({)S
- 1890 V
- (24541)210 648 A
- 1362(/*)S
- (Revive)252 1488 A
- 1782(a)S
- (process)294 1866 A
- (suspended)378 2202 A
- 2622(on)S
- 2748(a)S
- (pipe)168 2832 A
- 3042(or)S
- (lock.)210 3168 A
- 3420(*/)S
- 1980 V
- (24542)210 648 A
- (rfp->fp_revived)630 1362 A
- 2034(=)S
- (REVIVING;)378 2118 A
- 2070 V
- (24543)210 648 A
- (reviving++;)462 1362 A
- 2370(/*)S
- (process)294 2496 A
- (was)126 2832 A
- (waiting)294 3000 A
- 3336(on)S
- (pipe)168 3462 A
- 3672(or)S
- (lock)168 3798 A
- 4008(*/)S
- 2160 V
- (24544)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 2250 V
- (24545)210 648 A
- (rfp->fp_suspended)714 1362 A
- 2118(=)S
- (NOT_SUSPENDED;)588 2202 A
- 2340 V
- (24546)210 648 A
- 1362(if)S
- ((task)210 1488 A
- 1740(==)S
- (XPOPEN))294 1866 A
- 2202(/*)S
- (process)294 2328 A
- (blocked)294 2664 A
- 3000(in)S
- (open)168 3126 A
- 3336(or)S
- (create)252 3462 A
- 3756(*/)S
- 2430 V
- (24547)210 648 A
- (reply(proc_nr,)588 1698 A
- (rfp->fp_fd>>8);)630 2328 A
- 2520 V
- (24548)210 648 A
- (else)168 1362 A
- 1572({)S
- 2610 V
- (24549)210 648 A
- 1698(/*)S
- (Revive)252 1824 A
- 2118(a)S
- (process)294 2202 A
- (suspended)378 2538 A
- 2958(on)S
- (TTY)126 3084 A
- 3252(or)S
- (other)210 3378 A
- (device.)294 3630 A
- 3966(*/)S
- 2700 V
- (24550)210 648 A
- (rfp->fp_nbytes)588 1698 A
- 2328(=)S
- (bytes;)252 2412 A
- (/*pretend)378 2706 A
- 3126(it)S
- (wants)210 3252 A
- (only)168 3504 A
- (what)168 3714 A
- (there)210 3924 A
- (is*/)168 4176 A
- 2790 V
- (24551)210 648 A
- (reply(proc_nr,)588 1698 A
- (bytes);)294 2328 A
- 2706(/*)S
- (unblock)294 2832 A
- (the)126 3168 A
- (process)294 3336 A
- 3672(*/)S
- 2880 V
- (24552)210 648 A
- 1362(})S
- 2970 V
- (24553)210 648 A
- 1110(})S
- 3060 V
- (24554)210 648 A
- 1026(})S
- 3330 V
- (24557)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3420 V
- (24558)210 648 A
- 1068(*)S
- (do_unpause)420 2370 A
- 4260(*)S
- 3510 V
- (24559)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3600 V
- (24560)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_unpause())504 1488 A
- 3690 V
- (24561)210 648 A
- 1026({)S
- 3780 V
- (24562)210 648 A
- 1026(/*)S
- 1152(A)S
- (signal)252 1236 A
- (has)126 1530 A
- (been)168 1698 A
- (sent)168 1908 A
- 2118(to)S
- 2244(a)S
- (user)168 2328 A
- (who)126 2538 A
- 2706(is)S
- (paused)252 2832 A
- 3126(on)S
- (the)126 3252 A
- (file)168 3420 A
- (system.)294 3630 A
- 3870 V
- (24563)210 648 A
- 1068(*)S
- (Abort)210 1152 A
- (the)126 1404 A
- (system)252 1572 A
- (call)168 1866 A
- (with)168 2076 A
- (the)126 2286 A
- (EINTR)210 2454 A
- (error)210 2706 A
- (message.)336 2958 A
- 3960 V
- (24564)210 648 A
- 1068(*/)S
- 4050 V
- (24565)210 648 A
- 4140 V
- (24566)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (fproc)210 1782 A
- (*rfp;)210 2034 A
- 4230 V
- (24567)210 648 A
- (int)126 1110 A
- (proc_nr,)336 1278 A
- (task,)210 1656 A
- (fild;)210 1908 A
- 4320 V
- (24568)210 648 A
- (struct)252 1110 A
- (filp)168 1404 A
- (*f;)126 1614 A
- 4410 V
- (24569)210 648 A
- (dev_t)210 1110 A
- (dev;)168 1362 A
- 4500 V
- (24570)210 648 A
- 4590 V
- (24571)210 648 A
- 1110(if)S
- ((who)168 1236 A
- 1446(>)S
- (MM_PROC_NR))462 1530 A
- (return(EPERM);)588 2034 A
- 4680 V
- (24572)210 648 A
- (proc_nr)294 1110 A
- 1446(=)S
- (pro;)168 1530 A
- 4770 V
- (24573)210 648 A
- 1110(if)S
- ((proc_nr)336 1236 A
- 1614(<)S
- 1698(0)S
- 1782(||)S
- (proc_nr)294 1908 A
- 2244(>=)S
- (NR_PROCS))378 2370 A
- (panic("unpause)588 2790 A
- (err)126 3420 A
- (1",)126 3588 A
- (proc_nr);)378 3756 A
- 4860 V
- (24574)210 648 A
- (rfp)126 1110 A
- 1278(=)S
- (&fproc[proc_nr];)672 1362 A
- 4950 V
- (24575)210 648 A
- 1110(if)S
- ((rfp->fp_suspended)756 1236 A
- 2034(==)S
- (NOT_SUSPENDED))588 2160 A
- (return(OK);)462 2790 A
- 5040 V
- (24576)210 648 A
- (task)168 1110 A
- 1320(=)S
- (-rfp->fp_task;)588 1404 A
- 5130 V
- (24577)210 648 A
- 5220 V
- (24578)210 648 A
- (switch(task))504 1110 A
- 1656({)S
- 5310 V
- (24579)210 648 A
- (case)168 1362 A
- (XPIPE:)252 1572 A
- 2370(/*)S
- (process)294 2496 A
- (trying)252 2832 A
- 3126(to)S
- (read)168 3252 A
- 3462(or)S
- (write)210 3588 A
- 3840(a)S
- (pipe)168 3924 A
- 4134(*/)S
- 5400 V
- (24580)210 648 A
- (break;)252 1698 A
- 5490 V
- (24581)210 648 A
- 5580 V
- (24582)210 648 A
- (case)168 1362 A
- (XOPEN:)252 1572 A
- 2370(/*)S
- (process)294 2496 A
- (trying)252 2832 A
- 3126(to)S
- (open)168 3252 A
- 3462(a)S
- (special)294 3546 A
- (file)168 3882 A
- 4092(*/)S
- 5670 V
- (24583)210 648 A
- (panic)210 1698 A
- (("fs/do_unpause)630 1950 A
- (called)252 2622 A
- (with)168 2916 A
- (XOPEN\n",)378 3126 A
- (NO_NUM);)336 3546 A
- 5760 V
- (24584)210 648 A
- 5850 V
- (24585)210 648 A
- (case)168 1362 A
- (XLOCK:)252 1572 A
- 2370(/*)S
- (process)294 2496 A
- (trying)252 2832 A
- 3126(to)S
- (set)126 3252 A
- 3420(a)S
- (lock)168 3504 A
- (with)168 3714 A
- (FCNTL)210 3924 A
- 4176(*/)S
- 5940 V
- (24586)210 648 A
- (break;)252 1698 A
- 6030 V
- (24587)210 648 A
- 6120 V
- (24588)210 648 A
- (case)168 1362 A
- (XPOPEN:)294 1572 A
- 2370(/*)S
- (process)294 2496 A
- (trying)252 2832 A
- 3126(to)S
- (open)168 3252 A
- 3462(a)S
- (fifo)168 3546 A
- 3756(*/)S
- 6210 V
- (24589)210 648 A
- (break;)252 1698 A
- 8418 V
- EP
- %%Page: 339 339
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2151(File:)S
- 2384(src/fs/pipe.c)S
- 12 B
- (339)180 4248 A
- 900 V
- 7 LST
- (24590)210 648 A
- 990 V
- (24591)210 648 A
- (default:)336 1362 A
- 2370(/*)S
- (process)294 2496 A
- (trying)252 2832 A
- 3126(to)S
- 3252(do)S
- (device)252 3378 A
- (I/O)126 3672 A
- ((e.g.)210 3840 A
- (tty)*/)252 4092 A
- 1080 V
- (24592)210 648 A
- (fild)168 1698 A
- 1908(=)S
- ((rfp->fp_fd)462 1992 A
- 2496(>>)S
- 2622(8))S
- 2748(&)S
- (BYTE;/*)294 2832 A
- (extract)294 3168 A
- (file)168 3504 A
- (descriptor)420 3714 A
- 4176(*/)S
- 1170 V
- (24593)210 648 A
- 1698(if)S
- ((fild)210 1824 A
- 2076(<)S
- 2160(0)S
- 2244(||)S
- (fild)168 2370 A
- 2580(>=)S
- (OPEN_MAX)panic("unpause)966 2706 A
- (err)126 3714 A
- (2",NO_NUM);)462 3882 A
- 1260 V
- (24594)210 648 A
- 1698(f)S
- 1782(=)S
- (rfp->fp_filp[fild];)798 1866 A
- 1350 V
- (24595)210 648 A
- (dev)126 1698 A
- 1866(=)S
- ((dev_t))294 1950 A
- (f->filp_ino->i_zone[0];)966 2286 A
- 3378(/*)S
- (device)252 3504 A
- (hung)168 3798 A
- 4008(on)S
- 4134(*/)S
- 1440 V
- (24596)210 648 A
- (mess.TTY_LINE)546 1698 A
- 2286(=)S
- ((dev)168 2370 A
- 2580(>>)S
- (MINOR))252 2706 A
- 3000(&)S
- (BYTE;)210 3084 A
- 1530 V
- (24597)210 648 A
- (mess.PROC_NR)504 1698 A
- 2244(=)S
- (proc_nr;)336 2328 A
- 1620 V
- (24598)210 648 A
- 1710 V
- (24599)210 648 A
- 1698(/*)S
- (Tell)168 1824 A
- (kernel)252 2034 A
- 2328(R)S
- 2412(or)S
- 2538(W.)S
- (Mode)168 2664 A
- 2874(is)S
- (from)168 3000 A
- (current)294 3210 A
- (call,)210 3546 A
- (not)126 3798 A
- (open.)210 3966 A
- 4218(*/)S
- 1800 V
- (24600)210 648 A
- (mess.COUNT)420 1698 A
- 2160(=)S
- ((rfp->fp_fd)462 2244 A
- 2748(&)S
- (BYTE))210 2832 A
- 3084(==)S
- (READ)168 3210 A
- 3420(?)S
- (R_BIT)210 3504 A
- 3756(:)S
- (W_BIT;)252 3840 A
- 1890 V
- (24601)210 648 A
- (mess.m_type)462 1698 A
- 2202(=)S
- (CANCEL;)294 2286 A
- 1980 V
- (24602)210 648 A
- 1698(fp)S
- 1824(=)S
- (rfp;)168 1908 A
- 2370(/*)S
- (hack)168 2496 A
- 2706(-)S
- (call_ctty)378 2790 A
- (uses)168 3210 A
- 3420(fp)S
- 3546(*/)S
- 2070 V
- (24603)210 648 A
- ((*dmap[(dev)462 1698 A
- 2202(>>)S
- (MAJOR))252 2328 A
- 2622(&)S
- (BYTE].dmap_rw)(task,)840 2706 A
- (&mess);)294 3588 A
- 2160 V
- (24604)210 648 A
- 1110(})S
- 2250 V
- (24605)210 648 A
- 2340 V
- (24606)210 648 A
- (rfp->fp_suspended)714 1110 A
- 1866(=)S
- (NOT_SUSPENDED;)588 1950 A
- 2430 V
- (24607)210 648 A
- (reply(proc_nr,)588 1110 A
- (EINTR);)294 1740 A
- 2370(/*)S
- (signal)252 2496 A
- (interrupted)462 2790 A
- (call)168 3294 A
- 3504(*/)S
- 2520 V
- (24608)210 648 A
- (return(OK);)462 1110 A
- 2610 V
- (24609)210 648 A
- 1026(})S
- 3240 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 3330 V
- (src/fs/path.c)546 2034 A
- 3420 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 3600 V
- (24700)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (the)126 1950 A
- (procedures)420 2118 A
- (that)168 2580 A
- (look)168 2790 A
- 3000(up)S
- (path)168 3126 A
- (names)210 3336 A
- 3588(in)S
- (the)126 3714 A
- (directory)378 3882 A
- 3690 V
- (24701)210 648 A
- 1068(*)S
- (system)252 1152 A
- (and)126 1446 A
- (determine)378 1614 A
- (the)126 2034 A
- (inode)210 2202 A
- (number)252 2454 A
- (that)168 2748 A
- (goes)168 2958 A
- (with)168 3168 A
- 3378(a)S
- (given)210 3462 A
- (path)168 3714 A
- (name.)210 3924 A
- 3780 V
- (24702)210 648 A
- 1068(*)S
- 3870 V
- (24703)210 648 A
- 1068(*)S
- (The)126 1194 A
- (entry)210 1362 A
- (points)252 1614 A
- (into)168 1908 A
- (this)168 2118 A
- (file)168 2328 A
- (are)126 2538 A
- 3960 V
- (24704)210 648 A
- 1068(*)S
- (eat_path:)378 1236 A
- (the)126 1740 A
- ('main')252 1908 A
- (routine)294 2202 A
- 2538(of)S
- (the)126 2664 A
- (path-to-inode)546 2832 A
- (conversion)420 3420 A
- (mechanism)378 3882 A
- 4050 V
- (24705)210 648 A
- 1068(*)S
- (last_dir:)378 1236 A
- (find)168 1740 A
- (the)126 1950 A
- (final)210 2118 A
- (directory)378 2370 A
- 2790(on)S
- 2916(a)S
- (given)210 3000 A
- (path)168 3252 A
- 4140 V
- (24706)210 648 A
- 1068(*)S
- (advance:)336 1236 A
- (parse)210 1740 A
- (one)126 1992 A
- (component)378 2160 A
- 2580(of)S
- 2706(a)S
- (path)168 2790 A
- (name)168 3000 A
- 4230 V
- (24707)210 648 A
- 1068(*)S
- (search_dir:)462 1236 A
- (search)252 1740 A
- 2034(a)S
- (directory)378 2118 A
- (for)126 2538 A
- 2706(a)S
- (string)252 2790 A
- (and)126 3084 A
- (return)252 3252 A
- (its)126 3546 A
- (inode)210 3714 A
- (number)252 3966 A
- 4320 V
- (24708)210 648 A
- 1068(*/)S
- 4410 V
- (24709)210 648 A
- 4500 V
- (24710)210 648 A
- (#include)336 1026 A
- ("fs.h")252 1404 A
- 4590 V
- (24711)210 648 A
- (#include)336 1026 A
- (<string.h>)420 1404 A
- 4680 V
- (24712)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 4770 V
- (24713)210 648 A
- (#include)336 1026 A
- ("buf.h")294 1404 A
- 4860 V
- (24714)210 648 A
- (#include)336 1026 A
- ("file.h")336 1404 A
- 4950 V
- (24715)210 648 A
- (#include)336 1026 A
- ("fproc.h")378 1404 A
- 5040 V
- (24716)210 648 A
- (#include)336 1026 A
- ("inode.h")378 1404 A
- 5130 V
- (24717)210 648 A
- (#include)336 1026 A
- ("super.h")378 1404 A
- 5220 V
- (24718)210 648 A
- 5310 V
- (24719)210 648 A
- (PUBLIC)252 1026 A
- (char)168 1320 A
- (dot1[2])294 1530 A
- 1866(=)S
- (".";)168 1950 A
- 2370(/*)S
- (used)168 2496 A
- (for)126 2706 A