ACK/Cmnt: [SRU J][PULL REQUEST V2 0/6] Observed "Array Index out of bounds" Call Trace multiple times on Ubuntu 22.04.1 OS during boot

Stefan Bader stefan.bader at canonical.com
Mon Feb 27 09:33:38 UTC 2023


On 25.02.23 01:26, Michael Reed wrote:
> Hi Tim,
> 
> Thank you for reviewing it.  I am always learning here, so I wanted to 
> know what was weird about the submission so I can avoid that in future 
> submissions.
> 
Hi Michael,

I think what Tim meant is that you followed what I told you but a little 
too much. The form I proposed was for "Other Info" only. Assuming that 
is used by a human looking at things. The URL for the actual pull 
request should be what "git request-pull" emits. That is as I believe it 
was before where there is a repo URI part and the branch as a separate 
argument. These things, together with tha SHA1s pointing to start and 
end is fed into a git command to fetch the patches. While I would use 
the other info uri to look at things via a browser.

-Stefan

> Thanks,
> Michael
> 
> On Thu, Feb 23, 2023 at 12:37 PM Tim Gardner <tim.gardner at canonical.com 
> <mailto:tim.gardner at canonical.com>> wrote:
> 
>     On 2/23/23 9:57 AM, Michael Reed wrote:
>      > From: Michael Reed <Michael.Reed at canonical.com
>     <mailto:Michael.Reed at canonical.com>>
>      >
>      > SRU Justification:
>      >
>      > BugLink: https://bugs.launchpad.net/bugs/2008157
>     <https://bugs.launchpad.net/bugs/2008157>
>      >
>      > [Impact]
>      >
>      > When booted into Ubuntu 22.04.1 OS after installation, observed
>     "Array Index out of bounds" Call Trace multiple times in dmesg.
>      >
>      > Call Trace is as follow:
>      > [ 6.125704] UBSAN: array-index-out-of-bounds in
>     /build/linux-JjvoxS/linux-5.15.0/drivers/scsi/megaraid/megaraid_sas_fp.c:103:32
>      > [ 6.125705] index 1 is out of range for type 'MR_LD_SPAN_MAP [1]'
>      > [ 6.125707] CPU: 0 PID: 18 Comm: kworker/0:1 Not tainted
>     5.15.0-53-generic #59-Ubuntu
>      > [ 6.125709] Hardware name: Dell Inc. , BIOS 11/08/2022
>      > [ 6.125710] Workqueue: events work_for_cpu_fn
>      > [ 6.125716] Call Trace:
>      > [ 6.125718] <TASK>
>      > [ 6.125720] show_stack+0x52/0x5c
>      > [ 6.125725] dump_stack_lvl+0x4a/0x63
>      > [ 6.125731] dump_stack+0x10/0x16
>      > [ 6.125732] ubsan_epilogue+0x9/0x49
>      > [ 6.125734] __ubsan_handle_out_of_bounds.cold+0x44/0x49
>      > [ 6.125736] ? MR_PopulateDrvRaidMap+0x194/0x580 [megaraid_sas]
>      > [ 6.125747] mr_update_load_balance_params+0xb9/0xc0 [megaraid_sas]
>      > [ 6.125753] MR_ValidateMapInfo+0x8d/0x290 [megaraid_sas]
>      > [ 6.125757] megasas_init_adapter_fusion+0x3ce/0x420 [megaraid_sas]
>      > [ 6.125762] ? megasas_setup_reply_map+0x49/0xac [megaraid_sas]
>      > [ 6.125768] megasas_init_fw.cold+0x87c/0x10c8 [megaraid_sas]
>      > [ 6.125774] megasas_probe_one+0x15c/0x4e0 [megaraid_sas]
>      > [ 6.125779] local_pci_probe+0x48/0x90
>      > [ 6.125783] work_for_cpu_fn+0x17/0x30
>      > [ 6.125785] process_one_work+0x228/0x3d0
>      > [ 6.125786] worker_thread+0x223/0x420
>      > [ 6.125787] ? process_one_work+0x3d0/0x3d0
>      > [ 6.125788] kthread+0x127/0x150
>      > [ 6.125790] ? set_kthread_struct+0x50/0x50
>      > [ 6.125791] ret_from_fork+0x1f/0x30
>      > [ 6.125796] </TASK>
>      > [ 6.125796]
>     ================================================================================
>      >
>      > Steps to reproduce:
>      > 1. Connect PERC H355 controller to the system
>      > 2. Create RAID1 using drives connected to PERC Controller
>      > 3. Install Ubuntu 22.04.1 on VD
>      > 4. Boot into OS after installation
>      > 5. Multiple Call Traces of "array-index-out-of-bounds" are seen
>      >
>      > Expected Behavior:
>      > OS should boot without this Call Trace
>      >
>      > [Fix]
>      >
>      > [PATCH v3 0/6] Replace one-element arrays with flexible-array members
>      >
>     https://lore.kernel.org/linux-hardening/cover.1660592640.git.gustavoars@kernel.org/ <https://lore.kernel.org/linux-hardening/cover.1660592640.git.gustavoars@kernel.org/>
>      >
>      > 48658213 scsi: megaraid_sas: Use struct_size() in code related to
>     struct MR_PD_CFG_SEQ_NUM_SYNC
>      > 41e83026 scsi: megaraid_sas: Use struct_size() in code related to
>     struct MR_FW_RAID_MAP
>      > ee92366a scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_PD_CFG_SEQ_NUM_SYNC
>      > eeb3bab7 scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_DRV_RAID_MAP
>      > 204a29a1 scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_FW_RAID_MAP_DYNAMIC
>      > ac23b92b scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_FW_RAID_MAP
>      >
>      > [Test Plan]
>      >
>      > 1. Connect PERC H355 controller to the system
>      > 2. Create RAID1 using drives connected to PERC Controller
>      > 3. Install Ubuntu 22.04.1 on VD
>      > 4. Boot into OS after installation
>      > OS should boot without the Call Trace listed in the Impact field
>      >
>      > [Where problems could occur]
>      >
>      > [Other Info]
>      >
>     https://code.launchpad.net/~mreed8855/ubuntu/+source/linux/+git/jammy/+ref/array_bounds_lp_2008157 <https://code.launchpad.net/~mreed8855/ubuntu/+source/linux/+git/jammy/+ref/array_bounds_lp_2008157>
>      >
>      > The following changes since commit
>     7a9737edb25096642bcb448bd2e0c64b7f717aa4:
>      >
>      >    UBUNTU: Ubuntu-5.15.0-59.65 (2023-01-06 08:11:23 -0800)
>      >
>      > are available in the Git repository at:
>      >
>      >
>     https://code.launchpad.net/~mreed8855/ubuntu/+source/linux/+git/jammy/+ref/array_bounds_lp_2008157 <https://code.launchpad.net/~mreed8855/ubuntu/+source/linux/+git/jammy/+ref/array_bounds_lp_2008157>
>      >
>      > for you to fetch changes up to
>     aeee88c7297067665bdf76adb58565ec0a1eee68:
>      >
>      >    scsi: megaraid_sas: Use struct_size() in code related to
>     struct MR_PD_CFG_SEQ_NUM_SYNC (2023-02-22 21:15:30 -0600)
>      >
>      > ----------------------------------------------------------------
>      > Gustavo A. R. Silva (6):
>      >        scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_FW_RAID_MAP
>      >        scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_FW_RAID_MAP_DYNAMIC
>      >        scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_DRV_RAID_MAP
>      >        scsi: megaraid_sas: Replace one-element array with
>     flexible-array member in MR_PD_CFG_SEQ_NUM_SYNC
>      >        scsi: megaraid_sas: Use struct_size() in code related to
>     struct MR_FW_RAID_MAP
>      >        scsi: megaraid_sas: Use struct_size() in code related to
>     struct MR_PD_CFG_SEQ_NUM_SYNC
>      >
>      >   drivers/scsi/megaraid/megaraid_sas_base.c   | 20
>     ++++++++++----------
>      >   drivers/scsi/megaraid/megaraid_sas_fp.c     |  6 +++---
>      >   drivers/scsi/megaraid/megaraid_sas_fusion.c |  2 +-
>      >   drivers/scsi/megaraid/megaraid_sas_fusion.h | 12 ++++++------
>      >   4 files changed, 20 insertions(+), 20 deletions(-)
>      >
>     Acked-by: Tim Gardner <tim.gardner at canonical.com
>     <mailto:tim.gardner at canonical.com>>
> 
>     Your pull request URL is a little weird, but I figured it out.
> 
>     -- 
>     -----------
>     Tim Gardner
>     Canonical, Inc
> 
> 

-- 
- Stefan

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xE8675DEECBEECEA3.asc
Type: application/pgp-keys
Size: 44613 bytes
Desc: OpenPGP public key
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20230227/1d8ca38f/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20230227/1d8ca38f/attachment-0001.sig>


More information about the kernel-team mailing list