Merge 4.15-rc6 into char-misc-next
We want the fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
@@ -134,12 +134,12 @@ DECLARE_EVENT_CLASS(clk_parent,
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__string( name, core->name )
|
||||
__string( pname, parent->name )
|
||||
__string( pname, parent ? parent->name : "none" )
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__assign_str(name, core->name);
|
||||
__assign_str(pname, parent->name);
|
||||
__assign_str(pname, parent ? parent->name : "none");
|
||||
),
|
||||
|
||||
TP_printk("%s %s", __get_str(name), __get_str(pname))
|
||||
|
@@ -211,7 +211,7 @@ TRACE_EVENT(kvm_ack_irq,
|
||||
{ KVM_TRACE_MMIO_WRITE, "write" }
|
||||
|
||||
TRACE_EVENT(kvm_mmio,
|
||||
TP_PROTO(int type, int len, u64 gpa, u64 val),
|
||||
TP_PROTO(int type, int len, u64 gpa, void *val),
|
||||
TP_ARGS(type, len, gpa, val),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
@@ -225,7 +225,10 @@ TRACE_EVENT(kvm_mmio,
|
||||
__entry->type = type;
|
||||
__entry->len = len;
|
||||
__entry->gpa = gpa;
|
||||
__entry->val = val;
|
||||
__entry->val = 0;
|
||||
if (val)
|
||||
memcpy(&__entry->val, val,
|
||||
min_t(u32, sizeof(__entry->val), len));
|
||||
),
|
||||
|
||||
TP_printk("mmio %s len %u gpa 0x%llx val 0x%llx",
|
||||
|
@@ -56,15 +56,18 @@ DEFINE_EVENT(preemptirq_template, preempt_enable,
|
||||
|
||||
#include <trace/define_trace.h>
|
||||
|
||||
#else /* !CONFIG_PREEMPTIRQ_EVENTS */
|
||||
#endif /* !CONFIG_PREEMPTIRQ_EVENTS */
|
||||
|
||||
#if !defined(CONFIG_PREEMPTIRQ_EVENTS) || defined(CONFIG_PROVE_LOCKING)
|
||||
#define trace_irq_enable(...)
|
||||
#define trace_irq_disable(...)
|
||||
#define trace_preempt_enable(...)
|
||||
#define trace_preempt_disable(...)
|
||||
#define trace_irq_enable_rcuidle(...)
|
||||
#define trace_irq_disable_rcuidle(...)
|
||||
#endif
|
||||
|
||||
#if !defined(CONFIG_PREEMPTIRQ_EVENTS) || !defined(CONFIG_DEBUG_PREEMPT)
|
||||
#define trace_preempt_enable(...)
|
||||
#define trace_preempt_disable(...)
|
||||
#define trace_preempt_enable_rcuidle(...)
|
||||
#define trace_preempt_disable_rcuidle(...)
|
||||
|
||||
#endif
|
||||
|
@@ -25,6 +25,35 @@
|
||||
tcp_state_name(TCP_CLOSING), \
|
||||
tcp_state_name(TCP_NEW_SYN_RECV))
|
||||
|
||||
#define TP_STORE_V4MAPPED(__entry, saddr, daddr) \
|
||||
do { \
|
||||
struct in6_addr *pin6; \
|
||||
\
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6; \
|
||||
ipv6_addr_set_v4mapped(saddr, pin6); \
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6; \
|
||||
ipv6_addr_set_v4mapped(daddr, pin6); \
|
||||
} while (0)
|
||||
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
#define TP_STORE_ADDRS(__entry, saddr, daddr, saddr6, daddr6) \
|
||||
do { \
|
||||
if (sk->sk_family == AF_INET6) { \
|
||||
struct in6_addr *pin6; \
|
||||
\
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6; \
|
||||
*pin6 = saddr6; \
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6; \
|
||||
*pin6 = daddr6; \
|
||||
} else { \
|
||||
TP_STORE_V4MAPPED(__entry, saddr, daddr); \
|
||||
} \
|
||||
} while (0)
|
||||
#else
|
||||
#define TP_STORE_ADDRS(__entry, saddr, daddr, saddr6, daddr6) \
|
||||
TP_STORE_V4MAPPED(__entry, saddr, daddr)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* tcp event with arguments sk and skb
|
||||
*
|
||||
@@ -50,7 +79,6 @@ DECLARE_EVENT_CLASS(tcp_event_sk_skb,
|
||||
|
||||
TP_fast_assign(
|
||||
struct inet_sock *inet = inet_sk(sk);
|
||||
struct in6_addr *pin6;
|
||||
__be32 *p32;
|
||||
|
||||
__entry->skbaddr = skb;
|
||||
@@ -65,20 +93,8 @@ DECLARE_EVENT_CLASS(tcp_event_sk_skb,
|
||||
p32 = (__be32 *) __entry->daddr;
|
||||
*p32 = inet->inet_daddr;
|
||||
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
if (sk->sk_family == AF_INET6) {
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
*pin6 = sk->sk_v6_rcv_saddr;
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
*pin6 = sk->sk_v6_daddr;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
ipv6_addr_set_v4mapped(inet->inet_saddr, pin6);
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
ipv6_addr_set_v4mapped(inet->inet_daddr, pin6);
|
||||
}
|
||||
TP_STORE_ADDRS(__entry, inet->inet_saddr, inet->inet_daddr,
|
||||
sk->sk_v6_rcv_saddr, sk->sk_v6_daddr);
|
||||
),
|
||||
|
||||
TP_printk("sport=%hu dport=%hu saddr=%pI4 daddr=%pI4 saddrv6=%pI6c daddrv6=%pI6c",
|
||||
@@ -127,7 +143,6 @@ DECLARE_EVENT_CLASS(tcp_event_sk,
|
||||
|
||||
TP_fast_assign(
|
||||
struct inet_sock *inet = inet_sk(sk);
|
||||
struct in6_addr *pin6;
|
||||
__be32 *p32;
|
||||
|
||||
__entry->skaddr = sk;
|
||||
@@ -141,20 +156,8 @@ DECLARE_EVENT_CLASS(tcp_event_sk,
|
||||
p32 = (__be32 *) __entry->daddr;
|
||||
*p32 = inet->inet_daddr;
|
||||
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
if (sk->sk_family == AF_INET6) {
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
*pin6 = sk->sk_v6_rcv_saddr;
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
*pin6 = sk->sk_v6_daddr;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
ipv6_addr_set_v4mapped(inet->inet_saddr, pin6);
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
ipv6_addr_set_v4mapped(inet->inet_daddr, pin6);
|
||||
}
|
||||
TP_STORE_ADDRS(__entry, inet->inet_saddr, inet->inet_daddr,
|
||||
sk->sk_v6_rcv_saddr, sk->sk_v6_daddr);
|
||||
),
|
||||
|
||||
TP_printk("sport=%hu dport=%hu saddr=%pI4 daddr=%pI4 saddrv6=%pI6c daddrv6=%pI6c",
|
||||
@@ -197,7 +200,6 @@ TRACE_EVENT(tcp_set_state,
|
||||
|
||||
TP_fast_assign(
|
||||
struct inet_sock *inet = inet_sk(sk);
|
||||
struct in6_addr *pin6;
|
||||
__be32 *p32;
|
||||
|
||||
__entry->skaddr = sk;
|
||||
@@ -213,20 +215,8 @@ TRACE_EVENT(tcp_set_state,
|
||||
p32 = (__be32 *) __entry->daddr;
|
||||
*p32 = inet->inet_daddr;
|
||||
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
if (sk->sk_family == AF_INET6) {
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
*pin6 = sk->sk_v6_rcv_saddr;
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
*pin6 = sk->sk_v6_daddr;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
ipv6_addr_set_v4mapped(inet->inet_saddr, pin6);
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
ipv6_addr_set_v4mapped(inet->inet_daddr, pin6);
|
||||
}
|
||||
TP_STORE_ADDRS(__entry, inet->inet_saddr, inet->inet_daddr,
|
||||
sk->sk_v6_rcv_saddr, sk->sk_v6_daddr);
|
||||
),
|
||||
|
||||
TP_printk("sport=%hu dport=%hu saddr=%pI4 daddr=%pI4 saddrv6=%pI6c daddrv6=%pI6c oldstate=%s newstate=%s",
|
||||
@@ -256,7 +246,6 @@ TRACE_EVENT(tcp_retransmit_synack,
|
||||
|
||||
TP_fast_assign(
|
||||
struct inet_request_sock *ireq = inet_rsk(req);
|
||||
struct in6_addr *pin6;
|
||||
__be32 *p32;
|
||||
|
||||
__entry->skaddr = sk;
|
||||
@@ -271,20 +260,8 @@ TRACE_EVENT(tcp_retransmit_synack,
|
||||
p32 = (__be32 *) __entry->daddr;
|
||||
*p32 = ireq->ir_rmt_addr;
|
||||
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
if (sk->sk_family == AF_INET6) {
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
*pin6 = ireq->ir_v6_loc_addr;
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
*pin6 = ireq->ir_v6_rmt_addr;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
pin6 = (struct in6_addr *)__entry->saddr_v6;
|
||||
ipv6_addr_set_v4mapped(ireq->ir_loc_addr, pin6);
|
||||
pin6 = (struct in6_addr *)__entry->daddr_v6;
|
||||
ipv6_addr_set_v4mapped(ireq->ir_rmt_addr, pin6);
|
||||
}
|
||||
TP_STORE_ADDRS(__entry, ireq->ir_loc_addr, ireq->ir_rmt_addr,
|
||||
ireq->ir_v6_loc_addr, ireq->ir_v6_rmt_addr);
|
||||
),
|
||||
|
||||
TP_printk("sport=%hu dport=%hu saddr=%pI4 daddr=%pI4 saddrv6=%pI6c daddrv6=%pI6c",
|
||||
|
Reference in New Issue
Block a user