diff options
author | simokawa <simokawa@FreeBSD.org> | 2007-07-15 13:00:29 +0000 |
---|---|---|
committer | simokawa <simokawa@FreeBSD.org> | 2007-07-15 13:00:29 +0000 |
commit | 9bdbb066cbe14b1ce7f70c8f6989cd5b9d568543 (patch) | |
tree | 1bd47908e9b3e386865b38283c3830d6240c0d16 /sys/dev/firewire/firewirereg.h | |
parent | fdb167ed99c6005f2ee4dcefb29495fa599a401e (diff) | |
download | FreeBSD-src-9bdbb066cbe14b1ce7f70c8f6989cd5b9d568543.zip FreeBSD-src-9bdbb066cbe14b1ce7f70c8f6989cd5b9d568543.tar.gz |
Improve acquisition of transaction labels.
- Keep last transaction label for each destination.
- If the next label is not free, just give up.
- This should reduce CPU load for TX on if_fwip under heavy load.
Approved by: re (hrs)
Diffstat (limited to 'sys/dev/firewire/firewirereg.h')
-rw-r--r-- | sys/dev/firewire/firewirereg.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/dev/firewire/firewirereg.h b/sys/dev/firewire/firewirereg.h index d2d9d65..0ceb5a2 100644 --- a/sys/dev/firewire/firewirereg.h +++ b/sys/dev/firewire/firewirereg.h @@ -133,6 +133,7 @@ struct firewire_comm{ struct fw_xferq *arq, *atq, *ars, *ats, *it[FW_MAX_DMACH],*ir[FW_MAX_DMACH]; struct fw_xferlist tlabels[0x40]; + u_char last_tlabel[0x40]; STAILQ_HEAD(, fw_bind) binds; STAILQ_HEAD(, fw_device) devices; u_int sid_cnt; |