Merge branches 'irq-urgent-for-linus' and 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq/timer fixes from Thomas Gleixner: "irq: a fix for the new hierarchical MSI interrupt handling which unbreaks PCI=n configurations. timers: a fix for the new hrtimer clock offset update mechanism to ensure that the boot time offset is respected" * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: genirq/msi: Do not use pci_msi_[un]mask_irq as default methods * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: timekeeping: Increment clock_was_set_seq in timekeeping_init()
This commit is contained in:
commit
81429a6dbc
3 changed files with 6 additions and 6 deletions
|
@ -1243,6 +1243,10 @@ static void pci_msi_domain_update_chip_ops(struct msi_domain_info *info)
|
||||||
BUG_ON(!chip);
|
BUG_ON(!chip);
|
||||||
if (!chip->irq_write_msi_msg)
|
if (!chip->irq_write_msi_msg)
|
||||||
chip->irq_write_msi_msg = pci_msi_domain_write_msg;
|
chip->irq_write_msi_msg = pci_msi_domain_write_msg;
|
||||||
|
if (!chip->irq_mask)
|
||||||
|
chip->irq_mask = pci_msi_mask_irq;
|
||||||
|
if (!chip->irq_unmask)
|
||||||
|
chip->irq_unmask = pci_msi_unmask_irq;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -228,11 +228,7 @@ static void msi_domain_update_chip_ops(struct msi_domain_info *info)
|
||||||
{
|
{
|
||||||
struct irq_chip *chip = info->chip;
|
struct irq_chip *chip = info->chip;
|
||||||
|
|
||||||
BUG_ON(!chip);
|
BUG_ON(!chip || !chip->irq_mask || !chip->irq_unmask);
|
||||||
if (!chip->irq_mask)
|
|
||||||
chip->irq_mask = pci_msi_mask_irq;
|
|
||||||
if (!chip->irq_unmask)
|
|
||||||
chip->irq_unmask = pci_msi_unmask_irq;
|
|
||||||
if (!chip->irq_set_affinity)
|
if (!chip->irq_set_affinity)
|
||||||
chip->irq_set_affinity = msi_domain_set_affinity;
|
chip->irq_set_affinity = msi_domain_set_affinity;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1251,7 +1251,7 @@ void __init timekeeping_init(void)
|
||||||
set_normalized_timespec64(&tmp, -boot.tv_sec, -boot.tv_nsec);
|
set_normalized_timespec64(&tmp, -boot.tv_sec, -boot.tv_nsec);
|
||||||
tk_set_wall_to_mono(tk, tmp);
|
tk_set_wall_to_mono(tk, tmp);
|
||||||
|
|
||||||
timekeeping_update(tk, TK_MIRROR);
|
timekeeping_update(tk, TK_MIRROR | TK_CLOCK_WAS_SET);
|
||||||
|
|
||||||
write_seqcount_end(&tk_core.seq);
|
write_seqcount_end(&tk_core.seq);
|
||||||
raw_spin_unlock_irqrestore(&timekeeper_lock, flags);
|
raw_spin_unlock_irqrestore(&timekeeper_lock, flags);
|
||||||
|
|
Loading…
Reference in a new issue