tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Fixing excessive shootdowns during FFS read (kern/53124) on x86
joerg%bec.de@localhost (Joerg Sonnenberger) writes:
>What about having a passive unmap as fourth option? I.e. when unmapping
>in the transfer map, just add them to a FIFO. Process the FIFO on each
>CPU when there is time or the transfer map runs out of space. Context
>switching for example would be a natural place to do any such
>invalidation.
The mapping is so temporary that it is almost only used on a single CPU.
Basically it's:
win = ubc_alloc();
if (!uiomove(win, ...))
memset(win, 0, ...);
ubc_release(win, ...);
For this to be even visible on multiple CPUs, the thread would need
to migrate to another CPU. Locking down the LWP on a single CPU
might be the cheapest solution.
--
--
Michael van Elst
Internet: mlelstv%serpens.de@localhost
"A potential Snark may lurk in every tree."
Home |
Main Index |
Thread Index |
Old Index