Module Name: src
Committed By: reinoud
Date: Thu Feb 3 09:46:26 UTC 2022
Modified Files:
src/sys/fs/udf: udf_allocation.c
Log Message:
Revere modification of initializer; it can lead to race conditions where two
allocation would pick the `empty' space causing a panic later on.
To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/fs/udf/udf_allocation.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/fs/udf/udf_allocation.c
diff -u src/sys/fs/udf/udf_allocation.c:1.45 src/sys/fs/udf/udf_allocation.c:1.46
--- src/sys/fs/udf/udf_allocation.c:1.45 Fri Jan 28 20:00:52 2022
+++ src/sys/fs/udf/udf_allocation.c Thu Feb 3 09:46:26 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_allocation.c,v 1.45 2022/01/28 20:00:52 reinoud Exp $ */
+/* $NetBSD: udf_allocation.c,v 1.46 2022/02/03 09:46:26 reinoud Exp $ */
/*
* Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -28,7 +28,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_allocation.c,v 1.45 2022/01/28 20:00:52 reinoud Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_allocation.c,v 1.46 2022/02/03 09:46:26 reinoud Exp $");
#endif /* not lint */
@@ -863,8 +863,8 @@ udf_search_free_vatloc(struct udf_mount
ump->vat_entries++;
}
- /* mark entry with initialiser just in case */
- lb_map = udf_rw32(0xffffffff);
+ /* mark entry with non free-space initialiser just in case */
+ lb_map = udf_rw32(0xfffffffe);
udf_vat_write(ump->vat_node, (uint8_t *) &lb_map, 4,
ump->vat_offset + lb_num *4);
ump->vat_last_free_lb = lb_num;