diff options
author | mav <mav@FreeBSD.org> | 2011-05-03 13:16:02 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2011-05-03 13:16:02 +0000 |
commit | bdaa8f28e7055997bf3c56975f47b9517be60263 (patch) | |
tree | b75717ed0943ca273e13d36dac73f4a41c207199 /sys/cam | |
parent | 0f506cc8f8f2e9ea6baf51fc28049bfb70e2d1a6 (diff) | |
download | FreeBSD-src-bdaa8f28e7055997bf3c56975f47b9517be60263.zip FreeBSD-src-bdaa8f28e7055997bf3c56975f47b9517be60263.tar.gz |
Do not report legacy unit numbers (do not create legacy aliases) for disks
on port multiplier ports above first two. They don't fit into ATA_STATIC_ID
scheme and so can't be mapped properly. No need to pollute dev.
Diffstat (limited to 'sys/cam')
-rw-r--r-- | sys/cam/cam_xpt.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index cf73948..1ce205d 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -3600,9 +3600,12 @@ xpt_path_legacy_ata_id(struct cam_path *path) } xpt_unlock_buses(); } - if (path->target != NULL) - return (bus_id * 2 + path->target->target_id); - else + if (path->target != NULL) { + if (path->target->target_id < 2) + return (bus_id * 2 + path->target->target_id); + else + return (-1); + } else return (bus_id * 2); } |