linear log update