Archive-only list for patches
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, David Howells <dhowells@redhat.com>,
	Marc Dionne <marc.dionne@auristor.com>,
	linux-afs@lists.infradead.org, Jakub Kicinski <kuba@kernel.org>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.12 331/337] rxrpc: Manage RTT per-call rather than per-peer
Date: Fri,  7 Aug 2026 16:38:54 +0200	[thread overview]
Message-ID: <20260807143425.717848644@linuxfoundation.org> (raw)
In-Reply-To: <20260807143418.516897842@linuxfoundation.org>

6.12-stable review patch.  If anyone has any objections, please let me know.

------------------

From: David Howells <dhowells@redhat.com>

[ Upstream commit b40ef2b85a7d117dd323b5910e504899e0a3e7dc ]

Manage the determination of RTT on a per-call (ie. per-RPC op) basis rather
than on a per-peer basis, averaging across all calls going to that peer.
The problem is that the RTT measurements from the initial packets on a call
may be off because the server may do some setting up (such as getting a
lock on a file) before accepting the rest of the data in the RPC and,
further, the RTT may be affected by server-side file operations, for
instance if a large amount of data is being written or read.

Note: When handling the FS.StoreData-type RPCs, for example, the server
uses the userStatus field in the header of ACK packets as supplementary
flow control to aid in managing this.  AF_RXRPC does not yet support this,
but it should be added.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: Marc Dionne <marc.dionne@auristor.com>
cc: linux-afs@lists.infradead.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Stable-dep-of: e4d2878369d5 ("rxrpc: Fix irq-disabled in local_bh_enable()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 include/trace/events/rxrpc.h |    2 
 net/rxrpc/ar-internal.h      |   39 +++++++++---------
 net/rxrpc/call_event.c       |   18 ++++----
 net/rxrpc/call_object.c      |    2 
 net/rxrpc/input.c            |    8 +--
 net/rxrpc/output.c           |   14 +++---
 net/rxrpc/peer_object.c      |    8 ---
 net/rxrpc/proc.c             |    6 +-
 net/rxrpc/rtt.c              |   93 +++++++++++++++++++++----------------------
 net/rxrpc/sendmsg.c          |    2 
 10 files changed, 97 insertions(+), 95 deletions(-)

--- a/include/trace/events/rxrpc.h
+++ b/include/trace/events/rxrpc.h
@@ -1333,7 +1333,7 @@ TRACE_EVENT(rxrpc_rtt_rx,
 		    __entry->rtt = rtt;
 		    __entry->srtt = srtt;
 		    __entry->rto = rto;
-		    __entry->min_rtt = minmax_get(&call->peer->min_rtt)
+		    __entry->min_rtt = minmax_get(&call->min_rtt)
 			   ),
 
 	    TP_printk("c=%08x [%d] %s sr=%08x rr=%08x rtt=%u srtt=%u rto=%u min=%u",
--- a/net/rxrpc/ar-internal.h
+++ b/net/rxrpc/ar-internal.h
@@ -344,20 +344,9 @@ struct rxrpc_peer {
 	int			debug_id;	/* debug ID for printks */
 	struct sockaddr_rxrpc	srx;		/* remote address */
 
-	/* calculated RTT cache */
-#define RXRPC_RTT_CACHE_SIZE 32
-	spinlock_t		rtt_input_lock;	/* RTT lock for input routine */
-	ktime_t			rtt_last_req;	/* Time of last RTT request */
-	unsigned int		rtt_count;	/* Number of samples we've got */
-	unsigned int		rtt_taken;	/* Number of samples taken (wrapping) */
-	struct minmax		min_rtt;	/* Estimated minimum RTT */
-
-	u32			srtt_us;	/* smoothed round trip time << 3 in usecs */
-	u32			mdev_us;	/* medium deviation			*/
-	u32			mdev_max_us;	/* maximal mdev for the last rtt period	*/
-	u32			rttvar_us;	/* smoothed mdev_max			*/
-	u32			rto_us;		/* Retransmission timeout in usec */
-	u8			backoff;	/* Backoff timeout (as shift) */
+	/* Calculated RTT cache */
+	unsigned int		recent_srtt_us;
+	unsigned int		recent_rto_us;
 
 	u8			cong_ssthresh;	/* Congestion slow-start threshold */
 };
@@ -742,6 +731,18 @@ struct rxrpc_call {
 	rxrpc_seq_t		acks_hard_ack;	/* Latest hard-ack point */
 	rxrpc_seq_t		acks_lowest_nak; /* Lowest NACK in the buffer (or ==tx_hard_ack) */
 	rxrpc_serial_t		acks_highest_serial; /* Highest serial number ACK'd */
+
+	/* Calculated RTT cache */
+	ktime_t			rtt_last_req;	/* Time of last RTT request */
+	unsigned int		rtt_count;	/* Number of samples we've got */
+	unsigned int		rtt_taken;	/* Number of samples taken (wrapping) */
+	struct minmax		min_rtt;	/* Estimated minimum RTT */
+	u32			srtt_us;	/* smoothed round trip time << 3 in usecs */
+	u32			mdev_us;	/* medium deviation			*/
+	u32			mdev_max_us;	/* maximal mdev for the last rtt period	*/
+	u32			rttvar_us;	/* smoothed mdev_max			*/
+	u32			rto_us;		/* Retransmission timeout in usec */
+	u8			backoff;	/* Backoff timeout (as shift) */
 };
 
 /*
@@ -1222,10 +1223,12 @@ static inline int rxrpc_abort_eproto(str
 /*
  * rtt.c
  */
-void rxrpc_peer_add_rtt(struct rxrpc_call *, enum rxrpc_rtt_rx_trace, int,
-			rxrpc_serial_t, rxrpc_serial_t, ktime_t, ktime_t);
-ktime_t rxrpc_get_rto_backoff(struct rxrpc_peer *peer, bool retrans);
-void rxrpc_peer_init_rtt(struct rxrpc_peer *);
+void rxrpc_call_add_rtt(struct rxrpc_call *call, enum rxrpc_rtt_rx_trace why,
+			int rtt_slot,
+			rxrpc_serial_t send_serial, rxrpc_serial_t resp_serial,
+			ktime_t send_time, ktime_t resp_time);
+ktime_t rxrpc_get_rto_backoff(struct rxrpc_call *call, bool retrans);
+void rxrpc_call_init_rtt(struct rxrpc_call *call);
 
 /*
  * rxkad.c
--- a/net/rxrpc/call_event.c
+++ b/net/rxrpc/call_event.c
@@ -44,8 +44,8 @@ void rxrpc_propose_delay_ACK(struct rxrp
 
 	trace_rxrpc_propose_ack(call, why, RXRPC_ACK_DELAY, serial);
 
-	if (call->peer->srtt_us)
-		delay = (call->peer->srtt_us >> 3) * NSEC_PER_USEC;
+	if (call->srtt_us)
+		delay = (call->srtt_us >> 3) * NSEC_PER_USEC;
 	else
 		delay = ms_to_ktime(READ_ONCE(rxrpc_soft_ack_delay));
 	ktime_add_ms(delay, call->tx_backoff);
@@ -72,7 +72,7 @@ void rxrpc_resend(struct rxrpc_call *cal
 	struct rxrpc_txbuf *txb;
 	rxrpc_seq_t transmitted = call->tx_transmitted;
 	ktime_t next_resend = KTIME_MAX;
-	ktime_t rto = rxrpc_get_rto_backoff(call->peer, false);
+	ktime_t rto = rxrpc_get_rto_backoff(call, false);
 	ktime_t resend_at = KTIME_MAX, now, delay;
 	bool unacked = false, did_send = false;
 	unsigned int i;
@@ -174,7 +174,7 @@ void rxrpc_resend(struct rxrpc_call *cal
 no_further_resend:
 no_resend:
 	if (resend_at < KTIME_MAX) {
-		delay = rxrpc_get_rto_backoff(call->peer, did_send);
+		delay = rxrpc_get_rto_backoff(call, did_send);
 		resend_at = ktime_add(resend_at, delay);
 		trace_rxrpc_timer_set(call, resend_at - now, rxrpc_timer_trace_resend_reset);
 	}
@@ -189,7 +189,7 @@ no_resend:
 	 */
 	if (!did_send) {
 		ktime_t next_ping = ktime_add_us(call->acks_latest_ts,
-						 call->peer->srtt_us >> 3);
+						 call->srtt_us >> 3);
 
 		if (ktime_sub(next_ping, now) <= 0)
 			rxrpc_send_ACK(call, RXRPC_ACK_PING, 0,
@@ -306,8 +306,8 @@ static void rxrpc_transmit_some_data(str
  */
 static void rxrpc_send_initial_ping(struct rxrpc_call *call)
 {
-	if (call->peer->rtt_count < 3 ||
-	    ktime_before(ktime_add_ms(call->peer->rtt_last_req, 1000),
+	if (call->rtt_count < 3 ||
+	    ktime_before(ktime_add_ms(call->rtt_last_req, 1000),
 			 ktime_get_real()))
 		rxrpc_send_ACK(call, RXRPC_ACK_PING, 0,
 			       rxrpc_propose_ack_ping_for_params);
@@ -438,10 +438,10 @@ bool rxrpc_input_call_event(struct rxrpc
 			       rxrpc_propose_ack_rx_idle);
 
 	if (call->ackr_nr_unacked > 2) {
-		if (call->peer->rtt_count < 3)
+		if (call->rtt_count < 3)
 			rxrpc_send_ACK(call, RXRPC_ACK_PING, 0,
 				       rxrpc_propose_ack_ping_for_rtt);
-		else if (ktime_before(ktime_add_ms(call->peer->rtt_last_req, 1000),
+		else if (ktime_before(ktime_add_ms(call->rtt_last_req, 1000),
 				      ktime_get_real()))
 			rxrpc_send_ACK(call, RXRPC_ACK_PING, 0,
 				       rxrpc_propose_ack_ping_for_old_rtt);
--- a/net/rxrpc/call_object.c
+++ b/net/rxrpc/call_object.c
@@ -178,6 +178,8 @@ struct rxrpc_call *rxrpc_alloc_call(stru
 	call->cong_cwnd = RXRPC_MIN_CWND;
 	call->cong_ssthresh = RXRPC_TX_MAX_WINDOW;
 
+	rxrpc_call_init_rtt(call);
+
 	call->rxnet = rxnet;
 	call->rtt_avail = RXRPC_CALL_RTT_AVAIL_MASK;
 	atomic_inc(&rxnet->nr_calls);
--- a/net/rxrpc/input.c
+++ b/net/rxrpc/input.c
@@ -83,11 +83,11 @@ static void rxrpc_congestion_management(
 		/* We analyse the number of packets that get ACK'd per RTT
 		 * period and increase the window if we managed to fill it.
 		 */
-		if (call->peer->rtt_count == 0)
+		if (call->rtt_count == 0)
 			goto out;
 		if (ktime_before(skb->tstamp,
 				 ktime_add_us(call->cong_tstamp,
-					      call->peer->srtt_us >> 3)))
+					      call->srtt_us >> 3)))
 			goto out_no_clear_ca;
 		change = rxrpc_cong_rtt_window_end;
 		call->cong_tstamp = skb->tstamp;
@@ -197,7 +197,7 @@ void rxrpc_congestion_degrade(struct rxr
 	if (__rxrpc_call_state(call) == RXRPC_CALL_CLIENT_AWAIT_REPLY)
 		return;
 
-	rtt = ns_to_ktime(call->peer->srtt_us * (1000 / 8));
+	rtt = ns_to_ktime(call->srtt_us * (NSEC_PER_USEC / 8));
 	now = ktime_get_real();
 	if (!ktime_before(ktime_add(call->tx_last_sent, rtt), now))
 		return;
@@ -664,7 +664,7 @@ static void rxrpc_complete_rtt_probe(str
 			clear_bit(i + RXRPC_CALL_RTT_PEND_SHIFT, &call->rtt_avail);
 			smp_mb(); /* Read data before setting avail bit */
 			set_bit(i, &call->rtt_avail);
-			rxrpc_peer_add_rtt(call, type, i, acked_serial, ack_serial,
+			rxrpc_call_add_rtt(call, type, i, acked_serial, ack_serial,
 					   sent_at, resp_time);
 			matched = true;
 		}
--- a/net/rxrpc/output.c
+++ b/net/rxrpc/output.c
@@ -220,7 +220,7 @@ static void rxrpc_send_ack_packet(struct
 		if (ack->reason == RXRPC_ACK_PING)
 			rxrpc_begin_rtt_probe(call, txb->serial, now, rxrpc_rtt_tx_ping);
 		if (txb->flags & RXRPC_REQUEST_ACK)
-			call->peer->rtt_last_req = now;
+			call->rtt_last_req = now;
 		rxrpc_set_keepalive(call, now);
 	}
 	rxrpc_tx_backoff(call, ret);
@@ -358,9 +358,9 @@ static void rxrpc_prepare_data_subpacket
 		why = rxrpc_reqack_slow_start;
 	else if (call->tx_winsize <= 2)
 		why = rxrpc_reqack_small_txwin;
-	else if (call->peer->rtt_count < 3 && txb->seq & 1)
+	else if (call->rtt_count < 3)
 		why = rxrpc_reqack_more_rtt;
-	else if (ktime_before(ktime_add_ms(call->peer->rtt_last_req, 1000), ktime_get_real()))
+	else if (ktime_before(ktime_add_ms(call->rtt_last_req, 1000), ktime_get_real()))
 		why = rxrpc_reqack_old_rtt;
 	else
 		goto dont_set_request_ack;
@@ -407,9 +407,9 @@ static void rxrpc_tstamp_data_packets(st
 	if (ack_requested) {
 		rxrpc_begin_rtt_probe(call, txb->serial, now, rxrpc_rtt_tx_data);
 
-		call->peer->rtt_last_req = now;
-		if (call->peer->rtt_count > 1) {
-			ktime_t delay = rxrpc_get_rto_backoff(call->peer, false);
+		call->rtt_last_req = now;
+		if (call->rtt_count > 1) {
+			ktime_t delay = rxrpc_get_rto_backoff(call, false);
 
 			call->ack_lost_at = ktime_add(now, delay);
 			trace_rxrpc_timer_set(call, delay, rxrpc_timer_trace_lost_ack);
@@ -727,7 +727,7 @@ void rxrpc_transmit_one(struct rxrpc_cal
 			rxrpc_instant_resend(call, txb);
 		}
 	} else {
-		ktime_t delay = ns_to_ktime(call->peer->rto_us * NSEC_PER_USEC);
+		ktime_t delay = ns_to_ktime(call->rto_us * NSEC_PER_USEC);
 
 		call->resend_at = ktime_add(ktime_get_real(), delay);
 		trace_rxrpc_timer_set(call, delay, rxrpc_timer_trace_resend_tx);
--- a/net/rxrpc/peer_object.c
+++ b/net/rxrpc/peer_object.c
@@ -222,11 +222,8 @@ struct rxrpc_peer *rxrpc_alloc_peer(stru
 		peer->service_conns = RB_ROOT;
 		seqlock_init(&peer->service_conn_lock);
 		spin_lock_init(&peer->lock);
-		spin_lock_init(&peer->rtt_input_lock);
 		peer->debug_id = atomic_inc_return(&rxrpc_debug_id);
-
-		rxrpc_peer_init_rtt(peer);
-
+		peer->recent_srtt_us = UINT_MAX;
 		peer->cong_ssthresh = RXRPC_TX_MAX_WINDOW;
 		trace_rxrpc_peer(peer->debug_id, 1, why);
 	}
@@ -244,7 +241,6 @@ static void rxrpc_init_peer(struct rxrpc
 	peer->hash_key = hash_key;
 	rxrpc_assess_MTU_size(local, peer);
 	peer->mtu = peer->if_mtu;
-	peer->rtt_last_req = ktime_get_real();
 
 	switch (peer->srx.transport.family) {
 	case AF_INET:
@@ -480,7 +476,7 @@ EXPORT_SYMBOL(rxrpc_kernel_get_call_peer
  */
 unsigned int rxrpc_kernel_get_srtt(const struct rxrpc_peer *peer)
 {
-	return peer->rtt_count > 0 ? peer->srtt_us >> 3 : UINT_MAX;
+	return READ_ONCE(peer->recent_srtt_us);
 }
 EXPORT_SYMBOL(rxrpc_kernel_get_srtt);
 
--- a/net/rxrpc/proc.c
+++ b/net/rxrpc/proc.c
@@ -299,15 +299,15 @@ static int rxrpc_peer_seq_show(struct se
 	now = ktime_get_seconds();
 	seq_printf(seq,
 		   "UDP   %-47.47s %-47.47s %3u"
-		   " %3u %5u %6ds %8u %8u\n",
+		   " %3u %5u %6ds %8d %8d\n",
 		   lbuff,
 		   rbuff,
 		   refcount_read(&peer->ref),
 		   peer->cong_ssthresh,
 		   peer->mtu,
 		   (s32)now - (s32)READ_ONCE(peer->last_tx_at),
-		   peer->srtt_us >> 3,
-		   peer->rto_us);
+		   READ_ONCE(peer->recent_srtt_us),
+		   READ_ONCE(peer->recent_rto_us));
 
 	return 0;
 }
--- a/net/rxrpc/rtt.c
+++ b/net/rxrpc/rtt.c
@@ -12,17 +12,17 @@
 #include "ar-internal.h"
 
 #define RXRPC_RTO_MAX	(120 * USEC_PER_SEC)
-#define RXRPC_TIMEOUT_INIT ((unsigned int)(1 * MSEC_PER_SEC)) /* RFC6298 2.1 initial RTO value */
+#define RXRPC_TIMEOUT_INIT ((unsigned int)(1 * USEC_PER_SEC)) /* RFC6298 2.1 initial RTO value */
 #define rxrpc_jiffies32 ((u32)jiffies)		/* As rxrpc_jiffies32 */
 
-static u32 rxrpc_rto_min_us(struct rxrpc_peer *peer)
+static u32 rxrpc_rto_min_us(struct rxrpc_call *call)
 {
 	return 200;
 }
 
-static u32 __rxrpc_set_rto(const struct rxrpc_peer *peer)
+static u32 __rxrpc_set_rto(const struct rxrpc_call *call)
 {
-	return (peer->srtt_us >> 3) + peer->rttvar_us;
+	return (call->srtt_us >> 3) + call->rttvar_us;
 }
 
 static u32 rxrpc_bound_rto(u32 rto)
@@ -40,10 +40,10 @@ static u32 rxrpc_bound_rto(u32 rto)
  * To save cycles in the RFC 1323 implementation it was better to break
  * it up into three procedures. -- erics
  */
-static void rxrpc_rtt_estimator(struct rxrpc_peer *peer, long sample_rtt_us)
+static void rxrpc_rtt_estimator(struct rxrpc_call *call, long sample_rtt_us)
 {
 	long m = sample_rtt_us; /* RTT */
-	u32 srtt = peer->srtt_us;
+	u32 srtt = call->srtt_us;
 
 	/*	The following amusing code comes from Jacobson's
 	 *	article in SIGCOMM '88.  Note that rtt and mdev
@@ -66,7 +66,7 @@ static void rxrpc_rtt_estimator(struct r
 		srtt += m;		/* rtt = 7/8 rtt + 1/8 new */
 		if (m < 0) {
 			m = -m;		/* m is now abs(error) */
-			m -= (peer->mdev_us >> 2);   /* similar update on mdev */
+			m -= (call->mdev_us >> 2);   /* similar update on mdev */
 			/* This is similar to one of Eifel findings.
 			 * Eifel blocks mdev updates when rtt decreases.
 			 * This solution is a bit different: we use finer gain
@@ -78,31 +78,31 @@ static void rxrpc_rtt_estimator(struct r
 			if (m > 0)
 				m >>= 3;
 		} else {
-			m -= (peer->mdev_us >> 2);   /* similar update on mdev */
+			m -= (call->mdev_us >> 2);   /* similar update on mdev */
 		}
 
-		peer->mdev_us += m;		/* mdev = 3/4 mdev + 1/4 new */
-		if (peer->mdev_us > peer->mdev_max_us) {
-			peer->mdev_max_us = peer->mdev_us;
-			if (peer->mdev_max_us > peer->rttvar_us)
-				peer->rttvar_us = peer->mdev_max_us;
+		call->mdev_us += m;		/* mdev = 3/4 mdev + 1/4 new */
+		if (call->mdev_us > call->mdev_max_us) {
+			call->mdev_max_us = call->mdev_us;
+			if (call->mdev_max_us > call->rttvar_us)
+				call->rttvar_us = call->mdev_max_us;
 		}
 	} else {
 		/* no previous measure. */
 		srtt = m << 3;		/* take the measured time to be rtt */
-		peer->mdev_us = m << 1;	/* make sure rto = 3*rtt */
-		peer->rttvar_us = max(peer->mdev_us, rxrpc_rto_min_us(peer));
-		peer->mdev_max_us = peer->rttvar_us;
+		call->mdev_us = m << 1;	/* make sure rto = 3*rtt */
+		call->rttvar_us = umax(call->mdev_us, rxrpc_rto_min_us(call));
+		call->mdev_max_us = call->rttvar_us;
 	}
 
-	peer->srtt_us = max(1U, srtt);
+	call->srtt_us = umax(srtt, 1);
 }
 
 /*
  * Calculate rto without backoff.  This is the second half of Van Jacobson's
  * routine referred to above.
  */
-static void rxrpc_set_rto(struct rxrpc_peer *peer)
+static void rxrpc_set_rto(struct rxrpc_call *call)
 {
 	u32 rto;
 
@@ -113,7 +113,7 @@ static void rxrpc_set_rto(struct rxrpc_p
 	 *    is invisible. Actually, Linux-2.4 also generates erratic
 	 *    ACKs in some circumstances.
 	 */
-	rto = __rxrpc_set_rto(peer);
+	rto = __rxrpc_set_rto(call);
 
 	/* 2. Fixups made earlier cannot be right.
 	 *    If we do not estimate RTO correctly without them,
@@ -124,73 +124,73 @@ static void rxrpc_set_rto(struct rxrpc_p
 	/* NOTE: clamping at RXRPC_RTO_MIN is not required, current algo
 	 * guarantees that rto is higher.
 	 */
-	peer->rto_us = rxrpc_bound_rto(rto);
+	call->rto_us = rxrpc_bound_rto(rto);
 }
 
-static void rxrpc_update_rtt_min(struct rxrpc_peer *peer, ktime_t resp_time, long rtt_us)
+static void rxrpc_update_rtt_min(struct rxrpc_call *call, ktime_t resp_time, long rtt_us)
 {
 	/* Window size 5mins in approx usec (ipv4.sysctl_tcp_min_rtt_wlen) */
 	u32 wlen_us = 5ULL * NSEC_PER_SEC / 1024;
 
-	minmax_running_min(&peer->min_rtt, wlen_us, resp_time / 1024,
+	minmax_running_min(&call->min_rtt, wlen_us, resp_time / 1024,
 			   (u32)rtt_us ? : jiffies_to_usecs(1));
 }
 
-static void rxrpc_ack_update_rtt(struct rxrpc_peer *peer, ktime_t resp_time, long rtt_us)
+static void rxrpc_ack_update_rtt(struct rxrpc_call *call, ktime_t resp_time, long rtt_us)
 {
 	if (rtt_us < 0)
 		return;
 
 	/* Update RACK min RTT [RFC8985 6.1 Step 1]. */
-	rxrpc_update_rtt_min(peer, resp_time, rtt_us);
+	rxrpc_update_rtt_min(call, resp_time, rtt_us);
 
-	rxrpc_rtt_estimator(peer, rtt_us);
-	rxrpc_set_rto(peer);
+	rxrpc_rtt_estimator(call, rtt_us);
+	rxrpc_set_rto(call);
 
 	/* Only reset backoff on valid RTT measurement [RFC6298]. */
-	peer->backoff = 0;
+	call->backoff = 0;
 }
 
 /*
  * Add RTT information to cache.  This is called in softirq mode and has
- * exclusive access to the peer RTT data.
+ * exclusive access to the call RTT data.
  */
-void rxrpc_peer_add_rtt(struct rxrpc_call *call, enum rxrpc_rtt_rx_trace why,
+void rxrpc_call_add_rtt(struct rxrpc_call *call, enum rxrpc_rtt_rx_trace why,
 			int rtt_slot,
 			rxrpc_serial_t send_serial, rxrpc_serial_t resp_serial,
 			ktime_t send_time, ktime_t resp_time)
 {
-	struct rxrpc_peer *peer = call->peer;
 	s64 rtt_us;
 
 	rtt_us = ktime_to_us(ktime_sub(resp_time, send_time));
 	if (rtt_us < 0)
 		return;
 
-	spin_lock(&peer->rtt_input_lock);
-	rxrpc_ack_update_rtt(peer, resp_time, rtt_us);
-	if (peer->rtt_count < 3)
-		peer->rtt_count++;
-	peer->rtt_taken++;
-	spin_unlock(&peer->rtt_input_lock);
+	rxrpc_ack_update_rtt(call, resp_time, rtt_us);
+	if (call->rtt_count < 3)
+		call->rtt_count++;
+	call->rtt_taken++;
+
+	WRITE_ONCE(call->peer->recent_srtt_us, call->srtt_us / 8);
+	WRITE_ONCE(call->peer->recent_rto_us, call->rto_us);
 
 	trace_rxrpc_rtt_rx(call, why, rtt_slot, send_serial, resp_serial,
-			   rtt_us, peer->srtt_us, peer->rto_us);
+			   rtt_us, call->srtt_us, call->rto_us);
 }
 
 /*
  * Get the retransmission timeout to set in nanoseconds, backing it off each
  * time we retransmit.
  */
-ktime_t rxrpc_get_rto_backoff(struct rxrpc_peer *peer, bool retrans)
+ktime_t rxrpc_get_rto_backoff(struct rxrpc_call *call, bool retrans)
 {
 	u64 timo_us;
-	u32 backoff = READ_ONCE(peer->backoff);
+	u32 backoff = READ_ONCE(call->backoff);
 
-	timo_us = peer->rto_us;
+	timo_us = call->rto_us;
 	timo_us <<= backoff;
 	if (retrans && timo_us * 2 <= RXRPC_RTO_MAX)
-		WRITE_ONCE(peer->backoff, backoff + 1);
+		WRITE_ONCE(call->backoff, backoff + 1);
 
 	if (timo_us < 1)
 		timo_us = 1;
@@ -198,10 +198,11 @@ ktime_t rxrpc_get_rto_backoff(struct rxr
 	return ns_to_ktime(timo_us * NSEC_PER_USEC);
 }
 
-void rxrpc_peer_init_rtt(struct rxrpc_peer *peer)
+void rxrpc_call_init_rtt(struct rxrpc_call *call)
 {
-	peer->rto_us	= RXRPC_TIMEOUT_INIT;
-	peer->mdev_us	= RXRPC_TIMEOUT_INIT;
-	peer->backoff	= 0;
-	//minmax_reset(&peer->rtt_min, rxrpc_jiffies32, ~0U);
+	call->rtt_last_req = KTIME_MIN;
+	call->rto_us	= RXRPC_TIMEOUT_INIT;
+	call->mdev_us	= RXRPC_TIMEOUT_INIT;
+	call->backoff	= 0;
+	//minmax_reset(&call->rtt_min, rxrpc_jiffies32, ~0U);
 }
--- a/net/rxrpc/sendmsg.c
+++ b/net/rxrpc/sendmsg.c
@@ -133,7 +133,7 @@ static int rxrpc_wait_for_tx_window_wait
 	rxrpc_seq_t tx_start, tx_win;
 	signed long rtt, timeout;
 
-	rtt = READ_ONCE(call->peer->srtt_us) >> 3;
+	rtt = READ_ONCE(call->srtt_us) >> 3;
 	rtt = usecs_to_jiffies(rtt) * 2;
 	if (rtt < 2)
 		rtt = 2;



  parent reply	other threads:[~2026-08-07 14:57 UTC|newest]

Thread overview: 353+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-07 14:33 [PATCH 6.12 000/337] 6.12.103-rc1 review Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 002/337] um: Add os_set_pdeathsig helper function Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 003/337] um: Set parent death signal for winch thread/process Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 004/337] um: Use os_set_pdeathsig helper in " Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 005/337] um: Set parent-death signal for ubd io thread/process Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 006/337] um: Set parent-death signal for write_sigio thread/process Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 007/337] um: Set parent death signal for userspace process Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 008/337] kunit: tool: Terminate kernel under test on SIGINT Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 009/337] kunit: tool: skip stty when stdin is not a tty Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 010/337] um: Preserve errno within signal handler Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 011/337] netfilter: br_netfilter: Reallocate headroom if necessary in neigh_hh_bridge() Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 012/337] net: airoha: Fix register index for Tx-fwd counter configuration Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 013/337] net: mpls: initialize rtm_tos in mpls_getroute() Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 014/337] HID: logitech-dj: Standardise hid_report_enum variable nomenclature Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 015/337] HID: logitech-dj: Prevent REPORT_ID_DJ_SHORT related user initiated OOB write Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 016/337] HID: logitech-dj: fix wrong detection of bad DJ_SHORT output report Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 017/337] bpf: Reset register bounds before narrowing retval range in check_mem_access() Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 018/337] netconsole: avoid OOB reads, msg is not nul-terminated Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 019/337] thunderbolt: Prevent XDomain delayed work use-after-free on disconnect Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 020/337] pinctrl: qcom: Unconditionally mark gpio as wakeup enable Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 021/337] pinctrl: qcom: sc8280xp: Add missing wakeup entries for GPIO143/151 Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 022/337] dmaengine: sun6i-dma: Fix reclaim descriptors while terminating DMA Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 023/337] dmaengine: idxd: fix fdev setup failure cleanup in idxd_cdev_open() Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 024/337] gpio: sloppy-logic-analyzer: Fix memory leak in gpio_la_poll_probe() Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 025/337] ata: sata_mv: accept 1 or 2 resources in platform probe Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 026/337] ata: libahci_platform: support non-consecutive port numbers Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 027/337] ahci: Introduce ahci_ignore_port() helper Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 028/337] ata: ahci_ceva: fix error paths in ceva_ahci_platform_enable_resources() Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 029/337] ASoC: max98095: fix missing IS_ERR() before PTR_ERR() on mclk lookup Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 030/337] ASoC: max98090: " Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 031/337] of: reserved_mem: Add code to dynamically allocate reserved_mem array Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 032/337] of: reserved_mem: prevent OOB when too many dynamic regions are defined Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 033/337] btrfs: fix leaking BTRFS_FS_STATE_REMOUNTING flag Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 034/337] btrfs: zoned: fix deadlock between metadata writeback and transaction commit Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 035/337] phy-zynqmp: Postpone getting clock rate until actually needed Greg Kroah-Hartman
2026-08-07 14:33 ` [PATCH 6.12 036/337] phy: zynqmp: fix clock error handling in xpsgtr_phy_init() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 037/337] phy: zynqmp: fix runtime PM leak on probe allocation failure Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 038/337] netfilter: nf_conntrack_sip: widen NAT rewrite delta to s32 in sip_help_tcp() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 039/337] drm/mediatek: Check CRTC state before freeing Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 040/337] Drivers: hv: vmbus: Replace lockdep_hardirq_threaded() with lockdep annotation Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 041/337] KEYS: trusted: dcp: fix key_len validation and calc_blob_len() return type Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 042/337] keys: fix out-of-bounds read in keyring_get_key_chunk() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 043/337] keys: make keyring key-chunk byte order agree with keyring_diff_objects() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 044/337] assoc_array: trim the final shortcut word using the current chunk end Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 045/337] netfilter: nf_tables: make nft_object rhltable per table Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 046/337] netfilter: xt_hashlimit: validate hashtable supports XT_HASHLIMIT_RATE_MATCH Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 047/337] ipvs: fix the checksum validations Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 048/337] ipvs: fix places with wrong packet offsets Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 049/337] ipvs: do not mangle ICMP replies for non-first fragments Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 050/337] netfilter: nft_payload: fix mask build for partial field offload Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 051/337] rds: Fix inet6_addr_lst NULL dereference when IPv6 is disabled Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 052/337] rds: tcp: hold the RCU lock across ipv6_chk_addr() in rds_tcp_laddr_check() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 053/337] pinctrl-amd: Dont clear S4 wake bits at probe Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 054/337] scsi: libiscsi: Fix stale-data leak into the SCSI sense buffer Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 055/337] scsi: libiscsi_tcp: Bound SCSI Response data segment to the connection buffer Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 056/337] scsi: libsas: Fix HA resume deadlock and hisi_sas disk-wake race Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 057/337] smb: client: fix buffer leaks in SMB1 read and write Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 058/337] spi: spi-cadence: supports transmission with bits_per_word of 16 and 32 Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 059/337] spi: spi-cadence: Move TX FIFO full busy-wait into FIFO Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 060/337] hwmon: (nct6775-core) Fix number of temperature registers for NCT6116 Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 061/337] hwmon: (ina2xx) Add support for has_alerts configuration flag Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 062/337] hwmon: (ina2xx) Add support for INA260 Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 063/337] hwmon: (ina226) Add support for SY24655 Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 064/337] hwmon: (ina2xx) Make it easier to add more devices Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 065/337] hwmon: (ina2xx) Add support for INA234 Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 066/337] hwmon: (ina2xx) Shift INA234 shunt and current registers Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 067/337] hwmon: (ina2xx) Fix various overflow issues Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 068/337] hwmon: (ltc4282) Fix reading the minimum alarm voltage Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 069/337] hwmon: (sht3x) Fix unaligned accesses Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 070/337] hwmon: (lm90) Only report alarms if driver is ready Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 071/337] hwmon: (nzxt-smart2) DMA-align output buffer Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 072/337] net: do not send ICMP/NDISC Redirects when peer allocation fails Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 073/337] hwmon: (nct6775-core) Prevent access to unsupported weight registers Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 074/337] net: bridge: mrp: fix Option TLV length in MRP_Test frames Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 075/337] forcedeth: fix UAF of txrx_stats in nv_remove Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 076/337] hwmon: (adt7470) Fix fans stuck in manual mode on I2C errors Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 077/337] hwmon: (adt7470) Fix cache updated before hardware write on I2C error Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 078/337] hwmon: (adt7470) Fix busy-loop and I2C flooding in update thread Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 079/337] hwmon: (adt7470) Fix temperature alarm logic in hwmon_temp_read() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 080/337] hwmon: (adt7470) Fix swapped PWM3 and PWM4 auto mode masks Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 081/337] hwmon: (adt7470) Use cached PWM frequency value Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 082/337] hwmon: (adt7470) Fix divide-by-zero TOCTOU crash in fan speed read Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 083/337] hwmon: (adt7470) Fix PWM auto temp state array and bounds check Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 084/337] rtase: fix double free of multi-frag skb on DMA map failure Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 085/337] powerpc/boot: Fix simpleboot CPU node lookup check Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 086/337] powerpc/boot: Fix treeboot-currituck " Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 087/337] powerpc/boot: Fix treeboot-akebono " Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 088/337] net: udp_tunnel: fix memory leak in udp_tunnel_nic_unregister() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 089/337] wifi: mac80211: validate individual TWT params before driver setup Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 090/337] net: ethernet: mtk_eth_soc: support named IRQs Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 091/337] net: ethernet: mtk_eth_soc: add consts for irq index Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 092/337] net: ethernet: mtk_eth_soc: pass eth to mtk_handle_irq_rx in poll_controller Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 093/337] hwmon: (pmbus) Fix return value from pmbus_update_byte_data() Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 094/337] idpf: adjust TxQ ring count minimum Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 095/337] idpf: Fix mailbox IRQ name leak on request failure Greg Kroah-Hartman
2026-08-07 14:34 ` [PATCH 6.12 096/337] Bluetooth: ISO: clear iso_data always when detaching conn from hcon Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 097/337] Bluetooth: L2CAP: fix UAF in l2cap_le_connect_rsp Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 098/337] Bluetooth: ISO: fix timeout vs sync_timeout typo in check_bcast_qos Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 099/337] Bluetooth: ISO: validate sockaddr_iso first in iso_sock_rebind_bis() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 100/337] Bluetooth: ISO: fix leaking sk after socket release Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 101/337] Bluetooth: ISO: avoid deadlocks in iso_sock_timeout Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 102/337] Bluetooth: btintel: Validate length before parsing diagnostics TLV Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 103/337] Bluetooth: hci_sync: make hci_cmd_sync_run_once return -EEXIST if exists Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 104/337] Bluetooth: hci_conn: hold conn reference in abort_conn_sync() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 105/337] Bluetooth: hci_sync: fix hci_conn_del() use in hci_le_create_conn_sync Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 106/337] Bluetooth: hci_sync: remove unnecessary hci_conn_get in create_conn_sync Greg Kroah-Hartman
2026-08-08 17:08   ` Harshit Mogalapalli
2026-08-09 15:08     ` Sasha Levin
2026-08-07 14:35 ` [PATCH 6.12 107/337] net: phylink: put link_gpio if phylink_create fails Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 108/337] scsi: target: iblock: Fix wrong PR ops NULL check for PREEMPT/RELEASE Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 109/337] scsi: ufs: core: Cancel RTC work in active-active suspend Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 110/337] scsi: zfcp: Fix memory leak during adapter release by destroying gid_pn_req Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 111/337] scsi: target: Clear cmd_cnt when initial counter enrollment fails Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 112/337] net: sxgbe: free TX rings on RX allocation failure Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 113/337] net: sxgbe: check descriptor ring allocation failures Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 114/337] can: isotp: check register_netdevice_notifier() error in module init Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 115/337] tracing/mmiotrace: Reset dropped_count in mmio_reset_data() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 116/337] tracing: Remove TRACE_EVENT_FL_FILTERED logic Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 117/337] tracing/mmiotrace: Add NULL check for mmio_trace_array in logging functions Greg Kroah-Hartman
2026-08-08 17:23   ` Harshit Mogalapalli
2026-08-08 22:22     ` Steven Rostedt
2026-08-07 14:35 ` [PATCH 6.12 118/337] accel/qaic: use sizeof(*trans_hdr) for transaction length check Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 119/337] riscv: mm: Fix out-of-bounds page-table walk during memory hot-remove Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 120/337] net: dsa: mt7530: check bus->read() errors in the MDIO regmap backend Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 121/337] net: dsa: mt7530: error out on failed reads in MT7531 PHY polling Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 122/337] net: libwx: fix FDIR ATR queue mismatch for software VLAN packets Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 123/337] octeontx2-pf: Set correct sequence for carrier off and tx queue stop Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 124/337] sched/deadline: Use revised wakeup rule only for running dl_server Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 125/337] qede: sync udp_tunnel ports outside qede_lock in the recovery path Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 126/337] ksmbd: return success for deferred final close Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 127/337] ksmbd: fix use-after-free in __close_file_table_ids() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 128/337] rhashtable: clear stale iter->p on table restart Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 129/337] pinctrl: microchip-sgpio: add missing select REGMAP_MMIO Greg Kroah-Hartman
2026-08-08 17:33   ` Harshit Mogalapalli
2026-08-09 15:08     ` Sasha Levin
2026-08-07 14:35 ` [PATCH 6.12 130/337] pinctrl: devicetree: dont free uninitialized dev_name on error path Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 131/337] erofs: cap LZMA stream pool size Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 132/337] pinctrl: bm1880: add missing select GENERIC_PINCONF Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 133/337] fortify: Disable -Wstringop-overread in tests Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 134/337] mm: migrate_device: fix pte_pfn/pte_dirty called on non-present PTE Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 135/337] fs/proc/task_mmu: fix PAGEMAP_SCAN written state for PMD holes Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 136/337] mm/percpu-km: fix bitmap overflow and accounting in pcpu_create_chunk() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 137/337] mm/hugetlb: fix list corruption in allocate_file_region_entries() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 138/337] mm/vmstat: fold stranded per-cpu node stats when a node comes online Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 139/337] tracing/probes: Reject $arg0 in meta argument expansion Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 140/337] KVM: SVM: Update x2APIC MSR intercepts if AVIC is inhibited while L2 is active Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 141/337] KVM: s390: pci: Reject adapter interrupt forwarding if already enabled Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 142/337] KVM: s390: pci: Fix NULL dereference on AIBV allocation failure Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 143/337] KVM: s390: pci: Validate AIBV and AISB before pinning guest pages Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 144/337] sctp: validate Adaptation Indication parameter length Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 145/337] audit: fix potential integer overflow in audit_log_n_string() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 146/337] audit: fix potential use-after-free in audit_del_rule() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 147/337] Bluetooth: btusb: Fix short read errors in btusb_qca_send_vendor_req() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 148/337] Bluetooth: btmtk: Fix short read errors in btmtk_usb_uhw_reg_read() Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 149/337] Bluetooth: mgmt: fix pending command UAF in EIR updates Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 150/337] Bluetooth: mgmt: fix UAF in pair command cancellation Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 151/337] Bluetooth: hci_sync: Fix advertising data UAFs Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 152/337] Bluetooth: HIDP: reject frames without a transaction header Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 153/337] Bluetooth: HIDP: validate numbered report payloads Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 154/337] bpf: lwt: Fix dst reference leak on reroute failure Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 155/337] ALSA: 6fire: Fix UAF at error handling during probe Greg Kroah-Hartman
2026-08-07 14:35 ` [PATCH 6.12 156/337] ALSA: lx6464es: fix period byte count for 16-bit streams Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 157/337] ALSA: pcm: wake linked drain waiters on unlink Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 158/337] ALSA: seq: Fix division by zero in initialize_timer() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 159/337] ALSA: timer: Clear SNDRV_TIMER_IFLG_DEAD once the close completes Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 160/337] ALSA: ump: fix double free of out_cvts on rawmidi error Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 161/337] ASoC: tas2562: fix DVC coefficient write order Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 162/337] ASoC: tas2562: fix broken entries in the volume lookup table Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 163/337] ata: libata-eh: Increase STANDBY IMMEDIATE timeout Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 164/337] ata: libata-sata: fix ata_scsi_lpm_supported() iteration Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 165/337] ALSA: usb-audio: fix use-after-free in ump_to_endpoint() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 166/337] ALSA: usb-audio: fix stack info leak in RME Digiface status Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 167/337] ALSA: usb-audio: fix OOB write in snd_usbmidi_akai_output() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 168/337] ALSA: usb-audio: Fix DMA buffer out-of-bounds write when fill_max is set Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 169/337] ALSA: usb-audio: Clamp frame size in implicit-feedback mode Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 170/337] dmaengine: qcom: bam_dma: Fix command element mask field for BAM v1.6.0+ Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 171/337] e1000: fix memory leak in e1000_probe() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 172/337] igbvf: Fix leak in TX DMA error cleanup Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 173/337] ipvs: do not propagate one-packet flag to synced conns Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 174/337] net/smc: fix socket use-after-free during link group termination Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 175/337] netfilter: ipset: do not update comments from kernel-side hash adds Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 176/337] tipc: avoid use-after-free in poll trace queue dumps Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 177/337] wifi: mwifiex: use the subframe length when parsing A-MSDU TDLS frames Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 178/337] binfmt_misc: reject a flag character as the field delimiter Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 179/337] binfmt_misc: dont let an F entry pin its own instance Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 180/337] mm/page_reporting: use system_freezable_wq to fix UAF during suspend Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 181/337] mm: memcg: initialize *locked in memcg1_oom_prepare() stub Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 182/337] net: bridge: stop fast-leave after deleting a port group Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 183/337] net: ipv6: clear suppressed fib6 rule result Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 184/337] powerpc/ps3: Fix map failure path in dma_ioc0_map_pages() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 185/337] um: vector: fix use-after-free in vector_mmsg_rx() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 186/337] veth: convert frag_list skbs before running XDP Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 187/337] vxlan: re-fetch eth header after route_shortcircuit() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 188/337] vxlan: unclone skb head before modifying eth header in route_shortcircuit() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 189/337] vxlan: use neigh_ha_snapshot() " Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 190/337] vxlan: use pskb_network_may_pull() " Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 191/337] ublk: reset kernel-owned dev_info fields in ublk_ctrl_add_dev() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 192/337] tracing: Check return value of __register_event() in trace_module_add_events() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 193/337] tracing/filters: Fix false positive match in regex_match_full() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 194/337] spi: qcom-qspi: Correct max DMA length to avoid 64K boundary failure Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 195/337] selftests/mm: fix potential wild pointer access of getline due to missing init Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 196/337] selftests/clone3: fix " Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 197/337] scsi: scsi_debug: Fix REPORT ZONES alloc_len underflow OOB write Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 198/337] sctp: reject stale cookies with mismatched verification tags Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 199/337] sctp: prevent peer transport count overflow Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 200/337] hwmon: (npcm750-pwm-fan): stop fan timer on device detach Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 201/337] hwmon: (pmbus/core) notify on the hwmon device, not the i2c client Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 202/337] i2c: amd-mp2: Unregister callback on adapter add failure Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 203/337] gpio: pca953x: fix cache_only and IRQ state on restore_context() failure Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 204/337] cpufreq: powernow-k8: Fix possible memory leak in powernowk8_cpu_init() Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 205/337] cpufreq: schedutil: Publish util hooks only after all sg_cpu are initialized Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 206/337] power: supply: bq25890: fix the -10 C NTC lookup entry Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 207/337] power: supply: max17040: handle missing status supplier Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 208/337] s390/pci: Fix s390_pci_mmio_write syscall error return without MIO Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 209/337] s390/qeth: Check CAP_NET_ADMIN for private ioctls Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 210/337] s390/dasd: Fix potential NULL pointer dereference Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 211/337] s390/dasd: Fix undersized format-check buffer Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 212/337] s390/zcrypt: Fix wrong domain value verification with EP11 CPRBs Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 213/337] s390/zcrypt: Validate length for CCA AES cipher key requests Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 214/337] s390/zcrypt: Validate length for CCA ECC private " Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 215/337] phy: zynqmp: fix L0_TM_DISABLE_SCRAMBLE_ENCODER mask Greg Kroah-Hartman
2026-08-07 14:36 ` [PATCH 6.12 216/337] phy: zynqmp: use read-modify-write for SERDES scrambler bypass Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 217/337] phy: zynqmp: keep SERDES scrambler and 8b/10b enabled for USB Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 218/337] net: openvswitch: fix potential UAF on meter attach failure Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 219/337] net: openvswitch: fix skb leak on flow key update failure during recirculation Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 220/337] net: openvswitch: fix skb leak on flow key update failure during ct Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 221/337] ice: wait for reset completion in ice_resume() Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 222/337] ice: fix memory leak in ice_lbtest_prepare_rings() Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 223/337] i2c: jz4780: Cache host clock rate at probe to prevent CCF prepare_lock deadlock Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 224/337] i2c: iproc: reset bus after timeout if START_BUSY is stuck Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 225/337] i2c: imx: Fix slave registration race and error handling Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 226/337] i2c: imx: Cancel hrtimer before clearing slave pointer Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 227/337] can: c_can: c_can_chip_config(): keep controller in init mode until bittiming is configured Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 228/337] can: ems_usb: validate CPC message lengths Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 229/337] can: etas_es58x: es58x_read_bulk_callback(): fix RX buffer leak on URB resubmit failure Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 230/337] can: gs_usb: gs_usb_receive_bulk_callback(): resubmit URB on skb allocation failure Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 231/337] can: j1939: transport: j1939_session_fresh_new(): initialize receive buffer Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 232/337] can: j1939: use netdevice_tracker for j1939_{priv,session,ecu} tracking Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 233/337] can: kvaser_usb: kvaser_usb_hydra_get_busparams(): fix memory leak in kvaser_usb_hydra_get_busparams() Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 234/337] can: kvaser_usb_leaf: kvaser_usb_leaf_wait_cmd(): validate received command extents Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 235/337] can: softing: fw_parse(): validate firmware record spans Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 236/337] can: peak_usb: add bounds check for USB channel index Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 237/337] can: peak_usb: peak_usb_start(): fix double free of transfer buffer on URB submit error Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 238/337] can: peak_usb: validate uCAN receive record lengths Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 239/337] can: ctucanfd: add missing MODULE_DEVICE_TABLE() Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 240/337] can: ctucanfd: use self-test mode for PRESUME_ACK Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 241/337] can: ctucanfd: unmap BAR0 using base address Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 242/337] can: ctucanfd: handle bus error interrupts Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 243/337] can: ctucanfd: mark error-active controller status valid Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 244/337] drm/dp: Read the PCON max FRL bandwidth only for HDMI DFPs Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 245/337] drm/vc4: Supply the overflow slot size in BPOS, not the whole bin BO size Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 246/337] drm/vc4: Zero the tile state data array before each BIN job Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 247/337] drm/panthor: reject firmware sections with oversized data Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 248/337] drm/panthor: validate firmware interface structure sizes Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 249/337] drm/mediatek: ovl_adaptor: balance component registrations Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 250/337] drm/amdgpu: restore UMD profile pstate after runtime resume Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 251/337] drm/amdgpu: cap GTT size to physical RAM on APUs Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 252/337] drm/amd/display: Increase HDMI AV mute wait from 2 to 3 frames Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 253/337] drm/amd/display: use proper context for logging Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 254/337] drm/amdkfd: Fix missing authorization check in KFD_IOC_DBG_TRAP_DISABLE Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 255/337] drm/amdkfd: fix QID bit leak in pqm_create_queue() Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 256/337] drm/amdkfd: fix uint32_t overflow in EOP ring buffer size alignment Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 257/337] drm/amdkfd: Handle invalid event type in CRIU event restore Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 258/337] drm/amdkfd: hold event_mutex while checkpointing CRIU events Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 259/337] drm/vmwgfx: fix guest_memory_dirty bitfield clobbered as size Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 260/337] drm/vmwgfx: reject DX_BIND_QUERY without a DX context Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 261/337] drm/vmwgfx: drop dma_buf reference on foreign-fd prime import Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 262/337] drm/vmwgfx: validate DRAW_PRIMITIVES header size before division Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 263/337] drm/vmwgfx: bound DMA command body size against suffix pointer Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 264/337] drm/vmwgfx: avoid destroy_workqueue(NULL) on vkms init failure Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 265/337] drm/vmwgfx: use check_add_overflow for shader size+offset bound Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 266/337] drm/vmwgfx: validate external BO copy bounds for both stride paths Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 267/337] spi: spi-cadence: enable SPI_CONTROLLER_MUST_TX Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 268/337] HID: logitech-dj: Fix maxfield check in DJ short report validation Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 269/337] ata: libahci_platform: Do not set mask_port_map when not needed Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 270/337] ata: ahci: Make ahci_ignore_port() handle empty mask_port_map Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 271/337] of: reserved_mem: avoid post-init UAF when alloc_reserved_mem_array() fails Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 272/337] Bluetooth: ISO: fix CONNECTED -> CLOSED transition on shutdown/release Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 273/337] drm/xe/rtp: Refactor OAG MMIO trigger register whitelisting Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 274/337] drm/xe: Introduce xe_gt_dbg_printer() Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 275/337] drm/xe: Apply whitelist to engine save-restore Greg Kroah-Hartman
2026-08-07 14:37 ` [PATCH 6.12 276/337] drm/xe/rtp: Add RING_FORCE_TO_NONPRIV_DENY to OA whitelists Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 277/337] drm/xe/rtp: Maintain OA whitelists separately Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 278/337] drm/xe/rtp: Keep track of non-OA nonpriv slots Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 279/337] drm/xe/rtp: Generalize whitelist_apply_to_hwe Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 280/337] drm/xe/rtp: Save OA nonpriv registers to register save/restore lists Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 281/337] drm/xe/rtp: Toggle deny bit to (de-)whitelist OA regs Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 282/337] drm/xe/rtp: (De-)whitelist OA registers for all hwes for a gt Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 283/337] drm/xe/oa: (De-)whitelist OA registers on OA stream open/release Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 284/337] drm/xe/rtp: Ensure locking/ref counting for OA whitelists Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 285/337] mm/hugetlb: fix swap entry corruption when clearing uffd-wp at fork() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 286/337] fs/proc/task_mmu: fix PAGEMAP_SCAN written state for unpopulated ptes Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 287/337] mm/huge_memory: unlock i_mmap_rwsem before releasing after-split folios Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 288/337] lib/alloc_tag: introduce mem_alloc_profiling_permanently_disabled() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 289/337] mm/slab: prevent unbounded recursion in free path with new kmalloc type Greg Kroah-Hartman
2026-08-07 18:02   ` Nathan Chancellor
2026-08-08 11:10     ` Sasha Levin
2026-08-07 14:38 ` [PATCH 6.12 290/337] gpio: pch: use raw_spinlock_t for the register lock Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 291/337] usb: gadget: f_tcm: synchronize delayed set_alt with teardown Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 292/337] usb: typec: ucsi: split connector lock classes Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 293/337] usb: typec: ucsi: Fix race condition and ordering in port unregistration Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 294/337] media: i2c: imx219: Rename VTS to FRM_LENGTH Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 295/337] media: imx219: Fix maximum frame length in lines Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 296/337] media: chips-media: wave5: Support CBP profile Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 297/337] media: uapi: rkisp: Correct name version enum Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 298/337] wifi: brcmfmac: drain bus_reset work on device removal Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 299/337] wifi: ath6kl: fix use-after-free in aggr_reset_state() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 300/337] wifi: brcmfmac: fix 43752 SDIO FWVID incorrectly labelled as Cypress (CYW) Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 301/337] wifi: brcmfmac: set F2 blocksize to 256 for BCM43752 Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 302/337] ALSA: hda: codecs: hdmi: disable keep-alive before audio format change Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 303/337] mptcp: pm: avoid code duplication to lookup endp Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 304/337] mptcp: add mptcp_userspace_pm_lookup_addr helper Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 305/337] mptcp: pm: use addr entry for get_local_id Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 306/337] mptcp: pm: userspace: fix use-after-free in get_local_id Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 307/337] kmemleak: iommu/iova: fix transient kmemleak false positive Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 308/337] mm/kmemleak: fix checksum computation for per-cpu objects Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 309/337] drm/amdgpu: Respect placement requirements in amdgpu_gtt_mgr functions Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 310/337] drm/amdgpu: Fix context pstate override handling Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 311/337] drm/sched: Store the drm client_id in drm_sched_fence Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 312/337] drm/amdgpu: give each kernel job a unique id Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 313/337] drm/amdgpu/gfx: fix cleaner shader IB buffer overflow Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 314/337] drm/fb-helper: Allocate and release fb_info in single place Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 315/337] drm/tegra: fbdev: Remove offset into framebuffer memory Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 316/337] drm/exec: Remove the index parameter from drm_exec_for_each_locked_obj[_reverse] Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 317/337] drm/xe: Wait on external BO kernel fences in exec IOCTL Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 318/337] drm/i915/vrr: Check HAS_VRR() first in intel_vrr_is_capable() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 319/337] drm/i915/vrr: require valid min/max vfreq for VRR Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 320/337] drm/xe: Rename ___xe_bo_create_locked() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 321/337] drm/xe: Hold a dma-buf reference for imported BOs Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 322/337] drm/i915/hdcp: Move to using intel_display in intel_hdcp Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 323/337] drm/i915/hdcp: require monotonically increasing seq_num_v Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 324/337] drm/i915/hdcp: Skip inactive MST connectors when building stream list Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 325/337] drm/i915/hdcp: check streams[] bounds before overflow Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 326/337] drm/xe: Stub out new pagefault layer Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 327/337] drm/xe/pt: Reset current_op in xe_pt_update_ops_init() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 328/337] rxrpc: Generate rtt_min Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 329/337] rxrpc: Adjust the rxrpc_rtt_rx tracepoint Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 330/337] rxrpc: Fix the calculation and use of RTO Greg Kroah-Hartman
2026-08-07 14:38 ` Greg Kroah-Hartman [this message]
2026-08-07 14:38 ` [PATCH 6.12 332/337] rxrpc: Fix irq-disabled in local_bh_enable() Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 333/337] can: use skb hash instead of private variable in headroom Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 334/337] can: isotp: fix timer drain order, wakeup handling and tx_gen ordering Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 335/337] usb: typec: ucsi: Correct teardown ordering in ucsi_init() error path Greg Kroah-Hartman
2026-08-07 14:38 ` [PATCH 6.12 336/337] drm/fb-helper: Fix a locking bug in an " Greg Kroah-Hartman
2026-08-07 14:39 ` [PATCH 6.12 337/337] drm/tegra: fbdev: Do not assign to struct drm_fb_helper.info Greg Kroah-Hartman
2026-08-07 18:32 ` [PATCH 6.12 000/337] 6.12.103-rc1 review Pavel Machek
2026-08-08  0:34 ` Shuah Khan
2026-08-08  2:36 ` Peter Schneider
2026-08-08 10:22 ` Brett A C Sheffield
2026-08-08 20:39 ` Harshit Mogalapalli
2026-08-08 22:52 ` Ron Economos
2026-08-09  8:28 ` Miguel Ojeda
2026-08-09 11:55 ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260807143425.717848644@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=dhowells@redhat.com \
    --cc=kuba@kernel.org \
    --cc=linux-afs@lists.infradead.org \
    --cc=marc.dionne@auristor.com \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox