Message ID | 1399470928-15389-1-git-send-email-mika.kuoppala@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, May 07, 2014 at 04:55:28PM +0300, Mika Kuoppala wrote: > We need to add one drm_open_any() before getting the object counts > as first call to drm_open_any() allocates file descriptors for > exit handlers and thus is not symmetrical > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77867 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77875 > Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com> Ah, makes sense. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> When you push this please add a citation of the commit which introduced this regression like we do it for kernel patches. Thanks, Daniel > --- > tests/gem_flink_race.c | 8 ++++++++ > tests/prime_self_import.c | 8 ++++++++ > 2 files changed, 16 insertions(+) > > diff --git a/tests/gem_flink_race.c b/tests/gem_flink_race.c > index 3353b83..f129cb3 100644 > --- a/tests/gem_flink_race.c > +++ b/tests/gem_flink_race.c > @@ -163,6 +163,11 @@ static void test_flink_close(void) > int r, i, num_threads; > int obj_count; > void *status; > + int fake; > + > + /* Allocate exit handler fds in here so that we dont screw > + * up the counts */ > + fake = drm_open_any(); > > obj_count = get_object_count(); > > @@ -193,6 +198,9 @@ static void test_flink_close(void) > obj_count = get_object_count() - obj_count; > > printf("leaked %i objects\n", obj_count); > + > + close(fake); > + > igt_assert(obj_count == 0); > } > > diff --git a/tests/prime_self_import.c b/tests/prime_self_import.c > index efdd24f..41c203f 100644 > --- a/tests/prime_self_import.c > +++ b/tests/prime_self_import.c > @@ -258,6 +258,11 @@ static void test_reimport_close_race(void) > int obj_count; > void *status; > uint32_t handle; > + int fake; > + > + /* Allocate exit handler fds in here so that we dont screw > + * up the counts */ > + fake = drm_open_any(); > > obj_count = get_object_count(); > > @@ -294,6 +299,9 @@ static void test_reimport_close_race(void) > obj_count = get_object_count() - obj_count; > > printf("leaked %i objects\n", obj_count); > + > + close(fake); > + > igt_assert(obj_count == 0); > } > > -- > 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/gem_flink_race.c b/tests/gem_flink_race.c index 3353b83..f129cb3 100644 --- a/tests/gem_flink_race.c +++ b/tests/gem_flink_race.c @@ -163,6 +163,11 @@ static void test_flink_close(void) int r, i, num_threads; int obj_count; void *status; + int fake; + + /* Allocate exit handler fds in here so that we dont screw + * up the counts */ + fake = drm_open_any(); obj_count = get_object_count(); @@ -193,6 +198,9 @@ static void test_flink_close(void) obj_count = get_object_count() - obj_count; printf("leaked %i objects\n", obj_count); + + close(fake); + igt_assert(obj_count == 0); } diff --git a/tests/prime_self_import.c b/tests/prime_self_import.c index efdd24f..41c203f 100644 --- a/tests/prime_self_import.c +++ b/tests/prime_self_import.c @@ -258,6 +258,11 @@ static void test_reimport_close_race(void) int obj_count; void *status; uint32_t handle; + int fake; + + /* Allocate exit handler fds in here so that we dont screw + * up the counts */ + fake = drm_open_any(); obj_count = get_object_count(); @@ -294,6 +299,9 @@ static void test_reimport_close_race(void) obj_count = get_object_count() - obj_count; printf("leaked %i objects\n", obj_count); + + close(fake); + igt_assert(obj_count == 0); }
We need to add one drm_open_any() before getting the object counts as first call to drm_open_any() allocates file descriptors for exit handlers and thus is not symmetrical Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77867 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77875 Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com> --- tests/gem_flink_race.c | 8 ++++++++ tests/prime_self_import.c | 8 ++++++++ 2 files changed, 16 insertions(+)