<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/csky/include, branch linux-5.13.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.13.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.13.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-04-28T15:02:23Z</updated>
<entry>
<title>csky: uaccess.h: Coding convention with asm generic</title>
<updated>2021-04-28T15:02:23Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-04-21T08:03:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e58a41c2226847fb1446f3942dc1b55af8acfe02'/>
<id>urn:sha1:e58a41c2226847fb1446f3942dc1b55af8acfe02</id>
<content type='text'>
Using asm-generic/uaccess.h to prevent duplicated code:
 - Add user_addr_max which mentioned in generic uaccess.h
 - Remove custom definitions of KERNEL/USER_DS, get/set_fs,
   uaccess_kerenl
 - Using generic extable.h instead of custom definitions in
   uaccess.h

Change v2:
 - Fixup tinyconfig compile error, "__put_user_bad"
 - Add __get_user_asm_64

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
Link: https://lore.kernel.org/linux-csky/CAK8P3a1DvsXSEDoovLk11hzNHyJi7vqNoToU+n5aFi2viZO_Uw@mail.gmail.com/T/#mbcd58a0e3450e5598974116b607589afa16a3ab7
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>csky: Fixup typos</title>
<updated>2021-04-20T01:58:29Z</updated>
<author>
<name>Junlin Yang</name>
</author>
<published>2021-03-06T03:23:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0b1f557a1fa02174a982f557581e348d91987ec6'/>
<id>urn:sha1:0b1f557a1fa02174a982f557581e348d91987ec6</id>
<content type='text'>
fixes three typos found by codespell.

Signed-off-by: Junlin Yang &lt;yangjunlin@yulong.com&gt;
Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
</content>
</entry>
<entry>
<title>csky: change a Kconfig symbol name to fix e1000 build error</title>
<updated>2021-04-16T23:10:36Z</updated>
<author>
<name>Randy Dunlap</name>
</author>
<published>2021-04-16T22:46:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d199161653d612b8fb96ac51bfd5b2d2782ecef3'/>
<id>urn:sha1:d199161653d612b8fb96ac51bfd5b2d2782ecef3</id>
<content type='text'>
e1000's #define of CONFIG_RAM_BASE conflicts with a Kconfig symbol in
arch/csky/Kconfig.

The symbol in e1000 has been around longer, so change arch/csky/ to use
DRAM_BASE instead of RAM_BASE to remove the conflict.  (although e1000
is also a 2-line change)

Link: https://lkml.kernel.org/r/20210411055335.7111-1-rdunlap@infradead.org
Signed-off-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Acked-by: Guo Ren &lt;guoren@kernel.org&gt;
Cc: Jesse Brandeburg &lt;jesse.brandeburg@intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>csky: Fixup compile error</title>
<updated>2021-02-27T14:04:14Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-02-27T14:00:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6607aa6f6b68fc9b5955755f1b1be125cf2a9d03'/>
<id>urn:sha1:6607aa6f6b68fc9b5955755f1b1be125cf2a9d03</id>
<content type='text'>
: error: C++ style comments are not allowed in ISO C90
 // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
 ^
error: (this will be reported only once per input file)

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
</content>
</entry>
<entry>
<title>csky: Add VDSO with GENERIC_GETTIMEOFDAY, GENERIC_TIME_VSYSCALL, HAVE_GENERIC_VDSO</title>
<updated>2021-02-27T08:35:09Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-01-17T15:38:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0d3b051adbb72ed81956447d0d1e54d5943ee6f5'/>
<id>urn:sha1:0d3b051adbb72ed81956447d0d1e54d5943ee6f5</id>
<content type='text'>
It could help to reduce the latency of the time-related functions
in user space.

We have referenced arm's and riscv's implementation for the patch.

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
Cc: Vincent Chen &lt;vincent.chen@sifive.com&gt;
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>csky: Fixup swapon</title>
<updated>2021-02-27T08:32:54Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-01-13T07:28:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af94002bda1d94f667706b6369ca1e718f32a072'/>
<id>urn:sha1:af94002bda1d94f667706b6369ca1e718f32a072</id>
<content type='text'>
Current csky's swappon is broken by wrong swap PTE entry format.
Now redesign the new format for abiv1 &amp; abiv2 and make swappon +
zram work properly on csky machines.

C-SKY PTE has VALID, DIRTY to emulate PRESENT, READ, WRITE, EXEC
attributes. GLOBAL bit is shared by two pages in the same tlb
entry. So we need to keep GLOBAL, VALID, PRESENT zero in swp_pte.

To distinguish PAGE_NONE and swp_pte, we need to use an additional
bit (abiv1 is _PAGE_READ, abiv2 is _PAGE_WRITE).

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>csky: pgtable.h: Coding convention</title>
<updated>2021-02-27T08:22:42Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-01-11T15:02:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a8fac05acf38bdd1ab5aaf86dba7d0b2b0c05dd6'/>
<id>urn:sha1:a8fac05acf38bdd1ab5aaf86dba7d0b2b0c05dd6</id>
<content type='text'>
C-SKY page table attributes only have 'Dirty' and 'Valid' to
emulate 'PRESENT, READ, WRITE, EXEC, DIRTY, ACCESSED'.

This patch cleanup unnecessary definition.

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>csky: Fixup _PAGE_ACCESSED for default pgprot</title>
<updated>2021-01-12T03:08:25Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-01-11T12:16:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5e144c42ee683a771b96239f76d44243a4632094'/>
<id>urn:sha1:5e144c42ee683a771b96239f76d44243a4632094</id>
<content type='text'>
When the system memory is exhausted, linux will trigger kswapd to
shrink memory page cache. We found the csky's .text file mapping
pages would be reclaimed earlier than arm's elf. Because csky
doesn't give _PAGE_ACCESSED for default pgprot and in zap_pte_range

if (pte_young(ptent) &amp;&amp;
    likely(!(vma-&gt;vm_flags &amp; VM_SEQ_READ)))
        mark_page_accessed(page);

mark_page_accessed will put the pages into active lru list.

[    3.652722] delete busybox page from inactive file list
Call Trace:
[&lt;9012a376&gt;] dump_stack+0xe/0x24
[&lt;9012a370&gt;] dump_stack+0x8/0x24
[&lt;9005b780&gt;] activate_page+0x2b4/0x2d4
[&lt;90132502&gt;] vsnprintf+0x2c6/0x374
[&lt;9005b880&gt;] mark_page_accessed+0xe0/0x150
[&lt;9006903e&gt;] unmap_page_range+0x166/0x33c
[&lt;90021844&gt;] get_signal+0x98/0x3b4
[&lt;90069232&gt;] unmap_single_vma+0x1e/0x24
[&lt;90069462&gt;] unmap_vmas+0x26/0x40
[&lt;9006d3d8&gt;] exit_mmap+0x60/0xbc
[&lt;9006a140&gt;] handle_mm_fault+0x700/0xcec
[&lt;900426b2&gt;] ktime_get_with_offset+0x86/0x130
[&lt;90017566&gt;] mmput+0x2e/0x90
[&lt;9001a30a&gt;] do_exit+0x13e/0x6f0
[&lt;90015448&gt;] page_fault_end+0x14/0x74
[&lt;9001b4bc&gt;] SyS_exit_group+0x0/0xc
[&lt;9001b47c&gt;] do_group_exit+0x2c/0x6c
[&lt;9001b4c8&gt;] __wake_up_parent+0x0/0x20
[&lt;9001399e&gt;] csky_systemcall+0x6e/0x72

csky will throw the pages at first and keep them in active lru
list later after real accessed, but arm would keep them in active
lru list at the beginning.

The following are statistics of different architecture styles:

Default _PAGE_ACCESSED: alpha, arm, arm64, ia64, m68k, microblaze,
			openrisc, powerpc, riscv, sh, um, x86,
			xtensa
Not def _PAGE_ACCESSED: arc, c6x, h8300, hexgon, mips, s390, nds32,
			nios2, parisc, sparc

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
Co-developed-by: Xu Kai &lt;xukai@nationalchip.com&gt;
Signed-off-by: Xu Kai &lt;xukai@nationalchip.com&gt;
</content>
</entry>
<entry>
<title>csky: remove unused including &lt;linux/version.h&gt;</title>
<updated>2021-01-12T01:52:41Z</updated>
<author>
<name>Tian Tao</name>
</author>
<published>2020-12-30T08:20:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f1f61c971aa639f37eb2ddd917a5e3effc3fdcd3'/>
<id>urn:sha1:f1f61c971aa639f37eb2ddd917a5e3effc3fdcd3</id>
<content type='text'>
Remove including &lt;linux/version.h&gt; that don't need it.

Signed-off-by: Tian Tao &lt;tiantao6@hisilicon.com&gt;
Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
</content>
</entry>
<entry>
<title>csky: Reconstruct VDSO framework</title>
<updated>2021-01-12T01:52:41Z</updated>
<author>
<name>Guo Ren</name>
</author>
<published>2021-01-04T03:37:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=87f3248cdb9aeac35129cb4337ce541a945cb35c'/>
<id>urn:sha1:87f3248cdb9aeac35129cb4337ce541a945cb35c</id>
<content type='text'>
Reconstruct vdso framework to support future vsyscall,
vgettimeofday features. These are very important features to reduce
system calls into the kernel for performance improvement.

The patch is reference RISC-V's

Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;
Cc: Palmer Dabbelt &lt;palmerdabbelt@google.com&gt;
</content>
</entry>
</feed>
