lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 26 Jun 2023 11:27:09 -0400
From:   Nico Pache <npache@...hat.com>
To:     Christian König <christian.koenig@....com>,
        davidgow@...gle.com
Cc:     linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org,
        ddutile@...hat.com, kunit-dev@...glegroups.com
Subject: Re: [PATCH] kunit: drm: make DRM buddy test compatible with other
 pages sizes

Hi Christian,

Thanks for the information! I am not very familiar with the inner
workings of DRM, so I'm not really in a position to make any large or
systematic changes to the test regarding the points you made. I am
mainly trying to allow the tests to be run on more diverse hardware.
>From the looks of it this test has been adapted from an older test, so
perhaps this rule was set in place in the past.

Either way, I dont think my changes are going to break anything, so
for the time being I think this small change is the best approach.
Please let me know if you think otherwise.

David, do you still have this on your radar? We've been carrying this
as a RHEL-only since I originally posted it and have not noticed any
issues due to it.

Cheers,
-- Nico

On Wed, Apr 19, 2023 at 4:30 AM Christian König
<christian.koenig@....com> wrote:
>
> Am 18.04.23 um 19:15 schrieb Nico Pache:
> > The DRM buddy test uses a fixed 12 bit shift to covert from pages to
> > bytes. This number is then used to confirm that (chunk_size < PAGE_SIZE)
> > which can lead to a failing drm_buddy_init on systems with PAGE_SIZE > 4k.
>
> Since the buddy allocator is used for resources which are independent of
> the CPU PAGE size the later check is actually the broken one.
>
> E.g. neither in the buddy allocator nor in it's test cases we should
> have any of PAGE_SHIFT or PAGE_SIZE.
>
> Otherwise the allocator wouldn't work correctly on systems with a
> PAGE_SIZE different than 4k.
>
> Regards,
> Christian.
>
> >
> > Fixes: 92937f170d3f ("drm/selftests: add drm buddy alloc range testcase")
> > Signed-off-by: Nico Pache <npache@...hat.com>
> > ---
> >   drivers/gpu/drm/tests/drm_buddy_test.c | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/tests/drm_buddy_test.c b/drivers/gpu/drm/tests/drm_buddy_test.c
> > index 09ee6f6af896..a62b2690d3c2 100644
> > --- a/drivers/gpu/drm/tests/drm_buddy_test.c
> > +++ b/drivers/gpu/drm/tests/drm_buddy_test.c
> > @@ -318,8 +318,8 @@ static void mm_config(u64 *size, u64 *chunk_size)
> >       s &= -ms;
> >
> >       /* Convert from pages to bytes */
> > -     *chunk_size = (u64)ms << 12;
> > -     *size = (u64)s << 12;
> > +     *chunk_size = (u64)ms << PAGE_SHIFT;
> > +     *size = (u64)s << PAGE_SHIFT;
> >   }
> >
> >   static void drm_test_buddy_alloc_pathological(struct kunit *test)
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ