Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Trac Trac
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • Legacy
  • TracTrac
  • Issues
  • #17724

Closed (moved)
(moved)
Open
Created Nov 30, 2015 by cypherpunks@cypherpunks

Unreliable rend_cache_purge test

The test_rend_cache_purge function contains an assertion which verifies that the internal strmap does not change after a purge (src/test/test_rendcache.c:1044 on 0a701e537778ac9da31049f4efebf7cb2bf9c285).

However, the rend_cache_purge function frees the internal strmap and allocates a new one. This turns the assertion in a check whether memory allocation returns the same address as was just freed. The C11 standard mentions that a previous call to free is synchronized with a call to malloc [0].

I found the issue during a Valgrind run which probably changed the behavior of free and malloc to track them and caused the assertion to fail.

I am suggesting to remove the assertion because it verifies behavior that does not affect normal operation and (in my case) interferes with testing.

[0] [http://en.cppreference.com/w/c/memory/malloc]

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking