Merge branch 'master' of upstream into v5.6.x
This commit is contained in:
commit
02f139d5e2
9 changed files with 24090 additions and 23793 deletions
23785
abi-prev-5.4.30-1-pve
23785
abi-prev-5.4.30-1-pve
File diff suppressed because it is too large
Load diff
23795
abi-prev-5.4.44-2-pve
Normal file
23795
abi-prev-5.4.44-2-pve
Normal file
File diff suppressed because it is too large
Load diff
12
debian/control.in
vendored
12
debian/control.in
vendored
|
@ -69,3 +69,15 @@ Depends: busybox,
|
|||
Recommends: grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub-efi-arm64,
|
||||
Description: The Proxmox PVE Kernel Image
|
||||
This package contains the linux kernel and initial ramdisk used for booting
|
||||
|
||||
Package: pve-kernel-libc-dev
|
||||
Section: devel
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Provides: linux-libc-dev,
|
||||
Conflicts: linux-libc-dev,
|
||||
Replaces: linux-libc-dev,
|
||||
Depends: ${misc:Depends}
|
||||
Description: Linux support headers for userspace development
|
||||
This package provides userspaces headers from the Linux kernel. These headers
|
||||
are used by the installed headers for GNU libc and other system libraries.
|
||||
|
|
41
debian/rules
vendored
41
debian/rules
vendored
|
@ -15,6 +15,7 @@ CHANGELOG_DATE:=$(shell dpkg-parsechangelog -SDate)
|
|||
|
||||
PVE_KERNEL_PKG=pve-edge-kernel-${KVNAME}
|
||||
PVE_HEADER_PKG=pve-edge-headers-${KVNAME}
|
||||
PVE_USR_HEADER_PKG=pve-kernel-libc-dev
|
||||
LINUX_TOOLS_PKG=linux-tools-${KERNEL_MAJMIN}
|
||||
KERNEL_SRC_COPY=${KERNEL_SRC}_tmp
|
||||
|
||||
|
@ -35,6 +36,7 @@ PVE_CONFIG_OPTS= \
|
|||
-m CONFIG_JFS_FS \
|
||||
-m CONFIG_HFS_FS \
|
||||
-m CONFIG_HFSPLUS_FS \
|
||||
-e CIFS_SMB_DIRECT \
|
||||
-e CONFIG_BRIDGE \
|
||||
-e CONFIG_BRIDGE_NETFILTER \
|
||||
-e CONFIG_BLK_DEV_SD \
|
||||
|
@ -49,6 +51,21 @@ PVE_CONFIG_OPTS= \
|
|||
-d CONFIG_MEMCG_DISABLED \
|
||||
-e CONFIG_MEMCG_SWAP_ENABLED \
|
||||
-e CONFIG_HYPERV \
|
||||
-m CONFIG_VFIO_IOMMU_TYPE1 \
|
||||
-m CONFIG_VFIO_VIRQFD \
|
||||
-m CONFIG_VFIO \
|
||||
-m CONFIG_VFIO_PCI \
|
||||
-m CONFIG_USB_XHCI_HCD \
|
||||
-m CONFIG_USB_XHCI_PCI \
|
||||
-m CONFIG_USB_EHCI_HCD \
|
||||
-m CONFIG_USB_EHCI_PCI \
|
||||
-m CONFIG_USB_EHCI_HCD_PLATFORM \
|
||||
-m CONFIG_USB_OHCI_HCD \
|
||||
-m CONFIG_USB_OHCI_HCD_PCI \
|
||||
-m CONFIG_USB_OHCI_HCD_PLATFORM \
|
||||
-d CONFIG_USB_OHCI_HCD_SSB \
|
||||
-m CONFIG_USB_UHCI_HCD \
|
||||
-d CONFIG_USB_SL811_HCD_ISO \
|
||||
-e CONFIG_MEMCG_KMEM \
|
||||
-d CONFIG_DEFAULT_CFQ \
|
||||
-e CONFIG_DEFAULT_DEADLINE \
|
||||
|
@ -59,6 +76,9 @@ PVE_CONFIG_OPTS= \
|
|||
-d CONFIG_UNWINDER_ORC \
|
||||
-d CONFIG_UNWINDER_GUESS \
|
||||
-e CONFIG_UNWINDER_FRAME_POINTER \
|
||||
-d CONFIG_SECURITY_LOCKDOWN_LSM \
|
||||
-d CONFIG_SECURITY_LOCKDOWN_LSM_EARLY \
|
||||
--set-str CONFIG_LSM yama,integrity,apparmor \
|
||||
-e CONFIG_PAGE_TABLE_ISOLATION
|
||||
|
||||
debian/control: $(wildcard debian/*.in)
|
||||
|
@ -74,7 +94,7 @@ debian/control: $(wildcard debian/*.in)
|
|||
|
||||
build: .compile_mark .tools_compile_mark .modules_compile_mark
|
||||
|
||||
install: .install_mark .tools_install_mark .headers_install_mark
|
||||
install: .install_mark .tools_install_mark .headers_install_mark .usr_headers_install_mark
|
||||
dh_installdocs -A debian/copyright debian/SOURCE
|
||||
dh_installchangelogs
|
||||
dh_installman
|
||||
|
@ -84,7 +104,7 @@ install: .install_mark .tools_install_mark .headers_install_mark
|
|||
|
||||
binary: install
|
||||
debian/rules fwcheck abicheck
|
||||
dh_strip -N${PVE_HEADER_PKG}
|
||||
dh_strip -N${PVE_HEADER_PKG} -N${PVE_USR_HEADER_PKG}
|
||||
dh_makeshlibs
|
||||
dh_shlibdeps
|
||||
dh_installdeb
|
||||
|
@ -194,6 +214,23 @@ binary: install
|
|||
ln -sf /usr/src/linux-headers-${KVNAME} debian/${PVE_HEADER_PKG}/lib/modules/${KVNAME}/build
|
||||
touch $@
|
||||
|
||||
.usr_headers_install_mark: PKG_DIR = debian/${PVE_USR_HEADER_PKG}
|
||||
.usr_headers_install_mark: OUT_DIR = ${PKG_DIR}/usr
|
||||
.usr_headers_install_mark: .config_mark
|
||||
rm -rf '${PKG_DIR}'
|
||||
mkdir -p '${PKG_DIR}'
|
||||
$(MAKE) -C ${KERNEL_SRC} headers_check ARCH=$(KERNEL_HEADER_ARCH)
|
||||
$(MAKE) -C ${KERNEL_SRC} headers_install ARCH=$(KERNEL_HEADER_ARCH) INSTALL_HDR_PATH='$(CURDIR)'/$(OUT_DIR)
|
||||
rm -rf $(OUT_DIR)/include/drm $(OUT_DIR)/include/scsi
|
||||
find $(OUT_DIR)/include \( -name .install -o -name ..install.cmd \) -execdir rm {} +
|
||||
|
||||
# Move include/asm to arch-specific directory
|
||||
mkdir -p $(OUT_DIR)/include/$(DEB_HOST_MULTIARCH)
|
||||
mv $(OUT_DIR)/include/asm $(OUT_DIR)/include/$(DEB_HOST_MULTIARCH)/
|
||||
test ! -d $(OUT_DIR)/include/arch || \
|
||||
mv $(OUT_DIR)/include/arch $(OUT_DIR)/include/$(DEB_HOST_MULTIARCH)/
|
||||
touch $@
|
||||
|
||||
.modules_compile_mark: ${MODULES}/zfs.ko
|
||||
touch $@
|
||||
|
||||
|
|
|
@ -14,8 +14,6 @@ advansys/mcode.bin kernel/drivers/scsi/advansys.ko
|
|||
agere_ap_fw.bin kernel/drivers/net/wireless/intersil/orinoco/orinoco.ko
|
||||
agere_sta_fw.bin kernel/drivers/net/wireless/intersil/orinoco/orinoco.ko
|
||||
aic94xx-seq.fw kernel/drivers/scsi/aic94xx/aic94xx.ko
|
||||
amdgpu/arcturus_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/arcturus_vcn.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/banks_k_2_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/bonaire_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/bonaire_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
|
@ -110,8 +108,6 @@ amdgpu/navi10_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
|||
amdgpu/navi10_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi10_sos.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi10_vcn.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi12_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi12_vcn.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi14_asd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi14_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
amdgpu/navi14_ce_wks.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
|
||||
|
|
|
@ -18,7 +18,7 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
|||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
|
||||
index 8129b6b27c93..49987441862e 100644
|
||||
index 72f51275247e..597fe6f70d97 100644
|
||||
--- a/arch/x86/kvm/vmx/vmx.c
|
||||
+++ b/arch/x86/kvm/vmx/vmx.c
|
||||
@@ -103,7 +103,7 @@ module_param(enable_apicv, bool, S_IRUGO);
|
||||
|
|
|
@ -0,0 +1,129 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
||||
Date: Fri, 15 May 2020 14:43:37 +0200
|
||||
Subject: [PATCH] Revert "scsi: lpfc: Fix broken Credit Recovery after driver
|
||||
load"
|
||||
|
||||
This reverts commit 77d5805eafdb5c42bdfe78f058ad9c40ee1278b4.
|
||||
We got some reports that this causes some lpfcs to report FLOGI
|
||||
errors[0][1] and while the real fix is naturally something else, it
|
||||
is nonexistent for now, so workaround with this revert.
|
||||
|
||||
[0]: https://forum.proxmox.com/threads/proxmox-6-2-lpfc-error-port-type-wrong.69680/#post-312491
|
||||
[1]: https://lore.kernel.org/linux-scsi/20200512212855.36q2ut2io2cdtagn@zeha.at/
|
||||
---
|
||||
drivers/scsi/lpfc/lpfc.h | 1 -
|
||||
drivers/scsi/lpfc/lpfc_hbadisc.c | 59 +++++++++++---------------------
|
||||
2 files changed, 20 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/drivers/scsi/lpfc/lpfc.h b/drivers/scsi/lpfc/lpfc.h
|
||||
index 357fdec06bae..cd5525f28556 100644
|
||||
--- a/drivers/scsi/lpfc/lpfc.h
|
||||
+++ b/drivers/scsi/lpfc/lpfc.h
|
||||
@@ -748,7 +748,6 @@ struct lpfc_hba {
|
||||
* capability
|
||||
*/
|
||||
#define HBA_FLOGI_ISSUED 0x100000 /* FLOGI was issued */
|
||||
-#define HBA_DEFER_FLOGI 0x800000 /* Defer FLOGI till read_sparm cmpl */
|
||||
|
||||
uint32_t fcp_ring_in_use; /* When polling test if intr-hndlr active*/
|
||||
struct lpfc_dmabuf slim2p;
|
||||
diff --git a/drivers/scsi/lpfc/lpfc_hbadisc.c b/drivers/scsi/lpfc/lpfc_hbadisc.c
|
||||
index 789eecbf32eb..95566e382b48 100644
|
||||
--- a/drivers/scsi/lpfc/lpfc_hbadisc.c
|
||||
+++ b/drivers/scsi/lpfc/lpfc_hbadisc.c
|
||||
@@ -1163,16 +1163,13 @@ lpfc_mbx_cmpl_local_config_link(struct lpfc_hba *phba, LPFC_MBOXQ_t *pmb)
|
||||
}
|
||||
|
||||
/* Start discovery by sending a FLOGI. port_state is identically
|
||||
- * LPFC_FLOGI while waiting for FLOGI cmpl. Check if sending
|
||||
- * the FLOGI is being deferred till after MBX_READ_SPARAM completes.
|
||||
+ * LPFC_FLOGI while waiting for FLOGI cmpl
|
||||
*/
|
||||
- if (vport->port_state != LPFC_FLOGI) {
|
||||
- if (!(phba->hba_flag & HBA_DEFER_FLOGI))
|
||||
- lpfc_initial_flogi(vport);
|
||||
- } else {
|
||||
- if (vport->fc_flag & FC_PT2PT)
|
||||
- lpfc_disc_start(vport);
|
||||
- }
|
||||
+ if (vport->port_state != LPFC_FLOGI)
|
||||
+ lpfc_initial_flogi(vport);
|
||||
+ else if (vport->fc_flag & FC_PT2PT)
|
||||
+ lpfc_disc_start(vport);
|
||||
+
|
||||
return;
|
||||
|
||||
out:
|
||||
@@ -3097,14 +3094,6 @@ lpfc_mbx_cmpl_read_sparam(struct lpfc_hba *phba, LPFC_MBOXQ_t *pmb)
|
||||
lpfc_mbuf_free(phba, mp->virt, mp->phys);
|
||||
kfree(mp);
|
||||
mempool_free(pmb, phba->mbox_mem_pool);
|
||||
-
|
||||
- /* Check if sending the FLOGI is being deferred to after we get
|
||||
- * up to date CSPs from MBX_READ_SPARAM.
|
||||
- */
|
||||
- if (phba->hba_flag & HBA_DEFER_FLOGI) {
|
||||
- lpfc_initial_flogi(vport);
|
||||
- phba->hba_flag &= ~HBA_DEFER_FLOGI;
|
||||
- }
|
||||
return;
|
||||
|
||||
out:
|
||||
@@ -3235,23 +3224,6 @@ lpfc_mbx_process_link_up(struct lpfc_hba *phba, struct lpfc_mbx_read_top *la)
|
||||
}
|
||||
|
||||
lpfc_linkup(phba);
|
||||
- sparam_mbox = NULL;
|
||||
-
|
||||
- if (!(phba->hba_flag & HBA_FCOE_MODE)) {
|
||||
- cfglink_mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL);
|
||||
- if (!cfglink_mbox)
|
||||
- goto out;
|
||||
- vport->port_state = LPFC_LOCAL_CFG_LINK;
|
||||
- lpfc_config_link(phba, cfglink_mbox);
|
||||
- cfglink_mbox->vport = vport;
|
||||
- cfglink_mbox->mbox_cmpl = lpfc_mbx_cmpl_local_config_link;
|
||||
- rc = lpfc_sli_issue_mbox(phba, cfglink_mbox, MBX_NOWAIT);
|
||||
- if (rc == MBX_NOT_FINISHED) {
|
||||
- mempool_free(cfglink_mbox, phba->mbox_mem_pool);
|
||||
- goto out;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
sparam_mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL);
|
||||
if (!sparam_mbox)
|
||||
goto out;
|
||||
@@ -3272,7 +3244,20 @@ lpfc_mbx_process_link_up(struct lpfc_hba *phba, struct lpfc_mbx_read_top *la)
|
||||
goto out;
|
||||
}
|
||||
|
||||
- if (phba->hba_flag & HBA_FCOE_MODE) {
|
||||
+ if (!(phba->hba_flag & HBA_FCOE_MODE)) {
|
||||
+ cfglink_mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL);
|
||||
+ if (!cfglink_mbox)
|
||||
+ goto out;
|
||||
+ vport->port_state = LPFC_LOCAL_CFG_LINK;
|
||||
+ lpfc_config_link(phba, cfglink_mbox);
|
||||
+ cfglink_mbox->vport = vport;
|
||||
+ cfglink_mbox->mbox_cmpl = lpfc_mbx_cmpl_local_config_link;
|
||||
+ rc = lpfc_sli_issue_mbox(phba, cfglink_mbox, MBX_NOWAIT);
|
||||
+ if (rc == MBX_NOT_FINISHED) {
|
||||
+ mempool_free(cfglink_mbox, phba->mbox_mem_pool);
|
||||
+ goto out;
|
||||
+ }
|
||||
+ } else {
|
||||
vport->port_state = LPFC_VPORT_UNKNOWN;
|
||||
/*
|
||||
* Add the driver's default FCF record at FCF index 0 now. This
|
||||
@@ -3329,10 +3314,6 @@ lpfc_mbx_process_link_up(struct lpfc_hba *phba, struct lpfc_mbx_read_top *la)
|
||||
}
|
||||
/* Reset FCF roundrobin bmask for new discovery */
|
||||
lpfc_sli4_clear_fcf_rr_bmask(phba);
|
||||
- } else {
|
||||
- if (phba->bbcredit_support && phba->cfg_enable_bbcr &&
|
||||
- !(phba->link_flag & LS_LOOPBACK_MODE))
|
||||
- phba->hba_flag |= HBA_DEFER_FLOGI;
|
||||
}
|
||||
|
||||
/* Prepare for LINK up registrations */
|
|
@ -0,0 +1,113 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Cong Wang <xiyou.wangcong@gmail.com>
|
||||
Date: Tue, 16 Jun 2020 11:03:52 -0700
|
||||
Subject: [PATCH] cgroup: fix cgroup_sk_alloc() for sk_clone_lock()
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
When we clone a socket in sk_clone_lock(), its sk_cgrp_data is
|
||||
copied, so the cgroup refcnt must be taken too. And, unlike the
|
||||
sk_alloc() path, sock_update_netprioidx() is not called here.
|
||||
Therefore, it is safe and necessary to grab the cgroup refcnt
|
||||
even when cgroup_sk_alloc is disabled.
|
||||
|
||||
sk_clone_lock() is in BH context anyway, the in_interrupt()
|
||||
would terminate this function if called there. And for sk_alloc()
|
||||
skcd->val is always zero. So it's safe to factor out the code
|
||||
to make it more readable.
|
||||
|
||||
Fixes: 090e28b229af92dc5b ("netprio_cgroup: Fix unlimited memory leak of v2 cgroups")
|
||||
Reported-by: Cameron Berkenpas <cam@neo-zeon.de>
|
||||
Reported-by: Peter Geis <pgwipeout@gmail.com>
|
||||
Reported-by: Lu Fengqi <lufq.fnst@cn.fujitsu.com>
|
||||
Reported-by: Daniël Sonck <dsonck92@gmail.com>
|
||||
Tested-by: Cameron Berkenpas <cam@neo-zeon.de>
|
||||
Cc: Daniel Borkmann <daniel@iogearbox.net>
|
||||
Cc: Zefan Li <lizefan@huawei.com>
|
||||
Cc: Tejun Heo <tj@kernel.org>
|
||||
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
|
||||
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
||||
---
|
||||
include/linux/cgroup.h | 2 ++
|
||||
kernel/cgroup/cgroup.c | 26 ++++++++++++++------------
|
||||
net/core/sock.c | 2 +-
|
||||
3 files changed, 17 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h
|
||||
index 57577075d204..14452a801d95 100644
|
||||
--- a/include/linux/cgroup.h
|
||||
+++ b/include/linux/cgroup.h
|
||||
@@ -822,6 +822,7 @@ extern spinlock_t cgroup_sk_update_lock;
|
||||
|
||||
void cgroup_sk_alloc_disable(void);
|
||||
void cgroup_sk_alloc(struct sock_cgroup_data *skcd);
|
||||
+void cgroup_sk_clone(struct sock_cgroup_data *skcd);
|
||||
void cgroup_sk_free(struct sock_cgroup_data *skcd);
|
||||
|
||||
static inline struct cgroup *sock_cgroup_ptr(struct sock_cgroup_data *skcd)
|
||||
@@ -847,6 +848,7 @@ static inline struct cgroup *sock_cgroup_ptr(struct sock_cgroup_data *skcd)
|
||||
#else /* CONFIG_CGROUP_DATA */
|
||||
|
||||
static inline void cgroup_sk_alloc(struct sock_cgroup_data *skcd) {}
|
||||
+static inline void cgroup_sk_clone(struct sock_cgroup_data *skcd) {}
|
||||
static inline void cgroup_sk_free(struct sock_cgroup_data *skcd) {}
|
||||
|
||||
#endif /* CONFIG_CGROUP_DATA */
|
||||
diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c
|
||||
index 7c9e97553a00..d56ee72f4a07 100644
|
||||
--- a/kernel/cgroup/cgroup.c
|
||||
+++ b/kernel/cgroup/cgroup.c
|
||||
@@ -6382,18 +6382,6 @@ void cgroup_sk_alloc(struct sock_cgroup_data *skcd)
|
||||
if (cgroup_sk_alloc_disabled)
|
||||
return;
|
||||
|
||||
- /* Socket clone path */
|
||||
- if (skcd->val) {
|
||||
- /*
|
||||
- * We might be cloning a socket which is left in an empty
|
||||
- * cgroup and the cgroup might have already been rmdir'd.
|
||||
- * Don't use cgroup_get_live().
|
||||
- */
|
||||
- cgroup_get(sock_cgroup_ptr(skcd));
|
||||
- cgroup_bpf_get(sock_cgroup_ptr(skcd));
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
/* Don't associate the sock with unrelated interrupted task's cgroup. */
|
||||
if (in_interrupt())
|
||||
return;
|
||||
@@ -6415,6 +6403,20 @@ void cgroup_sk_alloc(struct sock_cgroup_data *skcd)
|
||||
rcu_read_unlock();
|
||||
}
|
||||
|
||||
+void cgroup_sk_clone(struct sock_cgroup_data *skcd)
|
||||
+{
|
||||
+ /* Socket clone path */
|
||||
+ if (skcd->val) {
|
||||
+ /*
|
||||
+ * We might be cloning a socket which is left in an empty
|
||||
+ * cgroup and the cgroup might have already been rmdir'd.
|
||||
+ * Don't use cgroup_get_live().
|
||||
+ */
|
||||
+ cgroup_get(sock_cgroup_ptr(skcd));
|
||||
+ cgroup_bpf_get(sock_cgroup_ptr(skcd));
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
void cgroup_sk_free(struct sock_cgroup_data *skcd)
|
||||
{
|
||||
struct cgroup *cgrp = sock_cgroup_ptr(skcd);
|
||||
diff --git a/net/core/sock.c b/net/core/sock.c
|
||||
index 0adf7a9e5a90..6ef468767ab0 100644
|
||||
--- a/net/core/sock.c
|
||||
+++ b/net/core/sock.c
|
||||
@@ -1836,7 +1836,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
|
||||
/* sk->sk_memcg will be populated at accept() time */
|
||||
newsk->sk_memcg = NULL;
|
||||
|
||||
- cgroup_sk_alloc(&newsk->sk_cgrp_data);
|
||||
+ cgroup_sk_clone(&newsk->sk_cgrp_data);
|
||||
|
||||
rcu_read_lock();
|
||||
filter = rcu_dereference(sk->sk_filter);
|
|
@ -1 +1 @@
|
|||
Subproject commit 943c54360ffbdf9d64cb7025fd75b66e02627c67
|
||||
Subproject commit 38e2c8078f63f952e3b24ec2057c7c389543ecb2
|
Loading…
Add table
Add a link
Reference in a new issue