On Thu, 11 Jul 2019, wen.yan...@zte.com.cn wrote:
> > > we developed a coccinelle script to detect such problems.
> >
> > Would you find the implementation of the function “dt_init_idle_driver”
> > suspicious according to discussed source code search patterns?
> > https://git.kernel.org/pub/scm/
> > we developed a coccinelle script to detect such problems.
>
> Would you find the implementation of the function “dt_init_idle_driver”
> suspicious according to discussed source code search patterns?
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/cpuidle/dt_id
>
> Hi Shengjiu,
>
> Mostly looks good to me, just some small comments.
>
> On Mon, Jul 08, 2019 at 02:38:52PM +0800, shengjiu.w...@nxp.com wrote:
>
> > +static void fsl_esai_hw_reset(unsigned long arg) {
> > + struct fsl_esai *esai_priv = (struct fsl_esai *)arg;
> > + u32 saisr, tfcr
On Wed, Jul 10, 2019 at 10:47:34AM -0300, Jason Gunthorpe wrote:
> On Tue, Jul 09, 2019 at 01:55:28PM -0500, janani wrote:
>
> > > +int kvmppc_hmm_init(void)
> > > +{
> > > + int ret = 0;
> > > + unsigned long size;
> > > +
> > > + size = kvmppc_get_secmem_size();
> > > + if (!size) {
> > > +
Hi Maddy,
Madhavan Srinivasan writes:
> diff --git a/arch/powerpc/platforms/powernv/opal-imc.c
> b/arch/powerpc/platforms/powernv/opal-imc.c
> index 186109bdd41b..e04b20625cb9 100644
> --- a/arch/powerpc/platforms/powernv/opal-imc.c
> +++ b/arch/powerpc/platforms/powernv/opal-imc.c
> @@ -69,20 +
This implements the tricky tracing and soft irq handling bits in C,
leaving the low level bit to asm.
A functional difference is that this redirects the interrupt exit to
a return stub to execute blr, rather than the lr address itself. This
is probably barely measurable on real hardware, but it ke
Idle code no longer uses the .cpu_restore CPU operation to restore
SPRs, so this workaround is no longer required.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/dt_cpu_ftrs.c | 21 +
1 file changed, 1 insertion(+), 20 deletions(-)
diff --git a/arch/powerpc/kernel/dt
On Fri, 28 Jun 2019, Finn Thain wrote:
> Hi All,
>
> I've received a bug report concerning the pata-macio driver, when running
> on a PowerBook G3 (Wallstreet).
>
> With CONFIG_PATA_MACIO=n && CONFIG_BLK_DEV_IDE_PMAC=y, everything works.
>
> With CONFIG_PATA_MACIO=y && CONFIG_BLK_DEV_IDE_PMAC=
Hi Shengjiu,
Mostly looks good to me, just some small comments.
On Mon, Jul 08, 2019 at 02:38:52PM +0800, shengjiu.w...@nxp.com wrote:
> +static void fsl_esai_hw_reset(unsigned long arg)
> +{
> + struct fsl_esai *esai_priv = (struct fsl_esai *)arg;
> + u32 saisr, tfcr, rfcr;
> + bo
Hi Christophe,
On Wed, Jul 10, 2019 at 05:09:29PM +0200, Christophe Leroy wrote:
>
>
> Le 10/07/2019 à 16:29, Sven Schnelle a écrit :
> > It had only one definition, so just use the function directly.
>
> It had only one definition because it was for ppc64 only.
> But as far as I understand (at
On Mon, Jul 08, 2019 at 02:54:52PM -0500, janani wrote:
> On 2019-06-28 15:08, Claudio Carvalho wrote:
> >From: Ram Pai
> >
> >Ultravisor is responsible for flushing the tlb cache, since it manages
> >the PATE entries. Hence skip tlb flush, if the ultravisor firmware is
> >available.
> >
> >Signed
https://bugzilla.kernel.org/show_bug.cgi?id=204125
--- Comment #4 from Segher Boessenkool (seg...@kernel.crashing.org) ---
I meant GNU userland. I don't know any project that officially support
BE ELFv2. No BE ELFv2 Linux ABI is defined, either, as far as I know.
It's great to hear that a lot o
https://bugzilla.kernel.org/show_bug.cgi?id=204125
--- Comment #5 from Daniel Kolesa (li...@octaforge.org) ---
I have an entire distro built with it. A small number of things require minor
patches. Some of these have been upstreamed, some of these are pending (for
example, to make OpenSSL assembly
https://bugzilla.kernel.org/show_bug.cgi?id=204125
--- Comment #3 from Daniel Kolesa (li...@octaforge.org) ---
Also, reported in gcc: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91135
Let's see what the compiler people have to say...
--
You are receiving this mail because:
You are watching the
https://bugzilla.kernel.org/show_bug.cgi?id=204125
--- Comment #2 from Daniel Kolesa (li...@octaforge.org) ---
ELFv2 works perfectly fine in BE userland, the musl libc *requires* ELFv2 on
both endians and glibc works okay using either. ELFv2 was defined for both
endians and there are distros that
https://bugzilla.kernel.org/show_bug.cgi?id=204125
Segher Boessenkool (seg...@kernel.crashing.org) changed:
What|Removed |Added
CC||seg...@k
Short forward and backward branches can be given number labels,
but larger significant divergences in code path a more readable
if they're given descriptive names.
Also adjusts a comment to account for guest delivery.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 14
machine_check_early_common now branches to machine_check_handle_early
which is its only caller.
Move interleaving code out of the way, and remove the branch.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 129 +--
1 file changed, 62 insertions(
Similarly to the previous change, all callers of the unrecoverable
handler run relocated so can reach it with a direct branch. This makes
it easy to move out of line, which makes the "normal" path less
cluttered and easier to follow.
MSR[ME] manipulation still requires the rfi, so that is moved ou
machine_check_handle_early_common can reach machine_check_handle_early
directly now that it runs at the relocated address, so just branch
directly.
The rfi sequence is required to enable MSR[ME] but that step is moved
into a helper function, making the code easier to follow.
Signed-off-by: Nichol
Following convention, move the tramp code (unrelocated) above the
common handlers (relocated).
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 22 +++---
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S
Follow the pattern of sreset and HMI handlers more closely: use
EXCEPTION_PROLOG_COMMON_1 rather than open-coding it, and run the
handler at the relocated location.
This helps later simplification and code sharing.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 71 +++
The powernv machine check handler copes with taking a MCE from one of
three contexts, guest, host kernel, and host user. In each case the
early handler runs first on a special stack. Then:
- The guest case branches to the KVM interrupt handler (via standard
interrupt macros).
- The host user cas
The common machine_check_event data structures and queues are mostly
platform independent, with powernv decoding SRR1/DSISR/etc., into
machine_check_event objects.
This patch converts pseries to use this infrastructure by decoding
fwnmi/rtas data into machine_check_event objects.
This allows queu
Re-use the code introduced in pseries to save and dump the contents
of the SLB in the case of an SLB involved machine check exception.
This patch also avoids allocating the SLB save array on pseries radix.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/mce.c | 6 ++
ar
Bare metal machine checks run an "early" handler in real mode before
running the main handler which reports the event.
The main handler runs exactly as a normal interrupt handler, after the
"windup" which sets registers back as they were at interrupt entry.
CFAR does not get restored by the windup
This label has only one caller, so unwind the branch and move it
inline. The location of the comment is adjusted to match similar
one in system reset.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 23 ++-
1 file changed, 10 insertions(+), 13 deleti
Now that pseries with fwnmi registered runs the early machine check
handler, there is no good reason to special case the non-fwnmi case
and skip the early handler. Reducing the code and number of paths is
a top priority for asm code, it's better to handle this in C where
possible (and the pseries e
The host kernel delivery case for powernv does RFI_TO_USER_OR_KERNEL,
but should just use RFI_TO_KERNEL which makes it clear this is not a
user case.
This is not a bug because RFI_TO_USER_OR_KERNEL deals with kernel
returns just fine.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/excep
The machine_check_handle_early hypervisor guest test is skipped if
!HVMODE or MSR[HV]=0, which is wrong for PR or nested hypervisors
that could be running a guest in this state.
Test HSTATE_IN_GUEST up front and use that to branch out to the KVM
handler, then MSR[PR] alone can test for this kernel
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 4
1 file changed, 4 deletions(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S
b/arch/powerpc/kernel/exceptions-64s.S
index db7ef8c8566f..e8734a1dfdb9 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch
fwnmi does not trigger in HV mode, so remove always-true feature test.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/kernel/exceptions-64s.S | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S
b/arch/powerpc/kernel/exceptions-64s.S
index
This series is mostly unchanged from last time, except that it
adjusts the pseries machine check handler to use machine check events
for queueing, which fixes some corner cases and allows the interrupt
code to be consolidated nicely.
Thanks,
Nick
Nicholas Piggin (16):
powerpc/64s/exception: mac
> we developed a coccinelle script to detect such problems.
Would you find the implementation of the function “dt_init_idle_driver”
suspicious according to discussed source code search patterns?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/cpuidle/dt_idle_states.
Le 10/07/2019 à 16:29, Sven Schnelle a écrit :
It had only one definition, so just use the function directly.
It had only one definition because it was for ppc64 only.
But as far as I understand (at least from the name of the new file), you
want it to be generic, don't you ? Therefore I get
On Mon, 2019-07-08 at 06:10:46 UTC, Michael Ellerman wrote:
> When CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is enabled (uncommon), we have a
> series of WARN_ON's in arch_local_irq_restore().
>
> These are "should never happen" conditions, but if they do happen they
> can flood the console and render the sy
In commit 4a7b06c157a2 ("powerpc/eeh: Handle hugepages in ioremap
space") support for using hugepages in the vmalloc and ioremap areas was
enabled for radix. Unfortunately this broke EEH MMIO error checking.
Detection works by inserting a hook which checks the results of the
ioreadXX() set of func
On Fri, 2019-07-05 at 10:01:43 UTC, Masahiro Yamada wrote:
> The next commit will make the way of passing CONFIG options more robust.
> Unfortunately, it would uncover another hidden issue; without this
> commit, skiroot_defconfig would be broken like this:
>
> | WRAParch/powerpc/boot/zImage
On Wed, 2019-06-05 at 11:15:45 UTC, Frederic Barrat wrote:
> From: Alastair D'Silva
>
> The OpenCAPI discovery and configuration specification has been
> updated and introduces version 1.1 of the AFU descriptor template,
> with new fields to better define the memory layout of an OpenCAPI
> adapte
Le 10/07/2019 à 16:29, Sven Schnelle a écrit :
It wasn't used anywhere, so lets drop it.
And also, it is already defined in asm-generic/module.h
Signed-off-by: Sven Schnelle
Reviewed-by: Christophe Leroy
---
kernel/kexec_elf.c | 4
1 file changed, 4 deletions(-)
diff --git
Le 10/07/2019 à 16:29, Sven Schnelle a écrit :
base was never unsigned, so we can remove it.
Do you mean never assigned ?
Signed-off-by: Sven Schnelle
Reviewed-by: Christophe Leroy
---
kernel/kexec_elf.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/
We're not using them, so we can drop the parsing.
Signed-off-by: Sven Schnelle
---
include/linux/kexec.h | 1 -
kernel/kexec_elf.c| 137 --
2 files changed, 138 deletions(-)
diff --git a/include/linux/kexec.h b/include/linux/kexec.h
index da2a6b1d69
base was never unsigned, so we can remove it.
Signed-off-by: Sven Schnelle
---
kernel/kexec_elf.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/kernel/kexec_elf.c b/kernel/kexec_elf.c
index b7e47ddd7cad..a56ec5481e71 100644
--- a/kernel/kexec_elf.c
+++ b/kernel/kexec
It had only one definition, so just use the function directly.
Signed-off-by: Sven Schnelle
---
kernel/kexec_elf.c | 20 +---
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/kernel/kexec_elf.c b/kernel/kexec_elf.c
index 70d31b8feeae..99e6d63b5dfc 100644
--- a/kerne
It's not used anywhere so just drop it.
Signed-off-by: Sven Schnelle
---
kernel/kexec_elf.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/kernel/kexec_elf.c b/kernel/kexec_elf.c
index effe9dc0b055..70d31b8feeae 100644
--- a/kernel/kexec_elf.c
+++ b/kernel/kexec_elf.c
@@ -8,8 +8,6 @@
#inc
Change the order to have a 64/32/16 order, no functional change.
Signed-off-by: Sven Schnelle
---
kernel/kexec_elf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/kernel/kexec_elf.c b/kernel/kexec_elf.c
index 6e9f52171ede..76e7df64d715 100644
--- a/kernel/kexec
Right now powerpc provides an implementation to read elf files
with the kexec_file() syscall. Make that available as a public
kexec interface so it can be re-used on other architectures.
Signed-off-by: Sven Schnelle
---
arch/Kconfig | 3 +
arch/powerpc/Kconfig
It wasn't used anywhere, so lets drop it.
Signed-off-by: Sven Schnelle
---
kernel/kexec_elf.c | 4
1 file changed, 4 deletions(-)
diff --git a/kernel/kexec_elf.c b/kernel/kexec_elf.c
index 99e6d63b5dfc..b7e47ddd7cad 100644
--- a/kernel/kexec_elf.c
+++ b/kernel/kexec_elf.c
@@ -8,10 +8,6 @@
Hi List,
this is the same changeset as v2, but (hopefully) with git format-patch -C.
Changes to v2:
- use git format-patch -C
Changes to v1:
- split up patch into smaller pieces
- rebase onto powerpc/next
- remove unused variable in kexec_elf_load()
Changes to RFC version:
- remove unused
Hi Christophe,
On Wed, Jul 10, 2019 at 01:19:13PM +, Christophe Leroy wrote:
> Hi Sven,
>
> On 07/09/2019 07:43 PM, Sven Schnelle wrote:
> > Right now powerpc provides an implementation to read elf files
> > with the kexec_file() syscall. Make that available as a public
> > kexec interface so
On Wed, Jul 10, 2019 at 03:20:18PM +1000, Suraj Jitindar Singh wrote:
> The virtual real mode addressing (VRMA) mechanism is used when a
> partition is using HPT (Hash Page Table) translation and performs
> real mode accesses (MSR[IR|DR] = 0) in non-hypervisor mode. In this
> mode effective address
On Wed, Jul 10, 2019 at 08:24:56AM -0500, janani wrote:
> On 2019-07-09 05:25, Bharata B Rao wrote:
> > From: Anshuman Khandual
> >
> > CONFIG_PPC_UV adds support for ultravisor.
> >
> > Signed-off-by: Anshuman Khandual
> > Signed-off-by: Bharata B Rao
> > Signed-off-by: Ram Pai
> > [ Update
On Tue, Jul 09, 2019 at 01:55:28PM -0500, janani wrote:
> > +int kvmppc_hmm_init(void)
> > +{
> > + int ret = 0;
> > + unsigned long size;
> > +
> > + size = kvmppc_get_secmem_size();
> > + if (!size) {
> > + ret = -ENODEV;
> > + goto out;
> > + }
> > +
> > + kvmppc
On 2019-07-09 05:25, Bharata B Rao wrote:
Add support for reset of secure guest via a new ioctl KVM_PPC_SVM_OFF.
This ioctl will be issued by QEMU during reset and includes the
the following steps:
- Ask UV to terminate the guest via UV_SVM_TERMINATE ucall
- Unpin the VPA pages so that they can
https://bugzilla.kernel.org/show_bug.cgi?id=204125
Bug ID: 204125
Summary: FTBFS on ppc64 big endian and gcc9 because of
-mcall-aixdesc and missing __linux__
Product: Platform Specific/Hardware
Version: 2.5
Kernel Version: any
Hi Sven,
On 07/09/2019 07:43 PM, Sven Schnelle wrote:
Right now powerpc provides an implementation to read elf files
with the kexec_file() syscall. Make that available as a public
kexec interface so it can be re-used on other architectures.
Signed-off-by: Sven Schnelle
---
arch/Kconfig
On 2019-07-09 05:25, Bharata B Rao wrote:
From: Anshuman Khandual
CONFIG_PPC_UV adds support for ultravisor.
Signed-off-by: Anshuman Khandual
Signed-off-by: Bharata B Rao
Signed-off-by: Ram Pai
[ Update config help and commit message ]
Signed-off-by: Claudio Carvalho
Reviewed-by: Janani
On Tuesday, July 9, 2019 10:12:05 AM CEST Viresh Kumar wrote:
> On 09-07-19, 16:04, Wen Yang wrote:
> > The cpu variable is still being used in the of_get_property() call
> > after the of_node_put() call, which may result in use-after-free.
> >
> > Fixes: a9acc26b75f ("cpufreq/pasemi: fix possible
On Wed, 10 Jul 2019 04:39:46 +0200,
Hariprasad Kelam wrote:
>
> This patch fixes below issue reported by coccicheck
> sound/ppc/snd_ps3.c:631:5-8: Unneeded variable: "ret". Return "0" on
> line 668
>
> We cannot change return type of snd_ps3_pcm_trigger as it is registered
> with snd_pcm_ops->tri
> we developed a coccinelle script to detect such problems.
How do you think about to give any attribution to this development software
in your commit descriptions?
> After a period of testing, we will send it to the LMKL mailing list later.
I am also curious then on how this area will evolve f
Is a final patch available for testing? Please do not release it without
testing.
- Christian
On 09-07-19, 16:04, Wen Yang wrote:
> The cpu variable is still being used in the of_get_property() call
> after the of_node_put() call, which may result in use-after-free.
>
> Fixes: a9acc26b75f ("cpu
> > The immr_node variable is still being used after the of_node_put() call,
> > which may result in use-after-free.
>
> Was any known source code analysis tool involved to point such
> a questionable implementation detail out for further software
> development considerations?
Hi Markus,
we deve
On Wed, Jul 10, 2019 at 03:20:18PM +1000, Suraj Jitindar Singh wrote:
> The virtual real mode addressing (VRMA) mechanism is used when a
> partition is using HPT (Hash Page Table) translation and performs
> real mode accesses (MSR[IR|DR] = 0) in non-hypervisor mode. In this
> mode effective address
> The immr_node variable is still being used after the of_node_put() call,
> which may result in use-after-free.
Was any known source code analysis tool involved to point such
a questionable implementation detail out for further software
development considerations?
Regards,
Markus
64 matches
Mail list logo