summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/libaio/libaio/00_arches.patch
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2018-04-04 14:13:15 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-05-04 13:28:02 +0100
commita6b11646a175c4193bab642e025ab314d80c438a (patch)
tree9e44937ca9a1ef035ed74f82c4d4720e49ff19c8 /meta/recipes-extended/libaio/libaio/00_arches.patch
parent57f065702e1f1435e2710c15990355033afa8594 (diff)
downloadpoky-a6b11646a175c4193bab642e025ab314d80c438a.tar.gz
libaio: update to 0.3.111
Remove: generic-arch-dectection-for-padding-defines.patch (was a backport) libaio_fix_for_x32.patch (is patching source code that no longer exists) Rebase: 00_arches.patch (drop the arm bits, as they no longer exist upstream either) (From OE-Core rev: a3d27ff5763d331c4d6c8b815af5624103311544) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended/libaio/libaio/00_arches.patch')
-rw-r--r--meta/recipes-extended/libaio/libaio/00_arches.patch194
1 files changed, 44 insertions, 150 deletions
diff --git a/meta/recipes-extended/libaio/libaio/00_arches.patch b/meta/recipes-extended/libaio/libaio/00_arches.patch
index 9d6447d98a..bec189f87c 100644
--- a/meta/recipes-extended/libaio/libaio/00_arches.patch
+++ b/meta/recipes-extended/libaio/libaio/00_arches.patch
@@ -1,11 +1,27 @@
1From ceba1e03e5b57cdae0b3b2d2c9afebc085c986d8 Mon Sep 17 00:00:00 2001
2From: Qing He <qing.he@intel.com>
3Date: Fri, 27 Aug 2010 10:15:31 +0800
4Subject: [PATCH] libaio: add new recipe
5
1Upstream-Status: Inappropriate [embedded specific] 6Upstream-Status: Inappropriate [embedded specific]
2 7
3from openembedded, added by Qing He <qing.he@intel.com> 8from openembedded, added by Qing He <qing.he@intel.com>
4 9
5Index: libaio-0.3.110/src/syscall-m68k.h 10---
6=================================================================== 11 src/syscall-m68k.h | 78 ++++++++++++++++++
12 src/syscall-mips.h | 223 +++++++++++++++++++++++++++++++++++++++++++++++++++
13 src/syscall-parisc.h | 146 +++++++++++++++++++++++++++++++++
14 src/syscall.h | 6 ++
15 4 files changed, 453 insertions(+)
16 create mode 100644 src/syscall-m68k.h
17 create mode 100644 src/syscall-mips.h
18 create mode 100644 src/syscall-parisc.h
19
20diff --git a/src/syscall-m68k.h b/src/syscall-m68k.h
21new file mode 100644
22index 0000000..f440412
7--- /dev/null 23--- /dev/null
8+++ libaio-0.3.110/src/syscall-m68k.h 24+++ b/src/syscall-m68k.h
9@@ -0,0 +1,78 @@ 25@@ -0,0 +1,78 @@
10+#define __NR_io_setup 241 26+#define __NR_io_setup 241
11+#define __NR_io_destroy 242 27+#define __NR_io_destroy 242
@@ -85,27 +101,11 @@ Index: libaio-0.3.110/src/syscall-m68k.h
85+return (type) __res; \ 101+return (type) __res; \
86+} 102+}
87+ 103+
88Index: libaio-0.3.110/src/syscall.h 104diff --git a/src/syscall-mips.h b/src/syscall-mips.h
89=================================================================== 105new file mode 100644
90--- libaio-0.3.110.orig/src/syscall.h 106index 0000000..4142499
91+++ libaio-0.3.110/src/syscall.h
92@@ -28,6 +28,12 @@
93 #include "syscall-sparc.h"
94 #elif defined(__aarch64__)
95 #include "syscall-arm64.h"
96+#elif defined(__m68k__)
97+#include "syscall-m68k.h"
98+#elif defined(__hppa__)
99+#include "syscall-parisc.h"
100+#elif defined(__mips__)
101+#include "syscall-mips.h"
102 #else
103 #warning "using generic syscall method"
104 #include "syscall-generic.h"
105Index: libaio-0.3.110/src/syscall-mips.h
106===================================================================
107--- /dev/null 107--- /dev/null
108+++ libaio-0.3.110/src/syscall-mips.h 108+++ b/src/syscall-mips.h
109@@ -0,0 +1,223 @@ 109@@ -0,0 +1,223 @@
110+/* 110+/*
111+ * This file is subject to the terms and conditions of the GNU General Public 111+ * This file is subject to the terms and conditions of the GNU General Public
@@ -330,10 +330,11 @@ Index: libaio-0.3.110/src/syscall-mips.h
330+ 330+
331+#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */ 331+#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
332+ 332+
333Index: libaio-0.3.110/src/syscall-parisc.h 333diff --git a/src/syscall-parisc.h b/src/syscall-parisc.h
334=================================================================== 334new file mode 100644
335index 0000000..ff61746
335--- /dev/null 336--- /dev/null
336+++ libaio-0.3.110/src/syscall-parisc.h 337+++ b/src/syscall-parisc.h
337@@ -0,0 +1,146 @@ 338@@ -0,0 +1,146 @@
338+/* 339+/*
339+ * Linux system call numbers. 340+ * Linux system call numbers.
@@ -481,127 +482,20 @@ Index: libaio-0.3.110/src/syscall-parisc.h
481+ return K_INLINE_SYSCALL(sname, 5, arg1, arg2, arg3, arg4, arg5); \ 482+ return K_INLINE_SYSCALL(sname, 5, arg1, arg2, arg3, arg4, arg5); \
482+} 483+}
483+ 484+
484Index: libaio-0.3.110/src/syscall-arm.h 485diff --git a/src/syscall.h b/src/syscall.h
485=================================================================== 486index 9b9e9c1..9ecd3b4 100644
486--- libaio-0.3.110.orig/src/syscall-arm.h 487--- a/src/syscall.h
487+++ libaio-0.3.110/src/syscall-arm.h 488+++ b/src/syscall.h
488@@ -114,3 +114,119 @@ type fname(type1 arg1, type2 arg2, type3 489@@ -29,6 +29,12 @@
489 return (type) __res_r0; \ 490 #include "syscall-sparc.h"
490 } 491 #elif defined(__aarch64__) || defined(__riscv)
491 492 #include "syscall-generic.h"
492+/* 493+#elif defined(__m68k__)
493+ * linux/include/asm-arm/unistd.h 494+#include "syscall-m68k.h"
494+ * 495+#elif defined(__hppa__)
495+ * Copyright (C) 2001-2005 Russell King 496+#include "syscall-parisc.h"
496+ * 497+#elif defined(__mips__)
497+ * This program is free software; you can redistribute it and/or modify 498+#include "syscall-mips.h"
498+ * it under the terms of the GNU General Public License version 2 as 499 #else
499+ * published by the Free Software Foundation. 500 #warning "using system call numbers from sys/syscall.h"
500+ * 501 #endif
501+ * Please forward _all_ changes to this file to rmk@arm.linux.org.uk,
502+ * no matter what the change is. Thanks!
503+ */
504+
505+#define __NR_OABI_SYSCALL_BASE 0x900000
506+
507+#if defined(__thumb__) || defined(__ARM_EABI__)
508+#define __NR_SYSCALL_BASE 0
509+#else
510+#define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
511+#endif
512+
513+#define __NR_io_setup (__NR_SYSCALL_BASE+243)
514+#define __NR_io_destroy (__NR_SYSCALL_BASE+244)
515+#define __NR_io_getevents (__NR_SYSCALL_BASE+245)
516+#define __NR_io_submit (__NR_SYSCALL_BASE+246)
517+#define __NR_io_cancel (__NR_SYSCALL_BASE+247)
518+
519+#define __sys2(x) #x
520+#define __sys1(x) __sys2(x)
521+
522+#if defined(__thumb__) || defined(__ARM_EABI__)
523+#define __SYS_REG(name) register long __sysreg __asm__("r7") = __NR_##name;
524+#define __SYS_REG_LIST(regs...) "r" (__sysreg) , ##regs
525+#define __syscall(name) "swi\t0"
526+#else
527+#define __SYS_REG(name)
528+#define __SYS_REG_LIST(regs...) regs
529+#define __syscall(name) "swi\t" __sys1(__NR_##name) ""
530+#endif
531+
532+#define io_syscall1(type,fname,sname,type1,arg1) \
533+type fname(type1 arg1) { \
534+ __SYS_REG(sname) \
535+ register long __r0 __asm__("r0") = (long)arg1; \
536+ register long __res_r0 __asm__("r0"); \
537+ __asm__ __volatile__ ( \
538+ __syscall(sname) \
539+ : "=r" (__res_r0) \
540+ : __SYS_REG_LIST( "0" (__r0) ) \
541+ : "memory" ); \
542+ return (type) __res_r0; \
543+}
544+
545+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
546+type fname(type1 arg1,type2 arg2) { \
547+ __SYS_REG(sname) \
548+ register long __r0 __asm__("r0") = (long)arg1; \
549+ register long __r1 __asm__("r1") = (long)arg2; \
550+ register long __res_r0 __asm__("r0"); \
551+ __asm__ __volatile__ ( \
552+ __syscall(sname) \
553+ : "=r" (__res_r0) \
554+ : __SYS_REG_LIST( "0" (__r0), "r" (__r1) ) \
555+ : "memory" ); \
556+ return (type) __res_r0; \
557+}
558+
559+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
560+type fname(type1 arg1,type2 arg2,type3 arg3) { \
561+ __SYS_REG(sname) \
562+ register long __r0 __asm__("r0") = (long)arg1; \
563+ register long __r1 __asm__("r1") = (long)arg2; \
564+ register long __r2 __asm__("r2") = (long)arg3; \
565+ register long __res_r0 __asm__("r0"); \
566+ __asm__ __volatile__ ( \
567+ __syscall(sname) \
568+ : "=r" (__res_r0) \
569+ : __SYS_REG_LIST( "0" (__r0), "r" (__r1), "r" (__r2) ) \
570+ : "memory" ); \
571+ return (type) __res_r0; \
572+}
573+
574+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4)\
575+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4) { \
576+ __SYS_REG(sname) \
577+ register long __r0 __asm__("r0") = (long)arg1; \
578+ register long __r1 __asm__("r1") = (long)arg2; \
579+ register long __r2 __asm__("r2") = (long)arg3; \
580+ register long __r3 __asm__("r3") = (long)arg4; \
581+ register long __res_r0 __asm__("r0"); \
582+ __asm__ __volatile__ ( \
583+ __syscall(sname) \
584+ : "=r" (__res_r0) \
585+ : __SYS_REG_LIST( "0" (__r0), "r" (__r1), "r" (__r2), "r" (__r3) ) \
586+ : "memory" ); \
587+ return (type) __res_r0; \
588+}
589+
590+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
591+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) {\
592+ __SYS_REG(sname) \
593+ register long __r0 __asm__("r0") = (long)arg1; \
594+ register long __r1 __asm__("r1") = (long)arg2; \
595+ register long __r2 __asm__("r2") = (long)arg3; \
596+ register long __r3 __asm__("r3") = (long)arg4; \
597+ register long __r4 __asm__("r4") = (long)arg5; \
598+ register long __res_r0 __asm__("r0"); \
599+ __asm__ __volatile__ ( \
600+ __syscall(sname) \
601+ : "=r" (__res_r0) \
602+ : __SYS_REG_LIST( "0" (__r0), "r" (__r1), "r" (__r2), \
603+ "r" (__r3), "r" (__r4) ) \
604+ : "memory" ); \
605+ return (type) __res_r0; \
606+}
607+