Merge tag 'powerpc-4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
Pull powerpc updates from Michael Ellerman: "Highlights: - Major rework of Book3S 64-bit exception vectors (Nicholas Piggin) - Use gas sections for arranging exception vectors et. al. - Large set of TM cleanups and selftests (Cyril Bur) - Enable transactional memory (TM) lazily for userspace (Cyril Bur) - Support for XZ compression in the zImage wrapper (Oliver O'Halloran) - Add support for bpf constant blinding (Naveen N. Rao) - Beginnings of upstream support for PA Semi Nemo motherboards (Darren Stevens) Fixes: - Ensure .mem(init|exit).text are within _stext/_etext (Michael Ellerman) - xmon: Don't use ld on 32-bit (Michael Ellerman) - vdso64: Use double word compare on pointers (Anton Blanchard) - powerpc/nvram: Fix an incorrect partition merge (Pan Xinhui) - powerpc: Fix usage of _PAGE_RO in hugepage (Christophe Leroy) - powerpc/mm: Update FORCE_MAX_ZONEORDER range to allow hugetlb w/4K (Aneesh Kumar K.V) - Fix memory leak in queue_hotplug_event() error path (Andrew Donnellan) - Replay hypervisor maintenance interrupt first (Nicholas Piggin) Various performance optimisations (Anton Blanchard): - Align hot loops of memset() and backwards_memcpy() - During context switch, check before setting mm_cpumask - Remove static branch prediction in atomic{, 64}_add_unless - Only disable HAVE_EFFICIENT_UNALIGNED_ACCESS on POWER7 little endian - Set default CPU type to POWER8 for little endian builds Cleanups & features: - Sparse fixes/cleanups (Daniel Axtens) - Preserve CFAR value on SLB miss caused by access to bogus address (Paul Mackerras) - Radix MMU fixups for POWER9 (Aneesh Kumar K.V) - Support for setting used_(vsr|vr|spe) in sigreturn path (for CRIU) (Simon Guo) - Optimise syscall entry for virtual, relocatable case (Nicholas Piggin) - Optimise MSR handling in exception handling (Nicholas Piggin) - Support for kexec with Radix MMU (Benjamin Herrenschmidt) - powernv EEH fixes (Russell Currey) - Suprise PCI hotplug support for powernv (Gavin Shan) - Endian/sparse fixes for powernv PCI (Gavin Shan) - Defconfig updates (Anton Blanchard) - KVM: PPC: Book3S HV: Migrate pinned pages out of CMA (Balbir Singh) - cxl: Flush PSL cache before resetting the adapter (Frederic Barrat) - cxl: replace loop with for_each_child_of_node(), remove unneeded of_node_put() (Andrew Donnellan) - Fix HV facility unavailable to use correct handler (Nicholas Piggin) - Remove unnecessary syscall trampoline (Nicholas Piggin) - fadump: Fix build break when CONFIG_PROC_VMCORE=n (Michael Ellerman) - Quieten EEH message when no adapters are found (Anton Blanchard) - powernv: Add PHB register dump debugfs handle (Russell Currey) - Use kprobe blacklist for exception handlers & asm functions (Nicholas Piggin) - Document the syscall ABI (Nicholas Piggin) - MAINTAINERS: Update cxl maintainers (Michael Neuling) - powerpc: Remove all usages of NO_IRQ (Michael Ellerman) Minor cleanups: - Andrew Donnellan, Christophe Leroy, Colin Ian King, Cyril Bur, Frederic Barrat, Pan Xinhui, PrasannaKumar Muralidharan, Rui Teng, Simon Guo" * tag 'powerpc-4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (156 commits) powerpc/bpf: Add support for bpf constant blinding powerpc/bpf: Implement support for tail calls powerpc/bpf: Introduce accessors for using the tmp local stack space powerpc/fadump: Fix build break when CONFIG_PROC_VMCORE=n powerpc: tm: Enable transactional memory (TM) lazily for userspace powerpc/tm: Add TM Unavailable Exception powerpc: Remove do_load_up_transact_{fpu,altivec} powerpc: tm: Rename transct_(*) to ck(\1)_state powerpc: tm: Always use fp_state and vr_state to store live registers selftests/powerpc: Add checks for transactional VSXs in signal contexts selftests/powerpc: Add checks for transactional VMXs in signal contexts selftests/powerpc: Add checks for transactional FPUs in signal contexts selftests/powerpc: Add checks for transactional GPRs in signal contexts selftests/powerpc: Check that signals always get delivered selftests/powerpc: Add TM tcheck helpers in C selftests/powerpc: Allow tests to extend their kill timeout selftests/powerpc: Introduce GPR asm helper header file selftests/powerpc: Move VMX stack frame macros to header file selftests/powerpc: Rework FPU stack placement macros and move to header file selftests/powerpc: Check for VSX preservation across userspace preemption ...
This commit is contained in:
@@ -27,7 +27,7 @@
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/rtas.h>
|
||||
|
||||
struct workqueue_struct *pseries_hp_wq;
|
||||
static struct workqueue_struct *pseries_hp_wq;
|
||||
|
||||
struct pseries_hp_work {
|
||||
struct work_struct work;
|
||||
@@ -377,7 +377,7 @@ static int handle_dlpar_errorlog(struct pseries_hp_errorlog *hp_elog)
|
||||
return rc;
|
||||
}
|
||||
|
||||
void pseries_hp_work_fn(struct work_struct *work)
|
||||
static void pseries_hp_work_fn(struct work_struct *work)
|
||||
{
|
||||
struct pseries_hp_work *hp_work =
|
||||
container_of(work, struct pseries_hp_work, work);
|
||||
@@ -413,6 +413,7 @@ void queue_hotplug_event(struct pseries_hp_errorlog *hp_errlog,
|
||||
queue_work(pseries_hp_wq, (struct work_struct *)work);
|
||||
} else {
|
||||
*rc = -ENOMEM;
|
||||
kfree(hp_errlog_copy);
|
||||
complete(hotplug_done);
|
||||
}
|
||||
}
|
||||
|
@@ -34,7 +34,7 @@ void request_event_sources_irqs(struct device_node *np,
|
||||
if (count > 15)
|
||||
break;
|
||||
virqs[count] = irq_create_of_mapping(&oirq);
|
||||
if (virqs[count] == NO_IRQ) {
|
||||
if (!virqs[count]) {
|
||||
pr_err("event-sources: Unable to allocate "
|
||||
"interrupt number for %s\n",
|
||||
np->full_name);
|
||||
|
@@ -119,7 +119,7 @@ static void rtas_teardown_msi_irqs(struct pci_dev *pdev)
|
||||
struct msi_desc *entry;
|
||||
|
||||
for_each_pci_msi_entry(entry, pdev) {
|
||||
if (entry->irq == NO_IRQ)
|
||||
if (!entry->irq)
|
||||
continue;
|
||||
|
||||
irq_set_msi_desc(entry->irq, NULL);
|
||||
@@ -471,7 +471,7 @@ again:
|
||||
|
||||
virq = irq_create_mapping(NULL, hwirq);
|
||||
|
||||
if (virq == NO_IRQ) {
|
||||
if (!virq) {
|
||||
pr_debug("rtas_msi: Failed mapping hwirq %d\n", hwirq);
|
||||
return -ENOSPC;
|
||||
}
|
||||
@@ -490,7 +490,7 @@ again:
|
||||
static void rtas_msi_pci_irq_fixup(struct pci_dev *pdev)
|
||||
{
|
||||
/* No LSI -> leave MSIs (if any) configured */
|
||||
if (pdev->irq == NO_IRQ) {
|
||||
if (!pdev->irq) {
|
||||
dev_dbg(&pdev->dev, "rtas_msi: no LSI, nothing to do.\n");
|
||||
return;
|
||||
}
|
||||
|
@@ -156,7 +156,7 @@ static int scanlog_release(struct inode * inode, struct file * file)
|
||||
return 0;
|
||||
}
|
||||
|
||||
const struct file_operations scanlog_fops = {
|
||||
static const struct file_operations scanlog_fops = {
|
||||
.owner = THIS_MODULE,
|
||||
.read = scanlog_read,
|
||||
.write = scanlog_write,
|
||||
|
@@ -114,7 +114,7 @@ static void pseries_8259_cascade(struct irq_desc *desc)
|
||||
struct irq_chip *chip = irq_desc_get_chip(desc);
|
||||
unsigned int cascade_irq = i8259_irq();
|
||||
|
||||
if (cascade_irq != NO_IRQ)
|
||||
if (cascade_irq)
|
||||
generic_handle_irq(cascade_irq);
|
||||
|
||||
chip->irq_eoi(&desc->irq_data);
|
||||
@@ -141,7 +141,7 @@ static void __init pseries_setup_i8259_cascade(void)
|
||||
}
|
||||
|
||||
cascade = irq_of_parse_and_map(found, 0);
|
||||
if (cascade == NO_IRQ) {
|
||||
if (!cascade) {
|
||||
printk(KERN_ERR "pic: failed to map cascade interrupt");
|
||||
return;
|
||||
}
|
||||
|
Reference in New Issue
Block a user