rebase patches on top of Ubuntu-5.15.0-104.114
(generated with debian/scripts/import-upstream-tag) Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
d7de6e6e73
commit
dcb887c2c5
@ -75,7 +75,7 @@ index 24cd320f1f1fc..36fbd6b2c8fda 100644
|
|||||||
Safety option to keep boot IRQs enabled. This
|
Safety option to keep boot IRQs enabled. This
|
||||||
should never be necessary.
|
should never be necessary.
|
||||||
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
|
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
|
||||||
index 68bbd9a45529c..e49f8884f66b3 100644
|
index 3d7bf2db21117..1de58ff49ff7a 100644
|
||||||
--- a/drivers/pci/quirks.c
|
--- a/drivers/pci/quirks.c
|
||||||
+++ b/drivers/pci/quirks.c
|
+++ b/drivers/pci/quirks.c
|
||||||
@@ -193,6 +193,106 @@ static int __init pci_apply_final_quirks(void)
|
@@ -193,6 +193,106 @@ static int __init pci_apply_final_quirks(void)
|
||||||
@ -185,7 +185,7 @@ index 68bbd9a45529c..e49f8884f66b3 100644
|
|||||||
/*
|
/*
|
||||||
* Decoding should be disabled for a PCI device during BAR sizing to avoid
|
* Decoding should be disabled for a PCI device during BAR sizing to avoid
|
||||||
* conflict. But doing so may cause problems on host bridge and perhaps other
|
* conflict. But doing so may cause problems on host bridge and perhaps other
|
||||||
@@ -4951,6 +5051,8 @@ static const struct pci_dev_acs_enabled {
|
@@ -4971,6 +5071,8 @@ static const struct pci_dev_acs_enabled {
|
||||||
{ PCI_VENDOR_ID_CAVIUM, 0xA060, pci_quirk_mf_endpoint_acs },
|
{ PCI_VENDOR_ID_CAVIUM, 0xA060, pci_quirk_mf_endpoint_acs },
|
||||||
/* APM X-Gene */
|
/* APM X-Gene */
|
||||||
{ PCI_VENDOR_ID_AMCC, 0xE004, pci_quirk_xgene_acs },
|
{ PCI_VENDOR_ID_AMCC, 0xE004, pci_quirk_xgene_acs },
|
||||||
|
@ -10,10 +10,10 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
|||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/net/core/dev.c b/net/core/dev.c
|
diff --git a/net/core/dev.c b/net/core/dev.c
|
||||||
index 8f4f355a963f8..00d31f7abb3f4 100644
|
index 8501645ff67dd..dff9167a4f390 100644
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -10556,7 +10556,7 @@ static void netdev_wait_allrefs(struct net_device *dev)
|
@@ -10559,7 +10559,7 @@ static void netdev_wait_allrefs(struct net_device *dev)
|
||||||
if (refcnt != 1 &&
|
if (refcnt != 1 &&
|
||||||
time_after(jiffies, warning_time +
|
time_after(jiffies, warning_time +
|
||||||
netdev_unregister_timeout_secs * HZ)) {
|
netdev_unregister_timeout_secs * HZ)) {
|
||||||
|
@ -22,10 +22,10 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
|||||||
4 files changed, 8 insertions(+), 16 deletions(-)
|
4 files changed, 8 insertions(+), 16 deletions(-)
|
||||||
|
|
||||||
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
|
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
|
||||||
index 3ee4c1217b636..0e15a93459665 100644
|
index fd81a73708645..4677829e4ae30 100644
|
||||||
--- a/block/blk-cgroup.c
|
--- a/block/blk-cgroup.c
|
||||||
+++ b/block/blk-cgroup.c
|
+++ b/block/blk-cgroup.c
|
||||||
@@ -887,7 +887,6 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
|
@@ -900,7 +900,6 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
|
||||||
{
|
{
|
||||||
struct blkg_iostat_set *bis = &blkg->iostat;
|
struct blkg_iostat_set *bis = &blkg->iostat;
|
||||||
u64 rbytes, wbytes, rios, wios, dbytes, dios;
|
u64 rbytes, wbytes, rios, wios, dbytes, dios;
|
||||||
@ -33,7 +33,7 @@ index 3ee4c1217b636..0e15a93459665 100644
|
|||||||
const char *dname;
|
const char *dname;
|
||||||
unsigned seq;
|
unsigned seq;
|
||||||
int i;
|
int i;
|
||||||
@@ -913,14 +912,12 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
|
@@ -926,14 +925,12 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
|
||||||
} while (u64_stats_fetch_retry(&bis->sync, seq));
|
} while (u64_stats_fetch_retry(&bis->sync, seq));
|
||||||
|
|
||||||
if (rbytes || wbytes || rios || wios) {
|
if (rbytes || wbytes || rios || wios) {
|
||||||
@ -48,7 +48,7 @@ index 3ee4c1217b636..0e15a93459665 100644
|
|||||||
seq_printf(s, " use_delay=%d delay_nsec=%llu",
|
seq_printf(s, " use_delay=%d delay_nsec=%llu",
|
||||||
atomic_read(&blkg->use_delay),
|
atomic_read(&blkg->use_delay),
|
||||||
atomic64_read(&blkg->delay_nsec));
|
atomic64_read(&blkg->delay_nsec));
|
||||||
@@ -932,12 +929,10 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
|
@@ -945,12 +942,10 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
|
||||||
if (!blkg->pd[i] || !pol->pd_stat_fn)
|
if (!blkg->pd[i] || !pol->pd_stat_fn)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -64,10 +64,10 @@ index 3ee4c1217b636..0e15a93459665 100644
|
|||||||
|
|
||||||
static int blkcg_print_stat(struct seq_file *sf, void *v)
|
static int blkcg_print_stat(struct seq_file *sf, void *v)
|
||||||
diff --git a/block/blk-iocost.c b/block/blk-iocost.c
|
diff --git a/block/blk-iocost.c b/block/blk-iocost.c
|
||||||
index f95feabb3ca88..94d1824906c7a 100644
|
index 645a589edda82..b0846da38edad 100644
|
||||||
--- a/block/blk-iocost.c
|
--- a/block/blk-iocost.c
|
||||||
+++ b/block/blk-iocost.c
|
+++ b/block/blk-iocost.c
|
||||||
@@ -3021,13 +3021,13 @@ static void ioc_pd_free(struct blkg_policy_data *pd)
|
@@ -3028,13 +3028,13 @@ static void ioc_pd_free(struct blkg_policy_data *pd)
|
||||||
kfree(iocg);
|
kfree(iocg);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,7 +83,7 @@ index f95feabb3ca88..94d1824906c7a 100644
|
|||||||
|
|
||||||
if (iocg->level == 0) {
|
if (iocg->level == 0) {
|
||||||
unsigned vp10k = DIV64_U64_ROUND_CLOSEST(
|
unsigned vp10k = DIV64_U64_ROUND_CLOSEST(
|
||||||
@@ -3043,7 +3043,6 @@ static bool ioc_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
|
@@ -3050,7 +3050,6 @@ static bool ioc_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
|
||||||
iocg->last_stat.wait_us,
|
iocg->last_stat.wait_us,
|
||||||
iocg->last_stat.indebt_us,
|
iocg->last_stat.indebt_us,
|
||||||
iocg->last_stat.indelay_us);
|
iocg->last_stat.indelay_us);
|
||||||
|
@ -267,10 +267,10 @@ index fb09cd22cb7f5..0b2bbcce321ab 100644
|
|||||||
#if defined(CONFIG_X86_32)
|
#if defined(CONFIG_X86_32)
|
||||||
#define X86EMUL_MODE_HOST X86EMUL_MODE_PROT32
|
#define X86EMUL_MODE_HOST X86EMUL_MODE_PROT32
|
||||||
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
||||||
index 8480300c6b0a5..7527769eaf102 100644
|
index 07c71892d5ae2..ddc1d85caafea 100644
|
||||||
--- a/arch/x86/kvm/x86.c
|
--- a/arch/x86/kvm/x86.c
|
||||||
+++ b/arch/x86/kvm/x86.c
|
+++ b/arch/x86/kvm/x86.c
|
||||||
@@ -12660,6 +12660,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_vmgexit_msr_protocol_exit);
|
@@ -12681,6 +12681,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_vmgexit_msr_protocol_exit);
|
||||||
static int __init kvm_x86_init(void)
|
static int __init kvm_x86_init(void)
|
||||||
{
|
{
|
||||||
kvm_mmu_x86_module_init();
|
kvm_mmu_x86_module_init();
|
||||||
|
@ -165,10 +165,10 @@ index 0767790331654..95c9ae69fbe74 100644
|
|||||||
struct vcpu_vmx *vmx = to_vmx(vcpu);
|
struct vcpu_vmx *vmx = to_vmx(vcpu);
|
||||||
int ret;
|
int ret;
|
||||||
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
||||||
index 7527769eaf102..8e41ac79dc626 100644
|
index ddc1d85caafea..8ad244a03a1fd 100644
|
||||||
--- a/arch/x86/kvm/x86.c
|
--- a/arch/x86/kvm/x86.c
|
||||||
+++ b/arch/x86/kvm/x86.c
|
+++ b/arch/x86/kvm/x86.c
|
||||||
@@ -7454,9 +7454,9 @@ static void emulator_exiting_smm(struct x86_emulate_ctxt *ctxt)
|
@@ -7475,9 +7475,9 @@ static void emulator_exiting_smm(struct x86_emulate_ctxt *ctxt)
|
||||||
}
|
}
|
||||||
|
|
||||||
static int emulator_leave_smm(struct x86_emulate_ctxt *ctxt,
|
static int emulator_leave_smm(struct x86_emulate_ctxt *ctxt,
|
||||||
@ -180,7 +180,7 @@ index 7527769eaf102..8e41ac79dc626 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void emulator_triple_fault(struct x86_emulate_ctxt *ctxt)
|
static void emulator_triple_fault(struct x86_emulate_ctxt *ctxt)
|
||||||
@@ -9335,25 +9335,25 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
@@ -9356,25 +9356,25 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
||||||
struct kvm_segment cs, ds;
|
struct kvm_segment cs, ds;
|
||||||
struct desc_ptr dt;
|
struct desc_ptr dt;
|
||||||
unsigned long cr0;
|
unsigned long cr0;
|
||||||
|
@ -145,10 +145,10 @@ index ae6f89b79ef29..36c45c89563cf 100644
|
|||||||
if (ret != X86EMUL_CONTINUE)
|
if (ret != X86EMUL_CONTINUE)
|
||||||
goto emulate_shutdown;
|
goto emulate_shutdown;
|
||||||
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
||||||
index 8e41ac79dc626..0acb461d84612 100644
|
index 8ad244a03a1fd..3605b9f74fd66 100644
|
||||||
--- a/arch/x86/kvm/x86.c
|
--- a/arch/x86/kvm/x86.c
|
||||||
+++ b/arch/x86/kvm/x86.c
|
+++ b/arch/x86/kvm/x86.c
|
||||||
@@ -9189,22 +9189,18 @@ static u32 enter_smm_get_segment_flags(struct kvm_segment *seg)
|
@@ -9210,22 +9210,18 @@ static u32 enter_smm_get_segment_flags(struct kvm_segment *seg)
|
||||||
return flags;
|
return flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -179,7 +179,7 @@ index 8e41ac79dc626..0acb461d84612 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_X86_64
|
#ifdef CONFIG_X86_64
|
||||||
@@ -9225,54 +9221,47 @@ static void enter_smm_save_seg_64(struct kvm_vcpu *vcpu, char *buf, int n)
|
@@ -9246,54 +9242,47 @@ static void enter_smm_save_seg_64(struct kvm_vcpu *vcpu, char *buf, int n)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -257,7 +257,7 @@ index 8e41ac79dc626..0acb461d84612 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_X86_64
|
#ifdef CONFIG_X86_64
|
||||||
@@ -9343,7 +9332,7 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
@@ -9364,7 +9353,7 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
||||||
enter_smm_save_state_64(vcpu, (char *)&smram);
|
enter_smm_save_state_64(vcpu, (char *)&smram);
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
|
@ -154,10 +154,10 @@ index 36c45c89563cf..eb2f5e43f6add 100644
|
|||||||
#endif
|
#endif
|
||||||
ret = rsm_load_state_32(ctxt, &smram.smram32);
|
ret = rsm_load_state_32(ctxt, &smram.smram32);
|
||||||
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
||||||
index 0acb461d84612..28448379eabaa 100644
|
index 3605b9f74fd66..47ecc9976f9c5 100644
|
||||||
--- a/arch/x86/kvm/x86.c
|
--- a/arch/x86/kvm/x86.c
|
||||||
+++ b/arch/x86/kvm/x86.c
|
+++ b/arch/x86/kvm/x86.c
|
||||||
@@ -9204,20 +9204,17 @@ static void enter_smm_save_seg_32(struct kvm_vcpu *vcpu,
|
@@ -9225,20 +9225,17 @@ static void enter_smm_save_seg_32(struct kvm_vcpu *vcpu,
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_X86_64
|
#ifdef CONFIG_X86_64
|
||||||
@ -185,7 +185,7 @@ index 0acb461d84612..28448379eabaa 100644
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -9265,57 +9262,51 @@ static void enter_smm_save_state_32(struct kvm_vcpu *vcpu, struct kvm_smram_stat
|
@@ -9286,57 +9283,51 @@ static void enter_smm_save_state_32(struct kvm_vcpu *vcpu, struct kvm_smram_stat
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_X86_64
|
#ifdef CONFIG_X86_64
|
||||||
@ -268,7 +268,7 @@ index 0acb461d84612..28448379eabaa 100644
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -9329,7 +9320,7 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
@@ -9350,7 +9341,7 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
||||||
memset(smram.bytes, 0, sizeof(smram.bytes));
|
memset(smram.bytes, 0, sizeof(smram.bytes));
|
||||||
#ifdef CONFIG_X86_64
|
#ifdef CONFIG_X86_64
|
||||||
if (guest_cpuid_has(vcpu, X86_FEATURE_LM))
|
if (guest_cpuid_has(vcpu, X86_FEATURE_LM))
|
||||||
|
@ -128,10 +128,10 @@ index 3b37b3e173791..a64c190abf28f 100644
|
|||||||
__CHECK_SMRAM64_OFFSET(auto_hlt_restart, 0xFEC9);
|
__CHECK_SMRAM64_OFFSET(auto_hlt_restart, 0xFEC9);
|
||||||
__CHECK_SMRAM64_OFFSET(reserved2, 0xFECA);
|
__CHECK_SMRAM64_OFFSET(reserved2, 0xFECA);
|
||||||
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
||||||
index 28448379eabaa..df7b24fd7abcd 100644
|
index 47ecc9976f9c5..238d197024aee 100644
|
||||||
--- a/arch/x86/kvm/x86.c
|
--- a/arch/x86/kvm/x86.c
|
||||||
+++ b/arch/x86/kvm/x86.c
|
+++ b/arch/x86/kvm/x86.c
|
||||||
@@ -7441,6 +7441,11 @@ static void emulator_set_nmi_mask(struct x86_emulate_ctxt *ctxt, bool masked)
|
@@ -7462,6 +7462,11 @@ static void emulator_set_nmi_mask(struct x86_emulate_ctxt *ctxt, bool masked)
|
||||||
static_call(kvm_x86_set_nmi_mask)(emul_to_vcpu(ctxt), masked);
|
static_call(kvm_x86_set_nmi_mask)(emul_to_vcpu(ctxt), masked);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -143,7 +143,7 @@ index 28448379eabaa..df7b24fd7abcd 100644
|
|||||||
static unsigned emulator_get_hflags(struct x86_emulate_ctxt *ctxt)
|
static unsigned emulator_get_hflags(struct x86_emulate_ctxt *ctxt)
|
||||||
{
|
{
|
||||||
return emul_to_vcpu(ctxt)->arch.hflags;
|
return emul_to_vcpu(ctxt)->arch.hflags;
|
||||||
@@ -7510,6 +7515,7 @@ static const struct x86_emulate_ops emulate_ops = {
|
@@ -7531,6 +7536,7 @@ static const struct x86_emulate_ops emulate_ops = {
|
||||||
.guest_has_fxsr = emulator_guest_has_fxsr,
|
.guest_has_fxsr = emulator_guest_has_fxsr,
|
||||||
.guest_has_rdpid = emulator_guest_has_rdpid,
|
.guest_has_rdpid = emulator_guest_has_rdpid,
|
||||||
.set_nmi_mask = emulator_set_nmi_mask,
|
.set_nmi_mask = emulator_set_nmi_mask,
|
||||||
@ -151,7 +151,7 @@ index 28448379eabaa..df7b24fd7abcd 100644
|
|||||||
.get_hflags = emulator_get_hflags,
|
.get_hflags = emulator_get_hflags,
|
||||||
.exiting_smm = emulator_exiting_smm,
|
.exiting_smm = emulator_exiting_smm,
|
||||||
.leave_smm = emulator_leave_smm,
|
.leave_smm = emulator_leave_smm,
|
||||||
@@ -9259,6 +9265,8 @@ static void enter_smm_save_state_32(struct kvm_vcpu *vcpu, struct kvm_smram_stat
|
@@ -9280,6 +9286,8 @@ static void enter_smm_save_state_32(struct kvm_vcpu *vcpu, struct kvm_smram_stat
|
||||||
smram->cr4 = kvm_read_cr4(vcpu);
|
smram->cr4 = kvm_read_cr4(vcpu);
|
||||||
smram->smm_revision = 0x00020000;
|
smram->smm_revision = 0x00020000;
|
||||||
smram->smbase = vcpu->arch.smbase;
|
smram->smbase = vcpu->arch.smbase;
|
||||||
@ -160,7 +160,7 @@ index 28448379eabaa..df7b24fd7abcd 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_X86_64
|
#ifdef CONFIG_X86_64
|
||||||
@@ -9307,6 +9315,8 @@ static void enter_smm_save_state_64(struct kvm_vcpu *vcpu, struct kvm_smram_stat
|
@@ -9328,6 +9336,8 @@ static void enter_smm_save_state_64(struct kvm_vcpu *vcpu, struct kvm_smram_stat
|
||||||
enter_smm_save_seg_64(vcpu, &smram->ds, VCPU_SREG_DS);
|
enter_smm_save_seg_64(vcpu, &smram->ds, VCPU_SREG_DS);
|
||||||
enter_smm_save_seg_64(vcpu, &smram->fs, VCPU_SREG_FS);
|
enter_smm_save_seg_64(vcpu, &smram->fs, VCPU_SREG_FS);
|
||||||
enter_smm_save_seg_64(vcpu, &smram->gs, VCPU_SREG_GS);
|
enter_smm_save_seg_64(vcpu, &smram->gs, VCPU_SREG_GS);
|
||||||
@ -169,7 +169,7 @@ index 28448379eabaa..df7b24fd7abcd 100644
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -9343,6 +9353,8 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
@@ -9364,6 +9374,8 @@ static void enter_smm(struct kvm_vcpu *vcpu)
|
||||||
kvm_set_rflags(vcpu, X86_EFLAGS_FIXED);
|
kvm_set_rflags(vcpu, X86_EFLAGS_FIXED);
|
||||||
kvm_rip_write(vcpu, 0x8000);
|
kvm_rip_write(vcpu, 0x8000);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user