Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 05 Feb 1996 01:05:41 +0900
From:      KATO Takenori <kato@eclogite.eps.nagoya-u.ac.jp>
To:        current@freebsd.org
Subject:   kmem_malloc called at splimp
Message-ID:  <199602041605.BAA00550@marble.eps.nagoya-u.ac.jp>

next in thread | raw e-mail | index | archive | help
The function kmem_malloc() is called at splimp when mbuffer is
initialized.  Is it safe?

1. The function mbinit() calls m_clalloc() at splimp.
2. The function m_clalloc() calls kmem_malloc() without changing
   software interruption mask.
3. Therefore, kmem_malloc() is called at splimp.

4. The comment of kmem_malloc says that `this still only works in a
   uni-processor environment and when called at splhigh().'
                                 ^^^^^^^^^^^^^^^^^^^^^^^^
Because splimp of  FreeBSD doesn't block disk I/O, above operation may 
clobber vm map IF disk I/O interruption occurs.  (I have not checked
whether it occurs or not, yet.)

----
KATO Takenori <kato@eclogite.eps.nagoya-u.ac.jp>
Dept. Earth Planet. Sci., Nagoya Univ.,  Nagoya 464-01
Voice: +81-52-789-2529   Fax: +81-52-789-3033



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199602041605.BAA00550>