** Changed in: linux (Ubuntu Noble)
       Status: In Progress => Fix Committed

** Changed in: linux (Ubuntu Oracular)
       Status: In Progress => Fix Committed

** Changed in: linux (Ubuntu Jammy)
       Status: In Progress => Fix Committed

** Changed in: linux (Ubuntu Focal)
       Status: In Progress => Won't Fix

** Changed in: linux (Ubuntu Jammy)
   Importance: Undecided => Medium

** Changed in: linux (Ubuntu Noble)
   Importance: Undecided => Medium

** Changed in: linux (Ubuntu Oracular)
   Importance: Undecided => Medium

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/2097824

Title:
  iBFT iSCSI out-of-bounds shift UBSAN warning

Status in linux package in Ubuntu:
  In Progress
Status in linux source package in Focal:
  Won't Fix
Status in linux source package in Jammy:
  Fix Committed
Status in linux source package in Noble:
  Fix Committed
Status in linux source package in Oracular:
  Fix Committed
Status in linux source package in Plucky:
  In Progress

Bug description:
  [Impact]
  During an iSCSI boot in an IPv6 environment, `iscsistart` continues to access 
the `/sys/firmware/ibft/ethernetX/subnet-mask` entry, despite subnet masks 
being irrelevant for IPv6. Since the IPv6 prefix length is 64, this leads to a 
negative shift exponent, triggering a UBSAN warning.

  [Fix]
  A commit has been made to fix this issue.
  
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=07e0d99a2f701123ad3104c0f1a1e66bce74d6e5

  [Test Plan]
  1. Set up a machine with an iSCSI backend in an IPv6-only environment.
  2. Power on the machine and verify that the following error does not occur:
  [  105.283243] UBSAN: shift-out-of-bounds in 
/build/linux-oracle-cD7q0d/linux-oracle-6.8.0/drivers/firmware/iscsi_ibft.c:313:9
  [  105.432609] shift exponent -32 is negative
  [  105.498209] CPU: 106 PID: 2536 Comm: iscsistart Not tainted 
6.8.0-1008-oracle #8-Ubuntu
  [  105.610611] Hardware name: Oracle Corporation ORACLE SERVER E4-2c/Asm,MB 
Tray,2U,E4-2c, BIOS 78016100 04/11/2024
  [  105.749047] Call Trace:
  [  105.794939]  <TASK>
  [  105.832503]  dump_stack_lvl+0x76/0xa0
  [  105.876679]  dump_stack+0x10/0x20
  [  105.916742]  __ubsan_handle_shift_out_of_bounds+0x199/0x370
  [  105.983788]  ibft_attr_show_nic.cold+0x17/0x2c [iscsi_ibft]
  [  106.050817]  iscsi_boot_show_attribute+0x3f/0x70 [iscsi_boot_sysfs]
  [  106.126167]  sysfs_kf_seq_show+0xa7/0x120
  [  106.174475]  kernfs_seq_show+0x27/0x40
  [  106.219654]  seq_read_iter+0x132/0x4b0
  [  106.264824]  kernfs_fop_read_iter+0x34/0x40
  [  106.315190]  vfs_read+0x258/0x390
  [  106.355160]  ksys_read+0x73/0x100
  [  106.395116]  __x64_sys_read+0x19/0x30
  [  106.439234]  x64_sys_call+0x1ada/0x25c0
  [  106.485422]  do_syscall_64+0x7f/0x180
  [  106.529528]  ? srso_alias_return_thunk+0x5/0xfbef5
  [  106.587154]  ? syscall_exit_to_user_mode+0x89/0x260
  [  106.645810]  ? srso_alias_return_thunk+0x5/0xfbef5
  [  106.703424]  ? do_syscall_64+0x8c/0x180
  [  106.749594]  ? srso_alias_return_thunk+0x5/0xfbef5
  [  106.807197]  ? __do_sys_newfstatat+0x44/0x90
  [  106.858552]  ? srso_alias_return_thunk+0x5/0xfbef5
  [  106.916147]  ? syscall_exit_to_user_mode+0x89/0x260
  [  106.974771]  ? srso_alias_return_thunk+0x5/0xfbef5
  [  107.032350]  ? do_syscall_64+0x8c/0x180
  [  107.078488]  ? do_syscall_64+0x8c/0x180
  [  107.124620]  ? exc_page_fault+0x94/0x190
  [  107.171789]  entry_SYSCALL_64_after_hwframe+0x78/0x80
  [  107.232475] RIP: 0033:0x764465a69a61
  [  107.275484] Code: 00 48 8b 15 b9 73 0e 00 f7 d8 64 89 02 b8 ff ff ff ff eb 
bd e8 40 c4 01 00 f3 0f 1e fa 80 3d e5 f5 0e 00 00 74 13 31 c0 0f 05 <48> 3d 00 
f0 ff ff 77 4f c3 66 0f 1f 44 00 00 55 48 89 e5 48 83 ec
  [  107.500766] RSP: 002b:00007ffc83fa6798 EFLAGS: 00000246 ORIG_RAX: 
0000000000000000
  [  107.591622] RAX: ffffffffffffffda RBX: 00007ffc83fa6840 RCX: 
0000764465a69a61
  [  107.677276] RDX: 0000000000000100 RSI: 00007ffc83fa6840 RDI: 
0000000000000003
  [  107.762929] RBP: 00007ffc83fa6f80 R08: 00005d0f5c8b7fb4 R09: 
0000000000000007
  [  107.848624] R10: 0000000000000000 R11: 0000000000000246 R12: 
00005d0f5c8b7fb4
  [  107.934283] R13: 00007ffc83fa6940 R14: 00005d0f5c8bf650 R15: 
0000000000000003
  [  108.019949]  </TASK>

  [Where problems could occur]
  The patch resolves the UBSAN warning that occurs when accessing the 
`/sys/firmware/ibft/ethernetX/subnet-mask` entry. However, if any regressions 
occur, the entry may display an incorrect value.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2097824/+subscriptions


-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to