From mboxrd@z Thu Jan 1 00:00:00 1970 From: Phillip Susi Subject: Re: forced umount? Date: Mon, 26 Mar 2007 17:34:49 -0400 Message-ID: <46083C79.1080108@cfl.rr.com> References: <170fa0d20703162106v47dc13e1u1ae5381576f372ed@mail.gmail.com> <45FB6E32.3050009@goop.org> <170fa0d20703162237m1023cbd2o8ccf9e464c53f4a0@mail.gmail.com> <84144f020703170353y4490d0dcr24352c291c96300b@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Mike Snitzer , Jeremy Fitzhardinge , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org To: Pekka Enberg Return-path: In-Reply-To: <84144f020703170353y4490d0dcr24352c291c96300b@mail.gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org Is this revoke system supported for the filesystem as a whole? I thought it was just to force specific files closed, not the whole filesystem. What if the filesystem itself has pending IO to say, update inodes or block bitmaps? Can these be aborted? Pekka Enberg wrote: > FYI, the revoke implementation have since been changed to follow the > badfs-style approach of the forced unmount patches. However, there are > some problems with the forced unmount patches that are now fixed in > the revoke implementation: > > - You can't use munmap() to take down shared memory mappings because the > application can accidentally remap something completely different > to that region. > - The ->f_light bits slow down other fget_light() users and there's > a race between > fcheck_files() and set_f_light(). > - The operation can live-lock if a malicious process keeps forking. The > revoke > implementation solves this by revoking in two passes: (1) take > down the descriptors > and (2) take down the actual inodes. > > Pekka