diff options
author | 2011-10-27 15:44:46 -0700 | |
---|---|---|
committer | 2011-11-02 15:56:41 +0000 | |
commit | b8a11d7399173dcf23b6d0ca4f416bdf1eba982e (patch) | |
tree | 18d1c607b6aaad5e082a1ffd4d0c5406ff9482a3 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | target: Minor cleanups to core_tmr_drain_tmr_list (diff) | |
download | linux-dev-b8a11d7399173dcf23b6d0ca4f416bdf1eba982e.tar.xz linux-dev-b8a11d7399173dcf23b6d0ca4f416bdf1eba982e.zip |
target: Avoid double list_del for aborted se_tmr_req
After the list_del() in core_tmr_drain_tmr_list(),
core_tmr_release_req() would list_del() the same object again.
Call graph:
core_tmr_drain_tmr_list
transport_cmd_finish_abort_tmr
transport_generic_remove
transport_free_se_cmd
core_tmr_release_req
So use list_del_init(), as list_del() of an initialized list_head is
safe and essentially a nop. In the CONFIG_DEBUG_LIST case, list_del()
actually poisons the list_head, but that is fine as we free the object
directly afterwards.
Signed-off-by: Joern Engel <joern@logfs.org>
Cc: stable@kernel.org
Signed-off-by: Nicholas Bellinger <nab@risingtidesystems.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions