[PATCH 1/2] rtl-obj.c: Added an early return if rtl lock fails

Chris Johns chrisj at rtems.org
Wed Mar 31 04:30:49 UTC 2021


On 31/3/21 4:08 am, Gedare Bloom wrote:
> This looks ok. I'm wondering however if these rtems_rtl_lock () ever
> should fail in practice, should it be an assert? Just wondering.

Good question, I cannot remember. Maybe a better solution is to move to a
statically allocated lock using the newer interface Sebastian has added and
removing the check?

However is the lock also allocating the main data structure and also returning
the status of that? I do this as a way of not uses resources until the service
is used. If that is the case the change maybe OK but the name of the call is a
bit average.

Ryan, are you able to take have a closer look.

Thanks
Chris

> 
> On Tue, Mar 30, 2021 at 10:58 AM Ryan Long <ryan.long at oarcorp.com> wrote:
>>
>> ping
>>
>> -----Original Message-----
>> From: Ryan Long <ryan.long at oarcorp.com>
>> Sent: Monday, March 22, 2021 12:08 PM
>> To: devel at rtems.org
>> Cc: Ryan Long <ryan.long at oarcorp.com>
>> Subject: [PATCH 1/2] rtl-obj.c: Added an early return if rtl lock fails
>>
>> CID 1444138: Dereference null return value in rtems_rtl_obj_find_file().
>>
>> Closes #4332
>> ---
>>  cpukit/libdl/rtl-obj.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/cpukit/libdl/rtl-obj.c b/cpukit/libdl/rtl-obj.c index a7dd740..d5a867e 100644
>> --- a/cpukit/libdl/rtl-obj.c
>> +++ b/cpukit/libdl/rtl-obj.c
>> @@ -409,6 +409,10 @@ rtems_rtl_obj_find_file (rtems_rtl_obj* obj, const char* name)
>>
>>    rtl = rtems_rtl_lock ();
>>
>> +  if (rtl == NULL) {
>> +    return false;
>> +  }
>> +
>>    if (!rtems_rtl_find_file (pname, rtl->paths, &obj->fname, &obj->fsize))
>>    {
>>      rtems_rtl_set_error (ENOENT, "file not found");
>> --
>> 1.8.3.1
>>
>> _______________________________________________
>> devel mailing list
>> devel at rtems.org
>> http://lists.rtems.org/mailman/listinfo/devel
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
> 


More information about the devel mailing list