Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <269c4d79-0dc0-477f-a5f3-5d95272b4788@gmail.com>
Date: Mon, 2 Sep 2024 21:55:31 +0200
From: Andrea <muradin80@...il.com>
To: john-users@...ts.openwall.com
Subject: Re: How to debug segmentation fault using OpenCL and
 ROCM

Hi Alexander

On 02/09/2024 20:28, Solar Designer wrote:
> Hi Andrea,
>
> On Mon, Sep 02, 2024 at 08:01:09PM +0200, Andrea wrote:
>> I have just recently started to learn using JtR tool and I would like to
>> enable OpenCL capabilities.
>>
>> Unfortunately, running some tests, I'm always getting segmentation fault
>> error; I would like to understand the best way to debug the issue and
>> track it down to understand if the issue is related to either ROCM,
>> OpenCL or JtR (or a mix of them).
> In our experience, on AMD GPUs it is "normal" to have a few failing
> formats.  So if you run tests of many/all formats and only a few fail,
> you just accept it's that way with your current combination of GPU and
> driver.  AMD's software is just poor.
>
> We sometimes try and workaround individual bugs, but we've long since
> accepted that some formats will be failing on AMD.  If you want all to
> work at once (with the same driver version, etc.), get NVIDIA.  We do
> get to 100% passing tests on NVIDIA, but (as I recall) never on AMD.
>
> That said, it is also possible that in your case the problem is
> different.  So if you determine that _all_ formats are failing like
> that, then it makes sense to look into the cause (e.g., incorrect driver
> or JtR installation) and fix that.  From your testing of just one
> format, we can't tell.
>
>> Example of command and related error:
>>
>> john --test=0 --format=sha256crypt-opencl
>>
>> Device 1: gfx90c:xnack- [AMD Radeon Graphics]
>> Testing: sha256crypt-opencl, crypt(3) $5$ (rounds=5000) [SHA256
>> OpenCL]... Build log: warning: argument unused during compilation: '-I
>> opencl' [-Wunused-command-line-argument]
>> 1 warning generated.
>> Segmentation fault
> It is unusual that this specific format fails.  It normally works:
>
> $ ./john --test=0 --format=sha256crypt-opencl
> Device 1: gfx900 [Radeon RX Vega]
> Testing: sha256crypt-opencl, crypt(3) $5$ (rounds=5000) [SHA256 OpenCL]... PASS
>
> So please try testing other formats.
>
> Alexander

This is a bit of info missing in my previous message: I was not able to 
find any test within the one from the command:

john --list=formats --format=opencl

passing, any of them is returning the segmentation fault error. This is 
why I'm asking for a suggestion in order to understand where the issue 
can be in my setup. I have also installed tool rocm-bandwidth-test to 
understand if something is working on ROCM side; I'm not an expert of 
any of the involved components, so I'm just going on with trial&error 
approach, but it would be nice to have a way to understand where the 
call stack is failing.

By the way, the other tests running without using OpenCL are all fine, 
so my guess is that the standard JtR installation is fine and there is 
something wrong in the communication with OpenCL framework and/or ROCM.

Many thanks,

Andrea


Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.