fix interrupt awareness in brick_say

This commit is contained in:
Thomas Schoebel-Theuer 2012-02-06 14:05:50 +01:00 committed by Thomas Schoebel-Theuer
parent 3d45b19e71
commit 59fa9bfdd9
2 changed files with 2 additions and 2 deletions

View File

@ -94,7 +94,7 @@ static
void _say_mark(unsigned long cpu)
{
char *ptr;
bool use_atomic = (preempt_count() & (SOFTIRQ_MASK | HARDIRQ_MASK | NMI_MASK)) != 0;
bool use_atomic = (preempt_count() & (SOFTIRQ_MASK | HARDIRQ_MASK | NMI_MASK)) != 0 || irqs_disabled();
say_alloc(cpu, use_atomic);
if (unlikely(use_atomic || cpu >= NR_CPUS))

View File

@ -1463,7 +1463,7 @@ bool phase0_startio(struct trans_logger_mref_aspect *mref_a)
}
#endif
if (!mref_a->is_hashed) {
MARS_DBG("hashing %d at %lld\n", mref->ref_len, mref->ref_pos);
MARS_IO("hashing %d at %lld\n", mref->ref_len, mref->ref_pos);
hash_insert(brick, mref_a);
}
return phase1_startio(mref_a);