Re: [GIT PULL] Please pull powerpc/linux.git powerpc-4.16-1 tag

2018-02-06 Thread Michael Ellerman
Linus Torvalds  writes:
> Hmm. This adds a
>
>static inline void pci_uevent_ers(struct pci_dev *pdev, ..
>
> to include/linux/pci.h.
>
> Why?
>
> You do realize that that header file is included by almost every
> driver out there. Why is that magical function *so* important that it
> needs to be an inline function, and those strings etc duplicated in
> every user?
>
> Yes, that header file is already full of random inline functions, but
> they are generally wrapper functions that don't really do anything,
> and in many cases ithey are also basically configurable to really do
> nothing at all so that the compiler can remove all trace of something
> that isn't enabled.
>
> This function, in contrast, is simply not that at all. I see literally
> _zero_ reason why it should be an inline in a really core file.
>
> It's not important.
>
> It's not performance critical.
>
> It's not even used by any core drivers.

All true.

> I pulled this, but honestly, this part was *GARBAGE*. I'm used to
> people always thinking that *their* code is so important that it needs
> to be front and center, but this is just ridiculous shit.

I disagree. This was just a relatively new contributor looking for somewhere to
put a function so that it could be shared between powerpc code and the PCI AER
code, and choosing the easy but wrong option.

None of us think this code is important, we're not trying to put it "front and
center", there just isn't an obvious home for this function in an existing .c
file that doesn't cause it to be built in when it's not needed.

And yeah I should have caught it in review, so I have no problem with you being
annoyed about *that*.

Anyway I'll talk to Bjorn and find a better place for it.

cheers


[GIT PULL] Please pull powerpc/linux.git powerpc-4.16-1 tag

2018-02-02 Thread Michael Ellerman
Hi Linus,

Please pull powerpc updates for 4.16.

We've added a new driver in drivers/misc, which Greg was OK for us to
merge via powerpc, though it has still resulted in a trivial
conflict in the Makefile and Kconfig.

There's also a conflict with the nvdimm tree, which you haven't merged
yet AFIACS, but also trivial (just take our deletion), and Dan is aware
of it.

And there's one change to non-powerpc PCI code, in aerdrv_core.c, which
was acked by Bjorn.

cheers


The following changes since commit ae64f9bd1d3621b5e60d7363bc20afb46aede215:

  Linux 4.15-rc2 (2017-12-03 11:01:47 -0500)

are available in the git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git 
tags/powerpc-4.16-1

for you to fetch changes up to 015eb1b89e959c9349f0a01803fb8ed1ced36f09:

  powerpc/mm/radix: Fix build error when RADIX_MMU=n (2018-01-30 20:41:30 +1100)


powerpc updates for 4.16

Highlights:

 - Enable support for memory protection keys aka "pkeys" on Power7/8/9 when
   using the hash table MMU.

 - Extend our interrupt soft masking to support masking PMU interrupts as well
   as "normal" interrupts, and then use that to implement local_t for a ~4x
   speedup vs the current atomics-based implementation.

 - A new driver "ocxl" for "Open Coherent Accelerator Processor Interface
   (OpenCAPI)" devices.

 - Support for new device tree properties on PowerVM to describe hotpluggable
   memory and devices.

 - Add support for CLOCK_{REALTIME/MONOTONIC}_COARSE to the 64-bit VDSO.

 - Freescale updates from Scott:
 "Contains fixes for CPM GPIO and an FSL PCI erratum workaround, plus a
  minor cleanup patch."

As well as quite a lot of other changes all over the place, and small fixes and
cleanups as always.

Thanks to:
  Alan Modra, Alastair D'Silva, Alexey Kardashevskiy, Alistair Popple, Andreas
  Schwab, Andrew Donnellan, Aneesh Kumar K.V, Anju T Sudhakar, Anshuman
  Khandual, Anton Blanchard, Arnd Bergmann, Balbir Singh, Benjamin
  Herrenschmidt, Bhaktipriya Shridhar, Bryant G. Ly, Cédric Le Goater,
  Christophe Leroy, Christophe Lombard, Cyril Bur, David Gibson, Desnes A. Nunes
  do Rosario, Dmitry Torokhov, Frederic Barrat, Geert Uytterhoeven, Guilherme G.
  Piccoli, Gustavo A. R. Silva, Gustavo Romero, Ivan Mikhaylov, Joakim
  Tjernlund, Joe Perches, Josh Poimboeuf, Juan J. Alvarez, Julia Cartwright,
  Kamalesh Babulal, Madhavan Srinivasan, Mahesh Salgaonkar, Mathieu Malaterre,
  Michael Bringmann, Michael Hanselmann, Michael Neuling, Nathan Fontenot,
  Naveen N. Rao, Nicholas Piggin, Paul Mackerras, Philippe Bergheaud, Ram Pai,
  Russell Currey, Santosh Sivaraj, Scott Wood, Seth Forshee, Simon Guo, Stewart
  Smith, Sukadev Bhattiprolu, Thiago Jung Bauermann, Vaibhav Jain, Vasyl
  Gomonovych.


Alan Modra (1):
  powerpc/modules: Fix alignment of .toc section in kernel modules

Alexey Kardashevskiy (2):
  powerpc/powernv/ioda: Finish removing explicit max window size check
  powerpc/powernv/idoa: Remove unnecessary pcidev from pci_dn

Andreas Schwab (1):
  macintosh/adb: Properly mark continued kernel messages

Andrew Donnellan (2):
  selftests/powerpc: Add alignment handler selftest
  powerpc/powernv: Set correct configuration space size for opencapi devices

Aneesh Kumar K.V (6):
  powerpc/mm/hugetlb: Use pte_access_permitted for hugetlb access check
  powerpc/mm/book3s/64: Add proper pte access check helper
  powerpc/mm: Add proper pte access check helper for other platforms
  powerpc/mm: Remove unused flag arg in global_invalidates
  powerpc/hash: Skip non initialized page size in init_hpte_page_sizes
  selftest/powerpc: Add additional option to mmap_bench test

Anju T Sudhakar (5):
  powerpc/perf: Remove thread_imc_pmu global variable from
  powerpc/perf: IMC code cleanup with some code refactoring
  powerpc/perf: Pass struct imc_events as a parameter to imc_parse_event()
  powerpc/powernv: Add debugfs interface for imc-mode and imc-command
  powerpc/perf: Change the data type for the variable 'ncpu' in IMC code

Anshuman Khandual (1):
  powerpc/mm: Invalidate subpage_prot() system call on radix platforms

Anton Blanchard (1):
  powerpc: Expose TSCR via sysfs

Arnd Bergmann (2):
  powerpc/mpic_timer: avoid struct timeval
  powerpc/spufs: use timespec64 for timestamps

Balbir Singh (2):
  powerpc/crash: Remove the test for cpu_online in the IPI callback
  powernv/kdump: Fix cases where the kdump kernel can get HMI's

Benjamin Herrenschmidt (10):
  powerpc: Remove DEBUG define in 64-bit early setup code
  powerpc: Reduce log level of "OPAL detected !" message
  powerpc/xive: Move definition of ESB bits
  powerpc/xive: Add interrupt flag to disable automatic EOI
  powerpc: Add aacraid and nvme to powernv_defconfig
  powerpc: Make newline in c

Re: [GIT PULL] Please pull powerpc/linux.git powerpc-4.16-1 tag

2018-02-02 Thread Linus Torvalds
Hmm. This adds a

   static inline void pci_uevent_ers(struct pci_dev *pdev, ..

to include/linux/pci.h.

Why?

You do realize that that header file is included by almost every
driver out there. Why is that magical function *so* important that it
needs to be an inline function, and those strings etc duplicated in
every user?

Yes, that header file is already full of random inline functions, but
they are generally wrapper functions that don't really do anything,
and in many cases ithey are also basically configurable to really do
nothing at all so that the compiler can remove all trace of something
that isn't enabled.

This function, in contrast, is simply not that at all. I see literally
_zero_ reason why it should be an inline in a really core file.

It's not important.

It's not performance critical.

It's not even used by any core drivers.

I pulled this, but honestly, this part was *GARBAGE*. I'm used to
people always thinking that *their* code is so important that it needs
to be front and center, but this is just ridiculous shit.

Get it fixed.

 Linus