id = 2466 title = "I'm not sure. But I Think I could cause the err(include/qemu/queue.h)." state = "closed" created_at = "2024-07-29T15:40:02.918Z" closed_at = "2024-07-29T16:48:53.960Z" labels = [] url = "https://gitlab.com/qemu-project/qemu/-/issues/2466" host-os = "ubuntu 22.04" host-arch = "x86" qemu-version = "n/a" guest-os = "n/a" guest-arch = "n/a" description = """At file "include/qemu/queue.h", Maybe I Think QTAILQ_REMOVE could cause a Error. ``` #define QTAILQ_REMOVE(head, elm, field) do { \\ if (((elm)->field.tqe_next) != NULL) \\ (elm)->field.tqe_next->field.tqe_circ.tql_prev = \\ (elm)->field.tqe_circ.tql_prev; \\ else \\ (head)->tqh_circ.tql_prev = (elm)->field.tqe_circ.tql_prev; \\ (elm)->field.tqe_circ.tql_prev->tql_next = (elm)->field.tqe_next; \\ (elm)->field.tqe_circ.tql_prev = NULL; \\ (elm)->field.tqe_circ.tql_next = NULL; \\ (elm)->field.tqe_next = NULL; \\ } while (/*CONSTCOND*/0) ``` If the length of the que is one, line 7 cause a segmentation fault.""" reproduce = """1. Create a Que with QTAILQ_INIT 2. Add one element to que. 3. Remove the element with QTAILQ_REMOVE""" additional = """queue.h file is located at "inclue/qemu/queue.h""""