Module: Mesa Branch: main Commit: d074cc4af492950273960cef723c3813cff5231e URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d074cc4af492950273960cef723c3813cff5231e
Author: Bas Nieuwenhuizen <[email protected]> Date: Sun Jun 20 01:15:29 2021 +0200 util/fossilize_db: Only lock the db file, not the index. This thing is entirely opt-in wrt caring about it when writing to a file anyway. Since we also lock the two at the same time and they have an 1-1 relation we can just lock one of the two files. Saves some syscalls. Reviewed-by: Timothy Arceri <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11485> --- src/util/fossilize_db.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/util/fossilize_db.c b/src/util/fossilize_db.c index 37f1d4ccacb..8b122aa492f 100644 --- a/src/util/fossilize_db.c +++ b/src/util/fossilize_db.c @@ -211,10 +211,6 @@ load_foz_dbs(struct foz_db *foz_db, FILE *db_idx, uint8_t file_idx, if (err == -1) goto fail; - err = lock_file_with_timeout(db_idx, 100000000); - if (err == -1) - goto fail; - /* Compute length again so we know nobody else did it in the meantime */ fseek(db_idx, 0, SEEK_END); len = ftell(db_idx); @@ -248,7 +244,6 @@ load_foz_dbs(struct foz_db *foz_db, FILE *db_idx, uint8_t file_idx, goto fail; } - flock(fileno(db_idx), LOCK_UN); flock(fileno(foz_db->file[file_idx]), LOCK_UN); update_foz_index(foz_db, db_idx, file_idx); @@ -257,7 +252,6 @@ load_foz_dbs(struct foz_db *foz_db, FILE *db_idx, uint8_t file_idx, return true; fail: - flock(fileno(db_idx), LOCK_UN); flock(fileno(foz_db->file[file_idx]), LOCK_UN); foz_destroy(foz_db); return false; @@ -441,10 +435,6 @@ foz_write_entry(struct foz_db *foz_db, const uint8_t *cache_key_160bit, if (err == -1) goto fail_file; - err = lock_file_with_timeout(foz_db->db_idx, 1000000000); - if (err == -1) - goto fail_file; - simple_mtx_lock(&foz_db->mtx); update_foz_index(foz_db, foz_db->db_idx, 0); @@ -514,7 +504,6 @@ foz_write_entry(struct foz_db *foz_db, const uint8_t *cache_key_160bit, _mesa_hash_table_u64_insert(foz_db->index_db, hash, entry); simple_mtx_unlock(&foz_db->mtx); - flock(fileno(foz_db->db_idx), LOCK_UN); flock(fileno(foz_db->file[0]), LOCK_UN); return true; @@ -522,7 +511,6 @@ foz_write_entry(struct foz_db *foz_db, const uint8_t *cache_key_160bit, fail: simple_mtx_unlock(&foz_db->mtx); fail_file: - flock(fileno(foz_db->db_idx), LOCK_UN); flock(fileno(foz_db->file[0]), LOCK_UN); return false; } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
