<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/mips/kernel, branch linux-3.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.17.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.17.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2014-12-06T23:57:13Z</updated>
<entry>
<title>MIPS: fix EVA &amp; non-SMP non-FPU FP context signal handling</title>
<updated>2014-12-06T23:57:13Z</updated>
<author>
<name>Paul Burton</name>
</author>
<published>2014-10-28T11:25:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b3d278918b1fb4003f942a66b19749073b920747'/>
<id>urn:sha1:b3d278918b1fb4003f942a66b19749073b920747</id>
<content type='text'>
commit 14fa12df1d6bc1d3389a0fa842e0ebd8e8a9af26 upstream.

The save_fp_context &amp; restore_fp_context pointers were being assigned
to the wrong variables if either:

  - The kernel is configured for UP &amp; runs on a system without an FPU,
    since b2ead5282885 "MIPS: Move &amp; rename
    fpu_emulator_{save,restore}_context".

  - The kernel is configured for EVA, since ca750649e08c "MIPS: kernel:
    signal: Prevent save/restore FPU context in user memory".

This would lead to FP context being clobbered incorrectly when setting
up a sigcontext, then the garbage values being saved uselessly when
returning from the signal.

Fix by swapping the pointer assignments appropriately.

Signed-off-by: Paul Burton &lt;paul.burton@imgtec.com&gt;
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/8230/
Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>MIPS: cpu-probe: Set the FTLB probability bit on supported cores</title>
<updated>2014-12-06T23:57:13Z</updated>
<author>
<name>Markos Chandras</name>
</author>
<published>2014-11-10T12:25:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=35508d151a2998527374a240fd1fd3e6c7d84ae5'/>
<id>urn:sha1:35508d151a2998527374a240fd1fd3e6c7d84ae5</id>
<content type='text'>
commit cf0a8aa0226da5de88011e7f30eff22a894b2f49 upstream.

Make use of the Config6/FLTBP bit to set the probability of a TLBWR
instruction to hit the FTLB or the VTLB. A value of 0 (which may be
the default value on certain cores, such as proAptiv or P5600)
means that a TLBWR instruction will never hit the VTLB which
leads to performance limitations since it effectively decreases
the number of available TLB slots.

Signed-off-by: Markos Chandras &lt;markos.chandras@imgtec.com&gt;
Reviewed-by: James Hogan &lt;james.hogan@imgtec.com&gt;
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/8368/
Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>MIPS: mcount: Adjust stack pointer for static trace in MIPS32</title>
<updated>2014-09-26T09:41:17Z</updated>
<author>
<name>Markos Chandras</name>
</author>
<published>2014-09-16T14:55:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8a574cfa2652545eb95595d38ac2a0bb501af0ae'/>
<id>urn:sha1:8a574cfa2652545eb95595d38ac2a0bb501af0ae</id>
<content type='text'>
Every mcount() call in the MIPS 32-bit kernel is done as follows:

[...]
move at, ra
jal _mcount
addiu sp, sp, -8
[...]

but upon returning from the mcount() function, the stack pointer
is not adjusted properly. This is explained in details in 58b69401c797
(MIPS: Function tracer: Fix broken function tracing).

Commit ad8c396936e3 ("MIPS: Unbreak function tracer for 64-bit kernel.)
fixed the stack manipulation for 64-bit but it didn't fix it completely
for MIPS32.

Signed-off-by: Markos Chandras &lt;markos.chandras@imgtec.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/7792/
Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
</content>
</entry>
<entry>
<title>MIPS: Wire up new syscalls getrandom and memfd_create.</title>
<updated>2014-08-26T01:03:40Z</updated>
<author>
<name>Ralf Baechle</name>
</author>
<published>2014-08-26T01:03:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=42944521af97a3b25516f15f3149aec3779656dc'/>
<id>urn:sha1:42944521af97a3b25516f15f3149aec3779656dc</id>
<content type='text'>
Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
</content>
</entry>
<entry>
<title>MIPS: CPS: Initialize EVA before bringing up VPEs from secondary cores</title>
<updated>2014-08-26T00:18:57Z</updated>
<author>
<name>Markos Chandras</name>
</author>
<published>2014-07-21T13:35:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=56d2960958f81db9cfd488e530d2206edede5f8f'/>
<id>urn:sha1:56d2960958f81db9cfd488e530d2206edede5f8f</id>
<content type='text'>
The CPS code is doing several memory loads when configuring the VPEs
from secondary cores, so the segmentation control registers must be
initialized in time otherwise the kernel will crash with strange
TLB exceptions.

Reviewed-by: Paul Burton &lt;paul.burton@imgtec.com&gt;
Signed-off-by: Markos Chandras &lt;markos.chandras@imgtec.com&gt;
Patchwork: http://patchwork.linux-mips.org/patch/7424/
Signed-off-by: James Hogan &lt;james.hogan@imgtec.com&gt;
</content>
</entry>
<entry>
<title>MIPS: scall64-o32: Fix indirect syscall detection</title>
<updated>2014-08-26T00:18:56Z</updated>
<author>
<name>Markos Chandras</name>
</author>
<published>2014-07-24T11:10:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ad61ba23f192f6d87a4e1f665f2d92ba2bae0950'/>
<id>urn:sha1:ad61ba23f192f6d87a4e1f665f2d92ba2bae0950</id>
<content type='text'>
Commit 4c21b8fd8f14 (MIPS: seccomp: Handle indirect system calls (o32))
added indirect syscall detection for O32 processes running on MIPS64
but it did not work as expected. The reason is the the scall64-o32
implementation differs compared to scall32-o32. In the former, the v0
(syscall number) register contains the absolute syscall number
(4000 + X) whereas in the latter it contains the relative syscall
number (X). Fix the code to avoid doing an extra addition, and load
the v0 register directly to the first argument for syscall_trace_enter.
Moreover, set the .reorder assembler option in order to have better
control on this part of the assembly code.

Signed-off-by: Markos Chandras &lt;markos.chandras@imgtec.com&gt;
Patchwork: http://patchwork.linux-mips.org/patch/7481/
Cc: &lt;stable@vger.kernel.org&gt; # v3.15+
Signed-off-by: James Hogan &lt;james.hogan@imgtec.com&gt;
</content>
</entry>
<entry>
<title>MIPS: perf: Mark pmu interupt IRQF_NO_THREAD</title>
<updated>2014-08-26T00:18:51Z</updated>
<author>
<name>Yang Wei</name>
</author>
<published>2014-08-05T05:37:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=014365f5831dc993ac02b8871a165c9a7bde56cc'/>
<id>urn:sha1:014365f5831dc993ac02b8871a165c9a7bde56cc</id>
<content type='text'>
In RT kernel, I ran into the following calltrace, so PMU interrupts cannot
be threaded

in_atomic(): 1, irqs_disabled(): 1, pid: 0, name: swapper/0
INFO: lockdep is turned off.
Call Trace:
[&lt;ffffffff8088595c&gt;] dump_stack+0x1c/0x50
[&lt;ffffffff801a958c&gt;] __might_sleep+0x13c/0x148
[&lt;ffffffff80891c54&gt;] rt_spin_lock+0x3c/0xb0
[&lt;ffffffff801ad29c&gt;] __wake_up+0x3c/0x80
[&lt;ffffffff80243ba4&gt;] perf_event_wakeup+0x8c/0xf8
[&lt;ffffffff80243c50&gt;] perf_pending_event+0x40/0x78
[&lt;ffffffff8023d88c&gt;] irq_work_run+0x74/0xc0
[&lt;ffffffff80152640&gt;] mipsxx_pmu_handle_shared_irq+0x110/0x228
[&lt;ffffffff8015276c&gt;] mipsxx_pmu_handle_irq+0x14/0x30
[&lt;ffffffff801ffda4&gt;] handle_irq_event_percpu+0xbc/0x470
[&lt;ffffffff80204478&gt;] handle_percpu_irq+0x98/0xc8
[&lt;ffffffff801ff284&gt;] generic_handle_irq+0x4c/0x68
[&lt;ffffffff8089748c&gt;] do_IRQ+0x2c/0x48
[&lt;ffffffff80105864&gt;] plat_irq_dispatch+0x64/0xd0

[ralf@linux-mips.org: I don't see why based on this register dump the
handler should be marked IRQF_NO_THREAD - but the handler is manipulating
per-CPU resources so we don't want it to be rescheduled to another CPU.]

Signed-off-by: Yang Wei &lt;Wei.Yang@windriver.com&gt;
Cc: a.p.zijlstra@chello.nl
Cc: paulus@samba.org
Cc: mingo@redhat.com
Cc: acme@kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/7506/
Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
</content>
</entry>
<entry>
<title>MIPS: kdump: Set correct value to kexec_indirection_page variable</title>
<updated>2014-08-25T14:33:44Z</updated>
<author>
<name>Yang Wei</name>
</author>
<published>2014-07-31T11:42:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=91ffaa27834b69dc23dfe14a0358f1c70d2938e2'/>
<id>urn:sha1:91ffaa27834b69dc23dfe14a0358f1c70d2938e2</id>
<content type='text'>
Since there is not indirection page in crash type, so the vaule of the head
field of kimage structure is not equal to the address of indirection page but
IND_DONE. so we have to set kexec_indirection_page variable to the address of
the head field of image structure.

[ralf@linux-mips.org: Don't add pointless empty line, fix trailing
whitespace damage.]

Signed-off-by: Yang Wei &lt;Wei.Yang@windriver.com&gt;
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/7499/
Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'signal-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc</title>
<updated>2014-08-09T16:58:12Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2014-08-09T16:58:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=63b12bdb0d21aca527996fb2c547387bfd3e14b8'/>
<id>urn:sha1:63b12bdb0d21aca527996fb2c547387bfd3e14b8</id>
<content type='text'>
Pull arch signal handling cleanup from Richard Weinberger:
 "This patch series moves all remaining archs to the get_signal(),
  signal_setup_done() and sigsp() functions.

  Currently these archs use open coded variants of the said functions.
  Further, unused parameters get removed from get_signal_to_deliver(),
  tracehook_signal_handler() and signal_delivered().

  At the end of the day we save around 500 lines of code."

* 'signal-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc: (43 commits)
  powerpc: Use sigsp()
  openrisc: Use sigsp()
  mn10300: Use sigsp()
  mips: Use sigsp()
  microblaze: Use sigsp()
  metag: Use sigsp()
  m68k: Use sigsp()
  m32r: Use sigsp()
  hexagon: Use sigsp()
  frv: Use sigsp()
  cris: Use sigsp()
  c6x: Use sigsp()
  blackfin: Use sigsp()
  avr32: Use sigsp()
  arm64: Use sigsp()
  arc: Use sigsp()
  sas_ss_flags: Remove nested ternary if
  Rip out get_signal_to_deliver()
  Clean up signal_delivered()
  tracehook_signal_handler: Remove sig, info, ka and regs
  ...
</content>
</entry>
<entry>
<title>Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus</title>
<updated>2014-08-07T15:47:00Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2014-08-07T15:47:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e669830526a0abaf301bf408df69cde33901ac63'/>
<id>urn:sha1:e669830526a0abaf301bf408df69cde33901ac63</id>
<content type='text'>
Pull MIPS updates from Ralf Baechle:
 "This is the main pull request for 3.17.  It contains:

   - misc Cavium Octeon, BCM47xx, BCM63xx and Alchemy  updates
   - MIPS ptrace updates and cleanups
   - various fixes that will also go to -stable
   - a number of cleanups and small non-critical fixes.
   - NUMA support for the Loongson 3.
   - more support for MSA
   - support for MAAR
   - various FP enhancements and fixes"

* 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (139 commits)
  MIPS: jz4740: remove unnecessary null test before debugfs_remove
  MIPS: Octeon: remove unnecessary null test before debugfs_remove_recursive
  MIPS: ZBOOT: implement stack protector in compressed boot phase
  MIPS: mipsreg: remove duplicate MIPS_CONF4_FTLBSETS_SHIFT
  MIPS: Bonito64: remove a duplicate define
  MIPS: Malta: initialise MAARs
  MIPS: Initialise MAARs
  MIPS: detect presence of MAARs
  MIPS: define MAAR register accessors &amp; bits
  MIPS: mark MSA experimental
  MIPS: Don't build MSA support unless it can be used
  MIPS: consistently clear MSA flags when starting &amp; copying threads
  MIPS: 16 byte align MSA vector context
  MIPS: disable preemption whilst initialising MSA
  MIPS: ensure MSA gets disabled during boot
  MIPS: fix read_msa_* &amp; write_msa_* functions on non-MSA toolchains
  MIPS: fix MSA context for tasks which don't use FP first
  MIPS: init upper 64b of vector registers when MSA is first used
  MIPS: save/disable MSA in lose_fpu
  MIPS: preserve scalar FP CSR when switching vector context
  ...
</content>
</entry>
</feed>
