On Thu, Sep 29, 2016 at 12:56:49PM +, Anton Altaparmakov wrote:
> Hi Al,
>
> > On 29 Sep 2016, at 13:17, Al Viro wrote:
> >
> > On Thu, Sep 29, 2016 at 11:53:21AM +, Anton Altaparmakov wrote:
> >> Thus if the events happen in this order:
> >>
> >>
On Thu, Sep 29, 2016 at 12:56:49PM +, Anton Altaparmakov wrote:
> Hi Al,
>
> > On 29 Sep 2016, at 13:17, Al Viro wrote:
> >
> > On Thu, Sep 29, 2016 at 11:53:21AM +, Anton Altaparmakov wrote:
> >> Thus if the events happen in this order:
> >>
> >> evict_inodes()
Hi Al,
> On 29 Sep 2016, at 13:17, Al Viro wrote:
>
> On Thu, Sep 29, 2016 at 11:53:21AM +, Anton Altaparmakov wrote:
>> Thus if the events happen in this order:
>>
>> evict_inodes() iget_locked() in
>> find_inode_fast()
>
> ... you
Hi Al,
> On 29 Sep 2016, at 13:17, Al Viro wrote:
>
> On Thu, Sep 29, 2016 at 11:53:21AM +, Anton Altaparmakov wrote:
>> Thus if the events happen in this order:
>>
>> evict_inodes() iget_locked() in
>> find_inode_fast()
>
> ... you are buggered, because
On Thu, Sep 29, 2016 at 11:53:21AM +, Anton Altaparmakov wrote:
> Thus if the events happen in this order:
>
> evict_inodes()iget_locked() in
> find_inode_fast()
... you are buggered, because somebody is trying to grab a reference
to inode on a filesystem
On Thu, Sep 29, 2016 at 11:53:21AM +, Anton Altaparmakov wrote:
> Thus if the events happen in this order:
>
> evict_inodes()iget_locked() in
> find_inode_fast()
... you are buggered, because somebody is trying to grab a reference
to inode on a filesystem
Hi Al,
I think there is a race condition between iget_locked() and evict_inodes().
evict_inodes() checks i_count and if zero proceeds to take i_lock then set
I_FREEING and eventually disposes of the inode.
But a concurrent iget_locked() takes i_lock and then increments i_count.
Thus
Hi Al,
I think there is a race condition between iget_locked() and evict_inodes().
evict_inodes() checks i_count and if zero proceeds to take i_lock then set
I_FREEING and eventually disposes of the inode.
But a concurrent iget_locked() takes i_lock and then increments i_count.
Thus
8 matches
Mail list logo