public inbox for linux-staging@lists.linux.dev
 help / color / mirror / Atom feed
From: Luka Gejak <luka.gejak@linux.dev>
To: omer.e.idrissi@gmail.com
Cc: gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org,
	linux-staging@lists.linux.dev, luka.gejak@linux.dev
Subject: Re: [PATCH 0/5] rtw_sdio_if1_init cleanup and small logic tweak
Date: Wed, 01 Apr 2026 12:19:25 +0200	[thread overview]
Message-ID: <91A2C653-86D4-48E3-8DE2-46795CA56AE2@linux.dev> (raw)

Hi Omer,
Thank you for submitting this patch series. I like the idea, however
during my review I have found that there are several issues.

Patch 1:
While the patch makes it visually cleaner, this patch introduces a 
significant risk of a kernel panic. struct net_device *pnetdev; is 
declared on the stack but not initialized to NULL. If the function 
fails early, the execution jumps to the free_adapter label. The logic 
then evaluates if (pnetdev). Since pnetdev contains uninitialized 
stack garbage, this check will likely evaluate to true, causing the 
kernel to attempt rtw_free_netdev() on a random memory address.

Patch 2:
This patch is technically correct in its removal of the redundant 
padapter assignment. However, the diff shows that it also performs 
whitespace cleanup by removing an empty line. You should stick to the 
atomic patch per logical change rule. So either keep the whitespace 
as is or move it into dedicated patch.

Patch 3 and 4:
I have checked in drivers/staging/rtl8723bs/include/osdep_service.h 
that this driver defines _SUCCESS as 1 and _FAIL as 0. This is the 
inverse of the standard Linux kernel convention. By changing the check
to if (func()), your new logic triggers the goto error path when the 
function returns 1 (Success). This would result in a driver that fails
to probe entirely. You cannot simplify these checks until the 
functions themselves are refactored to return standard kernel error 
codes.

Patch 5:
This patch has the same issue mentioned above regarding return values.
It also introduces a trailing whitespace on the empty line added 
before the rtw_wdev_alloc check. Please run scripts/checkpatch.pl 
--strict on your patches before submission.

First you should submit a patch that properly initializes pointers to 
NULL to make the cleanup paths safe from crash. Although initializing 
pnetdev to NULL prevents the immediate crash, the cleanup logic remains 
fragile. So please consider refactoring the error path to use a proper
LIFO (Last-In, First-Out) label stack. Each goto should jump only to 
the cleanup steps for resources that have actually been allocated up 
to that point.

Secondly, if you wish to proceed with the macro removal, provide a 
series that refactors the internal return values of 
rtw_init_io_priv, rtw_init_drv_sw, and rtw_hal_data_init to standard 0
(Success) / -ERR (Failure) conventions. Once the functions follow 
standard conventions, the cleanup in patches 3-5 will be correct.

Best regards,
Luka Gejak

             reply	other threads:[~2026-04-01 10:19 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-01 10:19 Luka Gejak [this message]
  -- strict thread matches above, loose matches on Subject: below --
2026-04-01 10:17 [PATCH 0/5] rtw_sdio_if1_init cleanup and small logic tweak Luka Gejak
2026-04-01 10:29 ` Greg KH
2026-04-01 10:50   ` Greg KH
2026-04-01 10:58     ` Luka Gejak
2026-04-01 10:56   ` Luka Gejak
2026-04-01 10:33 ` Dan Carpenter
2026-03-31 20:25 Luka Gejak
2026-04-01  8:29 ` Greg KH
2026-04-01  9:46   ` Luka Gejak
2026-04-01 14:35     ` Konstantin Ryabitsev
2026-04-01  8:40 ` Krzysztof Kozlowski
2026-03-31 15:32 Omer El Idrissi
2026-04-01  1:39 ` Ethan Tidmore

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=91A2C653-86D4-48E3-8DE2-46795CA56AE2@linux.dev \
    --to=luka.gejak@linux.dev \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=omer.e.idrissi@gmail.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox