All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Prestwood <prestwoj@gmail.com>
To: Marcel Holtmann <marcel@holtmann.org>
Cc: iwd@lists.linux.dev
Subject: Re: [PATCH] unit: check cipher support and cleanup in test-storage
Date: Mon, 5 May 2025 05:58:57 -0700	[thread overview]
Message-ID: <a0745309-9d1a-4916-926e-2a6f3651186e@gmail.com> (raw)
In-Reply-To: <875EC3CF-922D-4A7B-A4A5-F2F7894BFBD8@holtmann.org>

Hi,

On 5/5/25 5:55 AM, Marcel Holtmann wrote:
> Hi James,
>
>>>> The __storage_decrypt API requires AES_CTR so support should be
>>>> checked before running that test. In addition storage_exit was never
>>>> being called which leaves unbalanced mlock/munlock calls.
>>>> ---
>>>> unit/test-storage.c | 11 +++++++++--
>>>> 1 file changed, 9 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/unit/test-storage.c b/unit/test-storage.c
>>>> index c40518e6..765d9967 100644
>>>> --- a/unit/test-storage.c
>>>> +++ b/unit/test-storage.c
>>>> @@ -44,12 +44,19 @@ static void test_short_encrypted_bytes(const void *data)
>>>>
>>>> int main(int argc, char *argv[])
>>>> {
>>>> + int ret;
>>>> +
>>>> l_test_init(&argc, &argv);
>>>>
>>>> storage_init((const uint8_t *)"abc123", 6);
>>>>
>>>> - l_test_add("/storage/profile encryption",
>>>> + if (l_cipher_is_supported(L_CIPHER_AES_CTR))
>>>> + l_test_add("/storage/profile encryption",
>>>> test_short_encrypted_bytes, NULL);
>>> just use L_TEST_FLAG_ALLOW_FAILURE instead.
>> Ok, new way of doing things I guess.
>>>> - return l_test_run();
>>>> + ret = l_test_run();
>>>> +
>>>> + storage_exit();
>>>> +
>>>> + return ret;
>>> I really prefer we keep “return l_test_run()” as the basics on how test case are run.
>>>
>>> Just put storage_init,storage_exit into the test case itself. I would just do system_key_set = false in the exit function.
>> I'm fine with this, but its actually not possible to perform the cleanup after a failed test. If we want to do this we need actual cleanup support in l_test. Looks like we'd need to add a destroy function to l_test_add_data_func().
>>
>> Does that sound ok?
> we can add that, but I don’t think it is needed. Every test case is run in its own process. And since you only have one test case at the moment, don’t over engineer this.
Yeah, but what I'm saying is that there is no way to perform cleanup if 
a test asserts. In this case though I actually don't think 
storage_exit() is technically needed since the OS process cleanup will 
munlock any pages. So for now I'll just add the flag and leave 
everything else as-is.
>
> Regards
>
> Marcel
>

      reply	other threads:[~2025-05-05 12:58 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-05 12:35 [PATCH] unit: check cipher support and cleanup in test-storage James Prestwood
2025-05-05 12:39 ` Marcel Holtmann
2025-05-05 12:50   ` James Prestwood
2025-05-05 12:55     ` Marcel Holtmann
2025-05-05 12:58       ` James Prestwood [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a0745309-9d1a-4916-926e-2a6f3651186e@gmail.com \
    --to=prestwoj@gmail.com \
    --cc=iwd@lists.linux.dev \
    --cc=marcel@holtmann.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.