Re: Linux 2.4.10-pre11

Andrea Arcangeli
2001-09-20T22:13:09Z

On Thu, Sep 20, 2001 at 05:40:00PM -0400, Alexander Viro wrote:
>
>
> On Thu, 20 Sep 2001, Andrea Arcangeli wrote:
>
> > > Sigh... Try BLKFLSBUF + write() + BLKFLSBUF.
> >
> > write will return -EIO and second BLKFLSBUF will do nothing.
>
> Now compare that with behaviour of -pre10 (not to mention the
> (in)sanity of "this ioctl() will make all IO on the fd fail until
> somebody opens the same file" semantics).

It's not that insane: the address space is allocated at open time.
After you drop it with BLKFLSBUF you will have to open the device again
to reallocate a new address space. I could just truncate the physical
address space, there are no other users, but then the inode would remain
pinned forever, and so until we include your ipinning fix this looked an
acceptable two liner band-aid I guess (again, real fix is yours, all I'm
saying is that it can't oops any longer ;).

thanks,
Andrea