mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-16 16:48:38 -04:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
No conflicts. Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -1125,9 +1125,7 @@ static inline void memcpy_toio(volatile void __iomem *addr, const void *buffer,
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_GENERIC_DEVMEM_IS_ALLOWED
|
||||
extern int devmem_is_allowed(unsigned long pfn);
|
||||
#endif
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
|
||||
|
||||
@@ -368,9 +368,6 @@ static inline void tlb_flush(struct mmu_gather *tlb)
|
||||
flush_tlb_mm(tlb->mm);
|
||||
}
|
||||
|
||||
static inline void
|
||||
tlb_update_vma_flags(struct mmu_gather *tlb, struct vm_area_struct *vma) { }
|
||||
|
||||
#else /* CONFIG_MMU_GATHER_NO_RANGE */
|
||||
|
||||
#ifndef tlb_flush
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <linux/dma-fence.h>
|
||||
#include <linux/completion.h>
|
||||
#include <linux/xarray.h>
|
||||
#include <linux/irq_work.h>
|
||||
#include <linux/workqueue.h>
|
||||
|
||||
#define MAX_WAIT_SCHED_ENTITY_Q_EMPTY msecs_to_jiffies(1000)
|
||||
|
||||
@@ -295,7 +295,7 @@ struct drm_sched_job {
|
||||
*/
|
||||
union {
|
||||
struct dma_fence_cb finish_cb;
|
||||
struct irq_work work;
|
||||
struct work_struct work;
|
||||
};
|
||||
|
||||
uint64_t id;
|
||||
|
||||
@@ -1130,23 +1130,27 @@ static inline bool is_zone_movable_page(const struct page *page)
|
||||
#if defined(CONFIG_ZONE_DEVICE) && defined(CONFIG_FS_DAX)
|
||||
DECLARE_STATIC_KEY_FALSE(devmap_managed_key);
|
||||
|
||||
bool __put_devmap_managed_page(struct page *page);
|
||||
static inline bool put_devmap_managed_page(struct page *page)
|
||||
bool __put_devmap_managed_page_refs(struct page *page, int refs);
|
||||
static inline bool put_devmap_managed_page_refs(struct page *page, int refs)
|
||||
{
|
||||
if (!static_branch_unlikely(&devmap_managed_key))
|
||||
return false;
|
||||
if (!is_zone_device_page(page))
|
||||
return false;
|
||||
return __put_devmap_managed_page(page);
|
||||
return __put_devmap_managed_page_refs(page, refs);
|
||||
}
|
||||
|
||||
#else /* CONFIG_ZONE_DEVICE && CONFIG_FS_DAX */
|
||||
static inline bool put_devmap_managed_page(struct page *page)
|
||||
static inline bool put_devmap_managed_page_refs(struct page *page, int refs)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif /* CONFIG_ZONE_DEVICE && CONFIG_FS_DAX */
|
||||
|
||||
static inline bool put_devmap_managed_page(struct page *page)
|
||||
{
|
||||
return put_devmap_managed_page_refs(page, 1);
|
||||
}
|
||||
|
||||
/* 127: arbitrary random number, small enough to assemble well */
|
||||
#define folio_ref_zero_or_close_to_overflow(folio) \
|
||||
((unsigned int) folio_ref_count(folio) + 127u <= 127u)
|
||||
|
||||
@@ -405,6 +405,9 @@ static inline bool ip6_ignore_linkdown(const struct net_device *dev)
|
||||
{
|
||||
const struct inet6_dev *idev = __in6_dev_get(dev);
|
||||
|
||||
if (unlikely(!idev))
|
||||
return true;
|
||||
|
||||
return !!idev->cnf.ignore_routes_with_linkdown;
|
||||
}
|
||||
|
||||
|
||||
@@ -847,6 +847,7 @@ enum {
|
||||
};
|
||||
|
||||
void l2cap_chan_hold(struct l2cap_chan *c);
|
||||
struct l2cap_chan *l2cap_chan_hold_unless_zero(struct l2cap_chan *c);
|
||||
void l2cap_chan_put(struct l2cap_chan *c);
|
||||
|
||||
static inline void l2cap_chan_lock(struct l2cap_chan *chan)
|
||||
|
||||
@@ -321,7 +321,7 @@ void inet_csk_update_fastreuse(struct inet_bind_bucket *tb,
|
||||
|
||||
struct dst_entry *inet_csk_update_pmtu(struct sock *sk, u32 mtu);
|
||||
|
||||
#define TCP_PINGPONG_THRESH 3
|
||||
#define TCP_PINGPONG_THRESH 1
|
||||
|
||||
static inline void inet_csk_enter_pingpong_mode(struct sock *sk)
|
||||
{
|
||||
@@ -338,14 +338,6 @@ static inline bool inet_csk_in_pingpong_mode(struct sock *sk)
|
||||
return inet_csk(sk)->icsk_ack.pingpong >= TCP_PINGPONG_THRESH;
|
||||
}
|
||||
|
||||
static inline void inet_csk_inc_pingpong_cnt(struct sock *sk)
|
||||
{
|
||||
struct inet_connection_sock *icsk = inet_csk(sk);
|
||||
|
||||
if (icsk->icsk_ack.pingpong < U8_MAX)
|
||||
icsk->icsk_ack.pingpong++;
|
||||
}
|
||||
|
||||
static inline bool inet_csk_has_ulp(struct sock *sk)
|
||||
{
|
||||
return inet_sk(sk)->is_icsk && !!inet_csk(sk)->icsk_ulp_ops;
|
||||
|
||||
@@ -2823,18 +2823,18 @@ static inline int sk_get_wmem0(const struct sock *sk, const struct proto *proto)
|
||||
{
|
||||
/* Does this proto have per netns sysctl_wmem ? */
|
||||
if (proto->sysctl_wmem_offset)
|
||||
return *(int *)((void *)sock_net(sk) + proto->sysctl_wmem_offset);
|
||||
return READ_ONCE(*(int *)((void *)sock_net(sk) + proto->sysctl_wmem_offset));
|
||||
|
||||
return *proto->sysctl_wmem;
|
||||
return READ_ONCE(*proto->sysctl_wmem);
|
||||
}
|
||||
|
||||
static inline int sk_get_rmem0(const struct sock *sk, const struct proto *proto)
|
||||
{
|
||||
/* Does this proto have per netns sysctl_rmem ? */
|
||||
if (proto->sysctl_rmem_offset)
|
||||
return *(int *)((void *)sock_net(sk) + proto->sysctl_rmem_offset);
|
||||
return READ_ONCE(*(int *)((void *)sock_net(sk) + proto->sysctl_rmem_offset));
|
||||
|
||||
return *proto->sysctl_rmem;
|
||||
return READ_ONCE(*proto->sysctl_rmem);
|
||||
}
|
||||
|
||||
/* Default TCP Small queue budget is ~1 ms of data (1sec >> 10)
|
||||
|
||||
@@ -1425,7 +1425,7 @@ void tcp_select_initial_window(const struct sock *sk, int __space,
|
||||
|
||||
static inline int tcp_win_from_space(const struct sock *sk, int space)
|
||||
{
|
||||
int tcp_adv_win_scale = sock_net(sk)->ipv4.sysctl_tcp_adv_win_scale;
|
||||
int tcp_adv_win_scale = READ_ONCE(sock_net(sk)->ipv4.sysctl_tcp_adv_win_scale);
|
||||
|
||||
return tcp_adv_win_scale <= 0 ?
|
||||
(space>>(-tcp_adv_win_scale)) :
|
||||
|
||||
@@ -192,6 +192,7 @@ struct f_owner_ex {
|
||||
|
||||
#define F_LINUX_SPECIFIC_BASE 1024
|
||||
|
||||
#ifndef HAVE_ARCH_STRUCT_FLOCK
|
||||
struct flock {
|
||||
short l_type;
|
||||
short l_whence;
|
||||
@@ -216,5 +217,6 @@ struct flock64 {
|
||||
__ARCH_FLOCK64_PAD
|
||||
#endif
|
||||
};
|
||||
#endif /* HAVE_ARCH_STRUCT_FLOCK */
|
||||
|
||||
#endif /* _ASM_GENERIC_FCNTL_H */
|
||||
|
||||
@@ -2084,7 +2084,7 @@ struct kvm_stats_header {
|
||||
#define KVM_STATS_UNIT_SECONDS (0x2 << KVM_STATS_UNIT_SHIFT)
|
||||
#define KVM_STATS_UNIT_CYCLES (0x3 << KVM_STATS_UNIT_SHIFT)
|
||||
#define KVM_STATS_UNIT_BOOLEAN (0x4 << KVM_STATS_UNIT_SHIFT)
|
||||
#define KVM_STATS_UNIT_MAX KVM_STATS_UNIT_CYCLES
|
||||
#define KVM_STATS_UNIT_MAX KVM_STATS_UNIT_BOOLEAN
|
||||
|
||||
#define KVM_STATS_BASE_SHIFT 8
|
||||
#define KVM_STATS_BASE_MASK (0xF << KVM_STATS_BASE_SHIFT)
|
||||
|
||||
Reference in New Issue
Block a user