diff options
Diffstat (limited to 'kernel/audit.c')
| -rw-r--r-- | kernel/audit.c | 10 | 
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/audit.c b/kernel/audit.c index f8f203e8018c..72ab759a0b43 100644 --- a/kernel/audit.c +++ b/kernel/audit.c @@ -429,7 +429,7 @@ static void kauditd_send_skb(struct sk_buff *skb)   * This function doesn't consume an skb as might be expected since it has to   * copy it anyways.   */ -static void kauditd_send_multicast_skb(struct sk_buff *skb) +static void kauditd_send_multicast_skb(struct sk_buff *skb, gfp_t gfp_mask)  {  	struct sk_buff		*copy;  	struct audit_net	*aunet = net_generic(&init_net, audit_net_id); @@ -448,11 +448,11 @@ static void kauditd_send_multicast_skb(struct sk_buff *skb)  	 * no reason for new multicast clients to continue with this  	 * non-compliance.  	 */ -	copy = skb_copy(skb, GFP_KERNEL); +	copy = skb_copy(skb, gfp_mask);  	if (!copy)  		return; -	nlmsg_multicast(sock, copy, 0, AUDIT_NLGRP_READLOG, GFP_KERNEL); +	nlmsg_multicast(sock, copy, 0, AUDIT_NLGRP_READLOG, gfp_mask);  }  /* @@ -1100,7 +1100,7 @@ static void audit_receive(struct sk_buff  *skb)  }  /* Run custom bind function on netlink socket group connect or bind requests. */ -static int audit_bind(int group) +static int audit_bind(struct net *net, int group)  {  	if (!capable(CAP_AUDIT_READ))  		return -EPERM; @@ -1940,7 +1940,7 @@ void audit_log_end(struct audit_buffer *ab)  		struct nlmsghdr *nlh = nlmsg_hdr(ab->skb);  		nlh->nlmsg_len = ab->skb->len; -		kauditd_send_multicast_skb(ab->skb); +		kauditd_send_multicast_skb(ab->skb, ab->gfp_mask);  		/*  		 * The original kaudit unicast socket sends up messages with  | 
