Bug 222743

Summary: FreeBSD 10.2+ unable to boot/install from Supermicro IPMI emulated CDROM
Product: Base System Reporter: USNOC <bugzilla>
Component: usbAssignee: freebsd-usb (Nobody) <usb>
Status: Closed Overcome By Events    
Severity: Affects Many People CC: emaste
Priority: --- Keywords: regression
Version: 10.3-RELEASE   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
IPMI screenshot showing problem
none
IPMI screenshot showing FIX
none
IPMI screenshot showing problem quirks none

Description USNOC 2017-10-02 23:43:20 UTC
Created attachment 186869 [details]
IPMI screenshot showing problem

The FreeBSD 10.2 and later, including 10.3-REL and 11.0-REL on both i386 and amd64 can not be loaded or installed on all Supermicro X9 motherboards (tested on X9DLR,  X9DBi, X9SCa, X9SCi-LN4F and many others) using IPMI emulated CDROM.

after kernel loaded it stucks on umass1-device probe:

umass1: 8087i (ATAPI) over Blulk-Only; quirks = 0xc101
umass1:8:1: Attached to scbus0
(cd0:umass1-sim1:1:0:0): got CAM status 0x44
(cd0:umass1-sim1:1:0:0): fatal error, failed to attach to device
g_access(918): provider cd0 has error
g_access(918): provider cd0 has error
g_access(918): provider cd0 has error
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 00 00 00 24 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Retrying command
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 00 00 00 24 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Retrying command
...
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 00 00 00 24 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Error 5, Retries exhaused.

we have digged deeply into the problem and found that it is related to how BSD deals with CDROM cache. Using the best of our knowledge we found a way to fix it:

on the boot time escaping to loader prompt (press 3 in when loader menu appears), and entering following command:

set hw.usb.quirk.0="0x0ea0 0x2222 0 0xffff UQ_MSC_NO_SYNC_CACHE"
boot

after this kernel loads successfully and FreeBSD can be installed without any troubles.

The problem appears only on FreeBSD 10.2 and later. Version 10.1 and previous including but not limited to : 10.0 , 9.3 , 8.4 , 7.4 and 6.4 have no such problem.

Please add this fix to the further releases including 10.4 , as at the moment its barely impossible to install or repair OS on the servers with mentioned motherboards which are very popular.

Thanks,
Tech Support Team
Globecorp Networks
Comment 1 USNOC 2017-10-07 23:41:38 UTC
Created attachment 186992 [details]
IPMI screenshot showing FIX

added screenshot with fixed quirks
Comment 2 USNOC 2017-10-07 23:43:23 UTC
Created attachment 186993 [details]
IPMI screenshot showing problem quirks

added screenshot showing problematik quirks
Comment 3 Mark Linimon freebsd_committer freebsd_triage 2024-11-17 03:33:06 UTC
^Triage: I'm sorry that this PR did not get addressed in a timely fashion.

By now, the version that it was created against is long out of suppoprt.
Please re-open if it is still a problem on a supported version.