<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in peer_object.c</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>40e8b52f - afs: Use the per-peer app data provided by rxrpc</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#40e8b52f</link>
        <description>afs: Use the per-peer app data provided by rxrpcMake use of the per-peer application data that rxrpc now allows theapplication to store on the rxrpc_peer struct to hold a back pointer to theafs_server record that peer represents an endpoint for.Then, when a call comes in to the AFS cache manager, this can be used tomap it to the correct server record rather than having to use aUUID-to-server mapping table and having to do an additional lookup.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgcc: linux-fsdevel@vger.kernel.orgLink: https://lore.kernel.org/r/20250224234154.2014840-14-dhowells@redhat.com/ # v1Link: https://lore.kernel.org/r/20250310094206.801057-10-dhowells@redhat.com/ # v4

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 23 Jan 2025 11:01:55 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>f3a123b2 - rxrpc: Allow the app to store private data on peer structs</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#f3a123b2</link>
        <description>rxrpc: Allow the app to store private data on peer structsProvide a way for the application (e.g. the afs filesystem) to storeprivate data on the rxrpc_peer structs for later retrieval via the callobject.This will allow afs to store a pointer to the afs_server object on therxrpc_peer struct, thereby obviating the need for afs to keep lookup tablesby which it can associate an incoming call with server that transmitted it.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: Jakub Kicinski &lt;kuba@kernel.org&gt;cc: &quot;David S. Miller&quot; &lt;davem@davemloft.net&gt;cc: Eric Dumazet &lt;edumazet@google.com&gt;cc: Paolo Abeni &lt;pabeni@redhat.com&gt;cc: Simon Horman &lt;horms@kernel.org&gt;cc: linux-afs@lists.infradead.orgcc: linux-fsdevel@vger.kernel.orgcc: netdev@vger.kernel.orgLink: https://lore.kernel.org/r/20250224234154.2014840-13-dhowells@redhat.com/ # v1Link: https://lore.kernel.org/r/20250310094206.801057-9-dhowells@redhat.com/ # v4

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 23 Jan 2025 09:00:33 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>71f54091 - rxrpc: Fix locking issues with the peer record hash</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#71f54091</link>
        <description>rxrpc: Fix locking issues with the peer record hashrxrpc_new_incoming_peer() can&apos;t use spin_lock_bh() whilst its caller hasinterrupts disabled.    WARNING: CPU: 0 PID: 1550 at kernel/softirq.c:369 __local_bh_enable_ip+0x46/0xd0    ...    Call Trace:     rxrpc_alloc_incoming_call+0x1b0/0x400     rxrpc_new_incoming_call+0x1dd/0x5e0     rxrpc_input_packet+0x84a/0x920     rxrpc_io_thread+0x40d/0xb40     kthread+0x2ec/0x300     ret_from_fork+0x24/0x40     ret_from_fork_asm+0x1a/0x30     &lt;/TASK&gt;    irq event stamp: 1811    hardirqs last  enabled at (1809): _raw_spin_unlock_irq+0x24/0x50    hardirqs last disabled at (1810): _raw_read_lock_irq+0x17/0x70    softirqs last  enabled at (1182): handle_softirqs+0x3ee/0x430    softirqs last disabled at (1811): rxrpc_new_incoming_peer+0x56/0x120Fix this by using a plain spin_lock() instead.  IRQs are held, so softirqscan&apos;t happen.Fixes: a2ea9a907260 (&quot;rxrpc: Use irq-disabling spinlocks between app and I/O thread&quot;)Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: Simon Horman &lt;horms@kernel.org&gt;cc: linux-afs@lists.infradead.orgLink: https://patch.msgid.link/20250218192250.296870-4-dhowells@redhat.comSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Tue, 18 Feb 2025 19:22:46 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>833fefa0 - rxrpc: peer-&gt;mtu_lock is redundant</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#833fefa0</link>
        <description>rxrpc: peer-&gt;mtu_lock is redundantThe peer-&gt;mtu_lock is only used to lock around writes to peer-&gt;max_data -and nothing else; further, all such writes take place in the I/O thread andthe lock is only ever write-locked and never read-locked.In a couple of places, the write_seqcount_begin() is wrapped inpreempt_disable/enable(), but not in all places.  This can cause lockdep tocomplain:WARNING: CPU: 0 PID: 1549 at include/linux/seqlock.h:221 rxrpc_input_ack_trailer+0x305/0x430...RIP: 0010:rxrpc_input_ack_trailer+0x305/0x430Fix this by just getting rid of the lock.Fixes: eeaedc5449d9 (&quot;rxrpc: Implement path-MTU probing using padded PING ACKs (RFC8899)&quot;)Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: Simon Horman &lt;horms@kernel.org&gt;cc: linux-afs@lists.infradead.orgLink: https://patch.msgid.link/20250218192250.296870-3-dhowells@redhat.comSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Tue, 18 Feb 2025 19:22:45 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>79d458c1 - rxrpc, afs: Fix peer hash locking vs RCU callback</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#79d458c1</link>
        <description>rxrpc, afs: Fix peer hash locking vs RCU callbackIn its address list, afs now retains pointers to and refs on one or morerxrpc_peer objects.  The address list is freed under RCU and at this time,it puts the refs on those peers.Now, when an rxrpc_peer object runs out of refs, it gets removed from thepeer hash table and, for that, rxrpc has to take a spinlock.  However, itis now being called from afs&apos;s RCU cleanup, which takes place in BHcontext - but it is just taking an ordinary spinlock.The put may also be called from non-BH context, and so there exists thepossibility of deadlock if the BH-based RCU cleanup happens whilst the hashspinlock is held.  This led to the attached lockdep complaint.Fix this by changing spinlocks of rxnet-&gt;peer_hash_lock back toBH-disabling locks.    ================================    WARNING: inconsistent lock state    6.13.0-rc5-build2+ #1223 Tainted: G            E    --------------------------------    inconsistent {SOFTIRQ-ON-W} -&gt; {IN-SOFTIRQ-W} usage.    swapper/1/0 [HC0[0]:SC1[1]:HE1:SE0] takes:    ffff88810babe228 (&amp;rxnet-&gt;peer_hash_lock){+.?.}-{3:3}, at: rxrpc_put_peer+0xcb/0x180    {SOFTIRQ-ON-W} state was registered at:      mark_usage+0x164/0x180      __lock_acquire+0x544/0x990      lock_acquire.part.0+0x103/0x280      _raw_spin_lock+0x2f/0x40      rxrpc_peer_keepalive_worker+0x144/0x440      process_one_work+0x486/0x7c0      process_scheduled_works+0x73/0x90      worker_thread+0x1c8/0x2a0      kthread+0x19b/0x1b0      ret_from_fork+0x24/0x40      ret_from_fork_asm+0x1a/0x30    irq event stamp: 972402    hardirqs last  enabled at (972402): [&lt;ffffffff8244360e&gt;] _raw_spin_unlock_irqrestore+0x2e/0x50    hardirqs last disabled at (972401): [&lt;ffffffff82443328&gt;] _raw_spin_lock_irqsave+0x18/0x60    softirqs last  enabled at (972300): [&lt;ffffffff810ffbbe&gt;] handle_softirqs+0x3ee/0x430    softirqs last disabled at (972313): [&lt;ffffffff810ffc54&gt;] __irq_exit_rcu+0x44/0x110    other info that might help us debug this:     Possible unsafe locking scenario:           CPU0           ----      lock(&amp;rxnet-&gt;peer_hash_lock);      &lt;Interrupt&gt;        lock(&amp;rxnet-&gt;peer_hash_lock);     *** DEADLOCK ***    1 lock held by swapper/1/0:     #0: ffffffff83576be0 (rcu_callback){....}-{0:0}, at: rcu_lock_acquire+0x7/0x30    stack backtrace:    CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Tainted: G            E      6.13.0-rc5-build2+ #1223    Tainted: [E]=UNSIGNED_MODULE    Hardware name: ASUS All Series/H97-PLUS, BIOS 2306 10/09/2014    Call Trace:     &lt;IRQ&gt;     dump_stack_lvl+0x57/0x80     print_usage_bug.part.0+0x227/0x240     valid_state+0x53/0x70     mark_lock_irq+0xa5/0x2f0     mark_lock+0xf7/0x170     mark_usage+0xe1/0x180     __lock_acquire+0x544/0x990     lock_acquire.part.0+0x103/0x280     _raw_spin_lock+0x2f/0x40     rxrpc_put_peer+0xcb/0x180     afs_free_addrlist+0x46/0x90 [kafs]     rcu_do_batch+0x2d2/0x640     rcu_core+0x2f7/0x350     handle_softirqs+0x1ee/0x430     __irq_exit_rcu+0x44/0x110     irq_exit_rcu+0xa/0x30     sysvec_apic_timer_interrupt+0x7f/0xa0     &lt;/IRQ&gt;Fixes: 72904d7b9bfb (&quot;rxrpc, afs: Allow afs to pin rxrpc_peer objects&quot;)Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: Simon Horman &lt;horms@kernel.org&gt;cc: linux-afs@lists.infradead.orgLink: https://patch.msgid.link/2095618.1737622752@warthog.procyon.org.ukSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 23 Jan 2025 08:59:12 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>b40ef2b8 - rxrpc: Manage RTT per-call rather than per-peer</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#b40ef2b8</link>
        <description>rxrpc: Manage RTT per-call rather than per-peerManage the determination of RTT on a per-call (ie. per-RPC op) basis ratherthan 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 callmay be off because the server may do some setting up (such as getting alock 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, forinstance if a large amount of data is being written or read.Note: When handling the FS.StoreData-type RPCs, for example, the serveruses the userStatus field in the header of ACK packets as supplementaryflow control to aid in managing this.  AF_RXRPC does not yet support this,but it should be added.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Wed, 04 Dec 2024 07:47:05 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>a2ea9a90 - rxrpc: Use irq-disabling spinlocks between app and I/O thread</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#a2ea9a90</link>
        <description>rxrpc: Use irq-disabling spinlocks between app and I/O threadWhere a spinlock is used by both the application thread and the I/O thread,use irq-disabling locking so that an interrupt taken on the app threaddoesn&apos;t also slow down the I/O thread.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Wed, 04 Dec 2024 07:47:01 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>eeaedc54 - rxrpc: Implement path-MTU probing using padded PING ACKs (RFC8899)</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#eeaedc54</link>
        <description>rxrpc: Implement path-MTU probing using padded PING ACKs (RFC8899)Implement path-MTU probing (along the lines of RFC8899) by padding some ofthe PING ACKs we send.  PING ACKs get their own individual responses quiteapart from the acking of data (though, as ACKs, they fulfil that rolealso).The probing concentrates on packet sizes that correspond how manysubpackets can be stuffed inside a jumbo packet as jumbo DATA packets arejust aggregations of individual DATA packets and can be split easily forretransmission purposes.If we want to perform probing, we advertise this by setting the maximumnumber of jumbo subpackets to 0 in the ack trailer when we send an ACK andsee if the peer is also advertising the service.  This is interpreted bynon-supporting Rx stacks as an indication that jumbo packets aren&apos;tsupported.The MTU sizes advertised in the ACK trailer AF_RXRPC transmits are peggedat a maximum of 1444 unless pmtud is supported by both sides.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgLink: https://patch.msgid.link/20241204074710.990092-10-dhowells@redhat.comSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Wed, 04 Dec 2024 07:46:37 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>72904d7b - rxrpc, afs: Allow afs to pin rxrpc_peer objects</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#72904d7b</link>
        <description>rxrpc, afs: Allow afs to pin rxrpc_peer objectsChange rxrpc&apos;s API such that: (1) A new function, rxrpc_kernel_lookup_peer(), is provided to look up an     rxrpc_peer record for a remote address and a corresponding function,     rxrpc_kernel_put_peer(), is provided to dispose of it again. (2) When setting up a call, the rxrpc_peer object used during a call is     now passed in rather than being set up by rxrpc_connect_call().  For     afs, this meenat passing it to rxrpc_kernel_begin_call() rather than     the full address (the service ID then has to be passed in as a     separate parameter). (3) A new function, rxrpc_kernel_remote_addr(), is added so that afs can     get a pointer to the transport address for display purposed, and     another, rxrpc_kernel_remote_srx(), to gain a pointer to the full     rxrpc address. (4) The function to retrieve the RTT from a call, rxrpc_kernel_get_srtt(),     is then altered to take a peer.  This now returns the RTT or -1 if     there are insufficient samples. (5) Rename rxrpc_kernel_get_peer() to rxrpc_kernel_call_get_peer(). (6) Provide a new function, rxrpc_kernel_get_peer(), to get a ref on a     peer the caller already has.This allows the afs filesystem to pin the rxrpc_peer records that it isusing, allowing faster lookups and pointer comparisons rather thancomparing sockaddr_rxrpc contents.  It also makes it easier to get hold ofthe RTT.  The following changes are made to afs: (1) The addr_list struct&apos;s addrs[] elements now hold a peer struct pointer     and a service ID rather than a sockaddr_rxrpc. (2) When displaying the transport address, rxrpc_kernel_remote_addr() is     used. (3) The port arg is removed from afs_alloc_addrlist() since it&apos;s always     overridden. (4) afs_merge_fs_addr4() and afs_merge_fs_addr6() do peer lookup and may     now return an error that must be handled. (5) afs_find_server() now takes a peer pointer to specify the address. (6) afs_find_server(), afs_compare_fs_alists() and afs_merge_fs_addr[46]{}     now do peer pointer comparison rather than address comparison.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 19 Oct 2023 11:55:11 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>8a758d98 - rxrpc: Stash the network namespace pointer in rxrpc_local</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#8a758d98</link>
        <description>rxrpc: Stash the network namespace pointer in rxrpc_localStash the network namespace pointer in the rxrpc_local struct in additionto a pointer to the rxrpc-specific net namespace info.  Use this to removesome places where the socket is passed as a parameter.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 20 Oct 2022 22:17:06 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>c838f1a7 - rxrpc: Fix switched parameters in peer tracing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#c838f1a7</link>
        <description>rxrpc: Fix switched parameters in peer tracingFix the switched parameters on rxrpc_alloc_peer() and rxrpc_get_peer().The ref argument and the why argument got mixed.Fixes: 47c810a79844 (&quot;rxrpc: trace: Don&apos;t use __builtin_return_address for rxrpc_peer tracing&quot;)Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgSigned-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 15 Dec 2022 16:20:30 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>608aecd1 - rxrpc: Fix locking issues in rxrpc_put_peer_locked()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#608aecd1</link>
        <description>rxrpc: Fix locking issues in rxrpc_put_peer_locked()Now that rxrpc_put_local() may call kthread_stop(), it can&apos;t be calledunder spinlock as it might sleep.  This can cause a problem in the peerkeepalive code in rxrpc as it tries to avoid dropping the peer_hash_lockfrom the point it needs to re-add peer-&gt;keepalive_link to going round theloop again in rxrpc_peer_keepalive_dispatch().Fix this by just dropping the lock when we don&apos;t need it and accepting thatwe&apos;ll have to take it again.  This code is only called about every 20s foreach peer, so not very often.This allows rxrpc_put_peer_unlocked() to be removed also.If triggered, this bug produces an oops like the following, as reproducedby a syzbot reproducer for a different oops[1]:BUG: sleeping function called from invalid context at kernel/sched/completion.c:101...RCU nest depth: 0, expected: 03 locks held by kworker/u9:0/50: #0: ffff88810e74a138 ((wq_completion)krxrpcd){+.+.}-{0:0}, at: process_one_work+0x294/0x636 #1: ffff8881013a7e20 ((work_completion)(&amp;rxnet-&gt;peer_keepalive_work)){+.+.}-{0:0}, at: process_one_work+0x294/0x636 #2: ffff88817d366390 (&amp;rxnet-&gt;peer_hash_lock){+.+.}-{2:2}, at: rxrpc_peer_keepalive_dispatch+0x2bd/0x35f...Call Trace: &lt;TASK&gt; dump_stack_lvl+0x4c/0x5f __might_resched+0x2cf/0x2f2 __wait_for_common+0x87/0x1e8 kthread_stop+0x14d/0x255 rxrpc_peer_keepalive_dispatch+0x333/0x35f rxrpc_peer_keepalive_worker+0x2e9/0x449 process_one_work+0x3c1/0x636 worker_thread+0x25f/0x359 kthread+0x1a6/0x1b5 ret_from_fork+0x1f/0x30Fixes: a275da62e8c1 (&quot;rxrpc: Create a per-local endpoint receive queue and I/O thread&quot;)Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgLink: https://lore.kernel.org/r/0000000000002b4a9f05ef2b616f@google.com/ [1]Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 15 Dec 2022 16:20:21 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>3dd9c8b5 - rxrpc: Remove the _bh annotation from all the spinlocks</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#3dd9c8b5</link>
        <description>rxrpc: Remove the _bh annotation from all the spinlocksNone of the spinlocks in rxrpc need a _bh annotation now as the RCUcallback routines no longer take spinlocks and the bulk of the packetwrangling code is now run in the I/O thread, not softirq context.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Fri, 24 Jan 2020 10:21:15 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>47c810a7 - rxrpc: trace: Don&apos;t use __builtin_return_address for rxrpc_peer tracing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#47c810a7</link>
        <description>rxrpc: trace: Don&apos;t use __builtin_return_address for rxrpc_peer tracingIn rxrpc tracing, use enums to generate lists of points of interest ratherthan __builtin_return_address() for the rxrpc_peer tracepointSigned-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Fri, 21 Oct 2022 12:39:34 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>0fde882f - rxrpc: trace: Don&apos;t use __builtin_return_address for rxrpc_local tracing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#0fde882f</link>
        <description>rxrpc: trace: Don&apos;t use __builtin_return_address for rxrpc_local tracingIn rxrpc tracing, use enums to generate lists of points of interest ratherthan __builtin_return_address() for the rxrpc_local tracepointSigned-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Fri, 21 Oct 2022 12:00:34 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>e969c92c - rxrpc: Remove the [_k]net() debugging macros</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#e969c92c</link>
        <description>rxrpc: Remove the [_k]net() debugging macrosRemove the _net() and knet() debugging macros in favour of tracepoints.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 20 Oct 2022 11:04:20 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>1fc4fa2a - rxrpc: Fix congestion management</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#1fc4fa2a</link>
        <description>rxrpc: Fix congestion managementrxrpc has a problem in its congestion management in that it saves thecongestion window size (cwnd) from one call to another, but if this is 0 atthe time is saved, then the next call may not actually manage to evertransmit anything.To this end: (1) Don&apos;t save cwnd between calls, but rather reset back down to the     initial cwnd and re-enter slow-start if data transmission is idle for     more than an RTT. (2) Preserve ssthresh instead, as that is a handy estimate of pipe     capacity.  Knowing roughly when to stop slow start and enter     congestion avoidance can reduce the tendency to overshoot and drop     larger amounts of packets when probing.In future, cwind growth also needs to be constrained when the window isn&apos;tbeing filled due to being application limited.Reported-by: Simon Wilkinson &lt;sxw@auristor.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.org

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Mon, 03 Oct 2022 17:49:11 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>a0575429 - rxrpc: Use refcount_t rather than atomic_t</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#a0575429</link>
        <description>rxrpc: Use refcount_t rather than atomic_tMove to using refcount_t rather than atomic_t for refcounts in rxrpc.Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;cc: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgSigned-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Sat, 21 May 2022 07:45:22 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>beacff50 - rxrpc: Fix rxrpc_local leak in rxrpc_lookup_peer()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#beacff50</link>
        <description>rxrpc: Fix rxrpc_local leak in rxrpc_lookup_peer()Need to call rxrpc_put_local() for peer candidate before kfree() as itholds a ref to rxrpc_local.[DH: v2: Changed to abstract the peer freeing code out into a function]Fixes: 9ebeddef58c4 (&quot;rxrpc: rxrpc_peer needs to hold a ref on the rxrpc_local record&quot;)Signed-off-by: Eiichi Tsukata &lt;eiichi.tsukata@nutanix.com&gt;Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;Reviewed-by: Marc Dionne &lt;marc.dionne@auristor.com&gt;cc: linux-afs@lists.infradead.orgLink: https://lore.kernel.org/all/20211121041608.133740-2-eiichi.tsukata@nutanix.com/ # v1

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Sun, 21 Nov 2021 04:16:08 +0000</pubDate>
        <dc:creator>Eiichi Tsukata &lt;eiichi.tsukata@nutanix.com&gt;</dc:creator>
    </item>
<item>
        <title>1d4adfaf - rxrpc: Make rxrpc_kernel_get_srtt() indicate validity</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/net/rxrpc/peer_object.c#1d4adfaf</link>
        <description>rxrpc: Make rxrpc_kernel_get_srtt() indicate validityFix rxrpc_kernel_get_srtt() to indicate the validity of the returnedsmoothed RTT.  If we haven&apos;t had any valid samples yet, the SRTT isn&apos;tuseful.Fixes: c410bf01933e (&quot;rxrpc: Fix the excessive initial retransmission timeout&quot;)Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;

            List of files:
            /linux-6.15/net/rxrpc/peer_object.c</description>
        <pubDate>Thu, 20 Aug 2020 14:13:00 +0000</pubDate>
        <dc:creator>David Howells &lt;dhowells@redhat.com&gt;</dc:creator>
    </item>
</channel>
</rss>
