Page MenuHomeFreeBSD

Make all the ata probe* and xpt* routines aprobe* and axpt* respectively.
ClosedPublic

Authored by imp on May 12 2020, 9:18 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 20 2023, 4:25 AM
Unknown Object (File)
Oct 27 2023, 1:16 PM
Unknown Object (File)
Oct 19 2023, 8:48 PM
Unknown Object (File)
Sep 25 2023, 1:56 PM
Unknown Object (File)
Sep 6 2023, 1:00 PM
Unknown Object (File)
Sep 6 2023, 12:58 PM
Unknown Object (File)
Sep 6 2023, 12:43 PM
Unknown Object (File)
Sep 4 2023, 12:24 AM
Subscribers

Details

Summary

Often, in traiging core files, one only has a traceback of where a
panic occurred. We have probe* and xpt* routines that live in both the
scsi and ata layers with identical names. To make one or the other
stand out, prefix all the probe and xpt routines in ata with an
'a'. I've left the scsi ones alone since they were there first and are
more numerous. I also rejected using #define to do this as being too
confusing. I chose this method because the CAM name for the probe
device was already 'aprobe'.

Normally, this doesn't matter because file scope protects one from
interfering with the other. However, due to the indirect nature of
CAM's state machine, you don't know if the following traceback is
SCSI or ATA:
xpt_done
probedone
xpt_done_process
xpt_done_td
fork_exit

MFC: 1 week

Test Plan

I've smoke tested this on a few systems, though not on any of the troublesome ones that are dumping core from time to time...

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

imp requested review of this revision.May 12 2020, 9:18 PM
imp added reviewers: mav, scottl, ken.
This revision is now accepted and ready to land.May 12 2020, 10:27 PM
cem added a subscriber: cem.

General idea seems reasonable and I don't see any obvious flaws.

What about NVMe and MMC? If they don't have this problem, please say so in the commit message.

What about NVMe and MMC? If they don't have this problem, please say so in the commit message.

mmc and nvme already have unique names.