Skip to contentSkip to conversation

2.4.18: writeback of shared mmap'ed files broken?

DISCUSSION Frank van Maarseveen 1 participant 1 message Apr 22, 2002

lore
Share & tools
lore
#0 lore raw

A news server has two processes both accessing an "active" file. This file is constantly being updated:

cp /loc/news/lib/active /tmp/active
sleep 1
diff /loc/news/lib/active /tmp/active
(differences)

However, its mtime does not change: it is days too old. Also, after an unclean shutdown and reboot due to a power failure innd seemed to operate on a very old version of the active file.

I don't think innd is calling msync() but IMHO that should not prohibit the kernel from flushing out dirty pages at regular interval.

AFAIK there was a bug in the past with shared mmap'ed files but I thought it was fixed a long time ago.

# lsof|grep lib/active

actived   30695   news  mem    REG        3,4    70078     209527 /loc/news/lib/active
innd      30696   news  mem    REG        3,4    70078     209527 /loc/news/lib/active
innd      30696   news   16u   REG        3,4    70078     209527 /loc/news/lib/active
# grep lib/active /proc/3069[56]/maps
4018b000-4019d000 r--s 00000000 03:04 209527     /loc/news/lib/active
40425000-40437000 rw-s 00000000 03:04 209527     /loc/news/lib/active
Signature · 1 line
Frank