xfs
[Top] [All Lists]

BUG 787669 - page_buf_locking could not be rmmod'ed

To: ananth@xxxxxxxxxxxxxxxxxxxx
Subject: BUG 787669 - page_buf_locking could not be rmmod'ed
From: pv@xxxxxxxxxxxxxxxxxxxxxx (mostek@xxxxxxx)
Date: Tue, 11 Apr 2000 07:56:10 -0700 (PDT)
Cc: linux-xfs@xxxxxxxxxxx
Reply-to: sgi.bugs.xfs@xxxxxxxxxxxxxxxxx
Sender: owner-linux-xfs@xxxxxxxxxxx
Webexec: webpvsubmit,PvProjectIncident
Webpv: sgigate.sgi.com
View Incident: 
http://co-op.engr.sgi.com/BugWorks/code/bwxquery.cgi?search=Search&wlong=1&view_type=Bug&wi=787669

Submitter : mostek                    Submitter Domain : sgi.com            
Assigned Engineer : ananth            Assigned Domain : engr                
Assigned Group : xfs-linux            Category : software                   
Customer Reported : F                 Priority : 2                          
Project : xfs-linux                   Status : open                         
Description :
Got into a situation where the use count for the page_buf_locking
module was greater than zero, even though the xfs module had been
unloaded, and therefore I am unable to unload the module.  A quick
look around, found this:

xfs_super.c:
  void
  linvfs_release_inode(struct inode *inode)
  {
        if (inode) {
                pagebuf_lock_disable(inode);
                truncate_inode_pages(&inode->i_data, 0L);
                iput(inode);
        }
  }

however, pagebuf_lock_disable() in page_buf_locking.c can return with
-EBUSY without decrementing the use count.

The call to pagebuf_lock_disable() should probably be in a loop
checking the return value, but I wasn't sure whether this would be
safe...


Ivan

-- 
Ivan Rayner
ivanr@xxxxxxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>
  • BUG 787669 - page_buf_locking could not be rmmod'ed, mostek@xxxxxxx <=