Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/sys/dev/ieee1394
In article <20060501.223750.70214822.kiyohara%kk.iij4u.or.jp@localhost>
kiyohara%kk.iij4u.or.jp@localhost wrote:
> known me too. i.e. fxp(4), tlp(4)...
> Neither fxp(4) nor tlp(4) seem to do sync to the DMA descriptor.
At least tlp(4) calls POSTREAD and POSTWRITE sync before
checking descriptors in tlp_rxintr() and tlp_txintr()
with TULIP_CDRXSYNC() and TULIP_CDTXSYNC(), though
as you said no PREREAD/PREWRITE sync op after it.
In fxp(4) case, RX descriptors are allocated in mbufs
(i.e. non coherent memory) so fxp_rxintr() calls PREREAD
sync op explicitly after checking RX descriptors,
otherwise it doesn't work properly on architecture
which has no DMA bus-snoop like arm. POSTREAD/POSTWRITE
sync ops are called where appropriate, I think.
(though POST* ops are no-op on most architecbures)
> > i.e. is there any benefits by removing sync ops?
>
> I am expecting that be able to work early by this change.
Do you have any benchmark of the change? I doubt it's worth
on modern CPUs. It's much better to fix tlp(4), fxp(4) and other
drivers rather than such ineffective (and incorrect/misleading)
hack, IMHO.
---
Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index