summaryrefslogtreecommitdiffstats
path: root/meta-renesas-extras
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2016-10-03 16:57:08 +0300
committerSamuli Piippo <samuli.piippo@qt.io>2016-10-06 05:57:52 +0000
commit80402502806c94d2954852549d6549c9e333c586 (patch)
treee389c8d6d8ab2b53471f24e2cfc002dc98870b1a /meta-renesas-extras
parentcfebf8586735f4db9c9573c1af9eb1553132c0e8 (diff)
downloadmeta-boot2qt-80402502806c94d2954852549d6549c9e333c586.tar.gz
renesas: update recipes to work with krogoth
Extra patch needed for linux libc headers to get systemd to build. ../git/src/basic/btrfs-util.c:1122:23: error: 'BTRFS_IOC_QUOTA_RESCAN_WAIT' undeclared (first use in this function) Change-Id: I52492cff70228bee477b1e5b287af66138564dd1 Reviewed-by: Tuomas Heimonen <tuomas.heimonen@theqtcompany.com>
Diffstat (limited to 'meta-renesas-extras')
-rw-r--r--meta-renesas-extras/recipes/linux-libc-headers/linux-libc-headers_%.bbappend6
-rw-r--r--meta-renesas-extras/recipes/linux/linux-renesas/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch124
-rw-r--r--meta-renesas-extras/recipes/linux/linux-renesas_3.10%.bbappend8
-rw-r--r--meta-renesas-extras/recipes/qt5/qt3d/0001-Remove-qgltf.patch25
-rw-r--r--meta-renesas-extras/recipes/qt5/qt3d_git.bbappend34
5 files changed, 193 insertions, 4 deletions
diff --git a/meta-renesas-extras/recipes/linux-libc-headers/linux-libc-headers_%.bbappend b/meta-renesas-extras/recipes/linux-libc-headers/linux-libc-headers_%.bbappend
index b421e1d..2aec751 100644
--- a/meta-renesas-extras/recipes/linux-libc-headers/linux-libc-headers_%.bbappend
+++ b/meta-renesas-extras/recipes/linux-libc-headers/linux-libc-headers_%.bbappend
@@ -28,3 +28,9 @@
28############################################################################ 28############################################################################
29 29
30COMPATIBLE_MACHINE = "" 30COMPATIBLE_MACHINE = ""
31
32FILESEXTRAPATHS_prepend := "${THISDIR}/../linux/linux-renesas:"
33
34SRC_URI += " \
35 file://0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch \
36 "
diff --git a/meta-renesas-extras/recipes/linux/linux-renesas/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch b/meta-renesas-extras/recipes/linux/linux-renesas/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch
new file mode 100644
index 0000000..b495d39
--- /dev/null
+++ b/meta-renesas-extras/recipes/linux/linux-renesas/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch
@@ -0,0 +1,124 @@
1From 57254b6ebce4ceca02d9c8b615f6059c56c19238 Mon Sep 17 00:00:00 2001
2From: Jan Schmidt <list.btrfs@jan-o-sch.net>
3Date: Mon, 6 May 2013 19:14:17 +0000
4Subject: [PATCH] Btrfs: add ioctl to wait for qgroup rescan completion
5
6btrfs_qgroup_wait_for_completion waits until the currently running qgroup
7operation completes. It returns immediately when no rescan process is in
8progress. This is useful to automate things around the rescan process (e.g.
9testing).
10
11Signed-off-by: Jan Schmidt <list.btrfs@jan-o-sch.net>
12Signed-off-by: Josef Bacik <jbacik@fusionio.com>
13---
14 fs/btrfs/ctree.h | 2 ++
15 fs/btrfs/ioctl.c | 12 ++++++++++++
16 fs/btrfs/qgroup.c | 21 +++++++++++++++++++++
17 include/uapi/linux/btrfs.h | 1 +
18 4 files changed, 36 insertions(+)
19
20diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
21index a365400..e36e97b 100644
22--- a/fs/btrfs/ctree.h
23+++ b/fs/btrfs/ctree.h
24@@ -1613,6 +1613,7 @@ struct btrfs_fs_info {
25 struct mutex qgroup_rescan_lock; /* protects the progress item */
26 struct btrfs_key qgroup_rescan_progress;
27 struct btrfs_workers qgroup_rescan_workers;
28+ struct completion qgroup_rescan_completion;
29
30 /* filesystem state */
31 unsigned long fs_state;
32@@ -3820,6 +3821,7 @@ int btrfs_quota_enable(struct btrfs_trans_handle *trans,
33 int btrfs_quota_disable(struct btrfs_trans_handle *trans,
34 struct btrfs_fs_info *fs_info);
35 int btrfs_qgroup_rescan(struct btrfs_fs_info *fs_info);
36+int btrfs_qgroup_wait_for_completion(struct btrfs_fs_info *fs_info);
37 int btrfs_add_qgroup_relation(struct btrfs_trans_handle *trans,
38 struct btrfs_fs_info *fs_info, u64 src, u64 dst);
39 int btrfs_del_qgroup_relation(struct btrfs_trans_handle *trans,
40diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
41index 0f81d67..1e0dda1 100644
42--- a/fs/btrfs/ioctl.c
43+++ b/fs/btrfs/ioctl.c
44@@ -3937,6 +3937,16 @@ static long btrfs_ioctl_quota_rescan_status(struct file *file, void __user *arg)
45 return ret;
46 }
47
48+static long btrfs_ioctl_quota_rescan_wait(struct file *file, void __user *arg)
49+{
50+ struct btrfs_root *root = BTRFS_I(fdentry(file)->d_inode)->root;
51+
52+ if (!capable(CAP_SYS_ADMIN))
53+ return -EPERM;
54+
55+ return btrfs_qgroup_wait_for_completion(root->fs_info);
56+}
57+
58 static long btrfs_ioctl_set_received_subvol(struct file *file,
59 void __user *arg)
60 {
61@@ -4179,6 +4189,8 @@ long btrfs_ioctl(struct file *file, unsigned int
62 return btrfs_ioctl_quota_rescan(file, argp);
63 case BTRFS_IOC_QUOTA_RESCAN_STATUS:
64 return btrfs_ioctl_quota_rescan_status(file, argp);
65+ case BTRFS_IOC_QUOTA_RESCAN_WAIT:
66+ return btrfs_ioctl_quota_rescan_wait(file, argp);
67 case BTRFS_IOC_DEV_REPLACE:
68 return btrfs_ioctl_dev_replace(root, argp);
69 case BTRFS_IOC_GET_FSLABEL:
70diff --git a/fs/btrfs/qgroup.c b/fs/btrfs/qgroup.c
71index 7f38cce..d059d86 100644
72--- a/fs/btrfs/qgroup.c
73+++ b/fs/btrfs/qgroup.c
74@@ -2070,6 +2070,8 @@ out:
75 } else {
76 pr_err("btrfs: qgroup scan failed with %d\n", err);
77 }
78+
79+ complete_all(&fs_info->qgroup_rescan_completion);
80 }
81
82 static void
83@@ -2110,6 +2112,7 @@ btrfs_qgroup_rescan(struct btrfs_fs_info *fs_info)
84 fs_info->qgroup_flags |= BTRFS_QGROUP_STATUS_FLAG_RESCAN;
85 memset(&fs_info->qgroup_rescan_progress, 0,
86 sizeof(fs_info->qgroup_rescan_progress));
87+ init_completion(&fs_info->qgroup_rescan_completion);
88
89 /* clear all current qgroup tracking information */
90 for (n = rb_first(&fs_info->qgroup_tree); n; n = rb_next(n)) {
91@@ -2126,3 +2129,21 @@ btrfs_qgroup_rescan(struct btrfs_fs_info *fs_info)
92
93 return 0;
94 }
95+
96+int btrfs_qgroup_wait_for_completion(struct btrfs_fs_info *fs_info)
97+{
98+ int running;
99+ int ret = 0;
100+
101+ mutex_lock(&fs_info->qgroup_rescan_lock);
102+ spin_lock(&fs_info->qgroup_lock);
103+ running = fs_info->qgroup_flags & BTRFS_QGROUP_STATUS_FLAG_RESCAN;
104+ spin_unlock(&fs_info->qgroup_lock);
105+ mutex_unlock(&fs_info->qgroup_rescan_lock);
106+
107+ if (running)
108+ ret = wait_for_completion_interruptible(
109+ &fs_info->qgroup_rescan_completion);
110+
111+ return ret;
112+}
113diff --git a/include/uapi/linux/btrfs.h b/include/uapi/linux/btrfs.h
114index 5ef0df5..5b683b5 100644
115--- a/include/uapi/linux/btrfs.h
116+++ b/include/uapi/linux/btrfs.h
117@@ -530,6 +530,7 @@ struct btrfs_ioctl_send_args {
118 struct btrfs_ioctl_quota_rescan_args)
119 #define BTRFS_IOC_QUOTA_RESCAN_STATUS _IOR(BTRFS_IOCTL_MAGIC, 45, \
120 struct btrfs_ioctl_quota_rescan_args)
121+#define BTRFS_IOC_QUOTA_RESCAN_WAIT _IO(BTRFS_IOCTL_MAGIC, 46)
122 #define BTRFS_IOC_GET_FSLABEL _IOR(BTRFS_IOCTL_MAGIC, 49, \
123 char[BTRFS_LABEL_SIZE])
124 #define BTRFS_IOC_SET_FSLABEL _IOW(BTRFS_IOCTL_MAGIC, 50, \
diff --git a/meta-renesas-extras/recipes/linux/linux-renesas_3.10%.bbappend b/meta-renesas-extras/recipes/linux/linux-renesas_3.10%.bbappend
index d5e05f0..0309846 100644
--- a/meta-renesas-extras/recipes/linux/linux-renesas_3.10%.bbappend
+++ b/meta-renesas-extras/recipes/linux/linux-renesas_3.10%.bbappend
@@ -29,7 +29,7 @@
29 29
30FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" 30FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
31 31
32SRC_URI_append = " \ 32SRC_URI += " \
33file://b2qt.cfg \ 33 file://b2qt.cfg \
34" 34 file://0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch \
35 35 "
diff --git a/meta-renesas-extras/recipes/qt5/qt3d/0001-Remove-qgltf.patch b/meta-renesas-extras/recipes/qt5/qt3d/0001-Remove-qgltf.patch
new file mode 100644
index 0000000..48a4085
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/qt3d/0001-Remove-qgltf.patch
@@ -0,0 +1,25 @@
1From 49a04f4faa135fa6ef56fc35dfb9dfe55ff2a3c4 Mon Sep 17 00:00:00 2001
2From: Samuli Piippo <samuli.piippo@theqtcompany.com>
3Date: Wed, 18 Nov 2015 10:14:18 +0200
4Subject: [PATCH] Remove qgltf
5
6assimp does not compile for ARM because of GCC bug
7(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66964)
8
9Task-number: QTBUG-49153
10---
11 tools/tools.pro | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14diff --git a/tools/tools.pro b/tools/tools.pro
15index 055f412..c1eba7f 100644
16--- a/tools/tools.pro
17+++ b/tools/tools.pro
18@@ -1,3 +1,3 @@
19 TEMPLATE = subdirs
20-SUBDIRS = qgltf
21+#SUBDIRS = qgltf
22 qgltf.CONFIG += host_build
23--
241.9.1
25
diff --git a/meta-renesas-extras/recipes/qt5/qt3d_git.bbappend b/meta-renesas-extras/recipes/qt5/qt3d_git.bbappend
new file mode 100644
index 0000000..d32d0e6
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/qt3d_git.bbappend
@@ -0,0 +1,34 @@
1############################################################################
2##
3## Copyright (C) 2016 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30FILESEXTRAPATHS_append := "${THISDIR}/${PN}:"
31
32SRC_URI_append_class-target = " \
33 file://0001-Remove-qgltf.patch \
34 "