Message ID | 1383582649-2841-3-git-send-email-oscar.mateo@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Nov 04, 2013 at 04:30:48PM +0000, oscar.mateo@intel.com wrote: > From: Oscar Mateo <oscar.mateo@intel.com> > > We don't want a previously used object to be freed in the middle of a > before/after object counting operation (or we would get a "-1 objects > leaked" message). We have seen this happening, e.g., when a context > from a previous run dies, but its backing object is alive waiting for > a retire_work to kick in. > > v2: Use igt_debugfs facilities for drop cache > > Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> > Cc: Ben Widawsky <ben@bwidawsk.net> Imo better to move the call to drop_caches into get_object_count - it makes it clearer why we want this. I've applied the first two patches. Thanks, Daniel > --- > tests/prime_self_import.c | 11 +++++++++-- > 1 file changed, 9 insertions(+), 2 deletions(-) > > diff --git a/tests/prime_self_import.c b/tests/prime_self_import.c > index 2edc1f8..fb007bc 100644 > --- a/tests/prime_self_import.c > +++ b/tests/prime_self_import.c > @@ -46,6 +46,7 @@ > #include "drm.h" > #include "i915_drm.h" > #include "drmtest.h" > +#include "igt_debugfs.h" > > #define BO_SIZE (16*1024) > > @@ -252,10 +253,13 @@ static void test_reimport_close_race(void) > pthread_t *threads; > int r, i, num_threads; > int fds[2]; > - int obj_count = get_object_count(); > + int obj_count; > void *status; > uint32_t handle; > > + igt_drop_caches_set(DROP_RETIRE); > + obj_count = get_object_count(); > + > num_threads = sysconf(_SC_NPROCESSORS_ONLN); > > threads = calloc(num_threads, sizeof(pthread_t)); > @@ -330,9 +334,12 @@ static void test_export_close_race(void) > pthread_t *threads; > int r, i, num_threads; > int fd; > - int obj_count = get_object_count(); > + int obj_count; > void *status; > > + igt_drop_caches_set(DROP_RETIRE); > + obj_count = get_object_count(); > + > num_threads = sysconf(_SC_NPROCESSORS_ONLN); > > threads = calloc(num_threads, sizeof(pthread_t)); > -- > 1.7.9.5 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff --git a/tests/prime_self_import.c b/tests/prime_self_import.c index 2edc1f8..fb007bc 100644 --- a/tests/prime_self_import.c +++ b/tests/prime_self_import.c @@ -46,6 +46,7 @@ #include "drm.h" #include "i915_drm.h" #include "drmtest.h" +#include "igt_debugfs.h" #define BO_SIZE (16*1024) @@ -252,10 +253,13 @@ static void test_reimport_close_race(void) pthread_t *threads; int r, i, num_threads; int fds[2]; - int obj_count = get_object_count(); + int obj_count; void *status; uint32_t handle; + igt_drop_caches_set(DROP_RETIRE); + obj_count = get_object_count(); + num_threads = sysconf(_SC_NPROCESSORS_ONLN); threads = calloc(num_threads, sizeof(pthread_t)); @@ -330,9 +334,12 @@ static void test_export_close_race(void) pthread_t *threads; int r, i, num_threads; int fd; - int obj_count = get_object_count(); + int obj_count; void *status; + igt_drop_caches_set(DROP_RETIRE); + obj_count = get_object_count(); + num_threads = sysconf(_SC_NPROCESSORS_ONLN); threads = calloc(num_threads, sizeof(pthread_t));