[OpenAFS-devel] Cache inconsistency in client 1.4.8 and above

Marc Dionne marc.c.dionne@gmail.com
Fri, 17 Apr 2009 08:24:35 -0400


On Fri, Apr 17, 2009 at 2:13 AM, Felix Frank <Felix.Frank@desy.de> wrote:
>> With the fix above, my larger mmap test quickly runs into a deadlock
>> again. Looks like cache_write_pages is trying to lock the page that is
>> currently being written:
>
> I think I just reproduced :/

> Guess we're back to square one then. I posted a hack to RT #124627 yester=
day
> that does prevent deadlock, but apparently much data won't ever get writt=
en
> to the cache and mmap_test reports corruptions (gets lots of 0s). So what=
 to
> do instead of osi_VM_StoreAllSegments() during partial writes?
>
> Regards
> =A0- Felix

I tried something almost identical yesterday (but I was lazier and
just used the AFS_VMSYNC_INVAL flag), and it does prevent the
deadlock.

I don't see any corruption however - could you post your test case
here (I had trouble getting it from AFS), and also, can you give a bit
more info - cache size, memory size, etc.  Kernel versions might make
a difference - I'm testing with latest 2.6.30-rc.

Marc