[comp.os.minix] call of dev_close in do_close

leo@marco.UUCP (Matthias Pfaller) (03/03/90)

In open.c, function do_close Andy writes:
>  /* Check to see if the file is special. */
>  mode_word = rip->i_mode & I_TYPE;
>  if (mode_word == I_CHAR_SPECIAL || mode_word == I_BLOCK_SPECIAL) {
>	if (mode_word == I_BLOCK_SPECIAL)  {
>		/* Invalidate cache entries unless special is mounted or ROOT*/
>		do_sync();	/* purge cache */
>		if (mounted(rip) == FALSE) invalidate((dev_t) rip->i_zone[0]);
>	}
>	dev_close(rip);
> }

The filp_count is only used in the following line:
>  if (--rfilp->filp_count == 0) put_inode(rip);
Should'nt dev_close() also only get called, if rfilp->filp_count goes to zero?

	leo@marco.UUCP (Matthias Pfaller)