aboutsummaryrefslogtreecommitdiff
path: root/libbb/inode_hash.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2009-03-22 19:00:05 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2009-03-22 19:00:05 +0000
commit57abf9e947fa3f7d69f7adb97023b299916ee63c (patch)
treebcc36a5d96b56859763bd52a52377ed1c081326a /libbb/inode_hash.c
parent3fd104630020168ead90123e45d848d4d2d0a555 (diff)
downloadbusybox-57abf9e947fa3f7d69f7adb97023b299916ee63c.tar.gz
libbb: make history saving/loading concurrent-safe
* all history writers always append (not overwrite) history files * they reload history if they detect that file length has changed since last write * they trim history file only when it grows 4 times longer than MAXLINES * they do this atomically by creating new file and renaming it to old Unfortunately, this comes at a price: function old new delta load_history - 346 +346 read_line_input 3155 3358 +203 new_line_input_t 17 31 +14 ...irrelevant small jitter... ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 5/5 up/down: 573/-13) Total: 560 bytes
Diffstat (limited to 'libbb/inode_hash.c')
0 files changed, 0 insertions, 0 deletions