Files
mirror_zfs/module/zfs
Richard Yao 399bb81607 Suppress Clang Static Analyzer warning in vdev_split()
Clang's static analyzer pointed out that we can have a NULL pointer
dereference if we ever attempt to split a vdev that has only 1 child. If
that happens, we are left with zero children, but then try to access a
non-existent child. Calling vdev_split() on a vdev with only 1 child
should be impossible due to how the code is structured. If this ever
happens, it would be best to stop execution immediately even in a
production environment to allow for the best possible chance of recovery
by an expert, so we use `VERIFY3U()` instead of `ASSERT3U()`.

Unfortunately, while that defensive assertion will prevent execution
from ever reaching the NULL pointer dereference, Clang's static analyzer
does not realize that, so we add an `ASSERT()` to inform it of this.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Closes #14575
2023-03-08 13:51:31 -08:00
..
2022-03-15 15:13:42 -07:00
2023-03-08 11:17:23 -08:00
2022-03-15 15:13:42 -07:00
2023-01-25 11:30:24 -08:00
2023-01-10 13:39:22 -08:00
2022-10-20 11:57:15 -07:00
2022-10-29 13:05:11 -07:00
2023-03-06 16:13:05 -08:00
2023-01-20 11:01:41 -08:00
2023-02-21 09:36:22 -08:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-01-07 10:36:49 -08:00
2022-01-12 16:14:36 -08:00
2019-06-19 09:48:12 -07:00
2022-10-12 11:25:18 -07:00
2022-03-15 15:13:42 -07:00
2023-01-25 11:28:54 -08:00
2022-10-27 09:54:54 -07:00
2022-10-20 11:57:15 -07:00
2022-09-02 13:31:19 -07:00
2023-01-12 16:00:30 -08:00
2022-10-28 09:49:20 -07:00
2022-11-29 09:26:03 -08:00