AUDIT: Round up audit skb expansion to AUDIT_BUFSIZ.
Otherwise, we will be repeatedly reallocating, even if we're only adding a few bytes at a time. Pointed out by Steve Grubb. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
This commit is contained in:
@@ -670,7 +670,7 @@ static void audit_log_vformat(struct audit_buffer *ab, const char *fmt,
|
|||||||
/* The printk buffer is 1024 bytes long, so if we get
|
/* The printk buffer is 1024 bytes long, so if we get
|
||||||
* here and AUDIT_BUFSIZ is at least 1024, then we can
|
* here and AUDIT_BUFSIZ is at least 1024, then we can
|
||||||
* log everything that printk could have logged. */
|
* log everything that printk could have logged. */
|
||||||
avail = audit_expand(ab, 1+len-avail);
|
avail = audit_expand(ab, max_t(AUDIT_BUFSIZ, 1+len-avail));
|
||||||
if (!avail)
|
if (!avail)
|
||||||
goto out;
|
goto out;
|
||||||
len = vsnprintf(skb->tail, avail, fmt, args2);
|
len = vsnprintf(skb->tail, avail, fmt, args2);
|
||||||
|
Reference in New Issue
Block a user