Page MenuHomeFreeBSD

scottl (Scott Long)
User

Projects

User Details

User Since
Jun 4 2014, 7:07 AM (271 w, 5 d)

Recent Activity

Wed, Jul 24

scottl added a comment to D19976: bhyve: Support a _VARS.fd file for bootrom.

He's out for a few more weeks. It's on my radar, but I've been busy with other things.

Wed, Jul 24, 10:30 PM

Tue, Jul 23

scottl committed rS350255: Fix the register layout for the Buffer Descript List Entry. It.
Fix the register layout for the Buffer Descript List Entry. It
Tue, Jul 23, 6:40 PM

Jul 20 2019

D21002: ata_xpt: Use the correct union member when accessing valid is now accepted and ready to land.
Jul 20 2019, 6:07 AM

Jul 15 2019

scottl added inline comments to D20950: Implement a devtype command..
Jul 15 2019, 1:40 PM

Jul 12 2019

scottl committed rS349948: Tie the name limit of a VM to SPECNAMELEN from devfs instead of a.
Tie the name limit of a VM to SPECNAMELEN from devfs instead of a
Jul 12 2019, 6:38 PM
scottl closed D20924: Increase VM name limit.
Jul 12 2019, 6:38 PM
scottl added inline comments to D20924: Increase VM name limit.
Jul 12 2019, 6:31 PM
scottl added a comment to D20924: Increase VM name limit.

Switch to using sizeof() inplace of prescribing VM_MAX_SUFFIXLEN

Jul 12 2019, 5:17 PM
scottl added inline comments to D20924: Increase VM name limit.
Jul 12 2019, 5:13 PM
scottl added a comment to D20924: Increase VM name limit.

Fix and expand comments, add a compile time assert for safety.
Pad the buffer length in the sysctl handlers to the null terminator.

Jul 12 2019, 5:02 PM

Jul 11 2019

scottl added a reviewer for D20924: Increase VM name limit: markj.
Jul 11 2019, 10:15 PM
scottl added a reviewer for D20924: Increase VM name limit: jhb.
Jul 11 2019, 6:21 PM
scottl created D20924: Increase VM name limit.
Jul 11 2019, 6:00 PM

Jun 24 2019

scottl committed rS349336: Add a section about the HD Audio module support.
Add a section about the HD Audio module support
Jun 24 2019, 7:42 PM
scottl committed rS349335: Add the PCI HDAudio device model from the 2016 GSoC. Detailed information.
Add the PCI HDAudio device model from the 2016 GSoC. Detailed information
Jun 24 2019, 7:31 PM

Jun 21 2019

scottl committed rS349283: Refactor xpt_getattr() to make it more readable. No outwardly.
Refactor xpt_getattr() to make it more readable. No outwardly
Jun 21 2019, 11:40 PM
scottl added a comment to D12419: HD Audio Emulation For Bhyve (Based on D7840).

Just tested with TruOS/Trident from a May 2019 kernel, and it's getting ECAPMODE. Maybe the problems with Capsicum aren't worked out yet. I'll look some more at it.

Jun 21 2019, 7:46 PM

Jun 20 2019

D18613: Add driver for the VMware Paravirtual SCSI (pvscsi) controller now requires changes to proceed.

Overall this looks very good, but error handoff in pvscsi_process_completion() is not correct. Generally if you're going to return a status that isn't CAM_REQ_CMP, you need to do the following before calling xpt_done():

Jun 20 2019, 6:07 PM

Jun 19 2019

scottl committed rS349184: Implement VT-d capability detection on chipsets that have multiple.
Implement VT-d capability detection on chipsets that have multiple
Jun 19 2019, 6:41 AM

Jun 12 2019

scottl added a reviewer for D20615: Add support for retrieving the VPD pages that are supported.: scottl.
Jun 12 2019, 10:19 PM

May 27 2019

scottl accepted D20427: ips(4): add missing braces.
May 27 2019, 11:04 PM

May 17 2019

scottl committed rS347939: Better formatting for the logpage section.
Better formatting for the logpage section
May 17 2019, 6:15 PM

May 1 2019

scottl accepted D19996: List-ify kernel dump device configuration.
May 1 2019, 7:48 PM

Apr 30 2019

scottl accepted D19996: List-ify kernel dump device configuration.

I'm a bit lost on where the thread on sysctl_wire_old_buffer() is going. I'm fine with the code as-is, recommend not removing the call unless Mark advises otherwise.

Apr 30 2019, 7:01 AM
scottl accepted D20060: Select lacp egress ports based on NUMA domain.
Apr 30 2019, 6:53 AM

Apr 24 2019

scottl accepted D20028: Track TCP connection's NUMA domain in the inpcb.
Apr 24 2019, 3:32 PM
scottl removed a member for transport: scottl.
Apr 24 2019, 3:29 PM
scottl accepted D19996: List-ify kernel dump device configuration.
Apr 24 2019, 3:16 PM

Apr 23 2019

scottl added inline comments to D19817: add mrsas_shutdown method.
Apr 23 2019, 3:02 AM
scottl added inline comments to D19996: List-ify kernel dump device configuration.
Apr 23 2019, 1:25 AM
scottl added a comment to D19816: Add an option for specifying the default debug flags for mps driver..

Eh, I'm not a big fan of this, converting the driver to use strings from sysctl and kenv was intended to make it as easy as possible to set and unset flags from the default. It also adds new touch points in the system that will have to be updated or risk going stale if debugging evolves. Is editing, compiling, and deploying a new kernel easier than editing loader.conf? That said, I don't have a hard objection to it being committed, so long as the first time it goes stale, Warner buys me a nice chopped brisket dinner at Shorty's.

Apr 23 2019, 12:16 AM

Mar 27 2019

scottl committed rS345573: Add missing break statements. Coverity CID 1400446..
Add missing break statements. Coverity CID 1400446.
Mar 27 2019, 12:25 PM

Mar 24 2019

scottl committed rS345485: Add event table decoding for SAS Broadcast Primitive events..
Add event table decoding for SAS Broadcast Primitive events.
Mar 24 2019, 8:37 PM
scottl committed rS345482: Fix a transposition error from the previous commit.
Fix a transposition error from the previous commit
Mar 24 2019, 7:29 PM
scottl committed rS345479: r329522 created problemss with commands that enter the TIMEDOUT state but.
r329522 created problemss with commands that enter the TIMEDOUT state but
Mar 24 2019, 7:10 PM
scottl closed D19677: Fix timeout-related panics in MPR and MPS.
Mar 24 2019, 7:10 PM

Mar 22 2019

scottl updated the diff for D19677: Fix timeout-related panics in MPR and MPS.

Add mpr too

Mar 22 2019, 2:04 PM
scottl created D19677: Fix timeout-related panics in MPR and MPS.
Mar 22 2019, 2:02 PM

Dec 31 2018

scottl committed rS342660: Port over the SCSI sense handling fix from mpr(4) in r342528, and fix.
Port over the SCSI sense handling fix from mpr(4) in r342528, and fix
Dec 31 2018, 11:30 PM
scottl committed rS342659: Fix whitespace from r342528.
Fix whitespace from r342528
Dec 31 2018, 11:28 PM

Dec 24 2018

scottl committed rS342388: Further refactoring for task management commands. Also fix a related.
Further refactoring for task management commands. Also fix a related
Dec 24 2018, 6:14 AM
scottl committed rS342387: Commands for user-initated device resets should come from the high-priority.
Commands for user-initated device resets should come from the high-priority
Dec 24 2018, 5:54 AM
scottl committed rS342386: First step in refactoring and fixing the error recovery and task management.
First step in refactoring and fixing the error recovery and task management
Dec 24 2018, 5:06 AM

Dec 21 2018

scottl accepted D18614: [2/2] mps(4): remove SATA ID command cancellation hack.
Dec 21 2018, 8:24 PM
scottl accepted D18612: [1/2] mps(4): Fix lifetime of command buffer for mpssas_get_sata_identify.
Dec 21 2018, 8:23 PM

Dec 20 2018

scottl accepted D18612: [1/2] mps(4): Fix lifetime of command buffer for mpssas_get_sata_identify.
Dec 20 2018, 5:04 AM
scottl accepted D18614: [2/2] mps(4): remove SATA ID command cancellation hack.
Dec 20 2018, 5:03 AM
scottl added a comment to D18612: [1/2] mps(4): Fix lifetime of command buffer for mpssas_get_sata_identify.

Can you do the same for mpr?

Dec 20 2018, 4:38 AM
scottl added a comment to D18614: [2/2] mps(4): remove SATA ID command cancellation hack.

Also, can you add the same changes for mpr?

Dec 20 2018, 4:35 AM
scottl added a comment to D18614: [2/2] mps(4): remove SATA ID command cancellation hack.

One small thing to consider is whether to create a new typedef for cm_timeout_handler, even if it's the same implementation is mps_command_callback_t for now. The reason is that we might want to evolve this into a different function call signature for the timeout handler. This might be useful for mps_scsiio_timeout().

Dec 20 2018, 4:35 AM

Dec 9 2018

scottl committed rS341762: I missed powerpcspe in the previous commit for excluding mps and mpr..
I missed powerpcspe in the previous commit for excluding mps and mpr.
Dec 9 2018, 6:55 AM
scottl committed rS341756: Don't allocate the config_intrhook separately from the softc, it's small.
Don't allocate the config_intrhook separately from the softc, it's small
Dec 9 2018, 6:17 AM
scottl committed rS341755: Copy and clear the reply descriptor atomically. This prevents concurrency.
Copy and clear the reply descriptor atomically. This prevents concurrency
Dec 9 2018, 6:10 AM
scottl committed rS341754: Remove the mps driver from powerpc 32bit GENERIC, and don't build it and.
Remove the mps driver from powerpc 32bit GENERIC, and don't build it and
Dec 9 2018, 6:06 AM
scottl added a reviewer for D15073: Invalidate reply descriptors earlier: jhibbits.
Dec 9 2018, 3:17 AM
scottl updated the diff for D15073: Invalidate reply descriptors earlier.

Switch to using an atomic swap for grabbing and clearing the reply
descriptor. This also undoes the unneeded churn from the last
revision. It makes the driver reliant on there being 64bit atomics,
which means that it won't work on powerpc anymore. C'est la vie!

Dec 9 2018, 3:17 AM
scottl accepted D18408: PR209468: aacraid fixes to work with newer controller firmware.

I'm marking this as accepted despite my individual comments.

Dec 9 2018, 1:40 AM

Nov 13 2018

scottl committed rS340403: Fix a regression from prior to 11.2 that caused MSI (not MSI-X) interrupt.
Fix a regression from prior to 11.2 that caused MSI (not MSI-X) interrupt
Nov 13 2018, 6:50 PM

Sep 6 2018

scottl accepted D17059: Enable options NUMA on amd64 GENERIC/MINIMAL:.
Sep 6 2018, 10:08 PM · NUMA

Aug 14 2018

scottl added a comment to D16663: Create xpt_sim_poll, refactor and use it in mps / mpr..

But CAM right now isn't great about knowing we're in 'shutdown' mode where error recovery might not be a good idea (but it might... It's unclear to me that we can say never here). In the mean time, doing the polling I think is a good 'make it better w/o letting the perfect be the enemy of the better' compromise.

Aug 14 2018, 12:47 AM

Aug 13 2018

scottl added a comment to D16663: Create xpt_sim_poll, refactor and use it in mps / mpr..

I think that this is going in the right direction. The SSU/shutdown code in mpr/mps is still not great, IMHO. There's a completion handler for the SSU CCB that could take care of decrementing the SSU_refcount, but instead every I/O is checked for the SSU state in the normal command completion path, and the refcount decrement happens there. The cost of checking every I/O for the uncommon shutdown case is probably in the noise right now, but if we ever want these drivers to do millions of IOPS, it'll need to be addressed. Also, error recovery is going to be highly problematic. Protocol-level recovery is non-existent because the completion handler doesn't call cam_periph_error(), but transport-level error recovery (for things like timeouts) will likely still be called from the driver. Do we want error recovery to be triggered during a system shutdown, possibly triggering extra delays? If an error does happen, does ignoring it make the device problematic the next time the system starts up? If we want the driver to ignore transport level error recovery, how should that be flagged?

Aug 13 2018, 6:20 AM

Jun 26 2018

scottl committed rS328918: Return a C errno for cam_periph_acquire()..
Return a C errno for cam_periph_acquire().
Jun 26 2018, 9:55 PM
scottl closed D14063: Use C errno as return value for cam_periph_acquire().
Jun 26 2018, 9:55 PM

May 14 2018

scottl added reviewers for D15435: expand scope of da refcount to protect I/Os in flight: mav, asomers.
May 14 2018, 9:59 PM
scottl accepted D15435: expand scope of da refcount to protect I/Os in flight.
May 14 2018, 9:39 PM

May 1 2018

scottl committed rS333154: Refactor dadone(). There was no useful code sharing in it; it was just.
Refactor dadone(). There was no useful code sharing in it; it was just
May 1 2018, 9:42 PM
scottl committed rS333152: cam_periph_runccb() changed several years ago to overwrite the ccb callback.
cam_periph_runccb() changed several years ago to overwrite the ccb callback
May 1 2018, 8:09 PM
scottl committed rS333147: Add and fix comments for cam_periph_runccb().
Add and fix comments for cam_periph_runccb()
May 1 2018, 5:49 PM

Apr 15 2018

scottl created D15073: Invalidate reply descriptors earlier.
Apr 15 2018, 2:34 PM

Mar 25 2018

scottl committed rS331528: Update a TBD string with a real model number.
Update a TBD string with a real model number
Mar 25 2018, 6:08 AM

Mar 12 2018

scottl committed rS330790: Add a new 'debug' command tree and 'dump_reqs' command to grab and parse.
Add a new 'debug' command tree and 'dump_reqs' command to grab and parse
Mar 12 2018, 5:03 AM
scottl committed rS330789: Implement a sysctl to dump in-flight I/O state for debugging. The tool to.
Implement a sysctl to dump in-flight I/O state for debugging. The tool to
Mar 12 2018, 5:02 AM

Feb 21 2018

scottl accepted D14369: Fix "cd0: Attempt".
Feb 21 2018, 7:00 AM

Feb 18 2018

scottl committed rS329522: Improve command lifecycle debugging and detection of problems..
Improve command lifecycle debugging and detection of problems.
Feb 18 2018, 4:41 PM

Feb 11 2018

scottl committed rS329137: Print out the shared memory queues during initialization.
Print out the shared memory queues during initialization
Feb 11 2018, 8:16 PM

Feb 8 2018

scottl requested changes to D14261: Allocate sufficient number of chain frames in mps(4) and mpr(4)..

Unfortunately, there are some big drawbacks to this approach. The larger you make the chain frame pool, the more pressure you put on the contigmalloc allocator. This is usually (though not always!) not a problem at boot, but would be a big problem with loading the driver as a module after boot. I agree with the desire to make the chain frame pool be self-tuning, but I think that to do it the right way, the pool must be allocated in multiple smaller segments of no more than 2MB each (i.e. 16384 frames). It should also handle potential allocation failures. Without this, I feel that your approach will be too fragile.

Feb 8 2018, 5:26 PM

Feb 6 2018

scottl committed rS328950: Cache the value of the request and reply frame size since it's used quite.
Cache the value of the request and reply frame size since it's used quite
Feb 6 2018, 9:01 PM
scottl committed rS328919: Fix a case where a request frame can be composed that requires 2 or more.
Fix a case where a request frame can be composed that requires 2 or more
Feb 6 2018, 6:56 AM
scottl added a comment to D14063: Use C errno as return value for cam_periph_acquire().
In D14063#298088, @mav wrote:

I neither have major objections aside of one inline, nor too happy. From one side I agree that there is no any/much sense to return cam_status from functions like that, which do not work with command statuses. From the other side it is a) an API change, which may lead to difficult to find errors, but b) there are many other functions suffering the same problem (but which may be more invasive to fix though).

Feb 6 2018, 6:30 AM
scottl added inline comments to D14063: Use C errno as return value for cam_periph_acquire().
Feb 6 2018, 6:28 AM

Feb 5 2018

scottl accepted D14215: LSI HBA drivers report incorrect queue depth to CAM.

Good find on this. I've seen queue-full conditions in the past but hadn't tracked down the causes; I think this is it.

Feb 5 2018, 10:45 PM
scottl added inline comments to D14063: Use C errno as return value for cam_periph_acquire().
Feb 5 2018, 9:56 PM

Feb 4 2018

scottl accepted D14042: Minimal changes for MPR to build on architectures with physical addresses larger than virtual.
Feb 4 2018, 3:07 PM

Jan 27 2018

scottl committed rS328464: Finish the incomplete move of CAM_PERIPH_PRINT()..
Finish the incomplete move of CAM_PERIPH_PRINT().
Jan 27 2018, 7:18 AM

Jan 26 2018

scottl committed rS328455: Move CAM_PERIPH_PRINT() to cam_periph.h.
Move CAM_PERIPH_PRINT() to cam_periph.h
Jan 26 2018, 11:56 PM
scottl created D14063: Use C errno as return value for cam_periph_acquire().
Jan 26 2018, 10:07 PM
scottl committed rS328445: Fix a cut-and-paste error in a panic message.
Fix a cut-and-paste error in a panic message
Jan 26 2018, 6:42 PM

Jan 25 2018

scottl accepted D14053: Use atomic load and stores to ensure that the compiler doesn't optimize away these loops..
Jan 25 2018, 10:37 PM
scottl added a comment to D14040: Debugging for arrival / depature code..

I think you forgot to add the implementation for CAM_PERIPH_PRINT(). Mine looks like this in cam_periph.h:

Jan 25 2018, 6:57 PM
scottl added a comment to D14040: Debugging for arrival / depature code..

Something in this patch is causing my system to spontaneously reboot late in the boot process. No panic, and the messages on the screen disappear too quickly (and are erased in the serial console by the BIOS splash screen).

Jan 25 2018, 3:13 PM
scottl added inline comments to D14040: Debugging for arrival / depature code..
Jan 25 2018, 3:12 PM
scottl requested changes to D14040: Debugging for arrival / depature code..
Jan 25 2018, 2:30 PM

Jan 23 2018

scottl accepted D13453: mpr(4) and mps(4) diagnostic path fixes.
Jan 23 2018, 4:54 PM

Jan 19 2018

scottl committed rS328170: Fix compile errors in r328165.
Fix compile errors in r328165
Jan 19 2018, 7:18 PM
scottl accepted D13672: Inline ccbque.h into scsi_low.h and delete from i386/isa..

Looks good to me. I'm OK with removing scsi_low and all related code for FreeBSD 12.

Jan 19 2018, 3:35 PM
scottl added a comment to D13868: Use XPT_GET_ADVINFO for retrieving MMC params.

I came across it during some other clean-up work.

Jan 19 2018, 3:33 PM
scottl committed rS328165: Revert ABI breakage to CAM that came in with MMC/SD support in r320844..
Revert ABI breakage to CAM that came in with MMC/SD support in r320844.
Jan 19 2018, 3:32 PM
scottl closed D13868: Use XPT_GET_ADVINFO for retrieving MMC params.
Jan 19 2018, 3:32 PM
scottl added a reviewer for D13868: Use XPT_GET_ADVINFO for retrieving MMC params: kibab.
Jan 19 2018, 7:05 AM

Jan 11 2018

scottl added inline comments to D13868: Use XPT_GET_ADVINFO for retrieving MMC params.
Jan 11 2018, 6:32 PM