Holding error log's block buffer registration until all logs were written caused deadlock if block buffers were full. Now buffer registrations don't overlap.
This commit is contained in:
@ -584,6 +584,7 @@ static int logmanager_write_log(
|
|||||||
wp[timestamp_len-1+str_len-2]=' ';
|
wp[timestamp_len-1+str_len-2]=' ';
|
||||||
}
|
}
|
||||||
wp[timestamp_len-1+str_len-1]='\n';
|
wp[timestamp_len-1+str_len-1]='\n';
|
||||||
|
blockbuf_unregister(bb);
|
||||||
|
|
||||||
if (spread_down) {
|
if (spread_down) {
|
||||||
/**
|
/**
|
||||||
@ -630,7 +631,6 @@ static int logmanager_write_log(
|
|||||||
blockbuf_unregister(bb_c);
|
blockbuf_unregister(bb_c);
|
||||||
}
|
}
|
||||||
} /* if (spread_down) */
|
} /* if (spread_down) */
|
||||||
blockbuf_unregister(bb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return_err:
|
return_err:
|
||||||
|
|||||||
Reference in New Issue
Block a user