diff mbox series

mtd: nand: Fix memory allocation in nanddev_bbt_init()

Message ID 1543304637-27308-1-git-send-email-frieder.schrempf@kontron.de
State Accepted
Delegated to: Boris Brezillon
Headers show
Series mtd: nand: Fix memory allocation in nanddev_bbt_init() | expand

Commit Message

Frieder Schrempf Nov. 27, 2018, 7:44 a.m. UTC
Fix the size of the buffer allocated to store the in-memory BBT.
This bug was previously hidden by a different bug, that was fixed in
d098093ba06e.

Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
Cc: <stable@vger.kernel.org>
Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
---
 drivers/mtd/nand/bbt.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Boris Brezillon Nov. 27, 2018, 8:22 a.m. UTC | #1
On Tue, 27 Nov 2018 07:44:52 +0000
Schrempf Frieder <frieder.schrempf@kontron.de> wrote:

> Fix the size of the buffer allocated to store the in-memory BBT.
> This bug was previously hidden by a different bug, that was fixed in
> d098093ba06e.

Oops :-/.

> 
> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
> ---
>  drivers/mtd/nand/bbt.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
> index 56cde38..c12497f 100644
> --- a/drivers/mtd/nand/bbt.c
> +++ b/drivers/mtd/nand/bbt.c
> @@ -27,7 +27,8 @@ int nanddev_bbt_init(struct nand_device *nand)
>  	unsigned int nwords = DIV_ROUND_UP(nblocks * bits_per_block,
>  					   BITS_PER_LONG);
>  
> -	nand->bbt.cache = kzalloc(nwords, GFP_KERNEL);
> +	nand->bbt.cache = kzalloc(nwords * (BITS_PER_LONG / BITS_PER_BYTE),

I prefer

					 * sizeof(*nand->bbt.cache)
If you're okay with this change, I'll fix it when applying (no need to
send a new version).

Thanks,

Boris

> +				  GFP_KERNEL);
>  	if (!nand->bbt.cache)
>  		return -ENOMEM;
>
Frieder Schrempf Nov. 27, 2018, 8:30 a.m. UTC | #2
On 27.11.18 09:22, Boris Brezillon wrote:
> On Tue, 27 Nov 2018 07:44:52 +0000
> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> 
>> Fix the size of the buffer allocated to store the in-memory BBT.
>> This bug was previously hidden by a different bug, that was fixed in
>> d098093ba06e.
> 
> Oops :-/.
> 
>>
>> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
>> Cc: <stable@vger.kernel.org>
>> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
>> ---
>>   drivers/mtd/nand/bbt.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
>> index 56cde38..c12497f 100644
>> --- a/drivers/mtd/nand/bbt.c
>> +++ b/drivers/mtd/nand/bbt.c
>> @@ -27,7 +27,8 @@ int nanddev_bbt_init(struct nand_device *nand)
>>   	unsigned int nwords = DIV_ROUND_UP(nblocks * bits_per_block,
>>   					   BITS_PER_LONG);
>>   
>> -	nand->bbt.cache = kzalloc(nwords, GFP_KERNEL);
>> +	nand->bbt.cache = kzalloc(nwords * (BITS_PER_LONG / BITS_PER_BYTE),
> 
> I prefer
> 
> 					 * sizeof(*nand->bbt.cache)
> If you're okay with this change, I'll fix it when applying (no need to
> send a new version).

Sure, that's ok.
Miquel Raynal Nov. 27, 2018, 9:27 a.m. UTC | #3
Hello,

Schrempf Frieder <frieder.schrempf@kontron.de> wrote on Tue, 27 Nov
2018 08:30:24 +0000:

> On 27.11.18 09:22, Boris Brezillon wrote:
> > On Tue, 27 Nov 2018 07:44:52 +0000
> > Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> >   
> >> Fix the size of the buffer allocated to store the in-memory BBT.
> >> This bug was previously hidden by a different bug, that was fixed in
> >> d098093ba06e.  
> > 
> > Oops :-/.
> >   
> >>
> >> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
> >> Cc: <stable@vger.kernel.org>
> >> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
> >> ---
> >>   drivers/mtd/nand/bbt.c | 3 ++-
> >>   1 file changed, 2 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
> >> index 56cde38..c12497f 100644
> >> --- a/drivers/mtd/nand/bbt.c
> >> +++ b/drivers/mtd/nand/bbt.c
> >> @@ -27,7 +27,8 @@ int nanddev_bbt_init(struct nand_device *nand)
> >>   	unsigned int nwords = DIV_ROUND_UP(nblocks * bits_per_block,
> >>   					   BITS_PER_LONG);
> >>   
> >> -	nand->bbt.cache = kzalloc(nwords, GFP_KERNEL);
> >> +	nand->bbt.cache = kzalloc(nwords * (BITS_PER_LONG / BITS_PER_BYTE),  
> > 
> > I prefer
> > 
> > 					 * sizeof(*nand->bbt.cache)
> > If you're okay with this change, I'll fix it when applying (no need to
> > send a new version).  
> 
> Sure, that's ok.

I also prefer with the sizeof() operator. Thanks for fixing this!

Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>


Thanks,
Miquèl
Boris Brezillon Nov. 28, 2018, 2:41 p.m. UTC | #4
On Tue, 27 Nov 2018 07:44:52 +0000
Schrempf Frieder <frieder.schrempf@kontron.de> wrote:

> Fix the size of the buffer allocated to store the in-memory BBT.
> This bug was previously hidden by a different bug, that was fixed in
> d098093ba06e.
> 
> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>

Looks like your From header does not match the SoB tag
('Frieder Schrempf' vs 'Schrempf Frieder') and checkpatch does not like
that. I'll fix it when applying, but maybe you should fix
your .gitconfig to make them match.

> ---
>  drivers/mtd/nand/bbt.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
> index 56cde38..c12497f 100644
> --- a/drivers/mtd/nand/bbt.c
> +++ b/drivers/mtd/nand/bbt.c
> @@ -27,7 +27,8 @@ int nanddev_bbt_init(struct nand_device *nand)
>  	unsigned int nwords = DIV_ROUND_UP(nblocks * bits_per_block,
>  					   BITS_PER_LONG);
>  
> -	nand->bbt.cache = kzalloc(nwords, GFP_KERNEL);
> +	nand->bbt.cache = kzalloc(nwords * (BITS_PER_LONG / BITS_PER_BYTE),
> +				  GFP_KERNEL);
>  	if (!nand->bbt.cache)
>  		return -ENOMEM;
>
Frieder Schrempf Nov. 28, 2018, 2:55 p.m. UTC | #5
Hi Boris,

On 28.11.18 15:41, Boris Brezillon wrote:
> On Tue, 27 Nov 2018 07:44:52 +0000
> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> 
>> Fix the size of the buffer allocated to store the in-memory BBT.
>> This bug was previously hidden by a different bug, that was fixed in
>> d098093ba06e.
>>
>> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
>> Cc: <stable@vger.kernel.org>
>> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
> 
> Looks like your From header does not match the SoB tag
> ('Frieder Schrempf' vs 'Schrempf Frieder') and checkpatch does not like
> that. I'll fix it when applying, but maybe you should fix
> your .gitconfig to make them match.

Actually the From header in my local patch is correct (<first name> 
<last name>, Frieder Schrempf) as it comes from my git config. But since 
our company was renamed and our mail servers were transferred, our 
e-mails are sent with From=<last name> <first name>.

It seems like git send-email or patchwork or whatever uses the 
information from the e-mail header instead of what is in the patch.

I will try to raise this issue with our IT department as this would be 
best fixed on their side.

Thanks,
Frieder

> 
>> ---
>>   drivers/mtd/nand/bbt.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
>> index 56cde38..c12497f 100644
>> --- a/drivers/mtd/nand/bbt.c
>> +++ b/drivers/mtd/nand/bbt.c
>> @@ -27,7 +27,8 @@ int nanddev_bbt_init(struct nand_device *nand)
>>   	unsigned int nwords = DIV_ROUND_UP(nblocks * bits_per_block,
>>   					   BITS_PER_LONG);
>>   
>> -	nand->bbt.cache = kzalloc(nwords, GFP_KERNEL);
>> +	nand->bbt.cache = kzalloc(nwords * (BITS_PER_LONG / BITS_PER_BYTE),
>> +				  GFP_KERNEL);
>>   	if (!nand->bbt.cache)
>>   		return -ENOMEM;
>>   
>
Boris Brezillon Nov. 28, 2018, 3:02 p.m. UTC | #6
On Wed, 28 Nov 2018 14:55:45 +0000
Schrempf Frieder <frieder.schrempf@kontron.de> wrote:

> Hi Boris,
> 
> On 28.11.18 15:41, Boris Brezillon wrote:
> > On Tue, 27 Nov 2018 07:44:52 +0000
> > Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> >   
> >> Fix the size of the buffer allocated to store the in-memory BBT.
> >> This bug was previously hidden by a different bug, that was fixed in
> >> d098093ba06e.
> >>
> >> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
> >> Cc: <stable@vger.kernel.org>
> >> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>  
> > 
> > Looks like your From header does not match the SoB tag
> > ('Frieder Schrempf' vs 'Schrempf Frieder') and checkpatch does not like
> > that. I'll fix it when applying, but maybe you should fix
> > your .gitconfig to make them match.  
> 
> Actually the From header in my local patch is correct (<first name> 
> <last name>, Frieder Schrempf) as it comes from my git config. But since 
> our company was renamed and our mail servers were transferred, our 
> e-mails are sent with From=<last name> <first name>.
> 
> It seems like git send-email or patchwork or whatever uses the 
> information from the e-mail header instead of what is in the patch.
> 
> I will try to raise this issue with our IT department as this would be 
> best fixed on their side.

There's another solution: make git send-email add a From header in the
message body.

git config --global sendemail.from "Schrempf Frieder <frieder.schrempf@kontron.de>"
Frieder Schrempf Nov. 28, 2018, 3:19 p.m. UTC | #7
On 28.11.18 16:02, Boris Brezillon wrote:
> On Wed, 28 Nov 2018 14:55:45 +0000
> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> 
>> Hi Boris,
>>
>> On 28.11.18 15:41, Boris Brezillon wrote:
>>> On Tue, 27 Nov 2018 07:44:52 +0000
>>> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
>>>    
>>>> Fix the size of the buffer allocated to store the in-memory BBT.
>>>> This bug was previously hidden by a different bug, that was fixed in
>>>> d098093ba06e.
>>>>
>>>> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
>>>> Cc: <stable@vger.kernel.org>
>>>> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
>>>
>>> Looks like your From header does not match the SoB tag
>>> ('Frieder Schrempf' vs 'Schrempf Frieder') and checkpatch does not like
>>> that. I'll fix it when applying, but maybe you should fix
>>> your .gitconfig to make them match.
>>
>> Actually the From header in my local patch is correct (<first name>
>> <last name>, Frieder Schrempf) as it comes from my git config. But since
>> our company was renamed and our mail servers were transferred, our
>> e-mails are sent with From=<last name> <first name>.
>>
>> It seems like git send-email or patchwork or whatever uses the
>> information from the e-mail header instead of what is in the patch.
>>
>> I will try to raise this issue with our IT department as this would be
>> best fixed on their side.
> 
> There's another solution: make git send-email add a From header in the
> message body.
> 
> git config --global sendemail.from "Schrempf Frieder <frieder.schrempf@kontron.de>"

I don't get it. How would that change things? My From still wouldn't 
match my SoB tags.
Boris Brezillon Nov. 28, 2018, 3:28 p.m. UTC | #8
On Wed, 28 Nov 2018 15:19:37 +0000
Schrempf Frieder <frieder.schrempf@kontron.de> wrote:

> On 28.11.18 16:02, Boris Brezillon wrote:
> > On Wed, 28 Nov 2018 14:55:45 +0000
> > Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> >   
> >> Hi Boris,
> >>
> >> On 28.11.18 15:41, Boris Brezillon wrote:  
> >>> On Tue, 27 Nov 2018 07:44:52 +0000
> >>> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> >>>      
> >>>> Fix the size of the buffer allocated to store the in-memory BBT.
> >>>> This bug was previously hidden by a different bug, that was fixed in
> >>>> d098093ba06e.
> >>>>
> >>>> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
> >>>> Cc: <stable@vger.kernel.org>
> >>>> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>  
> >>>
> >>> Looks like your From header does not match the SoB tag
> >>> ('Frieder Schrempf' vs 'Schrempf Frieder') and checkpatch does not like
> >>> that. I'll fix it when applying, but maybe you should fix
> >>> your .gitconfig to make them match.  
> >>
> >> Actually the From header in my local patch is correct (<first name>
> >> <last name>, Frieder Schrempf) as it comes from my git config. But since
> >> our company was renamed and our mail servers were transferred, our
> >> e-mails are sent with From=<last name> <first name>.
> >>
> >> It seems like git send-email or patchwork or whatever uses the
> >> information from the e-mail header instead of what is in the patch.
> >>
> >> I will try to raise this issue with our IT department as this would be
> >> best fixed on their side.  
> > 
> > There's another solution: make git send-email add a From header in the
> > message body.
> > 
> > git config --global sendemail.from "Schrempf Frieder <frieder.schrempf@kontron.de>"  
> 
> I don't get it. How would that change things? My From still wouldn't 
> match my SoB tags.

When there's a From line in the message Body, git am will use this one
instead of the one in the header section.
Frieder Schrempf Nov. 29, 2018, 6:11 p.m. UTC | #9
On 28.11.18 16:28, Boris Brezillon wrote:
> On Wed, 28 Nov 2018 15:19:37 +0000
> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
> 
>> On 28.11.18 16:02, Boris Brezillon wrote:
>>> On Wed, 28 Nov 2018 14:55:45 +0000
>>> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
>>>    
>>>> Hi Boris,
>>>>
>>>> On 28.11.18 15:41, Boris Brezillon wrote:
>>>>> On Tue, 27 Nov 2018 07:44:52 +0000
>>>>> Schrempf Frieder <frieder.schrempf@kontron.de> wrote:
>>>>>       
>>>>>> Fix the size of the buffer allocated to store the in-memory BBT.
>>>>>> This bug was previously hidden by a different bug, that was fixed in
>>>>>> d098093ba06e.
>>>>>>
>>>>>> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
>>>>>> Cc: <stable@vger.kernel.org>
>>>>>> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
>>>>>
>>>>> Looks like your From header does not match the SoB tag
>>>>> ('Frieder Schrempf' vs 'Schrempf Frieder') and checkpatch does not like
>>>>> that. I'll fix it when applying, but maybe you should fix
>>>>> your .gitconfig to make them match.
>>>>
>>>> Actually the From header in my local patch is correct (<first name>
>>>> <last name>, Frieder Schrempf) as it comes from my git config. But since
>>>> our company was renamed and our mail servers were transferred, our
>>>> e-mails are sent with From=<last name> <first name>.
>>>>
>>>> It seems like git send-email or patchwork or whatever uses the
>>>> information from the e-mail header instead of what is in the patch.
>>>>
>>>> I will try to raise this issue with our IT department as this would be
>>>> best fixed on their side.
>>>
>>> There's another solution: make git send-email add a From header in the
>>> message body.
>>>
>>> git config --global sendemail.from "Schrempf Frieder <frieder.schrempf@kontron.de>"
>>
>> I don't get it. How would that change things? My From still wouldn't
>> match my SoB tags.
> 
> When there's a From line in the message Body, git am will use this one
> instead of the one in the header section.

Ok, now I got it. I didn't know that git send-email adds the From tag in 
the body if sendemail.from differs from the author, but that makes sense 
indeed.

I just checked and with my old mail setup, the SMTP server was 
respecting my sender address from the client (send-email, thunderbird).

The new setup uses DavMail Gateway to send via the companies Exchange 
server and it just ignores my sender from the client and sends with the 
reversed name as stored in the Exchange server.

I don't like sending mail with reversed names (people start calling me 
by my last name), but using a different SMTP server would likely cause 
trouble with some recipients using SPF for spam detection.

So I guess I have to convince our IT to change the names, if even 
possible...
Oh, why do such small things always cause so much trouble?
Boris Brezillon Nov. 30, 2018, 9:37 a.m. UTC | #10
On Tue, 2018-11-27 at 07:44:52 UTC, Schrempf Frieder wrote:
> Fix the size of the buffer allocated to store the in-memory BBT.
> This bug was previously hidden by a different bug, that was fixed in
> d098093ba06e.
> 
> Fixes: 9c3736a3de21 ("mtd: nand: Add core infrastructure to deal with NAND devices")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
> Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>

Applied to http://git.infradead.org/linux-mtd.git master, thanks.

Boris
diff mbox series

Patch

diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
index 56cde38..c12497f 100644
--- a/drivers/mtd/nand/bbt.c
+++ b/drivers/mtd/nand/bbt.c
@@ -27,7 +27,8 @@  int nanddev_bbt_init(struct nand_device *nand)
 	unsigned int nwords = DIV_ROUND_UP(nblocks * bits_per_block,
 					   BITS_PER_LONG);
 
-	nand->bbt.cache = kzalloc(nwords, GFP_KERNEL);
+	nand->bbt.cache = kzalloc(nwords * (BITS_PER_LONG / BITS_PER_BYTE),
+				  GFP_KERNEL);
 	if (!nand->bbt.cache)
 		return -ENOMEM;