diff options
author | mav <mav@FreeBSD.org> | 2014-01-05 22:40:28 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2014-01-05 22:40:28 +0000 |
commit | a5ea679e9359acd69373a4f1a1ba85faf82891a9 (patch) | |
tree | a8169245bb3c81b2a70c0adf732ec8cfd362da35 /sys/dev/aic7xxx | |
parent | eb69a5b0d10751893c78f04bb85fea20a4d053a2 (diff) | |
download | FreeBSD-src-a5ea679e9359acd69373a4f1a1ba85faf82891a9.zip FreeBSD-src-a5ea679e9359acd69373a4f1a1ba85faf82891a9.tar.gz |
MFC r256826:
Fix several target mode SIMs to not blindly clear ccb_h.flags field of
ATIO CCBs. Not all CCB flags there belong to them.
Diffstat (limited to 'sys/dev/aic7xxx')
-rw-r--r-- | sys/dev/aic7xxx/aic79xx.c | 4 | ||||
-rw-r--r-- | sys/dev/aic7xxx/aic7xxx.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/sys/dev/aic7xxx/aic79xx.c b/sys/dev/aic7xxx/aic79xx.c index f19cdb5..c403c09 100644 --- a/sys/dev/aic7xxx/aic79xx.c +++ b/sys/dev/aic7xxx/aic79xx.c @@ -10342,9 +10342,9 @@ ahd_handle_target_cmd(struct ahd_softc *ahd, struct target_cmd *cmd) /* Tag was included */ atio->tag_action = *byte++; atio->tag_id = *byte++; - atio->ccb_h.flags = CAM_TAG_ACTION_VALID; + atio->ccb_h.flags |= CAM_TAG_ACTION_VALID; } else { - atio->ccb_h.flags = 0; + atio->ccb_h.flags &= ~CAM_TAG_ACTION_VALID; } byte++; diff --git a/sys/dev/aic7xxx/aic7xxx.c b/sys/dev/aic7xxx/aic7xxx.c index f5bd269..e1428e9 100644 --- a/sys/dev/aic7xxx/aic7xxx.c +++ b/sys/dev/aic7xxx/aic7xxx.c @@ -7842,9 +7842,9 @@ ahc_handle_target_cmd(struct ahc_softc *ahc, struct target_cmd *cmd) /* Tag was included */ atio->tag_action = *byte++; atio->tag_id = *byte++; - atio->ccb_h.flags = CAM_TAG_ACTION_VALID; + atio->ccb_h.flags |= CAM_TAG_ACTION_VALID; } else { - atio->ccb_h.flags = 0; + atio->ccb_h.flags &= ~CAM_TAG_ACTION_VALID; } byte++; |