From: Helge Deller <deller@gmx.de>
To: Linux SCSI List <linux-scsi@vger.kernel.org>,
"James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
linux-parisc <linux-parisc@vger.kernel.org>
Subject: Re: Undefined behaviour in drivers/scsi/sym53c8xx_2/sym_hipd.c:762:24
Date: Tue, 8 Aug 2017 00:20:21 +0200 [thread overview]
Message-ID: <bf3cee29-26cb-6e4c-9ef2-a84459d41dec@gmx.de> (raw)
In-Reply-To: <d030f03a-0ccf-324b-32d6-002dfb408c16@gmx.de>
On 05.08.2017 00:12, Helge Deller wrote:
> On the parisc platform I noticed the UBSAN warning below.
> Maybe nr_divisor isn't correctly initialized ?
>
> [ 18.625415] ================================================================================
> [ 18.726489] UBSAN: Undefined behaviour in ./drivers/scsi/sym53c8xx_2/sym_hipd.c:762:24
> [ 18.864911] index -1903078336 is out of range for type 'u32 [7]'
> [ 18.936779] CPU: 0 PID: 1 Comm: swapper Not tainted 4.13.0-rc3-32bit+ #427
> [ 19.019138] Backtrace:
> [ 19.047353] [<10191eb4>] show_stack+0x3c/0x50
> [ 19.100577] [<10ce82fc>] dump_stack+0x28/0x38
> [ 19.153826] [<10771b3c>] ubsan_epilogue+0x1c/0x60
> [ 19.211229] [<107722ec>] __ubsan_handle_out_of_bounds+0x68/0x80
> [ 19.283194] [<10924074>] sym_hcb_attach+0xc2c/0x3204
> [ 19.343724] [<107aaa38>] sba_dma_supported+0x4c/0x208
> [ 19.405291] [<10911984>] sym2_probe+0xd64/0x122c
> [ 19.461661] [<10501c64>] kernfs_add_one+0x328/0x354
I did some more debugging.
The offending line is:
period = (11 * div_10M[np->clock_divn - 1]) / (4 * np->clock_khz);
with those values
np->clock_divn = 7
np->clock_khz = 160000
div_10M[6] = 80000000
period gets calculated as:
period = 1375
which is correct.
I have no clue why UBSAN reports an error here.
There is no overflow in index for div_10M array, neither is there
a u32 overflow.
Ideas?
Helge
prev parent reply other threads:[~2017-08-07 22:20 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-04 22:12 Undefined behaviour in drivers/scsi/sym53c8xx_2/sym_hipd.c:762:24 Helge Deller
2017-08-04 23:10 ` John David Anglin
2017-08-07 22:20 ` Helge Deller [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=bf3cee29-26cb-6e4c-9ef2-a84459d41dec@gmx.de \
--to=deller@gmx.de \
--cc=James.Bottomley@HansenPartnership.com \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-scsi@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox