commit fec3b1451d5febbc9e04250f879c10f8952e6bed Author: Greg Kroah-Hartman Date: Mon Jan 15 18:54:51 2024 +0100 Linux 6.1.73 Link: https://lore.kernel.org/r/20240113094204.017594027@linuxfoundation.org Tested-by: Salvatore Bonaccorso Tested-by: SeongJae Park Tested-by: Pavel Machek (CIP) Tested-by: Ron Economos Tested-by: Slade Watkins Tested-by: Linux Kernel Functional Testing Tested-by: Jon Hunter Tested-by: kernelci.org bot Tested-by: Conor Dooley Signed-off-by: Greg Kroah-Hartman commit f9ee31dc7fcd3b5e9770561542a8355bf5de2a0b Author: Steve French Date: Fri Jan 12 23:08:51 2024 -0600 cifs: fix flushing folio regression for 6.1 backport filemap_get_folio works differenty in 6.1 vs. later kernels (returning NULL in 6.1 instead of an error). Add this minor correction which addresses the regression in the patch: cifs: Fix flushing, invalidation and file size with copy_file_range() Link: https://lore.kernel.org/all/a76b370f93cb928c049b94e1fde0d2da506dfcb2.camel@amazon.com/ Reported-by: "Jitindar Singh, Suraj" Suggested-by: David Howells Reported-by: Salvatore Bonaccorso Signed-off-by: Steve French Tested-by: Salvatore Bonaccorso Signed-off-by: Greg Kroah-Hartman commit 0f22c8a6efe63c16d1abf1e6c0317abbf121f883 Author: Jon Maxwell Date: Thu Jan 12 12:25:32 2023 +1100 ipv6: remove max_size check inline with ipv4 commit af6d10345ca76670c1b7c37799f0d5576ccef277 upstream. In ip6_dst_gc() replace: if (entries > gc_thresh) With: if (entries > ops->gc_thresh) Sending Ipv6 packets in a loop via a raw socket triggers an issue where a route is cloned by ip6_rt_cache_alloc() for each packet sent. This quickly consumes the Ipv6 max_size threshold which defaults to 4096 resulting in these warnings: [1] 99.187805] dst_alloc: 7728 callbacks suppressed [2] Route cache is full: consider increasing sysctl net.ipv6.route.max_size. . . [300] Route cache is full: consider increasing sysctl net.ipv6.route.max_size. When this happens the packet is dropped and sendto() gets a network is unreachable error: remaining pkt 200557 errno 101 remaining pkt 196462 errno 101 . . remaining pkt 126821 errno 101 Implement David Aherns suggestion to remove max_size check seeing that Ipv6 has a GC to manage memory usage. Ipv4 already does not check max_size. Here are some memory comparisons for Ipv4 vs Ipv6 with the patch: Test by running 5 instances of a program that sends UDP packets to a raw socket 5000000 times. Compare Ipv4 and Ipv6 performance with a similar program. Ipv4: Before test: MemFree: 29427108 kB Slab: 237612 kB ip6_dst_cache 1912 2528 256 32 2 : tunables 0 0 0 xfrm_dst_cache 0 0 320 25 2 : tunables 0 0 0 ip_dst_cache 2881 3990 192 42 2 : tunables 0 0 0 During test: MemFree: 29417608 kB Slab: 247712 kB ip6_dst_cache 1912 2528 256 32 2 : tunables 0 0 0 xfrm_dst_cache 0 0 320 25 2 : tunables 0 0 0 ip_dst_cache 44394 44394 192 42 2 : tunables 0 0 0 After test: MemFree: 29422308 kB Slab: 238104 kB ip6_dst_cache 1912 2528 256 32 2 : tunables 0 0 0 xfrm_dst_cache 0 0 320 25 2 : tunables 0 0 0 ip_dst_cache 3048 4116 192 42 2 : tunables 0 0 0 Ipv6 with patch: Errno 101 errors are not observed anymore with the patch. Before test: MemFree: 29422308 kB Slab: 238104 kB ip6_dst_cache 1912 2528 256 32 2 : tunables 0 0 0 xfrm_dst_cache 0 0 320 25 2 : tunables 0 0 0 ip_dst_cache 3048 4116 192 42 2 : tunables 0 0 0 During Test: MemFree: 29431516 kB Slab: 240940 kB ip6_dst_cache 11980 12064 256 32 2 : tunables 0 0 0 xfrm_dst_cache 0 0 320 25 2 : tunables 0 0 0 ip_dst_cache 3048 4116 192 42 2 : tunables 0 0 0 After Test: MemFree: 29441816 kB Slab: 238132 kB ip6_dst_cache 1902 2432 256 32 2 : tunables 0 0 0 xfrm_dst_cache 0 0 320 25 2 : tunables 0 0 0 ip_dst_cache 3048 4116 192 42 2 : tunables 0 0 0 Tested-by: Andrea Mayer Signed-off-by: Jon Maxwell Reviewed-by: David Ahern Link: https://lore.kernel.org/r/20230112012532.311021-1-jmaxwell37@gmail.com Signed-off-by: Jakub Kicinski Cc: "Jitindar Singh, Suraj" Signed-off-by: Greg Kroah-Hartman commit b2c545c39877408a2fe249749260529469c0fb30 Author: Greg Kroah-Hartman Date: Sat Jan 13 10:38:35 2024 +0100 Revert "nfsd: separate nfsd_last_thread() from nfsd_put()" This reverts commit 03d68ffc48b94cc1e15bbf3b4f16f1e1e4fa286a which is commit 9f28a971ee9fdf1bf8ce8c88b103f483be610277 upstream. It is reported to cause issues, so revert it. Reported-by: email200202 Link: https://lore.kernel.org/r/e341cb408b5663d8c91b8fa57b41bb984be43448.camel@kernel.org Cc: NeilBrown Cc: Jeff Layton Cc: Chuck Lever Cc: Sasha Levin Signed-off-by: Greg Kroah-Hartman commit db5f2f4db8b777be60c086a416bfbaf2517faa54 Author: Greg Kroah-Hartman Date: Sat Jan 13 10:37:06 2024 +0100 Revert "nfsd: call nfsd_last_thread() before final nfsd_put()" This reverts commit bb4f791cb2de1140d0fbcedfe9e791ff364021d7 which is commit 2a501f55cd641eb4d3c16a2eab0d678693fac663 upstream. It is reported to cause issues, so revert it. Reported-by: email200202 Link: https://lore.kernel.org/r/e341cb408b5663d8c91b8fa57b41bb984be43448.camel@kernel.org Cc: NeilBrown Cc: Jeff Layton Cc: Chuck Lever Cc: Sasha Levin Signed-off-by: Greg Kroah-Hartman