I committed a simplified version of this (2743fdee849be4a00a9ea72d601004c95b22dd56) which passes ulogentries as a separate argument to print_update(). I omitted the change to the "if (entry ..." test since it didn't appear related to the purpose of this change. I omitted the change to the start_sno assignment because I couldn't figure out the purpose of the change. ulog->kdb_first_sno - 1 seems like a fine starting point even if the ulog is underfull, as long as kdb_first_sno is maintained properly.