From: Dan Carpenter <dan.carpenter@oracle.com>
To: Kalle Valo <kvalo@codeaurora.org>,
Amitkumar Karwar <amit.karwar@redpinesignals.com>
Cc: Prameela Rani Garnepudi <prameela.j04cs@gmail.com>,
Karun Eagalapati <karun256@gmail.com>,
Siva Rebbagondla <siva.rebbagondla@redpinesignals.com>,
linux-wireless@vger.kernel.org, kernel-janitors@vger.kernel.org
Subject: [PATCH] rsi: Free the unaligned pointer
Date: Thu, 5 Apr 2018 14:23:11 +0300 [thread overview]
Message-ID: <20180405112311.GD4218@mwanda> (raw)
The problem here is that we allocate "data". Then we do
"data = PTR_ALIGN(data, 8);" and then we free the aligned pointer and
not the one we allocated.
I don't know if it causes an issue in real life, but it seems like a
reasonable thing to free the same pointer that we allocated.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
diff --git a/drivers/net/wireless/rsi/rsi_91x_sdio.c b/drivers/net/wireless/rsi/rsi_91x_sdio.c
index d76e69c0beaa..ca4e698ab69b 100644
--- a/drivers/net/wireless/rsi/rsi_91x_sdio.c
+++ b/drivers/net/wireless/rsi/rsi_91x_sdio.c
@@ -652,11 +652,11 @@ static int rsi_sdio_load_data_master_write(struct rsi_hw *adapter,
static int rsi_sdio_master_reg_read(struct rsi_hw *adapter, u32 addr,
u32 *read_buf, u16 size)
{
- u32 addr_on_bus, *data;
+ u32 addr_on_bus, *data, *data_orig;
u16 ms_addr;
int status;
- data = kzalloc(RSI_MASTER_REG_BUF_SIZE, GFP_KERNEL);
+ data = data_orig = kzalloc(RSI_MASTER_REG_BUF_SIZE, GFP_KERNEL);
if (!data)
return -ENOMEM;
@@ -709,7 +709,7 @@ static int rsi_sdio_master_reg_read(struct rsi_hw *adapter, u32 addr,
}
err:
- kfree(data);
+ kfree(data_orig);
return status;
}
@@ -717,10 +717,10 @@ static int rsi_sdio_master_reg_write(struct rsi_hw *adapter,
unsigned long addr,
unsigned long data, u16 size)
{
- unsigned long *data_aligned;
+ unsigned long *data_aligned, *data_orig;
int status;
- data_aligned = kzalloc(RSI_MASTER_REG_BUF_SIZE, GFP_KERNEL);
+ data_aligned = data_orig = kzalloc(RSI_MASTER_REG_BUF_SIZE, GFP_KERNEL);
if (!data_aligned)
return -ENOMEM;
@@ -743,7 +743,7 @@ static int rsi_sdio_master_reg_write(struct rsi_hw *adapter,
rsi_dbg(ERR_ZONE,
"%s: Unable to set ms word to common reg\n",
__func__);
- kfree(data_aligned);
+ kfree(data_orig);
return -EIO;
}
addr = addr & 0xFFFF;
@@ -757,7 +757,7 @@ static int rsi_sdio_master_reg_write(struct rsi_hw *adapter,
rsi_dbg(ERR_ZONE,
"%s: Unable to do AHB reg write\n", __func__);
- kfree(data_aligned);
+ kfree(data_orig);
return status;
}
next reply other threads:[~2018-04-05 11:23 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-05 11:23 Dan Carpenter [this message]
2018-04-05 11:30 ` [PATCH] rsi: Free the unaligned pointer Johannes Berg
2018-04-05 11:39 ` Dan Carpenter
2018-04-05 11:41 ` Dan Carpenter
2018-04-05 11:46 ` Johannes Berg
2018-04-05 12:23 ` Kalle Valo
2018-04-06 8:37 ` [PATCH v2] rsi: remove unecessary PTR_ALIGN()s Dan Carpenter
2018-04-06 8:45 ` Arend van Spriel
2018-04-06 9:01 ` Kalle Valo
2018-04-24 17:24 ` [v2] " Kalle Valo
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=20180405112311.GD4218@mwanda \
--to=dan.carpenter@oracle.com \
--cc=amit.karwar@redpinesignals.com \
--cc=karun256@gmail.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=kvalo@codeaurora.org \
--cc=linux-wireless@vger.kernel.org \
--cc=prameela.j04cs@gmail.com \
--cc=siva.rebbagondla@redpinesignals.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;
as well as URLs for NNTP newsgroup(s).