Re: [PATCH] Align VM locks

Mark Hemment (markhe@veritas.com)
Thu, 16 Aug 2001 19:44:04 +0100 (BST)


On Thu, 16 Aug 2001, Andrea Arcangeli wrote:
> BTW, for your other patch you sent a few hours ago you forgot to drop
> the KMAP entry that is wasting NR_CPUS*PAGE_SIZE of virtual address
> space:
>
> ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.4/2.4.8aa1/00_create_bounces-sleeps-1

Eh, no I didn't.

At least on the work load I'm interest in, SpecFS v2.0 over NFSv3,
removing the KM_BOUNCE_WRITE results in a performance drop (confirmed
today).

It is often the case that when it comes time to write a page out it has
lost any mapping it had when it was made dirty via a write(), so there is
no side benefit of using a straight kmap().

By having KM_BOUNCE_WRITE we don't run through the "normal" mapping
space on I/O. Not having KM_BOUNCE_WRITE causing extra shootdowns, which
_are_ expensive, as the code needs to busy-wait for all the other engines
(while the kmap_lock held - and on a 4-way there is a good chance one of
the processors is running with interrupts disabled).
KM_BOUNCE_WRITE may waste virtual address-space, but it saves on
expensive shootdowns.

Mark

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/