linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* questions on ia32 smp_flush_tlb
@ 1999-04-16 17:35 Kanoj Sarcar
  0 siblings, 0 replies; only message in thread
From: Kanoj Sarcar @ 1999-04-16 17:35 UTC (permalink / raw)
  To: linux-mm, linux-kernel

Hi,

I am curious about the smp_flush_tlb() ia32 code in arch/i386/kernel/smp.c.

Firstly, is it guaranteed that all callers of this routine hold the giant
kernel lock? Or could it be called without the lock?

Secondly, what is the reason of the __save_flags/__cli/__restore_flags in
the body of smp_flush_tlb? I noted there are some FORCE_APIC_SERIALIZATION/
CONFIG_X86_GOOD_APIC issues, but those are well contained in 
send_IPI_allbutself, so smp_flush_tlb should not need to redo it, according
to my simple thinking. 

Thirdly, depending on whether smp_flush_tlb is always called with the
kernel_lock (see first question), how is it possible to get "crossing"
invalidates?

Fourthly, wouldn't it be better if the caller were to do its local_flush_tlb
and then go into the while loop, waiting for other cpus to finish their
flushes? This way, it would probably spend lesser time spinning ... yes,
this is just microoptimization.

Please CC me (kanoj@engr.sgi.com) on your replies.

Thanks much.

Kanoj
(kanoj@engr.sgi.com)

--
To unsubscribe, send a message with 'unsubscribe linux-mm my@address'
in the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://humbolt.geo.uu.nl/Linux-MM/

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1999-04-16 17:37 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-04-16 17:35 questions on ia32 smp_flush_tlb Kanoj Sarcar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox