Re: mtime updates for mmapped files.

From: Rogier Wolff
Date: Wed Jan 16 2008 - 07:31:06 EST


On Wed, Jan 16, 2008 at 02:22:49PM +0300, Anton Salikhmetov wrote:
> Unfortunately, this issue has not been fully fixed yet.
>
> My last attempt (http://lkml.org/lkml/2008/1/15/202) to solve
> this problem has a couple of drawbacks:
>
> 1) calling a possibly sleeping function from atomic context -
> I've already corrected this;
>
> 2) there's a very special case with retouching the memory-mapped data
> after a call to msync() with MS_ASYNC.

> I'm still working on the latter case, but I guess that I have found
> a solution.

> If you badly need a quick fix, I can send my working unreleased
> patch to you. I reckon that your particular problem will be fixed
> by this patch. Let me know if you want that.

No need. Thanks for the offer.

> However, if your application calls msync() with the MS_ASYNC flag,
> it's better to wait a little bit more - I'll release the next version
> of my solution
> shortly.

My application calls "exit" (*). My workaround was to type

touch <destfile>

to get things to work. In my situation, I was worried about the more
general case, and not really about my personal situation.

I could integrate the "touch <destfile>" into my application, but I
think it is the OS's duty to do this for me. This would be the easiest
non-manual fix for me.

Roger.

(*) So please check that:
- mmap file
- change mmapped area
- exit
also works (modifies the timestamp).

--
** R.E.Wolff@xxxxxxxxxxxx ** http://www.BitWizard.nl/ ** +31-15-2600998 **
** Delftechpark 26 2628 XH Delft, The Netherlands. KVK: 27239233 **
*-- BitWizard writes Linux device drivers for any device you may have! --*
Q: It doesn't work. A: Look buddy, doesn't work is an ambiguous statement.
Does it sit on the couch all day? Is it unemployed? Please be specific!
Define 'it' and what it isn't doing. --------- Adapted from lxrbot FAQ
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/