diff options
Diffstat (limited to 'meta/recipes-kernel')
110 files changed, 10985 insertions, 3034 deletions
diff --git a/meta/recipes-kernel/blktrace/blktrace/CVE-2018-10689.patch b/meta/recipes-kernel/blktrace/blktrace/CVE-2018-10689.patch deleted file mode 100644 index 7b58568d59..0000000000 --- a/meta/recipes-kernel/blktrace/blktrace/CVE-2018-10689.patch +++ /dev/null | |||
@@ -1,150 +0,0 @@ | |||
1 | From d61ff409cb4dda31386373d706ea0cfb1aaac5b7 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jens Axboe <axboe@kernel.dk> | ||
3 | Date: Wed, 2 May 2018 10:24:17 -0600 | ||
4 | Subject: [PATCH] btt: make device/devno use PATH_MAX to avoid overflow | ||
5 | |||
6 | Herbo Zhang reports: | ||
7 | |||
8 | I found a bug in blktrace/btt/devmap.c. The code is just as follows: | ||
9 | |||
10 | https://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace.git/tree/btt/devmap.c?id=8349ad2f2d19422a6241f94ea84d696b21de4757 | ||
11 | |||
12 | struct devmap { | ||
13 | |||
14 | struct list_head head; | ||
15 | char device[32], devno[32]; // #1 | ||
16 | }; | ||
17 | |||
18 | LIST_HEAD(all_devmaps); | ||
19 | |||
20 | static int dev_map_add(char *line) | ||
21 | { | ||
22 | struct devmap *dmp; | ||
23 | |||
24 | if (strstr(line, "Device") != NULL) | ||
25 | return 1; | ||
26 | |||
27 | dmp = malloc(sizeof(struct devmap)); | ||
28 | if (sscanf(line, "%s %s", dmp->device, dmp->devno) != 2) { //#2 | ||
29 | free(dmp); | ||
30 | return 1; | ||
31 | } | ||
32 | |||
33 | list_add_tail(&dmp->head, &all_devmaps); | ||
34 | return 0; | ||
35 | } | ||
36 | |||
37 | int dev_map_read(char *fname) | ||
38 | { | ||
39 | char line[256]; // #3 | ||
40 | FILE *fp = my_fopen(fname, "r"); | ||
41 | |||
42 | if (!fp) { | ||
43 | perror(fname); | ||
44 | return 1; | ||
45 | } | ||
46 | |||
47 | while (fscanf(fp, "%255[a-zA-Z0-9 :.,/_-]\n", line) == 1) { | ||
48 | if (dev_map_add(line)) | ||
49 | break; | ||
50 | } | ||
51 | |||
52 | fclose(fp); | ||
53 | return 0; | ||
54 | } | ||
55 | |||
56 | The line length is 256, but the dmp->device, dmp->devno max length | ||
57 | is only 32. We can put strings longer than 32 into dmp->device and | ||
58 | dmp->devno , and then they will be overflowed. | ||
59 | |||
60 | we can trigger this bug just as follows: | ||
61 | |||
62 | $ python -c "print 'A'*256" > ./test | ||
63 | $ btt -M ./test | ||
64 | |||
65 | *** Error in btt': free(): invalid next size (fast): 0x000055ad7349b250 *** | ||
66 | ======= Backtrace: ========= | ||
67 | /lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f7f158ce7e5] | ||
68 | /lib/x86_64-linux-gnu/libc.so.6(+0x7fe0a)[0x7f7f158d6e0a] | ||
69 | /lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f7f158da98c] | ||
70 | btt(+0x32e0)[0x55ad7306f2e0] | ||
71 | btt(+0x2c5f)[0x55ad7306ec5f] | ||
72 | btt(+0x251f)[0x55ad7306e51f] | ||
73 | /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f7f15877830] | ||
74 | btt(+0x26b9)[0x55ad7306e6b9] | ||
75 | ======= Memory map: ======== | ||
76 | 55ad7306c000-55ad7307f000 r-xp 00000000 08:14 3698139 | ||
77 | /usr/bin/btt | ||
78 | 55ad7327e000-55ad7327f000 r--p 00012000 08:14 3698139 | ||
79 | /usr/bin/btt | ||
80 | 55ad7327f000-55ad73280000 rw-p 00013000 08:14 3698139 | ||
81 | /usr/bin/btt | ||
82 | 55ad73280000-55ad73285000 rw-p 00000000 00:00 0 | ||
83 | 55ad7349a000-55ad734bb000 rw-p 00000000 00:00 0 | ||
84 | [heap] | ||
85 | 7f7f10000000-7f7f10021000 rw-p 00000000 00:00 0 | ||
86 | 7f7f10021000-7f7f14000000 ---p 00000000 00:00 0 | ||
87 | 7f7f15640000-7f7f15656000 r-xp 00000000 08:14 14942237 | ||
88 | /lib/x86_64-linux-gnu/libgcc_s.so.1 | ||
89 | 7f7f15656000-7f7f15855000 ---p 00016000 08:14 14942237 | ||
90 | /lib/x86_64-linux-gnu/libgcc_s.so.1 | ||
91 | 7f7f15855000-7f7f15856000 r--p 00015000 08:14 14942237 | ||
92 | /lib/x86_64-linux-gnu/libgcc_s.so.1 | ||
93 | 7f7f15856000-7f7f15857000 rw-p 00016000 08:14 14942237 | ||
94 | /lib/x86_64-linux-gnu/libgcc_s.so.1 | ||
95 | 7f7f15857000-7f7f15a16000 r-xp 00000000 08:14 14948477 | ||
96 | /lib/x86_64-linux-gnu/libc-2.23.so | ||
97 | 7f7f15a16000-7f7f15c16000 ---p 001bf000 08:14 14948477 | ||
98 | /lib/x86_64-linux-gnu/libc-2.23.so | ||
99 | 7f7f15c16000-7f7f15c1a000 r--p 001bf000 08:14 14948477 | ||
100 | /lib/x86_64-linux-gnu/libc-2.23.so | ||
101 | 7f7f15c1a000-7f7f15c1c000 rw-p 001c3000 08:14 14948477 | ||
102 | /lib/x86_64-linux-gnu/libc-2.23.so | ||
103 | 7f7f15c1c000-7f7f15c20000 rw-p 00000000 00:00 0 | ||
104 | 7f7f15c20000-7f7f15c46000 r-xp 00000000 08:14 14948478 | ||
105 | /lib/x86_64-linux-gnu/ld-2.23.so | ||
106 | 7f7f15e16000-7f7f15e19000 rw-p 00000000 00:00 0 | ||
107 | 7f7f15e42000-7f7f15e45000 rw-p 00000000 00:00 0 | ||
108 | 7f7f15e45000-7f7f15e46000 r--p 00025000 08:14 14948478 | ||
109 | /lib/x86_64-linux-gnu/ld-2.23.so | ||
110 | 7f7f15e46000-7f7f15e47000 rw-p 00026000 08:14 14948478 | ||
111 | /lib/x86_64-linux-gnu/ld-2.23.so | ||
112 | 7f7f15e47000-7f7f15e48000 rw-p 00000000 00:00 0 | ||
113 | 7ffdebe5c000-7ffdebe7d000 rw-p 00000000 00:00 0 | ||
114 | [stack] | ||
115 | 7ffdebebc000-7ffdebebe000 r--p 00000000 00:00 0 | ||
116 | [vvar] | ||
117 | 7ffdebebe000-7ffdebec0000 r-xp 00000000 00:00 0 | ||
118 | [vdso] | ||
119 | ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 | ||
120 | [vsyscall] | ||
121 | [1] 6272 abort btt -M test | ||
122 | |||
123 | Signed-off-by: Jens Axboe <axboe@kernel.dk> | ||
124 | |||
125 | Upstream-Status: Backport | ||
126 | [https://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace.git/commit/?id=d61ff409cb4dda31386373d706ea0cfb1aaac5b7] | ||
127 | |||
128 | CVE: CVE-2018-10689 | ||
129 | |||
130 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
131 | --- | ||
132 | btt/devmap.c | 2 +- | ||
133 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
134 | |||
135 | diff --git a/btt/devmap.c b/btt/devmap.c | ||
136 | index 0553a9e..5fc1cb2 100644 | ||
137 | --- a/btt/devmap.c | ||
138 | +++ b/btt/devmap.c | ||
139 | @@ -23,7 +23,7 @@ | ||
140 | |||
141 | struct devmap { | ||
142 | struct list_head head; | ||
143 | - char device[32], devno[32]; | ||
144 | + char device[PATH_MAX], devno[PATH_MAX]; | ||
145 | }; | ||
146 | |||
147 | LIST_HEAD(all_devmaps); | ||
148 | -- | ||
149 | 2.7.4 | ||
150 | |||
diff --git a/meta/recipes-kernel/blktrace/blktrace/ldflags.patch b/meta/recipes-kernel/blktrace/blktrace/ldflags.patch deleted file mode 100644 index ab905cf0da..0000000000 --- a/meta/recipes-kernel/blktrace/blktrace/ldflags.patch +++ /dev/null | |||
@@ -1,114 +0,0 @@ | |||
1 | blktrace: obey LDFLAGS | ||
2 | |||
3 | Upstream-Status: Pending | ||
4 | |||
5 | Signed-off-by: Christopher Larson <chris_larson@mentor.com> | ||
6 | |||
7 | the patch was imported from meta-mentor layer on yoctoproject git server | ||
8 | http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id | ||
9 | aed463414e2e2bf8ca44ba54ee5973e7ed599e57 | ||
10 | |||
11 | Signed-off-by: Fahad Usman <fahad_usman@mentor.com> | ||
12 | |||
13 | Index: git/Makefile | ||
14 | =================================================================== | ||
15 | --- git.orig/Makefile | ||
16 | +++ git/Makefile | ||
17 | @@ -1,5 +1,6 @@ | ||
18 | CC = gcc | ||
19 | CFLAGS = -Wall -O2 -g -W | ||
20 | +LDFLAGS = | ||
21 | ALL_CFLAGS = $(CFLAGS) -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 | ||
22 | PROGS = blkparse blktrace verify_blkparse blkrawverify blkiomon | ||
23 | LIBS = -lpthread | ||
24 | @@ -26,19 +27,19 @@ btreplay/btreplay: | ||
25 | $(CC) -o $*.o -c $(ALL_CFLAGS) $< | ||
26 | |||
27 | blkparse: blkparse.o blkparse_fmt.o rbtree.o act_mask.o | ||
28 | - $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) | ||
29 | + $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LDFLAGS) | ||
30 | |||
31 | blktrace: blktrace.o act_mask.o | ||
32 | - $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) | ||
33 | + $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) $(LDFLAGS) | ||
34 | |||
35 | verify_blkparse: verify_blkparse.o | ||
36 | - $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) | ||
37 | + $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LDFLAGS) | ||
38 | |||
39 | blkrawverify: blkrawverify.o | ||
40 | - $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) | ||
41 | + $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LDFLAGS) | ||
42 | |||
43 | blkiomon: blkiomon.o rbtree.o | ||
44 | - $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) -lrt | ||
45 | + $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) -lrt $(LDFLAGS) | ||
46 | |||
47 | $(PROGS): | depend | ||
48 | |||
49 | Index: git/btreplay/Makefile | ||
50 | =================================================================== | ||
51 | --- git.orig/btreplay/Makefile | ||
52 | +++ git/btreplay/Makefile | ||
53 | @@ -7,6 +7,7 @@ | ||
54 | |||
55 | CC = gcc | ||
56 | CFLAGS = -Wall -W -O2 -g | ||
57 | +LDFLAGS = | ||
58 | INCS = -I. -I.. -I../btt | ||
59 | OCFLAGS = -UCOUNT_IOS -UDEBUG -DNDEBUG | ||
60 | XCFLAGS = -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 | ||
61 | @@ -32,10 +33,10 @@ clean: docsclean | ||
62 | $(CC) $(CFLAGS) -c -o $*.o $< | ||
63 | |||
64 | btrecord: btrecord.o | ||
65 | - $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) | ||
66 | + $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) $(LDFLAGS) | ||
67 | |||
68 | btreplay: btreplay.o | ||
69 | - $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) | ||
70 | + $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) $(LDFLAGS) | ||
71 | |||
72 | depend: | ||
73 | @$(CC) -MM $(CFLAGS) *.c 1> .depend | ||
74 | Index: git/btt/Makefile | ||
75 | =================================================================== | ||
76 | --- git.orig/btt/Makefile | ||
77 | +++ git/btt/Makefile | ||
78 | @@ -7,6 +7,7 @@ | ||
79 | |||
80 | CC = gcc | ||
81 | CFLAGS = -Wall -W -O2 -g | ||
82 | +LDFLAGS = | ||
83 | INCS = -I. -I.. | ||
84 | XCFLAGS = -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 | ||
85 | override CFLAGS += $(INCS) $(XCFLAGS) | ||
86 | @@ -38,7 +39,7 @@ clean: docsclean | ||
87 | $(CC) $(CFLAGS) -c -o $*.o $< | ||
88 | |||
89 | btt: $(OBJS) | ||
90 | - $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) | ||
91 | + $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) $(LDFLAGS) | ||
92 | |||
93 | ifneq ($(wildcard .depend),) | ||
94 | include .depend | ||
95 | Index: git/iowatcher/Makefile | ||
96 | =================================================================== | ||
97 | --- git.orig/iowatcher/Makefile | ||
98 | +++ git/iowatcher/Makefile | ||
99 | @@ -1,5 +1,6 @@ | ||
100 | CC = gcc | ||
101 | CFLAGS = -Wall -O2 -g -W -Wunused-result | ||
102 | +LDFLAGS = | ||
103 | ALL_CFLAGS = $(CFLAGS) -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 | ||
104 | |||
105 | PROGS = iowatcher | ||
106 | @@ -19,7 +20,7 @@ all: $(ALL) | ||
107 | $(CC) -o $*.o -c $(ALL_CFLAGS) $< | ||
108 | |||
109 | iowatcher: blkparse.o plot.o main.o tracers.o mpstat.o fio.o | ||
110 | - $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) -lm -lrt | ||
111 | + $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) -lm $(LDFLAGS) -lrt | ||
112 | |||
113 | depend: | ||
114 | @$(CC) -MM $(ALL_CFLAGS) *.c 1> .depend | ||
diff --git a/meta/recipes-kernel/blktrace/blktrace/make-btt-scripts-python3-ready.patch b/meta/recipes-kernel/blktrace/blktrace/make-btt-scripts-python3-ready.patch deleted file mode 100644 index 3b0c1c692c..0000000000 --- a/meta/recipes-kernel/blktrace/blktrace/make-btt-scripts-python3-ready.patch +++ /dev/null | |||
@@ -1,197 +0,0 @@ | |||
1 | From 70d5ca2d5f3d6b97c11c641b7e0c5836983219a0 Mon Sep 17 00:00:00 2001 | ||
2 | From: Eric Sandeen <sandeen@redhat.com> | ||
3 | Date: Wed, 28 Mar 2018 15:26:36 -0500 | ||
4 | Subject: [oe-core][PATCH 1/1] make btt scripts python3-ready | ||
5 | |||
6 | Many distributions are moving to python3 by default. Here's | ||
7 | an attempt to make the python scripts in blktrace python3-ready. | ||
8 | |||
9 | Most of this was done with automated tools. I hand fixed some | ||
10 | space-vs tab issues, and cast an array index to integer. It | ||
11 | passes rudimentary testing when run under python2.7 as well | ||
12 | as python3. | ||
13 | |||
14 | This doesn't do anything with the shebangs, it leaves them both | ||
15 | invoking whatever "env python" coughs up on the system. | ||
16 | |||
17 | Signed-off-by: Eric Sandeen <sandeen@redhat.com> | ||
18 | Signed-off-by: Jens Axboe <axboe@kernel.dk> | ||
19 | |||
20 | Unchanged except to modify shebangs to use python3 since | ||
21 | oe-core does not support python2 anymore. | ||
22 | |||
23 | Upstream-Status: Backport [git://git.kernel.dk/blktrace.git commit 70d5ca2d5...] | ||
24 | |||
25 | Signed-off-by: Joe Slater <joe.slater@windriver.com> | ||
26 | |||
27 | --- | ||
28 | btt/bno_plot.py | 28 +++++++++++++++------------- | ||
29 | btt/btt_plot.py | 22 +++++++++++++--------- | ||
30 | 2 files changed, 28 insertions(+), 22 deletions(-) | ||
31 | |||
32 | --- git.orig/btt/bno_plot.py | ||
33 | +++ git/btt/bno_plot.py | ||
34 | @@ -1,4 +1,4 @@ | ||
35 | -#! /usr/bin/env python | ||
36 | +#! /usr/bin/env python3 | ||
37 | # | ||
38 | # btt blkno plotting interface | ||
39 | # | ||
40 | @@ -38,6 +38,8 @@ automatically push the keys under the gr | ||
41 | To exit the plotter, enter 'quit' or ^D at the 'gnuplot> ' prompt. | ||
42 | """ | ||
43 | |||
44 | +from __future__ import absolute_import | ||
45 | +from __future__ import print_function | ||
46 | import getopt, glob, os, sys, tempfile | ||
47 | |||
48 | verbose = 0 | ||
49 | @@ -60,14 +62,14 @@ def parse_args(in_args): | ||
50 | |||
51 | try: | ||
52 | (opts, args) = getopt.getopt(in_args, s_opts, l_opts) | ||
53 | - except getopt.error, msg: | ||
54 | - print >>sys.stderr, msg | ||
55 | - print >>sys.stderr, __doc__ | ||
56 | + except getopt.error as msg: | ||
57 | + print(msg, file=sys.stderr) | ||
58 | + print(__doc__, file=sys.stderr) | ||
59 | sys.exit(1) | ||
60 | |||
61 | for (o, a) in opts: | ||
62 | if o in ('-h', '--help'): | ||
63 | - print __doc__ | ||
64 | + print(__doc__) | ||
65 | sys.exit(0) | ||
66 | elif o in ('-v', '--verbose'): | ||
67 | verbose += 1 | ||
68 | @@ -84,10 +86,10 @@ if __name__ == '__main__': | ||
69 | (bnos, keys_below) = parse_args(sys.argv[1:]) | ||
70 | |||
71 | if verbose: | ||
72 | - print 'Using files:', | ||
73 | - for bno in bnos: print bno, | ||
74 | - if keys_below: print '\nKeys are to be placed below graph' | ||
75 | - else: print '' | ||
76 | + print('Using files:', end=' ') | ||
77 | + for bno in bnos: print(bno, end=' ') | ||
78 | + if keys_below: print('\nKeys are to be placed below graph') | ||
79 | + else: print('') | ||
80 | |||
81 | tmpdir = tempfile.mktemp() | ||
82 | os.mkdir(tmpdir) | ||
83 | @@ -99,7 +101,7 @@ if __name__ == '__main__': | ||
84 | fo = open(t, 'w') | ||
85 | for line in open(f, 'r'): | ||
86 | fld = line.split(None) | ||
87 | - print >>fo, fld[0], fld[1], int(fld[2])-int(fld[1]) | ||
88 | + print(fld[0], fld[1], int(fld[2])-int(fld[1]), file=fo) | ||
89 | fo.close() | ||
90 | |||
91 | t = t[t.rfind('/')+1:] | ||
92 | @@ -107,16 +109,16 @@ if __name__ == '__main__': | ||
93 | else: plot_cmd = "%s,'%s'" % (plot_cmd, t) | ||
94 | |||
95 | fo = open('%s/plot.cmds' % tmpdir, 'w') | ||
96 | - print >>fo, cmds | ||
97 | - if len(bnos) > 10 or keys_below: print >>fo, 'set key below' | ||
98 | - print >>fo, plot_cmd | ||
99 | + print(cmds, file=fo) | ||
100 | + if len(bnos) > 10 or keys_below: print('set key below', file=fo) | ||
101 | + print(plot_cmd, file=fo) | ||
102 | fo.close() | ||
103 | |||
104 | pid = os.fork() | ||
105 | if pid == 0: | ||
106 | cmd = 'gnuplot %s/plot.cmds -' % tmpdir | ||
107 | |||
108 | - if verbose: print 'Executing %s' % cmd | ||
109 | + if verbose: print('Executing %s' % cmd) | ||
110 | |||
111 | os.chdir(tmpdir) | ||
112 | os.system(cmd) | ||
113 | --- git.orig/btt/btt_plot.py | ||
114 | +++ git/btt/btt_plot.py | ||
115 | @@ -1,4 +1,4 @@ | ||
116 | -#! /usr/bin/env python | ||
117 | +#! /usr/bin/env python3 | ||
118 | # | ||
119 | # btt_plot.py: Generate matplotlib plots for BTT generate data files | ||
120 | # | ||
121 | @@ -55,6 +55,10 @@ Arguments: | ||
122 | but the -o (--output) and -T (--title) options will be ignored. | ||
123 | """ | ||
124 | |||
125 | +from __future__ import absolute_import | ||
126 | +from __future__ import print_function | ||
127 | +import six | ||
128 | +from six.moves import range | ||
129 | __author__ = 'Alan D. Brunelle <alan.brunelle@hp.com>' | ||
130 | |||
131 | #------------------------------------------------------------------------------ | ||
132 | @@ -82,7 +86,7 @@ get_base = lambda file: file[file.find( | ||
133 | def fatal(msg): | ||
134 | """Generate fatal error message and exit""" | ||
135 | |||
136 | - print >>sys.stderr, 'FATAL: %s' % msg | ||
137 | + print('FATAL: %s' % msg, file=sys.stderr) | ||
138 | sys.exit(1) | ||
139 | |||
140 | #------------------------------------------------------------------------------ | ||
141 | @@ -163,7 +167,7 @@ def get_data(files): | ||
142 | if not os.path.exists(file): | ||
143 | fatal('%s not found' % file) | ||
144 | elif verbose: | ||
145 | - print 'Processing %s' % file | ||
146 | + print('Processing %s' % file) | ||
147 | |||
148 | xs = [] | ||
149 | ys = [] | ||
150 | @@ -214,8 +218,8 @@ def parse_args(args): | ||
151 | |||
152 | try: | ||
153 | (opts, args) = getopt.getopt(args[1:], s_opts, l_opts) | ||
154 | - except getopt.error, msg: | ||
155 | - print >>sys.stderr, msg | ||
156 | + except getopt.error as msg: | ||
157 | + print(msg, file=sys.stderr) | ||
158 | fatal(__doc__) | ||
159 | |||
160 | for (o, a) in opts: | ||
161 | @@ -293,15 +297,15 @@ def generate_output(type, db): | ||
162 | def color(idx, style): | ||
163 | """Returns a color/symbol type based upon the index passed.""" | ||
164 | |||
165 | - colors = [ 'b', 'g', 'r', 'c', 'm', 'y', 'k' ] | ||
166 | + colors = [ 'b', 'g', 'r', 'c', 'm', 'y', 'k' ] | ||
167 | l_styles = [ '-', ':', '--', '-.' ] | ||
168 | m_styles = [ 'o', '+', '.', ',', 's', 'v', 'x', '<', '>' ] | ||
169 | |||
170 | color = colors[idx % len(colors)] | ||
171 | if style == 'line': | ||
172 | - style = l_styles[(idx / len(l_styles)) % len(l_styles)] | ||
173 | + style = l_styles[int((idx / len(l_styles)) % len(l_styles))] | ||
174 | elif style == 'marker': | ||
175 | - style = m_styles[(idx / len(m_styles)) % len(m_styles)] | ||
176 | + style = m_styles[int((idx / len(m_styles)) % len(m_styles))] | ||
177 | |||
178 | return '%s%s' % (color, style) | ||
179 | |||
180 | @@ -314,7 +318,7 @@ def generate_output(type, db): | ||
181 | ofile = '%s.png' % type | ||
182 | |||
183 | if verbose: | ||
184 | - print 'Generating plot into %s' % ofile | ||
185 | + print('Generating plot into %s' % ofile) | ||
186 | |||
187 | fig = plt.figure(figsize=plot_size) | ||
188 | ax = fig.add_subplot(111) | ||
189 | @@ -329,7 +333,7 @@ def generate_output(type, db): | ||
190 | legends = None | ||
191 | |||
192 | keys = [] | ||
193 | - for file in db.iterkeys(): | ||
194 | + for file in six.iterkeys(db): | ||
195 | if not file in ['min_x', 'max_x', 'min_y', 'max_y']: | ||
196 | keys.append(file) | ||
197 | |||
diff --git a/meta/recipes-kernel/blktrace/blktrace_git.bb b/meta/recipes-kernel/blktrace/blktrace_git.bb index 7ccc022b93..d4f5bac84f 100644 --- a/meta/recipes-kernel/blktrace/blktrace_git.bb +++ b/meta/recipes-kernel/blktrace/blktrace_git.bb | |||
@@ -5,20 +5,16 @@ are three major components: a kernel component, a utility to record the i/o \ | |||
5 | trace information for the kernel to user space, and utilities to analyse and \ | 5 | trace information for the kernel to user space, and utilities to analyse and \ |
6 | view the trace information." | 6 | view the trace information." |
7 | HOMEPAGE = "http://brick.kernel.dk/snaps/" | 7 | HOMEPAGE = "http://brick.kernel.dk/snaps/" |
8 | LICENSE = "GPLv2" | 8 | LICENSE = "GPL-2.0-only" |
9 | LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833" | 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833" |
10 | 10 | ||
11 | DEPENDS = "libaio" | 11 | DEPENDS = "libaio" |
12 | 12 | ||
13 | SRCREV = "cca113f2fe0759b91fd6a0e10fdcda2c28f18a7e" | 13 | SRCREV = "366d30b9cdb20345c5d064af850d686da79b89eb" |
14 | 14 | ||
15 | PV = "1.2.0+git${SRCPV}" | 15 | PV = "1.3.0+git" |
16 | 16 | ||
17 | SRC_URI = "git://git.kernel.dk/blktrace.git \ | 17 | SRC_URI = "git://git.kernel.dk/blktrace.git;branch=master;protocol=https" |
18 | file://ldflags.patch \ | ||
19 | file://CVE-2018-10689.patch \ | ||
20 | file://make-btt-scripts-python3-ready.patch \ | ||
21 | " | ||
22 | 18 | ||
23 | S = "${WORKDIR}/git" | 19 | S = "${WORKDIR}/git" |
24 | 20 | ||
diff --git a/meta/recipes-kernel/cryptodev/cryptodev-linux_1.12.bb b/meta/recipes-kernel/cryptodev/cryptodev-linux_1.13.bb index c55577c661..d5ea9d8529 100644 --- a/meta/recipes-kernel/cryptodev/cryptodev-linux_1.12.bb +++ b/meta/recipes-kernel/cryptodev/cryptodev-linux_1.13.bb | |||
@@ -9,5 +9,5 @@ do_install() { | |||
9 | install -D ${S}/crypto/cryptodev.h ${D}${includedir}/crypto/cryptodev.h | 9 | install -D ${S}/crypto/cryptodev.h ${D}${includedir}/crypto/cryptodev.h |
10 | } | 10 | } |
11 | 11 | ||
12 | ALLOW_EMPTY_${PN} = "1" | 12 | ALLOW_EMPTY:${PN} = "1" |
13 | BBCLASSEXTEND = "native nativesdk" | 13 | BBCLASSEXTEND = "native nativesdk" |
diff --git a/meta/recipes-kernel/cryptodev/cryptodev-module_1.12.bb b/meta/recipes-kernel/cryptodev/cryptodev-module_1.13.bb index b3b554c7d3..5192cf03ed 100644 --- a/meta/recipes-kernel/cryptodev/cryptodev-module_1.12.bb +++ b/meta/recipes-kernel/cryptodev/cryptodev-module_1.13.bb | |||
@@ -12,5 +12,5 @@ SRC_URI += "file://0001-Disable-installing-header-file-provided-by-another-p.pat | |||
12 | 12 | ||
13 | EXTRA_OEMAKE='KERNEL_DIR="${STAGING_KERNEL_DIR}" PREFIX="${D}"' | 13 | EXTRA_OEMAKE='KERNEL_DIR="${STAGING_KERNEL_DIR}" PREFIX="${D}"' |
14 | 14 | ||
15 | RCONFLICTS_${PN} = "ocf-linux" | 15 | RCONFLICTS:${PN} = "ocf-linux" |
16 | RREPLACES_${PN} = "ocf-linux" | 16 | RREPLACES:${PN} = "ocf-linux" |
diff --git a/meta/recipes-kernel/cryptodev/cryptodev-tests_1.12.bb b/meta/recipes-kernel/cryptodev/cryptodev-tests_1.13.bb index 9cb5dcb94f..458ad8ecf2 100644 --- a/meta/recipes-kernel/cryptodev/cryptodev-tests_1.12.bb +++ b/meta/recipes-kernel/cryptodev/cryptodev-tests_1.13.bb | |||
@@ -5,17 +5,17 @@ SUMMARY = "A test suite for /dev/crypto device driver" | |||
5 | DEPENDS += "openssl" | 5 | DEPENDS += "openssl" |
6 | 6 | ||
7 | SRC_URI += " \ | 7 | SRC_URI += " \ |
8 | file://0001-Add-the-compile-and-install-rules-for-cryptodev-test.patch \ | 8 | file://0001-tests-Makefile-do-not-use-Werror.patch \ |
9 | " | 9 | " |
10 | 10 | ||
11 | EXTRA_OEMAKE='KERNEL_DIR="${STAGING_EXECPREFIXDIR}" PREFIX="${D}"' | 11 | EXTRA_OEMAKE='KERNEL_DIR="${STAGING_EXECPREFIXDIR}" PREFIX="${D}"' |
12 | 12 | ||
13 | do_compile() { | 13 | do_compile() { |
14 | oe_runmake testprogs | 14 | oe_runmake tests |
15 | } | 15 | } |
16 | 16 | ||
17 | do_install() { | 17 | do_install() { |
18 | oe_runmake install_tests | 18 | oe_runmake install_tests |
19 | } | 19 | } |
20 | 20 | ||
21 | FILES_${PN} = "${bindir}/*" | 21 | FILES:${PN} = "${bindir}/*" |
diff --git a/meta/recipes-kernel/cryptodev/cryptodev.inc b/meta/recipes-kernel/cryptodev/cryptodev.inc index ae2c308911..64a9c2926b 100644 --- a/meta/recipes-kernel/cryptodev/cryptodev.inc +++ b/meta/recipes-kernel/cryptodev/cryptodev.inc | |||
@@ -5,12 +5,13 @@ of hardware accelerators. Cryptodev-linux is implemented as a standalone \ | |||
5 | module that requires no dependencies other than a stock linux kernel. Its \ | 5 | module that requires no dependencies other than a stock linux kernel. Its \ |
6 | API is compatible with OpenBSD's cryptodev userspace API (/dev/crypto)." | 6 | API is compatible with OpenBSD's cryptodev userspace API (/dev/crypto)." |
7 | 7 | ||
8 | LICENSE = "GPLv2" | 8 | LICENSE = "GPL-2.0-only" |
9 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" |
10 | 10 | ||
11 | SRC_URI = "git://github.com/cryptodev-linux/cryptodev-linux \ | 11 | SRC_URI = "git://github.com/cryptodev-linux/cryptodev-linux;branch=master;protocol=https \ |
12 | " | 12 | " |
13 | SRCREV = "e0c25e289d6baf1d83c2b9cb523d3bc237d0c0c9" | 13 | SRCREV = "bb8bc7cf60d2c0b097c8b3b0e807f805b577a53f" |
14 | PV = "1.13+git${SRCPV}" | ||
14 | 15 | ||
15 | S = "${WORKDIR}/git" | 16 | S = "${WORKDIR}/git" |
16 | 17 | ||
diff --git a/meta/recipes-kernel/cryptodev/files/0001-Add-the-compile-and-install-rules-for-cryptodev-test.patch b/meta/recipes-kernel/cryptodev/files/0001-Add-the-compile-and-install-rules-for-cryptodev-test.patch deleted file mode 100644 index 84fd27e681..0000000000 --- a/meta/recipes-kernel/cryptodev/files/0001-Add-the-compile-and-install-rules-for-cryptodev-test.patch +++ /dev/null | |||
@@ -1,66 +0,0 @@ | |||
1 | From 1980a8f4779a955e73285e7a0d86549b69bea5c8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Yu Zongchun <b40527@freescale.com> | ||
3 | Date: Sun, 28 Apr 2013 14:39:22 +0800 | ||
4 | Subject: [PATCH] Add the compile and install rules for cryptodev tests folder | ||
5 | |||
6 | This is required to install the cryptodev tests folder to rootfs | ||
7 | |||
8 | Signed-off-by: Yu Zongchun <b40527@freescale.com> | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | --- | ||
13 | Makefile | 6 ++++++ | ||
14 | tests/Makefile | 8 ++++++++ | ||
15 | 2 files changed, 14 insertions(+), 0 deletions(-) | ||
16 | |||
17 | Index: git/Makefile | ||
18 | =================================================================== | ||
19 | --- git.orig/Makefile | ||
20 | +++ git/Makefile | ||
21 | @@ -35,6 +35,9 @@ modules_install: | ||
22 | $(MAKE) $(KERNEL_MAKE_OPTS) modules_install | ||
23 | install -m 644 -D crypto/cryptodev.h $(DESTDIR)/$(includedir)/crypto/cryptodev.h | ||
24 | |||
25 | +install_tests: | ||
26 | + make -C tests install DESTDIR=$(PREFIX) | ||
27 | + | ||
28 | clean: | ||
29 | $(MAKE) $(KERNEL_MAKE_OPTS) clean | ||
30 | rm -f $(hostprogs) *~ | ||
31 | @@ -43,6 +46,9 @@ clean: | ||
32 | check: | ||
33 | CFLAGS=$(CRYPTODEV_CFLAGS) KERNEL_DIR=$(KERNEL_DIR) $(MAKE) -C tests check | ||
34 | |||
35 | +testprogs: | ||
36 | + KERNEL_DIR=$(KERNEL_DIR) make -C tests testprogs | ||
37 | + | ||
38 | CPOPTS = | ||
39 | ifneq ($(SHOW_TYPES),) | ||
40 | CPOPTS += --show-types | ||
41 | Index: git/tests/Makefile | ||
42 | =================================================================== | ||
43 | --- git.orig/tests/Makefile | ||
44 | +++ git/tests/Makefile | ||
45 | @@ -23,6 +23,12 @@ bindir = $(execprefix)/bin | ||
46 | |||
47 | all: $(hostprogs) | ||
48 | |||
49 | +install: | ||
50 | + install -d $(DESTDIR)/usr/bin/tests_cryptodev | ||
51 | + for bin in $(hostprogs); do \ | ||
52 | + install -m 755 $${bin} $(DESTDIR)/usr/bin/tests_cryptodev/; \ | ||
53 | + done | ||
54 | + | ||
55 | check: $(hostprogs) | ||
56 | ./cipher | ||
57 | ./hmac | ||
58 | @@ -38,6 +44,8 @@ install: | ||
59 | install -m 755 $$prog $(DESTDIR)/$(bindir); \ | ||
60 | done | ||
61 | |||
62 | +testprogs: $(hostprogs) | ||
63 | + | ||
64 | clean: | ||
65 | rm -f *.o *~ $(hostprogs) | ||
66 | |||
diff --git a/meta/recipes-kernel/cryptodev/files/0001-Disable-installing-header-file-provided-by-another-p.patch b/meta/recipes-kernel/cryptodev/files/0001-Disable-installing-header-file-provided-by-another-p.patch index 885b5823e4..c7fdef4da4 100644 --- a/meta/recipes-kernel/cryptodev/files/0001-Disable-installing-header-file-provided-by-another-p.patch +++ b/meta/recipes-kernel/cryptodev/files/0001-Disable-installing-header-file-provided-by-another-p.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 8a884f55bd1527baa82fab68c186ba546273860c Mon Sep 17 00:00:00 2001 | 1 | From 66d85d3f26e21cf7c38b27de0dcc42376f5d853e Mon Sep 17 00:00:00 2001 |
2 | From: Denys Dmytriyenko <denys@ti.com> | 2 | From: Denys Dmytriyenko <denys@ti.com> |
3 | Date: Sun, 6 Apr 2014 19:51:39 -0400 | 3 | Date: Sun, 6 Apr 2014 19:51:39 -0400 |
4 | Subject: [PATCH] Disable installing header file provided by another package | 4 | Subject: [PATCH] Disable installing header file provided by another package |
@@ -6,19 +6,20 @@ Subject: [PATCH] Disable installing header file provided by another package | |||
6 | Signed-off-by: Denys Dmytriyenko <denys@ti.com> | 6 | Signed-off-by: Denys Dmytriyenko <denys@ti.com> |
7 | 7 | ||
8 | Upstream-Status: Inappropriate [ OE specific ] | 8 | Upstream-Status: Inappropriate [ OE specific ] |
9 | |||
9 | --- | 10 | --- |
10 | Makefile | 1 - | 11 | Makefile | 1 - |
11 | 1 file changed, 1 deletion(-) | 12 | 1 file changed, 1 deletion(-) |
12 | 13 | ||
13 | diff --git a/Makefile b/Makefile | 14 | diff --git a/Makefile b/Makefile |
14 | index 5a080e0..bf02396 100644 | 15 | index d83aee6..c8d8ae5 100644 |
15 | --- a/Makefile | 16 | --- a/Makefile |
16 | +++ b/Makefile | 17 | +++ b/Makefile |
17 | @@ -33,7 +33,6 @@ install: modules_install | 18 | @@ -36,7 +36,6 @@ install: modules_install |
18 | 19 | ||
19 | modules_install: | 20 | modules_install: |
20 | $(MAKE) $(KERNEL_MAKE_OPTS) modules_install | 21 | $(MAKE) $(KERNEL_MAKE_OPTS) modules_install |
21 | - install -m 644 -D crypto/cryptodev.h $(DESTDIR)/$(includedir)/crypto/cryptodev.h | 22 | - install -m 644 -D crypto/cryptodev.h $(DESTDIR)/$(includedir)/crypto/cryptodev.h |
22 | 23 | ||
23 | clean: | 24 | install_tests: tests |
24 | $(MAKE) $(KERNEL_MAKE_OPTS) clean | 25 | $(MAKE) -C tests install DESTDIR=$(PREFIX) |
diff --git a/meta/recipes-kernel/cryptodev/files/0001-tests-Makefile-do-not-use-Werror.patch b/meta/recipes-kernel/cryptodev/files/0001-tests-Makefile-do-not-use-Werror.patch new file mode 100644 index 0000000000..3285548a57 --- /dev/null +++ b/meta/recipes-kernel/cryptodev/files/0001-tests-Makefile-do-not-use-Werror.patch | |||
@@ -0,0 +1,25 @@ | |||
1 | From 47438e53e1156db0916c0f4683a24fe4d82152f2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex@linutronix.de> | ||
3 | Date: Fri, 10 Sep 2021 10:44:42 +0200 | ||
4 | Subject: [PATCH] tests/Makefile: do not use -Werror | ||
5 | |||
6 | Otherwise, openssl 3 deprecation warnings become errors. | ||
7 | Reported at https://github.com/cryptodev-linux/cryptodev-linux/issues/67 | ||
8 | |||
9 | Upstream-Status: Inappropriate [upstream needs to update the code] | ||
10 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
11 | |||
12 | --- | ||
13 | tests/Makefile | 2 +- | ||
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
15 | |||
16 | diff --git a/tests/Makefile b/tests/Makefile | ||
17 | index 2fb7a9a..e94f80e 100644 | ||
18 | --- a/tests/Makefile | ||
19 | +++ b/tests/Makefile | ||
20 | @@ -1,4 +1,4 @@ | ||
21 | -CFLAGS += -I.. $(CRYPTODEV_CFLAGS) -Wall -Werror | ||
22 | +CFLAGS += -I.. $(CRYPTODEV_CFLAGS) -Wall | ||
23 | |||
24 | comp_progs := cipher_comp hash_comp hmac_comp | ||
25 | |||
diff --git a/meta/recipes-kernel/dtc/dtc.inc b/meta/recipes-kernel/dtc/dtc.inc deleted file mode 100644 index 5da6c24fbf..0000000000 --- a/meta/recipes-kernel/dtc/dtc.inc +++ /dev/null | |||
@@ -1,28 +0,0 @@ | |||
1 | SUMMARY = "Device Tree Compiler" | ||
2 | HOMEPAGE = "https://devicetree.org/" | ||
3 | DESCRIPTION = "The Device Tree Compiler is a tool used to manipulate the Open-Firmware-like device tree used by PowerPC kernels." | ||
4 | SECTION = "bootloader" | ||
5 | LICENSE = "GPLv2 | BSD" | ||
6 | DEPENDS = "flex-native bison-native" | ||
7 | |||
8 | SRC_URI = "git://git.kernel.org/pub/scm/utils/dtc/dtc.git \ | ||
9 | file://make_install.patch \ | ||
10 | file://0001-dtc-Fix-Makefile-to-add-CFLAGS-not-override.patch \ | ||
11 | " | ||
12 | |||
13 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)" | ||
14 | |||
15 | EXTRA_OEMAKE='NO_PYTHON=1 PREFIX="${prefix}" LIBDIR="${libdir}" DESTDIR="${D}"' | ||
16 | |||
17 | inherit pkgconfig | ||
18 | |||
19 | S = "${WORKDIR}/git" | ||
20 | |||
21 | do_install () { | ||
22 | oe_runmake install | ||
23 | } | ||
24 | |||
25 | PACKAGES =+ "${PN}-misc" | ||
26 | FILES_${PN}-misc = "${bindir}/convert-dtsv0 ${bindir}/ftdump ${bindir}/dtdiff" | ||
27 | |||
28 | RDEPENDS_${PN}-misc += "bash diffutils" | ||
diff --git a/meta/recipes-kernel/dtc/dtc/0001-dtc-Fix-Makefile-to-add-CFLAGS-not-override.patch b/meta/recipes-kernel/dtc/dtc/0001-dtc-Fix-Makefile-to-add-CFLAGS-not-override.patch deleted file mode 100644 index a2deb12d4b..0000000000 --- a/meta/recipes-kernel/dtc/dtc/0001-dtc-Fix-Makefile-to-add-CFLAGS-not-override.patch +++ /dev/null | |||
@@ -1,36 +0,0 @@ | |||
1 | From f0119060ef1b9bd80e2cae487df1e4aedffb0e9b Mon Sep 17 00:00:00 2001 | ||
2 | From: Oleksiy Obitotskyy <oobitots@cisco.com> | ||
3 | Date: Fri, 22 Jan 2021 09:12:48 +0200 | ||
4 | Subject: [PATCH] dtc: Fix Makefile to add CFLAGS not override | ||
5 | |||
6 | Makefile override CFLAGS not extend them, so some of them | ||
7 | missing. Sources builds out of kernel tree and probably not all | ||
8 | options could be used (?). We need at least -fmacro-prefix-map/ | ||
9 | debug-prefix-map to eliminate absolute path in binaries. | ||
10 | |||
11 | Upstream-Status: Pending | ||
12 | Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com> | ||
13 | --- | ||
14 | Makefile | 4 ++-- | ||
15 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
16 | |||
17 | diff --git a/Makefile b/Makefile | ||
18 | index 35d936f..b5b13cf 100644 | ||
19 | --- a/Makefile | ||
20 | +++ b/Makefile | ||
21 | @@ -20,10 +20,10 @@ CONFIG_LOCALVERSION = | ||
22 | # See libfdt_internal.h for details | ||
23 | ASSUME_MASK ?= 0 | ||
24 | |||
25 | -CPPFLAGS = -I libfdt -I . -DFDT_ASSUME_MASK=$(ASSUME_MASK) | ||
26 | +CPPFLAGS += -I libfdt -I . -DFDT_ASSUME_MASK=$(ASSUME_MASK) | ||
27 | WARNINGS = -Wall -Wpointer-arith -Wcast-qual -Wnested-externs \ | ||
28 | -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls -Wshadow | ||
29 | -CFLAGS = -g -Os $(SHAREDLIB_CFLAGS) -Werror $(WARNINGS) $(EXTRA_CFLAGS) | ||
30 | +CFLAGS += -g -Os $(SHAREDLIB_CFLAGS) -Werror $(WARNINGS) $(EXTRA_CFLAGS) | ||
31 | |||
32 | BISON = bison | ||
33 | LEX = flex | ||
34 | -- | ||
35 | 2.25.1 | ||
36 | |||
diff --git a/meta/recipes-kernel/dtc/dtc/0001-fdtdump-Fix-gcc11-warning.patch b/meta/recipes-kernel/dtc/dtc/0001-fdtdump-Fix-gcc11-warning.patch deleted file mode 100644 index ec825cbf7b..0000000000 --- a/meta/recipes-kernel/dtc/dtc/0001-fdtdump-Fix-gcc11-warning.patch +++ /dev/null | |||
@@ -1,35 +0,0 @@ | |||
1 | From 4827e0db6c4f7dea7f4094f49d3bb48ef6dfdc2d Mon Sep 17 00:00:00 2001 | ||
2 | From: David Gibson <david@gibson.dropbear.id.au> | ||
3 | Date: Wed, 6 Jan 2021 14:52:26 +1100 | ||
4 | Subject: [PATCH] fdtdump: Fix gcc11 warning | ||
5 | |||
6 | In one place, fdtdump abuses fdt_set_magic(), passing it just a small char | ||
7 | array instead of the full fdt header it expects. That's relying on the | ||
8 | fact that in fact fdt_set_magic() will only actually access the first 4 | ||
9 | bytes of the buffer. | ||
10 | |||
11 | This trips a new warning in GCC 11 - and it's entirely possible it was | ||
12 | always UB. So, don't do that. | ||
13 | |||
14 | Upstream-Status: Backport [https://git.kernel.org/pub/scm/utils/dtc/dtc.git/patch/?id=ca16a723fa9dde9c5da80dba567f48715000e77c] | ||
15 | Signed-off-by: David Gibson <david@gibson.dropbear.id.au> | ||
16 | --- | ||
17 | fdtdump.c | 2 +- | ||
18 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
19 | |||
20 | diff --git a/fdtdump.c b/fdtdump.c | ||
21 | index 9613bef..d9fb374 100644 | ||
22 | --- a/fdtdump.c | ||
23 | +++ b/fdtdump.c | ||
24 | @@ -217,7 +217,7 @@ int main(int argc, char *argv[]) | ||
25 | char *p = buf; | ||
26 | char *endp = buf + len; | ||
27 | |||
28 | - fdt_set_magic(smagic, FDT_MAGIC); | ||
29 | + fdt32_st(smagic, FDT_MAGIC); | ||
30 | |||
31 | /* poor man's memmem */ | ||
32 | while ((endp - p) >= FDT_MAGIC_SIZE) { | ||
33 | -- | ||
34 | 2.30.1 | ||
35 | |||
diff --git a/meta/recipes-kernel/dtc/dtc/0001-meson.build-bump-version-to-1.7.0.patch b/meta/recipes-kernel/dtc/dtc/0001-meson.build-bump-version-to-1.7.0.patch new file mode 100644 index 0000000000..79a3b92b44 --- /dev/null +++ b/meta/recipes-kernel/dtc/dtc/0001-meson.build-bump-version-to-1.7.0.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | From 9153522103bd4ed7e3299c4d073f66bb37cb2d42 Mon Sep 17 00:00:00 2001 | ||
2 | From: Nikolay Letov <letov.nikolay@gmail.com> | ||
3 | Date: Wed, 22 Feb 2023 13:36:07 +0300 | ||
4 | Subject: [PATCH 1/2] meson.build: bump version to 1.7.0 | ||
5 | |||
6 | [This was botched in the actual 1.7.0 release :( - David Gibson] | ||
7 | |||
8 | Upstream-Status: Backport [https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=64a907f08b9bedd89833c1eee674148cff2343c6] | ||
9 | |||
10 | Signed-off-by: Nikolay Letov <letov.nikolay@gmail.com> | ||
11 | Signed-off-by: Peter Marko <peter.marko@siemens.com> | ||
12 | --- | ||
13 | meson.build | 2 +- | ||
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
15 | |||
16 | diff --git a/meson.build b/meson.build | ||
17 | index 78251eb..d88cd9f 100644 | ||
18 | --- a/meson.build | ||
19 | +++ b/meson.build | ||
20 | @@ -1,5 +1,5 @@ | ||
21 | project('dtc', 'c', | ||
22 | - version: '1.6.0', | ||
23 | + version: '1.7.0', | ||
24 | license: ['GPL2+', 'BSD-2'], | ||
25 | default_options: 'werror=true', | ||
26 | ) | ||
27 | -- | ||
28 | 2.30.2 | ||
29 | |||
diff --git a/meta/recipes-kernel/dtc/dtc/0002-meson-allow-building-from-shallow-clones.patch b/meta/recipes-kernel/dtc/dtc/0002-meson-allow-building-from-shallow-clones.patch new file mode 100644 index 0000000000..0284905913 --- /dev/null +++ b/meta/recipes-kernel/dtc/dtc/0002-meson-allow-building-from-shallow-clones.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | From 4415b0baece3c4351a6d3637c2754abbefd4795d Mon Sep 17 00:00:00 2001 | ||
2 | From: Peter Marko <peter.marko@siemens.com> | ||
3 | Date: Sat, 16 Dec 2023 18:58:31 +0100 | ||
4 | Subject: [PATCH 2/2] meson: allow building from shallow clones | ||
5 | |||
6 | When building from shallow clone, tag is not available | ||
7 | and version defaults to git hash. | ||
8 | Problem is that some builds check DTC version and fail the comparison. | ||
9 | Example is https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git | ||
10 | Which fails to build with following error: | ||
11 | dtc version too old (039a994), you need at least version 1.4.4 | ||
12 | |||
13 | Drop --always from git describe command, see | ||
14 | https://github.com/mesonbuild/meson/blob/1.3.0/mesonbuild/utils/universal.py#L773 | ||
15 | This will make it more closer to build via Makefile. | ||
16 | |||
17 | Upstream-Status: Submitted [https://github.com/dgibson/dtc/pull/122] | ||
18 | |||
19 | Signed-off-by: Peter Marko <peter.marko@siemens.com> | ||
20 | --- | ||
21 | meson.build | 1 + | ||
22 | 1 file changed, 1 insertion(+) | ||
23 | |||
24 | diff --git a/meson.build b/meson.build | ||
25 | index 78251eb..fc0c92a 100644 | ||
26 | --- a/meson.build | ||
27 | +++ b/meson.build | ||
28 | @@ -56,6 +56,7 @@ py = py.find_installation(required: get_option('python')) | ||
29 | swig = find_program('swig', required: get_option('python')) | ||
30 | |||
31 | version_gen_h = vcs_tag( | ||
32 | + command: ['git', 'describe', '--dirty=+'], | ||
33 | input: 'version_gen.h.in', | ||
34 | output: 'version_gen.h', | ||
35 | ) | ||
36 | -- | ||
37 | 2.30.2 | ||
38 | |||
diff --git a/meta/recipes-kernel/dtc/dtc/make_install.patch b/meta/recipes-kernel/dtc/dtc/make_install.patch deleted file mode 100644 index ea9359e815..0000000000 --- a/meta/recipes-kernel/dtc/dtc/make_install.patch +++ /dev/null | |||
@@ -1,26 +0,0 @@ | |||
1 | From e9852b9d206df1e42aa4c8afec55a0f5e099b533 Mon Sep 17 00:00:00 2001 | ||
2 | From: Saul Wold <sgw@linux.intel.com> | ||
3 | Date: Thu, 3 Nov 2011 08:35:47 -0700 | ||
4 | Subject: [PATCH] dtc: Add patch to correctly install shared libraries and | ||
5 | |||
6 | Upstream-Status: Inappropriate [configuration] | ||
7 | |||
8 | --- | ||
9 | Makefile | 4 ++-- | ||
10 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
11 | |||
12 | diff --git a/Makefile b/Makefile | ||
13 | index d8ebc4f..f5e01be 100644 | ||
14 | --- a/Makefile | ||
15 | +++ b/Makefile | ||
16 | @@ -205,8 +205,8 @@ install-bin: all $(SCRIPTS) | ||
17 | install-lib: all | ||
18 | @$(VECHO) INSTALL-LIB | ||
19 | $(INSTALL) -d $(DESTDIR)$(LIBDIR) | ||
20 | - $(INSTALL_LIB) $(LIBFDT_lib) $(DESTDIR)$(LIBDIR) | ||
21 | - ln -sf $(notdir $(LIBFDT_lib)) $(DESTDIR)$(LIBDIR)/$(LIBFDT_soname) | ||
22 | + $(INSTALL) $(LIBFDT_lib) $(DESTDIR)$(LIBDIR)/$(LIBFDT_soname) | ||
23 | + ln -sf $(LIBFDT_soname) $(DESTDIR)$(LIBDIR)/$(notdir $(LIBFDT_lib)) | ||
24 | ln -sf $(LIBFDT_soname) $(DESTDIR)$(LIBDIR)/libfdt.$(SHAREDLIB_EXT) | ||
25 | $(INSTALL_DATA) $(LIBFDT_archive) $(DESTDIR)$(LIBDIR) | ||
26 | |||
diff --git a/meta/recipes-kernel/dtc/dtc_1.6.0.bb b/meta/recipes-kernel/dtc/dtc_1.6.0.bb deleted file mode 100644 index a407137859..0000000000 --- a/meta/recipes-kernel/dtc/dtc_1.6.0.bb +++ /dev/null | |||
@@ -1,12 +0,0 @@ | |||
1 | require dtc.inc | ||
2 | |||
3 | LIC_FILES_CHKSUM = "file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
4 | file://libfdt/libfdt.h;beginline=4;endline=7;md5=05bb357cfb75cae7d2b01d2ee8d76407" | ||
5 | |||
6 | SRCREV = "2525da3dba9beceb96651dc2986581871dbeca30" | ||
7 | |||
8 | SRC_URI += "file://0001-fdtdump-Fix-gcc11-warning.patch" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-kernel/dtc/dtc_1.7.0.bb b/meta/recipes-kernel/dtc/dtc_1.7.0.bb new file mode 100644 index 0000000000..0702fc16df --- /dev/null +++ b/meta/recipes-kernel/dtc/dtc_1.7.0.bb | |||
@@ -0,0 +1,34 @@ | |||
1 | SUMMARY = "Device Tree Compiler" | ||
2 | HOMEPAGE = "https://devicetree.org/" | ||
3 | DESCRIPTION = "The Device Tree Compiler is a toolchain for working with device tree source and binary files." | ||
4 | SECTION = "bootloader" | ||
5 | LICENSE = "GPL-2.0-only | BSD-2-Clause" | ||
6 | |||
7 | LIC_FILES_CHKSUM = "file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
8 | file://BSD-2-Clause;md5=5d6306d1b08f8df623178dfd81880927 \ | ||
9 | file://README.license;md5=a1eb22e37f09df5b5511b8a278992d0e" | ||
10 | |||
11 | SRC_URI = " \ | ||
12 | git://git.kernel.org/pub/scm/utils/dtc/dtc.git;branch=main;protocol=https \ | ||
13 | file://0001-meson.build-bump-version-to-1.7.0.patch \ | ||
14 | file://0002-meson-allow-building-from-shallow-clones.patch \ | ||
15 | " | ||
16 | SRCREV = "039a99414e778332d8f9c04cbd3072e1dcc62798" | ||
17 | |||
18 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)" | ||
19 | |||
20 | S = "${WORKDIR}/git" | ||
21 | |||
22 | inherit meson pkgconfig | ||
23 | |||
24 | EXTRA_OEMESON = "-Dpython=disabled -Dvalgrind=disabled" | ||
25 | |||
26 | PACKAGECONFIG ??= "tools" | ||
27 | PACKAGECONFIG[tools] = "-Dtools=true,-Dtools=false,flex-native bison-native" | ||
28 | PACKAGECONFIG[yaml] = "-Dyaml=enabled,-Dyaml=disabled,libyaml" | ||
29 | |||
30 | PACKAGES =+ "${PN}-misc" | ||
31 | FILES:${PN}-misc = "${bindir}/convert-dtsv0 ${bindir}/ftdump ${bindir}/dtdiff" | ||
32 | RDEPENDS:${PN}-misc += "${@bb.utils.contains('PACKAGECONFIG', 'tools', 'bash diffutils', '', d)}" | ||
33 | |||
34 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-doc-validate b/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-doc-validate new file mode 100644 index 0000000000..2aa57851c7 --- /dev/null +++ b/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-doc-validate | |||
@@ -0,0 +1,20 @@ | |||
1 | #!/bin/sh | ||
2 | # dt-doc-validate wrapper to allow kernel dt-validation to pass | ||
3 | # | ||
4 | # Copyright (C) 2021 Bruce Ashfield <bruce.ashfield@gmail.com> | ||
5 | # License: MIT (see COPYING.MIT at the root of the repository for terms) | ||
6 | |||
7 | for arg; do | ||
8 | case "$arg" in | ||
9 | --version) | ||
10 | echo "v2021.10" | ||
11 | ;; | ||
12 | esac | ||
13 | done | ||
14 | |||
15 | # TBD: left for future consideration | ||
16 | # exec dt-doc-validate.real "$@" | ||
17 | |||
18 | # we always succeed | ||
19 | exit 0 | ||
20 | |||
diff --git a/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-mk-schema b/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-mk-schema new file mode 100644 index 0000000000..24b89d8619 --- /dev/null +++ b/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-mk-schema | |||
@@ -0,0 +1,20 @@ | |||
1 | #!/bin/sh | ||
2 | # dt-mk-schema wrapper to allow kernel dt-validation to pass | ||
3 | # | ||
4 | # Copyright (C) 2021 Bruce Ashfield <bruce.ashfield@gmail.com> | ||
5 | # License: MIT (see COPYING.MIT at the root of the repository for terms) | ||
6 | |||
7 | for arg; do | ||
8 | case "$arg" in | ||
9 | --version) | ||
10 | echo "v2021.10" | ||
11 | ;; | ||
12 | esac | ||
13 | done | ||
14 | |||
15 | # TBD: left for future consideration | ||
16 | # exec dt-mk-schema.real "$@" | ||
17 | |||
18 | # we always succeed | ||
19 | exit 0 | ||
20 | |||
diff --git a/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-validate b/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-validate new file mode 100644 index 0000000000..8a4710a7ed --- /dev/null +++ b/meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-validate | |||
@@ -0,0 +1,20 @@ | |||
1 | #!/bin/sh | ||
2 | # dt-validate wrapper to allow kernel dt-validation to pass | ||
3 | # | ||
4 | # Copyright (C) 2021 Bruce Ashfield <bruce.ashfield@gmail.com> | ||
5 | # License: MIT (see COPYING.MIT at the root of the repository for terms) | ||
6 | |||
7 | for arg; do | ||
8 | case "$arg" in | ||
9 | --version) | ||
10 | echo "v2021.10" | ||
11 | ;; | ||
12 | esac | ||
13 | done | ||
14 | |||
15 | # TBD: left for future consideration | ||
16 | # exec dt-validate.real "$@" | ||
17 | |||
18 | # we always succeed | ||
19 | exit 0 | ||
20 | |||
diff --git a/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb b/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb new file mode 100644 index 0000000000..974fcba876 --- /dev/null +++ b/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "Wrapper for tooling for devicetree validation using YAML and jsonschema" | ||
2 | HOMEPAGE = "https://yoctoproject.org" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" | ||
5 | |||
6 | SRC_URI = "file://dt-doc-validate \ | ||
7 | file://dt-mk-schema \ | ||
8 | file://dt-validate" | ||
9 | |||
10 | do_install() { | ||
11 | install -d ${D}${bindir}/ | ||
12 | install -m 755 ${WORKDIR}/dt-doc-validate ${D}${bindir}/ | ||
13 | install -m 755 ${WORKDIR}/dt-mk-schema ${D}${bindir}/ | ||
14 | install -m 755 ${WORKDIR}/dt-validate ${D}${bindir}/ | ||
15 | } | ||
16 | |||
17 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb index 70b2908fd4..8eff00821a 100644 --- a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +++ b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | |||
@@ -3,20 +3,21 @@ DESCRIPTION = "Powerful set of tools or managing Yocto Linux kernel sources \ | |||
3 | and configuration data. You can use these tools to make a single configuration \ | 3 | and configuration data. You can use these tools to make a single configuration \ |
4 | change, apply multiple patches, or work with your own kernel sources." | 4 | change, apply multiple patches, or work with your own kernel sources." |
5 | HOMEPAGE = "https://www.yoctoproject.org/" | 5 | HOMEPAGE = "https://www.yoctoproject.org/" |
6 | LICENSE = "GPLv2" | 6 | LICENSE = "GPL-2.0-only & MIT" |
7 | LIC_FILES_CHKSUM = "file://tools/kgit;beginline=5;endline=9;md5=9c30e971d435e249624278c3e343e501" | 7 | LIC_FILES_CHKSUM = "\ |
8 | file://tools/kgit;beginline=5;endline=9;md5=9c30e971d435e249624278c3e343e501 \ | ||
9 | file://Kconfiglib/LICENSE.txt;md5=712177a72a3937909543eda3ad1bfb7c \ | ||
10 | " | ||
8 | 11 | ||
9 | DEPENDS = "git-native" | 12 | DEPENDS += "git-replacement-native" |
10 | 13 | ||
11 | SRCREV = "73f813024d33432116a122524fd2ae48afc910c7" | 14 | SRCREV = "7160ebe8b865dd6028aef278efa219433db93f7e" |
12 | PR = "r12" | 15 | PV = "0.3+git" |
13 | PV = "0.2+git${SRCPV}" | ||
14 | 16 | ||
15 | inherit native | 17 | inherit native |
16 | 18 | ||
17 | SRC_URI = "git://git.yoctoproject.org/yocto-kernel-tools.git" | 19 | SRC_URI = "git://git.yoctoproject.org/yocto-kernel-tools.git;branch=master;protocol=https" |
18 | S = "${WORKDIR}/git" | 20 | S = "${WORKDIR}/git" |
19 | UPSTREAM_CHECK_COMMITS = "1" | ||
20 | 21 | ||
21 | do_configure() { | 22 | do_configure() { |
22 | : | 23 | : |
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch b/meta/recipes-kernel/kexec/kexec-tools/0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch index c2301e711d..ddc1519126 100644 --- a/meta/recipes-kernel/kexec/kexec-tools/0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch +++ b/meta/recipes-kernel/kexec/kexec-tools/0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch | |||
@@ -33,20 +33,20 @@ Upstream-Status: Submitted [http://lists.infradead.org/pipermail/kexec/2020-Nove | |||
33 | kexec/arch/arm64/kexec-arm64.c | 14 +------------- | 33 | kexec/arch/arm64/kexec-arm64.c | 14 +------------- |
34 | 1 file changed, 1 insertion(+), 13 deletions(-) | 34 | 1 file changed, 1 insertion(+), 13 deletions(-) |
35 | 35 | ||
36 | Index: kexec-tools-2.0.20/kexec/arch/arm64/kexec-arm64.c | 36 | diff --git a/kexec/arch/arm64/kexec-arm64.c b/kexec/arch/arm64/kexec-arm64.c |
37 | =================================================================== | 37 | index ec6df4b..10238d9 100644 |
38 | --- kexec-tools-2.0.20.orig/kexec/arch/arm64/kexec-arm64.c | 38 | --- a/kexec/arch/arm64/kexec-arm64.c |
39 | +++ kexec-tools-2.0.20/kexec/arch/arm64/kexec-arm64.c | 39 | +++ b/kexec/arch/arm64/kexec-arm64.c |
40 | @@ -428,7 +428,7 @@ static int setup_2nd_dtb(struct dtb *dtb | 40 | @@ -503,7 +503,7 @@ static int setup_2nd_dtb(struct dtb *dtb, char *command_line, int on_crash) |
41 | int len, range_len; | 41 | int len, range_len; |
42 | int nodeoffset; | 42 | int nodeoffset; |
43 | int new_size; | 43 | int new_size; |
44 | - int result, kaslr_seed; | 44 | - int i, result, kaslr_seed; |
45 | + int result; | 45 | + int i, result; |
46 | 46 | ||
47 | result = fdt_check_header(dtb->buf); | 47 | result = fdt_check_header(dtb->buf); |
48 | 48 | ||
49 | @@ -499,18 +499,6 @@ static int setup_2nd_dtb(struct dtb *dtb | 49 | @@ -576,18 +576,6 @@ static int setup_2nd_dtb(struct dtb *dtb, char *command_line, int on_crash) |
50 | return result; | 50 | return result; |
51 | } | 51 | } |
52 | } else { | 52 | } else { |
@@ -65,3 +65,6 @@ Index: kexec-tools-2.0.20/kexec/arch/arm64/kexec-arm64.c | |||
65 | /* | 65 | /* |
66 | * Invoke the getrandom system call with | 66 | * Invoke the getrandom system call with |
67 | * GRND_NONBLOCK, to make sure we | 67 | * GRND_NONBLOCK, to make sure we |
68 | -- | ||
69 | 2.25.1 | ||
70 | |||
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0001-kexec-arch-ppc-kexec-ppc.c-correct-double-definition.patch b/meta/recipes-kernel/kexec/kexec-tools/0001-kexec-arch-ppc-kexec-ppc.c-correct-double-definition.patch deleted file mode 100644 index 6aeebc3939..0000000000 --- a/meta/recipes-kernel/kexec/kexec-tools/0001-kexec-arch-ppc-kexec-ppc.c-correct-double-definition.patch +++ /dev/null | |||
@@ -1,23 +0,0 @@ | |||
1 | From ba2fb5baf6b0a8c882ac32301dd7a8d16de0dcf6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Sun, 27 Dec 2020 23:39:29 +0100 | ||
4 | Subject: [PATCH] kexec/arch/ppc/kexec-ppc.c: correct double definition error | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
8 | --- | ||
9 | kexec/arch/ppc/kexec-ppc.c | 1 - | ||
10 | 1 file changed, 1 deletion(-) | ||
11 | |||
12 | diff --git a/kexec/arch/ppc/kexec-ppc.c b/kexec/arch/ppc/kexec-ppc.c | ||
13 | index 03bec36..5b3e244 100644 | ||
14 | --- a/kexec/arch/ppc/kexec-ppc.c | ||
15 | +++ b/kexec/arch/ppc/kexec-ppc.c | ||
16 | @@ -35,7 +35,6 @@ unsigned long long initrd_base = 0, initrd_size = 0; | ||
17 | unsigned long long ramdisk_base = 0, ramdisk_size = 0; | ||
18 | unsigned int rtas_base, rtas_size; | ||
19 | int max_memory_ranges; | ||
20 | -const char *ramdisk; | ||
21 | |||
22 | /* | ||
23 | * Reads the #address-cells and #size-cells on this platform. | ||
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch b/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch index 363d5da4ae..a537ac2f0b 100644 --- a/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch +++ b/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From a04bcf8f683c1a5a7d015920124457ad56fb7cf0 Mon Sep 17 00:00:00 2001 | 1 | From e5bc9fbd6029057a4e3815a5326af5bd83a450e6 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Mon, 7 Sep 2015 07:59:45 +0000 | 3 | Date: Mon, 7 Sep 2015 07:59:45 +0000 |
4 | Subject: [PATCH] purgatory: Pass -r directly to linker | 4 | Subject: [PATCH] purgatory: Pass -r directly to linker |
@@ -10,15 +10,16 @@ unfiltered | |||
10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
11 | 11 | ||
12 | Upstream-Status: Pending | 12 | Upstream-Status: Pending |
13 | |||
13 | --- | 14 | --- |
14 | purgatory/Makefile | 2 +- | 15 | purgatory/Makefile | 2 +- |
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | 16 | 1 file changed, 1 insertion(+), 1 deletion(-) |
16 | 17 | ||
17 | diff --git a/purgatory/Makefile b/purgatory/Makefile | 18 | diff --git a/purgatory/Makefile b/purgatory/Makefile |
18 | index 2dd6c47..416e6b9 100644 | 19 | index 4d2d071..6673423 100644 |
19 | --- a/purgatory/Makefile | 20 | --- a/purgatory/Makefile |
20 | +++ b/purgatory/Makefile | 21 | +++ b/purgatory/Makefile |
21 | @@ -60,7 +60,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ | 22 | @@ -61,7 +61,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ |
22 | -I$(shell $(CC) -print-file-name=include) | 23 | -I$(shell $(CC) -print-file-name=include) |
23 | $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ | 24 | $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ |
24 | -Wl,--no-undefined -nostartfiles -nostdlib \ | 25 | -Wl,--no-undefined -nostartfiles -nostdlib \ |
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch b/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch index 832fe67716..e874a8b4f1 100644 --- a/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch +++ b/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 55e583d20651e829afbbc8dba0f8ec3017cda2d5 Mon Sep 17 00:00:00 2001 | 1 | From b62c1da8f8e641397add10367ee9c4cfdedb1cc0 Mon Sep 17 00:00:00 2001 |
2 | From: Haiqing Bai <Haiqing.Bai@windriver.com> | 2 | From: Haiqing Bai <Haiqing.Bai@windriver.com> |
3 | Date: Mon, 9 Jan 2017 15:26:29 +0800 | 3 | Date: Mon, 9 Jan 2017 15:26:29 +0800 |
4 | Subject: [PATCH] kexec: ARM: Fix add_buffer_phys_virt() align issue | 4 | Subject: [PATCH] kexec: ARM: Fix add_buffer_phys_virt() align issue |
@@ -12,15 +12,16 @@ Upstream-Status: Pending | |||
12 | 12 | ||
13 | Suggested-By:fredrik.markstrom@gmail.com | 13 | Suggested-By:fredrik.markstrom@gmail.com |
14 | Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com> | 14 | Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com> |
15 | |||
15 | --- | 16 | --- |
16 | kexec/arch/arm/crashdump-arm.c | 5 ++++- | 17 | kexec/arch/arm/crashdump-arm.c | 5 ++++- |
17 | 1 file changed, 4 insertions(+), 1 deletion(-) | 18 | 1 file changed, 4 insertions(+), 1 deletion(-) |
18 | 19 | ||
19 | diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c | 20 | diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c |
20 | index daa4788..3f72b38 100644 | 21 | index 1ec1826..cc20f63 100644 |
21 | --- a/kexec/arch/arm/crashdump-arm.c | 22 | --- a/kexec/arch/arm/crashdump-arm.c |
22 | +++ b/kexec/arch/arm/crashdump-arm.c | 23 | +++ b/kexec/arch/arm/crashdump-arm.c |
23 | @@ -240,6 +240,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) | 24 | @@ -242,6 +242,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) |
24 | void *buf; | 25 | void *buf; |
25 | int err; | 26 | int err; |
26 | int last_ranges; | 27 | int last_ranges; |
@@ -28,7 +29,7 @@ index daa4788..3f72b38 100644 | |||
28 | 29 | ||
29 | /* | 30 | /* |
30 | * First fetch all the memory (RAM) ranges that we are going to pass to | 31 | * First fetch all the memory (RAM) ranges that we are going to pass to |
31 | @@ -281,6 +282,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) | 32 | @@ -283,6 +284,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) |
32 | 33 | ||
33 | /* for support LPAE enabled kernel*/ | 34 | /* for support LPAE enabled kernel*/ |
34 | elf_info.class = ELFCLASS64; | 35 | elf_info.class = ELFCLASS64; |
@@ -36,7 +37,7 @@ index daa4788..3f72b38 100644 | |||
36 | 37 | ||
37 | err = crash_create_elf64_headers(info, &elf_info, | 38 | err = crash_create_elf64_headers(info, &elf_info, |
38 | usablemem_rgns.ranges, | 39 | usablemem_rgns.ranges, |
39 | @@ -302,8 +304,9 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) | 40 | @@ -304,8 +306,9 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) |
40 | * 1MB) so that available memory passed in kernel command line will be | 41 | * 1MB) so that available memory passed in kernel command line will be |
41 | * aligned to 1MB. This is because kernel create_mapping() wants memory | 42 | * aligned to 1MB. This is because kernel create_mapping() wants memory |
42 | * regions to be aligned to SECTION_SIZE. | 43 | * regions to be aligned to SECTION_SIZE. |
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch b/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch index 7a4b8548ca..6a21744ac1 100644 --- a/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch +++ b/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From c54488ad5fd657e0f154d76d7456d9080be24836 Mon Sep 17 00:00:00 2001 | 1 | From 494888bcc3bbf070dfce1b2686ee34c8619aa33d Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 10 Jun 2017 11:18:49 -0700 | 3 | Date: Sat, 10 Jun 2017 11:18:49 -0700 |
4 | Subject: [PATCH] Disable PIE during link | 4 | Subject: [PATCH] Disable PIE during link |
@@ -9,15 +9,16 @@ just need to match it with linker flags | |||
9 | Upstream-Status: Pending | 9 | Upstream-Status: Pending |
10 | 10 | ||
11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
12 | |||
12 | --- | 13 | --- |
13 | purgatory/Makefile | 2 +- | 14 | purgatory/Makefile | 2 +- |
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | 15 | 1 file changed, 1 insertion(+), 1 deletion(-) |
15 | 16 | ||
16 | diff --git a/purgatory/Makefile b/purgatory/Makefile | 17 | diff --git a/purgatory/Makefile b/purgatory/Makefile |
17 | index 416e6b9..f00edb4 100644 | 18 | index 6673423..a7405ea 100644 |
18 | --- a/purgatory/Makefile | 19 | --- a/purgatory/Makefile |
19 | +++ b/purgatory/Makefile | 20 | +++ b/purgatory/Makefile |
20 | @@ -59,7 +59,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ | 21 | @@ -60,7 +60,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ |
21 | -Iinclude \ | 22 | -Iinclude \ |
22 | -I$(shell $(CC) -print-file-name=include) | 23 | -I$(shell $(CC) -print-file-name=include) |
23 | $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ | 24 | $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ |
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0007-kexec-un-break-the-build-on-32-bit-x86.patch b/meta/recipes-kernel/kexec/kexec-tools/0007-kexec-un-break-the-build-on-32-bit-x86.patch deleted file mode 100644 index 36b0845f4a..0000000000 --- a/meta/recipes-kernel/kexec/kexec-tools/0007-kexec-un-break-the-build-on-32-bit-x86.patch +++ /dev/null | |||
@@ -1,43 +0,0 @@ | |||
1 | From bb6a26371d15473b380459ac4404bf330634b585 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Fri, 20 Dec 2019 17:21:08 +0100 | ||
4 | Subject: [PATCH] kexec: un-break the build on 32 bit x86 | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
8 | |||
9 | --- | ||
10 | kexec/arch/i386/Makefile | 1 + | ||
11 | kexec/arch/i386/kexec-x86.h | 4 ++++ | ||
12 | 2 files changed, 5 insertions(+) | ||
13 | |||
14 | diff --git a/kexec/arch/i386/Makefile b/kexec/arch/i386/Makefile | ||
15 | index f486103..5d560be 100644 | ||
16 | --- a/kexec/arch/i386/Makefile | ||
17 | +++ b/kexec/arch/i386/Makefile | ||
18 | @@ -12,6 +12,7 @@ i386_KEXEC_SRCS += kexec/arch/i386/kexec-beoboot-x86.c | ||
19 | i386_KEXEC_SRCS += kexec/arch/i386/kexec-nbi.c | ||
20 | i386_KEXEC_SRCS += kexec/arch/i386/x86-linux-setup.c | ||
21 | i386_KEXEC_SRCS += kexec/arch/i386/crashdump-x86.c | ||
22 | +i386_KEXEC_SRCS += kexec/arch/i386/kexec-mb2-x86.c | ||
23 | |||
24 | dist += kexec/arch/i386/Makefile $(i386_KEXEC_SRCS) \ | ||
25 | kexec/arch/i386/crashdump-x86.h \ | ||
26 | diff --git a/kexec/arch/i386/kexec-x86.h b/kexec/arch/i386/kexec-x86.h | ||
27 | index 0f941df..c423171 100644 | ||
28 | --- a/kexec/arch/i386/kexec-x86.h | ||
29 | +++ b/kexec/arch/i386/kexec-x86.h | ||
30 | @@ -56,9 +56,13 @@ struct arch_options_t { | ||
31 | }; | ||
32 | |||
33 | int multiboot_x86_probe(const char *buf, off_t len); | ||
34 | +int multiboot2_x86_probe(const char *buf, off_t len); | ||
35 | int multiboot_x86_load(int argc, char **argv, const char *buf, off_t len, | ||
36 | struct kexec_info *info); | ||
37 | +int multiboot2_x86_load(int argc, char **argv, const char *buf, off_t len, | ||
38 | + struct kexec_info *info); | ||
39 | void multiboot_x86_usage(void); | ||
40 | +void multiboot2_x86_usage(void); | ||
41 | |||
42 | int multiboot2_x86_load(int argc, char **argv, const char *buf, off_t len, | ||
43 | struct kexec_info *info); | ||
diff --git a/meta/recipes-kernel/kexec/kexec-tools/Fix-building-on-x86_64-with-binutils-2.41.patch b/meta/recipes-kernel/kexec/kexec-tools/Fix-building-on-x86_64-with-binutils-2.41.patch new file mode 100644 index 0000000000..4894f044fc --- /dev/null +++ b/meta/recipes-kernel/kexec/kexec-tools/Fix-building-on-x86_64-with-binutils-2.41.patch | |||
@@ -0,0 +1,95 @@ | |||
1 | From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 | ||
2 | From: Michel Lind <salimma@fedoraproject.org> | ||
3 | Date: Tue, 30 Jan 2024 04:14:31 -0600 | ||
4 | Subject: [PATCH] Fix building on x86_64 with binutils 2.41 | ||
5 | |||
6 | Newer versions of the GNU assembler (observed with binutils 2.41) will | ||
7 | complain about the ".arch i386" in files assembled with "as --64", | ||
8 | with the message "Error: 64bit mode not supported on 'i386'". | ||
9 | |||
10 | Fix by moving ".arch i386" below the relevant ".code32" directive, so | ||
11 | that the assembler is no longer expecting 64-bit instructions to be used | ||
12 | by the time that the ".arch i386" directive is encountered. | ||
13 | |||
14 | Based on similar iPXE fix: | ||
15 | https://github.com/ipxe/ipxe/commit/6ca597eee | ||
16 | |||
17 | Signed-off-by: Michel Lind <michel@michel-slm.name> | ||
18 | Signed-off-by: Simon Horman <horms@kernel.org> | ||
19 | |||
20 | Upstream-Status: Backport [https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/commit/?h=main&id=328de8e00e298f00d7ba6b25dc3950147e9642e6] | ||
21 | Signed-off-by: Yoann Congal <yoann.congal@smile.fr> | ||
22 | --- | ||
23 | purgatory/arch/i386/entry32-16-debug.S | 2 +- | ||
24 | purgatory/arch/i386/entry32-16.S | 2 +- | ||
25 | purgatory/arch/i386/entry32.S | 2 +- | ||
26 | purgatory/arch/i386/setup-x86.S | 2 +- | ||
27 | 4 files changed, 4 insertions(+), 4 deletions(-) | ||
28 | |||
29 | diff --git a/purgatory/arch/i386/entry32-16-debug.S b/purgatory/arch/i386/entry32-16-debug.S | ||
30 | index 5167944..12e1164 100644 | ||
31 | --- a/purgatory/arch/i386/entry32-16-debug.S | ||
32 | +++ b/purgatory/arch/i386/entry32-16-debug.S | ||
33 | @@ -25,10 +25,10 @@ | ||
34 | .globl entry16_debug_pre32 | ||
35 | .globl entry16_debug_first32 | ||
36 | .globl entry16_debug_old_first32 | ||
37 | - .arch i386 | ||
38 | .balign 16 | ||
39 | entry16_debug: | ||
40 | .code32 | ||
41 | + .arch i386 | ||
42 | /* Compute where I am running at (assumes esp valid) */ | ||
43 | call 1f | ||
44 | 1: popl %ebx | ||
45 | diff --git a/purgatory/arch/i386/entry32-16.S b/purgatory/arch/i386/entry32-16.S | ||
46 | index c051aab..eace095 100644 | ||
47 | --- a/purgatory/arch/i386/entry32-16.S | ||
48 | +++ b/purgatory/arch/i386/entry32-16.S | ||
49 | @@ -20,10 +20,10 @@ | ||
50 | #undef i386 | ||
51 | .text | ||
52 | .globl entry16, entry16_regs | ||
53 | - .arch i386 | ||
54 | .balign 16 | ||
55 | entry16: | ||
56 | .code32 | ||
57 | + .arch i386 | ||
58 | /* Compute where I am running at (assumes esp valid) */ | ||
59 | call 1f | ||
60 | 1: popl %ebx | ||
61 | diff --git a/purgatory/arch/i386/entry32.S b/purgatory/arch/i386/entry32.S | ||
62 | index f7a494f..8ce9e31 100644 | ||
63 | --- a/purgatory/arch/i386/entry32.S | ||
64 | +++ b/purgatory/arch/i386/entry32.S | ||
65 | @@ -20,10 +20,10 @@ | ||
66 | #undef i386 | ||
67 | |||
68 | .text | ||
69 | - .arch i386 | ||
70 | .globl entry32, entry32_regs | ||
71 | entry32: | ||
72 | .code32 | ||
73 | + .arch i386 | ||
74 | |||
75 | /* Setup a gdt that should that is generally usefully */ | ||
76 | lgdt %cs:gdt | ||
77 | diff --git a/purgatory/arch/i386/setup-x86.S b/purgatory/arch/i386/setup-x86.S | ||
78 | index 201bb2c..a212eed 100644 | ||
79 | --- a/purgatory/arch/i386/setup-x86.S | ||
80 | +++ b/purgatory/arch/i386/setup-x86.S | ||
81 | @@ -21,10 +21,10 @@ | ||
82 | #undef i386 | ||
83 | |||
84 | .text | ||
85 | - .arch i386 | ||
86 | .globl purgatory_start | ||
87 | purgatory_start: | ||
88 | .code32 | ||
89 | + .arch i386 | ||
90 | |||
91 | /* Load a gdt so I know what the segment registers are */ | ||
92 | lgdt %cs:gdt | ||
93 | -- | ||
94 | 2.39.2 | ||
95 | |||
diff --git a/meta/recipes-kernel/kexec/kexec-tools_2.0.21.bb b/meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb index 069e8f4d05..dec821ea88 100644 --- a/meta/recipes-kernel/kexec/kexec-tools_2.0.21.bb +++ b/meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb | |||
@@ -1,10 +1,9 @@ | |||
1 | 1 | ||
2 | SUMMARY = "Kexec fast reboot tools" | 2 | SUMMARY = "Kexec fast reboot tools" |
3 | DESCRIPTION = "Kexec is a fast reboot feature that lets you reboot to a new Linux kernel" | 3 | DESCRIPTION = "Kexec is a fast reboot feature that lets you reboot to a new Linux kernel" |
4 | AUTHOR = "Eric Biederman" | ||
5 | HOMEPAGE = "http://kernel.org/pub/linux/utils/kernel/kexec/" | 4 | HOMEPAGE = "http://kernel.org/pub/linux/utils/kernel/kexec/" |
6 | SECTION = "kernel/userland" | 5 | SECTION = "kernel/userland" |
7 | LICENSE = "GPLv2" | 6 | LICENSE = "GPL-2.0-only" |
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=ea5bed2f60d357618ca161ad539f7c0a \ | 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=ea5bed2f60d357618ca161ad539f7c0a \ |
9 | file://kexec/kexec.c;beginline=1;endline=20;md5=af10f6ae4a8715965e648aa687ad3e09" | 8 | file://kexec/kexec.c;beginline=1;endline=20;md5=af10f6ae4a8715965e648aa687ad3e09" |
10 | DEPENDS = "zlib xz" | 9 | DEPENDS = "zlib xz" |
@@ -17,19 +16,18 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/kexec/kexec-tools-${PV}.tar.gz | |||
17 | file://0002-purgatory-Pass-r-directly-to-linker.patch \ | 16 | file://0002-purgatory-Pass-r-directly-to-linker.patch \ |
18 | file://0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch \ | 17 | file://0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch \ |
19 | file://0005-Disable-PIE-during-link.patch \ | 18 | file://0005-Disable-PIE-during-link.patch \ |
20 | file://0007-kexec-un-break-the-build-on-32-bit-x86.patch \ | ||
21 | file://0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch \ | 19 | file://0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch \ |
22 | file://0001-kexec-arch-ppc-kexec-ppc.c-correct-double-definition.patch \ | 20 | file://Fix-building-on-x86_64-with-binutils-2.41.patch \ |
23 | " | 21 | " |
24 | 22 | ||
25 | SRC_URI[sha256sum] = "b3d4cfd2ba10d68ce341ea3b8ca414d00a0b6183b95686172154f94bce834f94" | 23 | SRC_URI[sha256sum] = "f33d2660b3e38d25a127e87097978e0f7a9a73ab5151a29eb80974d169ff6a29" |
26 | 24 | ||
27 | inherit autotools update-rc.d systemd | 25 | inherit autotools update-rc.d systemd |
28 | 26 | ||
29 | export LDFLAGS = "-L${STAGING_LIBDIR}" | 27 | export LDFLAGS = "-L${STAGING_LIBDIR}" |
30 | EXTRA_OECONF = " --with-zlib=yes" | 28 | EXTRA_OECONF = " --with-zlib=yes" |
31 | 29 | ||
32 | do_compile_prepend() { | 30 | do_compile:prepend() { |
33 | # Remove the prepackaged config.h from the source tree as it overrides | 31 | # Remove the prepackaged config.h from the source tree as it overrides |
34 | # the same file generated by configure and placed in the build tree | 32 | # the same file generated by configure and placed in the build tree |
35 | rm -f ${S}/include/config.h | 33 | rm -f ${S}/include/config.h |
@@ -44,7 +42,7 @@ do_compile_prepend() { | |||
44 | done | 42 | done |
45 | } | 43 | } |
46 | 44 | ||
47 | do_install_append () { | 45 | do_install:append () { |
48 | install -d ${D}${sysconfdir}/sysconfig | 46 | install -d ${D}${sysconfdir}/sysconfig |
49 | install -m 0644 ${WORKDIR}/kdump.conf ${D}${sysconfdir}/sysconfig | 47 | install -m 0644 ${WORKDIR}/kdump.conf ${D}${sysconfdir}/sysconfig |
50 | 48 | ||
@@ -54,35 +52,35 @@ do_install_append () { | |||
54 | 52 | ||
55 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | 53 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then |
56 | install -D -m 0755 ${WORKDIR}/kdump ${D}${libexecdir}/kdump-helper | 54 | install -D -m 0755 ${WORKDIR}/kdump ${D}${libexecdir}/kdump-helper |
57 | install -D -m 0644 ${WORKDIR}/kdump.service ${D}${systemd_unitdir}/system/kdump.service | 55 | install -D -m 0644 ${WORKDIR}/kdump.service ${D}${systemd_system_unitdir}/kdump.service |
58 | sed -i -e 's,@LIBEXECDIR@,${libexecdir},g' ${D}${systemd_unitdir}/system/kdump.service | 56 | sed -i -e 's,@LIBEXECDIR@,${libexecdir},g' ${D}${systemd_system_unitdir}/kdump.service |
59 | fi | 57 | fi |
60 | } | 58 | } |
61 | 59 | ||
62 | PACKAGES =+ "kexec kdump vmcore-dmesg" | 60 | PACKAGES =+ "kexec kdump vmcore-dmesg" |
63 | 61 | ||
64 | ALLOW_EMPTY_${PN} = "1" | 62 | ALLOW_EMPTY:${PN} = "1" |
65 | RRECOMMENDS_${PN} = "kexec kdump vmcore-dmesg" | 63 | RRECOMMENDS:${PN} = "kexec kdump vmcore-dmesg" |
66 | 64 | ||
67 | FILES_kexec = "${sbindir}/kexec" | 65 | FILES:kexec = "${sbindir}/kexec" |
68 | FILES_kdump = "${sbindir}/kdump \ | 66 | FILES:kdump = "${sbindir}/kdump \ |
69 | ${sysconfdir}/sysconfig/kdump.conf \ | 67 | ${sysconfdir}/sysconfig/kdump.conf \ |
70 | ${sysconfdir}/init.d/kdump \ | 68 | ${sysconfdir}/init.d/kdump \ |
71 | ${libexecdir}/kdump-helper \ | 69 | ${libexecdir}/kdump-helper \ |
72 | ${systemd_unitdir}/system/kdump.service \ | 70 | ${systemd_system_unitdir}/kdump.service \ |
73 | " | 71 | " |
74 | 72 | ||
75 | FILES_vmcore-dmesg = "${sbindir}/vmcore-dmesg" | 73 | FILES:vmcore-dmesg = "${sbindir}/vmcore-dmesg" |
76 | 74 | ||
77 | INITSCRIPT_PACKAGES = "kdump" | 75 | INITSCRIPT_PACKAGES = "kdump" |
78 | INITSCRIPT_NAME_kdump = "kdump" | 76 | INITSCRIPT_NAME:kdump = "kdump" |
79 | INITSCRIPT_PARAMS_kdump = "start 56 2 3 4 5 . stop 56 0 1 6 ." | 77 | INITSCRIPT_PARAMS:kdump = "start 56 2 3 4 5 . stop 56 0 1 6 ." |
80 | 78 | ||
81 | SYSTEMD_PACKAGES = "kdump" | 79 | SYSTEMD_PACKAGES = "kdump" |
82 | SYSTEMD_SERVICE_kdump = "kdump.service" | 80 | SYSTEMD_SERVICE:kdump = "kdump.service" |
83 | 81 | ||
84 | SECURITY_PIE_CFLAGS_remove = "-fPIE -pie" | 82 | SECURITY_PIE_CFLAGS:remove = "-fPIE -pie" |
85 | 83 | ||
86 | COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|powerpc.*|mips.*)-(linux|freebsd.*)' | 84 | COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|powerpc.*|mips.*)-(linux|freebsd.*)' |
87 | 85 | ||
88 | INSANE_SKIP_${PN} = "arch" | 86 | INSANE_SKIP:${PN} = "arch" |
diff --git a/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb b/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb index 9a172675af..6c0739d64f 100644 --- a/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb +++ b/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb | |||
@@ -21,20 +21,29 @@ do_install() { | |||
21 | #!/bin/sh | 21 | #!/bin/sh |
22 | # Expected to be called as: depmodwrapper -a KERNEL_VERSION | 22 | # Expected to be called as: depmodwrapper -a KERNEL_VERSION |
23 | if [ "\$1" != "-a" -o "\$2" != "-b" ]; then | 23 | if [ "\$1" != "-a" -o "\$2" != "-b" ]; then |
24 | echo "Usage: depmodwrapper -a -b rootfs KERNEL_VERSION" >&2 | 24 | echo "Usage: depmodwrapper -a -b rootfs KERNEL_VERSION [KERNEL_PACKAGE_NAME]" >&2 |
25 | exit 1 | 25 | exit 1 |
26 | fi | 26 | fi |
27 | 27 | ||
28 | kernelpkgname="kernel" | ||
29 | # If no KERNEL_PACKAGE_NAME, assume "kernel". | ||
30 | [ -z "\$5" ] || kernelpkgname="\$5" | ||
31 | |||
28 | kernelabi="" | 32 | kernelabi="" |
29 | if [ -r "${PKGDATA_DIR}/kernel-depmod/kernel-abiversion" ]; then | 33 | if [ -r "${PKGDATA_DIR}/\${kernelpkgname}-depmod/\${kernelpkgname}-abiversion" ]; then |
30 | kernelabi=\$(cat "${PKGDATA_DIR}/kernel-depmod/kernel-abiversion") | 34 | kernelabi=\$(cat "${PKGDATA_DIR}/\${kernelpkgname}-depmod/\${kernelpkgname}-abiversion") |
35 | fi | ||
36 | |||
37 | if [ ! -e "\$3${nonarch_base_libdir}/depmod.d/exclude.conf" ]; then | ||
38 | mkdir -p "\$3${nonarch_base_libdir}/depmod.d" | ||
39 | echo "exclude .debug" > "\$3${nonarch_base_libdir}/depmod.d/exclude.conf" | ||
31 | fi | 40 | fi |
32 | 41 | ||
33 | if [ ! -r ${PKGDATA_DIR}/kernel-depmod/System.map-\$4 ] || [ "\$kernelabi" != "\$4" ]; then | 42 | if [ ! -r ${PKGDATA_DIR}/\${kernelpkgname}-depmod/System.map-\$4 ] || [ "\$kernelabi" != "\$4" ]; then |
34 | echo "Unable to read: ${PKGDATA_DIR}/kernel-depmod/System.map-\$4" >&2 | 43 | echo "Unable to read: ${PKGDATA_DIR}/\${kernelpkgname}-depmod/System.map-\$4" >&2 |
35 | exec env depmod "\$1" "\$2" "\$3" "\$4" | 44 | exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" "\$4" |
36 | else | 45 | else |
37 | exec env depmod "\$1" "\$2" "\$3" -F "${PKGDATA_DIR}/kernel-depmod/System.map-\$4" "\$4" | 46 | exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" -F "${PKGDATA_DIR}/\${kernelpkgname}-depmod/System.map-\$4" "\$4" |
38 | fi | 47 | fi |
39 | EOF | 48 | EOF |
40 | chmod +x ${D}${bindir_crossscripts}/depmodwrapper | 49 | chmod +x ${D}${bindir_crossscripts}/depmodwrapper |
diff --git a/meta/recipes-kernel/kmod/kmod-native_git.bb b/meta/recipes-kernel/kmod/kmod-native_git.bb deleted file mode 100644 index f61134bbaf..0000000000 --- a/meta/recipes-kernel/kmod/kmod-native_git.bb +++ /dev/null | |||
@@ -1,15 +0,0 @@ | |||
1 | # Copyright (C) 2012 Khem Raj <raj.khem@gmail.com> | ||
2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
3 | |||
4 | require kmod.inc | ||
5 | |||
6 | DEPENDS += "zlib-native" | ||
7 | |||
8 | inherit native | ||
9 | |||
10 | do_install_append (){ | ||
11 | for tool in depmod insmod lsmod modinfo modprobe rmmod | ||
12 | do | ||
13 | ln -s kmod ${D}${bindir}/$tool | ||
14 | done | ||
15 | } | ||
diff --git a/meta/recipes-kernel/kmod/kmod.inc b/meta/recipes-kernel/kmod/kmod.inc deleted file mode 100644 index ccda9f2b73..0000000000 --- a/meta/recipes-kernel/kmod/kmod.inc +++ /dev/null | |||
@@ -1,38 +0,0 @@ | |||
1 | # Copyright (C) 2012 Khem Raj <raj.khem@gmail.com> | ||
2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
3 | |||
4 | SUMMARY = "Tools for managing Linux kernel modules" | ||
5 | DESCRIPTION = "kmod is a set of tools to handle common tasks with Linux kernel modules like \ | ||
6 | insert, remove, list, check properties, resolve dependencies and aliases." | ||
7 | HOMEPAGE = "http://kernel.org/pub/linux/utils/kernel/kmod/" | ||
8 | LICENSE = "GPL-2.0+ & LGPL-2.1+" | ||
9 | LICENSE_libkmod = "LGPL-2.1+" | ||
10 | SECTION = "base" | ||
11 | |||
12 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | ||
13 | file://libkmod/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | ||
14 | file://tools/COPYING;md5=751419260aa954499f7abaabaa882bbe \ | ||
15 | " | ||
16 | inherit autotools gtk-doc pkgconfig manpages | ||
17 | |||
18 | SRCREV = "1ccfe994287119cc6cef37a7ca4c529d89de4b95" | ||
19 | # Lookout for PV bump too when SRCREV is changed | ||
20 | PV = "28" | ||
21 | |||
22 | SRC_URI = "git://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git \ | ||
23 | file://depmod-search.conf \ | ||
24 | file://avoid_parallel_tests.patch \ | ||
25 | " | ||
26 | |||
27 | S = "${WORKDIR}/git" | ||
28 | |||
29 | EXTRA_AUTORECONF += "--install --symlink" | ||
30 | EXTRA_OECONF +=" --enable-tools --with-zlib" | ||
31 | |||
32 | PACKAGECONFIG[debug] = "--enable-debug,--disable-debug" | ||
33 | PACKAGECONFIG[logging] = " --enable-logging,--disable-logging" | ||
34 | PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" | ||
35 | PACKAGECONFIG[xz] = "--with-xz,--without-xz,xz" | ||
36 | PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl" | ||
37 | |||
38 | GTKDOC_DOCDIR = "${S}/libkmod/docs" | ||
diff --git a/meta/recipes-kernel/kmod/kmod/0001-Use-portable-implementation-for-basename-API.patch b/meta/recipes-kernel/kmod/kmod/0001-Use-portable-implementation-for-basename-API.patch new file mode 100644 index 0000000000..6a7f9ded4f --- /dev/null +++ b/meta/recipes-kernel/kmod/kmod/0001-Use-portable-implementation-for-basename-API.patch | |||
@@ -0,0 +1,136 @@ | |||
1 | From 721ed6040c7aa47070faf6378c433089e178bd43 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Sat, 9 Dec 2023 17:35:59 -0800 | ||
4 | Subject: [PATCH] Use portable implementation for basename API | ||
5 | |||
6 | musl has removed the non-prototype declaration of basename from | ||
7 | string.h [1] which now results in build errors with clang-17+ compiler | ||
8 | |||
9 | Implement GNU basename behavior using strchr which is portable across libcs | ||
10 | |||
11 | Fixes | ||
12 | ../git/tools/kmod.c:71:19: error: call to undeclared function 'basename'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] | ||
13 | 71 | "Commands:\n", basename(argv[0])); | ||
14 | | ^ | ||
15 | |||
16 | [1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7 | ||
17 | |||
18 | Upstream-Status: Submitted [https://github.com/kmod-project/kmod/pull/32] | ||
19 | |||
20 | Suggested-by: Rich Felker | ||
21 | |||
22 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
23 | --- | ||
24 | libkmod/libkmod-config.c | 2 +- | ||
25 | shared/util.c | 4 ++-- | ||
26 | shared/util.h | 7 +++++++ | ||
27 | testsuite/testsuite.c | 2 +- | ||
28 | tools/depmod.c | 2 +- | ||
29 | tools/kmod.c | 4 ++-- | ||
30 | 6 files changed, 14 insertions(+), 7 deletions(-) | ||
31 | |||
32 | diff --git a/libkmod/libkmod-config.c b/libkmod/libkmod-config.c | ||
33 | index e83621b..8aa555a 100644 | ||
34 | --- a/libkmod/libkmod-config.c | ||
35 | +++ b/libkmod/libkmod-config.c | ||
36 | @@ -794,7 +794,7 @@ static int conf_files_insert_sorted(struct kmod_ctx *ctx, | ||
37 | bool is_single = false; | ||
38 | |||
39 | if (name == NULL) { | ||
40 | - name = basename(path); | ||
41 | + name = gnu_basename(path); | ||
42 | is_single = true; | ||
43 | } | ||
44 | |||
45 | diff --git a/shared/util.c b/shared/util.c | ||
46 | index e2bab83..0e16670 100644 | ||
47 | --- a/shared/util.c | ||
48 | +++ b/shared/util.c | ||
49 | @@ -172,9 +172,9 @@ char *modname_normalize(const char *modname, char buf[static PATH_MAX], size_t * | ||
50 | |||
51 | char *path_to_modname(const char *path, char buf[static PATH_MAX], size_t *len) | ||
52 | { | ||
53 | - char *modname; | ||
54 | + const char *modname; | ||
55 | |||
56 | - modname = basename(path); | ||
57 | + modname = gnu_basename(path); | ||
58 | if (modname == NULL || modname[0] == '\0') | ||
59 | return NULL; | ||
60 | |||
61 | diff --git a/shared/util.h b/shared/util.h | ||
62 | index c4a3916..073dc5a 100644 | ||
63 | --- a/shared/util.h | ||
64 | +++ b/shared/util.h | ||
65 | @@ -5,6 +5,7 @@ | ||
66 | #include <stdbool.h> | ||
67 | #include <stdlib.h> | ||
68 | #include <stdio.h> | ||
69 | +#include <string.h> | ||
70 | #include <sys/types.h> | ||
71 | #include <sys/stat.h> | ||
72 | #include <time.h> | ||
73 | @@ -76,6 +77,12 @@ do { \ | ||
74 | __p->__v = (val); \ | ||
75 | } while(0) | ||
76 | |||
77 | +static _always_inline_ const char *gnu_basename(const char *s) | ||
78 | +{ | ||
79 | + const char *p = strrchr(s, '/'); | ||
80 | + return p ? p+1 : s; | ||
81 | +} | ||
82 | + | ||
83 | static _always_inline_ unsigned int ALIGN_POWER2(unsigned int u) | ||
84 | { | ||
85 | return 1 << ((sizeof(u) * 8) - __builtin_clz(u - 1)); | ||
86 | diff --git a/testsuite/testsuite.c b/testsuite/testsuite.c | ||
87 | index 318343a..aafc987 100644 | ||
88 | --- a/testsuite/testsuite.c | ||
89 | +++ b/testsuite/testsuite.c | ||
90 | @@ -70,7 +70,7 @@ static void help(void) | ||
91 | |||
92 | printf("Usage:\n" | ||
93 | "\t%s [options] <test>\n" | ||
94 | - "Options:\n", basename(progname)); | ||
95 | + "Options:\n", gnu_basename(progname)); | ||
96 | |||
97 | for (itr = options, itr_short = options_short; | ||
98 | itr->name != NULL; itr++, itr_short++) | ||
99 | diff --git a/tools/depmod.c b/tools/depmod.c | ||
100 | index 43fc354..cfb15b1 100644 | ||
101 | --- a/tools/depmod.c | ||
102 | +++ b/tools/depmod.c | ||
103 | @@ -762,7 +762,7 @@ static int cfg_files_insert_sorted(struct cfg_file ***p_files, size_t *p_n_files | ||
104 | if (name != NULL) | ||
105 | namelen = strlen(name); | ||
106 | else { | ||
107 | - name = basename(dir); | ||
108 | + name = gnu_basename(dir); | ||
109 | namelen = strlen(name); | ||
110 | dirlen -= namelen + 1; | ||
111 | } | ||
112 | diff --git a/tools/kmod.c b/tools/kmod.c | ||
113 | index 55689c0..df91e5c 100644 | ||
114 | --- a/tools/kmod.c | ||
115 | +++ b/tools/kmod.c | ||
116 | @@ -68,7 +68,7 @@ static int kmod_help(int argc, char *argv[]) | ||
117 | "Options:\n" | ||
118 | "\t-V, --version show version\n" | ||
119 | "\t-h, --help show this help\n\n" | ||
120 | - "Commands:\n", basename(argv[0])); | ||
121 | + "Commands:\n", gnu_basename(argv[0])); | ||
122 | |||
123 | for (i = 0; i < ARRAY_SIZE(kmod_cmds); i++) { | ||
124 | if (kmod_cmds[i]->help != NULL) { | ||
125 | @@ -156,7 +156,7 @@ static int handle_kmod_compat_commands(int argc, char *argv[]) | ||
126 | const char *cmd; | ||
127 | size_t i; | ||
128 | |||
129 | - cmd = basename(argv[0]); | ||
130 | + cmd = gnu_basename(argv[0]); | ||
131 | |||
132 | for (i = 0; i < ARRAY_SIZE(kmod_compat_cmds); i++) { | ||
133 | if (streq(kmod_compat_cmds[i]->name, cmd)) | ||
134 | -- | ||
135 | 2.43.0 | ||
136 | |||
diff --git a/meta/recipes-kernel/kmod/kmod/gtkdocdir.patch b/meta/recipes-kernel/kmod/kmod/gtkdocdir.patch new file mode 100644 index 0000000000..a34ea466e8 --- /dev/null +++ b/meta/recipes-kernel/kmod/kmod/gtkdocdir.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From dd59095f70f774f6d1e767010e25b35ef6db4c4b Mon Sep 17 00:00:00 2001 | ||
2 | From: Ross Burton <ross.burton@arm.com> | ||
3 | Date: Fri, 8 Dec 2023 22:35:45 +0000 | ||
4 | Subject: [PATCH] configure: set docdir in GTK_DOC_CHECK | ||
5 | |||
6 | By passing --docdir in the GTK_DOC_CHECK arguments (to match | ||
7 | autogen.sh) autoreconf will work out of the box. | ||
8 | |||
9 | Without this autoreconf fails due to the documentation not being in | ||
10 | ./docs, the default location. | ||
11 | |||
12 | Upstream-Status: Submitted [https://lore.kernel.org/linux-modules/20231208224511.1363066-1-ross.burton@arm.com/T/#u] | ||
13 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
14 | --- | ||
15 | configure.ac | 2 +- | ||
16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
17 | |||
18 | diff --git a/configure.ac b/configure.ac | ||
19 | index de01e08..67696c4 100644 | ||
20 | --- a/configure.ac | ||
21 | +++ b/configure.ac | ||
22 | @@ -255,7 +255,7 @@ AS_IF([test "x$enable_coverage" = "xyes"], [ | ||
23 | AM_CONDITIONAL([ENABLE_COVERAGE], [test "x$enable_coverage" = "xyes"]) | ||
24 | |||
25 | m4_ifdef([GTK_DOC_CHECK], [ | ||
26 | -GTK_DOC_CHECK([1.14],[--flavour no-tmpl-flat]) | ||
27 | +GTK_DOC_CHECK([1.14],[--flavour no-tmpl-flat --docdir libkmod/docs]) | ||
28 | ], [ | ||
29 | AM_CONDITIONAL([ENABLE_GTK_DOC], false)]) | ||
30 | |||
31 | -- | ||
32 | 2.34.1 | ||
33 | |||
diff --git a/meta/recipes-kernel/kmod/kmod/ptest.patch b/meta/recipes-kernel/kmod/kmod/ptest.patch deleted file mode 100644 index 831dbcb909..0000000000 --- a/meta/recipes-kernel/kmod/kmod/ptest.patch +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | Add 'install-ptest' rule. | ||
2 | |||
3 | Signed-off-by: Tudor Florea <tudor.florea@enea.com> | ||
4 | Upstream-Status: Pending | ||
5 | |||
6 | diff -ruN a/Makefile.am b/Makefile.am | ||
7 | --- a/Makefile.am 2013-07-12 17:11:05.278331557 +0200 | ||
8 | +++ b/Makefile.am 2013-07-12 17:14:27.033788016 +0200 | ||
9 | @@ -204,6 +204,16 @@ | ||
10 | |||
11 | distclean-local: $(DISTCLEAN_LOCAL_HOOKS) | ||
12 | |||
13 | +install-ptest: | ||
14 | + @$(MKDIR_P) $(DESTDIR)/testsuite | ||
15 | + @for file in $(TESTSUITE); do \ | ||
16 | + install $$file $(DESTDIR)/testsuite; \ | ||
17 | + done; | ||
18 | + @sed -e 's/^Makefile/_Makefile/' < Makefile > $(DESTDIR)/Makefile | ||
19 | + @$(MKDIR_P) $(DESTDIR)/tools | ||
20 | + @cp $(noinst_SCRIPTS) $(noinst_PROGRAMS) $(DESTDIR)/tools | ||
21 | + @cp -r testsuite/rootfs testsuite/.libs $(DESTDIR)/testsuite | ||
22 | + | ||
23 | # ------------------------------------------------------------------------------ | ||
24 | # custom release helpers | ||
25 | # ------------------------------------------------------------------------------ | ||
diff --git a/meta/recipes-kernel/kmod/kmod_31.bb b/meta/recipes-kernel/kmod/kmod_31.bb new file mode 100644 index 0000000000..6ae83a7c66 --- /dev/null +++ b/meta/recipes-kernel/kmod/kmod_31.bb | |||
@@ -0,0 +1,89 @@ | |||
1 | # Copyright (C) 2012 Khem Raj <raj.khem@gmail.com> | ||
2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
3 | |||
4 | SUMMARY = "Tools for managing Linux kernel modules" | ||
5 | DESCRIPTION = "kmod is a set of tools to handle common tasks with Linux kernel modules like \ | ||
6 | insert, remove, list, check properties, resolve dependencies and aliases." | ||
7 | HOMEPAGE = "http://kernel.org/pub/linux/utils/kernel/kmod/" | ||
8 | LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later" | ||
9 | LICENSE:libkmod = "LGPL-2.1-or-later" | ||
10 | SECTION = "base" | ||
11 | |||
12 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | ||
13 | file://libkmod/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | ||
14 | file://tools/COPYING;md5=751419260aa954499f7abaabaa882bbe \ | ||
15 | " | ||
16 | inherit autotools bash-completion gtk-doc pkgconfig manpages update-alternatives | ||
17 | |||
18 | SRCREV = "aff617ea871d0568cc491bd116c0be1e857463bb" | ||
19 | |||
20 | SRC_URI = "git://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git;branch=master;protocol=https \ | ||
21 | file://depmod-search.conf \ | ||
22 | file://avoid_parallel_tests.patch \ | ||
23 | file://0001-Use-portable-implementation-for-basename-API.patch \ | ||
24 | file://gtkdocdir.patch \ | ||
25 | " | ||
26 | |||
27 | S = "${WORKDIR}/git" | ||
28 | |||
29 | EXTRA_OECONF += "--enable-tools" | ||
30 | |||
31 | PACKAGECONFIG ??= "zlib xz openssl" | ||
32 | PACKAGECONFIG[debug] = "--enable-debug,--disable-debug" | ||
33 | PACKAGECONFIG[logging] = " --enable-logging,--disable-logging" | ||
34 | PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" | ||
35 | PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl" | ||
36 | PACKAGECONFIG[xz] = "--with-xz,--without-xz,xz" | ||
37 | PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" | ||
38 | PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd" | ||
39 | |||
40 | PROVIDES += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
41 | RPROVIDES:${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
42 | RCONFLICTS:${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
43 | RREPLACES:${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
44 | |||
45 | # to force user to remove old module-init-tools and replace them with kmod variants | ||
46 | RCONFLICTS:libkmod2 += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
47 | |||
48 | # autotools set prefix to /usr, however we want them in /bin and /sbin | ||
49 | EXTRA_OECONF += "--bindir=${base_bindir} --sbindir=${base_sbindir}" | ||
50 | |||
51 | do_install:append () { | ||
52 | install -dm755 ${D}${base_bindir} | ||
53 | install -dm755 ${D}${base_sbindir} | ||
54 | # add symlinks to kmod | ||
55 | ln -rs ${D}${base_bindir}/kmod ${D}${base_bindir}/lsmod | ||
56 | for tool in insmod rmmod depmod modinfo modprobe; do | ||
57 | ln -rs ${D}${base_bindir}/kmod ${D}${base_sbindir}/${tool} | ||
58 | done | ||
59 | # configuration directories | ||
60 | install -dm755 ${D}${nonarch_base_libdir}/depmod.d | ||
61 | install -dm755 ${D}${nonarch_base_libdir}/modprobe.d | ||
62 | install -dm755 ${D}${sysconfdir}/depmod.d | ||
63 | install -dm755 ${D}${sysconfdir}/modprobe.d | ||
64 | |||
65 | # install depmod.d file for search/ dir | ||
66 | install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${nonarch_base_libdir}/depmod.d/search.conf" | ||
67 | |||
68 | # Add .debug to the exclude path for depmod | ||
69 | echo "exclude .debug" > ${D}${nonarch_base_libdir}/depmod.d/exclude.conf | ||
70 | } | ||
71 | |||
72 | ALTERNATIVE_PRIORITY = "70" | ||
73 | |||
74 | ALTERNATIVE:kmod = "insmod modprobe rmmod modinfo bin-lsmod lsmod depmod" | ||
75 | |||
76 | ALTERNATIVE_LINK_NAME[depmod] = "${base_sbindir}/depmod" | ||
77 | ALTERNATIVE_LINK_NAME[insmod] = "${base_sbindir}/insmod" | ||
78 | ALTERNATIVE_LINK_NAME[modprobe] = "${base_sbindir}/modprobe" | ||
79 | ALTERNATIVE_LINK_NAME[rmmod] = "${base_sbindir}/rmmod" | ||
80 | ALTERNATIVE_LINK_NAME[modinfo] = "${base_sbindir}/modinfo" | ||
81 | ALTERNATIVE_LINK_NAME[bin-lsmod] = "${base_bindir}/lsmod" | ||
82 | ALTERNATIVE_LINK_NAME[lsmod] = "${base_sbindir}/lsmod" | ||
83 | ALTERNATIVE_TARGET[lsmod] = "${base_bindir}/lsmod.${BPN}" | ||
84 | |||
85 | PACKAGES =+ "libkmod" | ||
86 | FILES:libkmod = "${base_libdir}/libkmod*${SOLIBS} ${libdir}/libkmod*${SOLIBS}" | ||
87 | FILES:${PN} += "${nonarch_base_libdir}/depmod.d ${nonarch_base_libdir}/modprobe.d" | ||
88 | |||
89 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-kernel/kmod/kmod_git.bb b/meta/recipes-kernel/kmod/kmod_git.bb deleted file mode 100644 index 4f2b037f2f..0000000000 --- a/meta/recipes-kernel/kmod/kmod_git.bb +++ /dev/null | |||
@@ -1,62 +0,0 @@ | |||
1 | # Copyright (C) 2012 Khem Raj <raj.khem@gmail.com> | ||
2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
3 | |||
4 | require kmod.inc | ||
5 | |||
6 | DEPENDS += "zlib" | ||
7 | PROVIDES += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
8 | RPROVIDES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
9 | RCONFLICTS_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
10 | RREPLACES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
11 | |||
12 | # to force user to remove old module-init-tools and replace them with kmod variants | ||
13 | RCONFLICTS_libkmod2 += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools" | ||
14 | |||
15 | # autotools set prefix to /usr, however we want them in /bin and /sbin | ||
16 | EXTRA_OECONF += " --bindir=${base_bindir} --sbindir=${base_sbindir}" | ||
17 | |||
18 | do_install_append () { | ||
19 | install -dm755 ${D}${base_bindir} | ||
20 | install -dm755 ${D}${base_sbindir} | ||
21 | # add symlinks to kmod | ||
22 | lnr ${D}${base_bindir}/kmod ${D}${base_bindir}/lsmod | ||
23 | for tool in insmod rmmod depmod modinfo modprobe; do | ||
24 | lnr ${D}${base_bindir}/kmod ${D}${base_sbindir}/${tool} | ||
25 | done | ||
26 | # configuration directories | ||
27 | install -dm755 ${D}${base_libdir}/depmod.d | ||
28 | install -dm755 ${D}${base_libdir}/modprobe.d | ||
29 | install -dm755 ${D}${sysconfdir}/depmod.d | ||
30 | install -dm755 ${D}${sysconfdir}/modprobe.d | ||
31 | |||
32 | # install depmod.d file for search/ dir | ||
33 | install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${base_libdir}/depmod.d/search.conf" | ||
34 | } | ||
35 | |||
36 | do_compile_prepend() { | ||
37 | sed -i 's/ac_pwd=/#ac_pwd=/' config.status ; sed -i "/#ac_pwd=/a\ac_pwd='.'" config.status | ||
38 | } | ||
39 | |||
40 | inherit update-alternatives bash-completion | ||
41 | |||
42 | ALTERNATIVE_PRIORITY = "70" | ||
43 | |||
44 | ALTERNATIVE_kmod = "insmod modprobe rmmod modinfo bin-lsmod lsmod depmod" | ||
45 | |||
46 | ALTERNATIVE_LINK_NAME[insmod] = "${base_sbindir}/insmod" | ||
47 | ALTERNATIVE_LINK_NAME[modprobe] = "${base_sbindir}/modprobe" | ||
48 | ALTERNATIVE_LINK_NAME[rmmod] = "${base_sbindir}/rmmod" | ||
49 | ALTERNATIVE_LINK_NAME[modinfo] = "${base_sbindir}/modinfo" | ||
50 | ALTERNATIVE_LINK_NAME[bin-lsmod] = "${base_bindir}/lsmod" | ||
51 | |||
52 | ALTERNATIVE_LINK_NAME[lsmod] = "${base_sbindir}/lsmod" | ||
53 | ALTERNATIVE_TARGET[lsmod] = "${base_bindir}/lsmod.${BPN}" | ||
54 | |||
55 | ALTERNATIVE_LINK_NAME[depmod] = "${base_sbindir}/depmod" | ||
56 | |||
57 | PACKAGES =+ "libkmod" | ||
58 | |||
59 | FILES_libkmod = "${base_libdir}/libkmod*${SOLIBS} ${libdir}/libkmod*${SOLIBS}" | ||
60 | FILES_${PN} += "${base_libdir}/depmod.d ${base_libdir}/modprobe.d" | ||
61 | |||
62 | BBCLASSEXTEND = "nativesdk" | ||
diff --git a/meta/recipes-kernel/libtraceevent/libtraceevent/meson.patch b/meta/recipes-kernel/libtraceevent/libtraceevent/meson.patch new file mode 100644 index 0000000000..c723c236c0 --- /dev/null +++ b/meta/recipes-kernel/libtraceevent/libtraceevent/meson.patch | |||
@@ -0,0 +1,45 @@ | |||
1 | From 7f88c9ba5f27276e844252500a9f0ba2b350b919 Mon Sep 17 00:00:00 2001 | ||
2 | From: Ross Burton <ross.burton@arm.com> | ||
3 | Date: Sun, 27 Aug 2023 20:57:44 +0100 | ||
4 | Subject: [PATCH] Fixes for the Meson build of libtraceevent: | ||
5 | |||
6 | - Make the plugin directory the same as the Makefiles | ||
7 | - Install the plugins as modules not static and versioned shared libraries | ||
8 | |||
9 | Upstream-Status: Submitted [https://lore.kernel.org/linux-trace-devel/20240311111140.1789879-1-alex@linutronix.de/T/#u] | ||
10 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
11 | --- | ||
12 | meson.build | 2 +- | ||
13 | plugins/meson.build | 3 +-- | ||
14 | 2 files changed, 2 insertions(+), 3 deletions(-) | ||
15 | |||
16 | diff --git a/meson.build b/meson.build | ||
17 | index 40ce38c..1eb7912 100644 | ||
18 | --- a/meson.build | ||
19 | +++ b/meson.build | ||
20 | @@ -25,7 +25,7 @@ htmldir = join_paths(prefixdir, get_option('htmldir')) | ||
21 | libdir = join_paths(prefixdir, get_option('libdir')) | ||
22 | plugindir = get_option('plugindir') | ||
23 | if plugindir == '' | ||
24 | - plugindir = join_paths(libdir, 'libtraceevent/plugins') | ||
25 | + plugindir = join_paths(libdir, 'traceevent/plugins') | ||
26 | endif | ||
27 | |||
28 | add_project_arguments( | ||
29 | diff --git a/plugins/meson.build b/plugins/meson.build | ||
30 | index 74ad664..4919be4 100644 | ||
31 | --- a/plugins/meson.build | ||
32 | +++ b/plugins/meson.build | ||
33 | @@ -19,11 +19,10 @@ plugins = [ | ||
34 | |||
35 | pdeps = [] | ||
36 | foreach plugin : plugins | ||
37 | - pdeps += library( | ||
38 | + pdeps += shared_module( | ||
39 | plugin.replace('.c', ''), | ||
40 | plugin, | ||
41 | name_prefix: '', | ||
42 | - version: library_version, | ||
43 | dependencies: [libtraceevent_dep], | ||
44 | include_directories: [incdir], | ||
45 | install: true, | ||
diff --git a/meta/recipes-kernel/libtraceevent/libtraceevent_1.8.2.bb b/meta/recipes-kernel/libtraceevent/libtraceevent_1.8.2.bb new file mode 100644 index 0000000000..d4ace54884 --- /dev/null +++ b/meta/recipes-kernel/libtraceevent/libtraceevent_1.8.2.bb | |||
@@ -0,0 +1,23 @@ | |||
1 | # Copyright (C) 2022 Khem Raj <raj.khem@gmail.com> | ||
2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
3 | |||
4 | SUMMARY = "API to access the kernel tracefs directory" | ||
5 | HOMEPAGE = "https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/" | ||
6 | LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later" | ||
7 | LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=e6a75371ba4d16749254a51215d13f97 \ | ||
8 | file://LICENSES/LGPL-2.1;md5=b370887980db5dd40659b50909238dbd" | ||
9 | SECTION = "libs" | ||
10 | |||
11 | SRCREV = "6f6d5802f31992e7527a4c32b43a32fda6bf6bdf" | ||
12 | SRC_URI = "git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git;branch=${BPN};protocol=https \ | ||
13 | file://meson.patch" | ||
14 | |||
15 | S = "${WORKDIR}/git" | ||
16 | |||
17 | inherit meson pkgconfig | ||
18 | |||
19 | EXTRA_OEMESON = "-Ddoc=false" | ||
20 | |||
21 | PACKAGES += "${PN}-plugins" | ||
22 | |||
23 | FILES:${PN}-plugins += "${libdir}/traceevent/plugins" | ||
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb deleted file mode 100644 index 0013e24580..0000000000 --- a/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb +++ /dev/null | |||
@@ -1,1017 +0,0 @@ | |||
1 | SUMMARY = "Firmware files for use with Linux kernel" | ||
2 | DESCRIPTION = "Linux firmware is a package distributed alongside the Linux kernel \ | ||
3 | that contains firmware binary blobs necessary for partial or full functionality \ | ||
4 | of certain hardware devices." | ||
5 | SECTION = "kernel" | ||
6 | |||
7 | LICENSE = "\ | ||
8 | Firmware-Abilis \ | ||
9 | & Firmware-adsp_sst \ | ||
10 | & Firmware-agere \ | ||
11 | & Firmware-amdgpu \ | ||
12 | & Firmware-amd-ucode \ | ||
13 | & Firmware-amlogic_vdec \ | ||
14 | & Firmware-atheros_firmware \ | ||
15 | & Firmware-atmel \ | ||
16 | & Firmware-broadcom_bcm43xx \ | ||
17 | & Firmware-ca0132 \ | ||
18 | & Firmware-cavium \ | ||
19 | & Firmware-chelsio_firmware \ | ||
20 | & Firmware-cw1200 \ | ||
21 | & Firmware-cypress \ | ||
22 | & Firmware-dib0700 \ | ||
23 | & Firmware-e100 \ | ||
24 | & Firmware-ene_firmware \ | ||
25 | & Firmware-fw_sst_0f28 \ | ||
26 | & Firmware-go7007 \ | ||
27 | & Firmware-GPLv2 \ | ||
28 | & Firmware-hfi1_firmware \ | ||
29 | & Firmware-i2400m \ | ||
30 | & Firmware-i915 \ | ||
31 | & Firmware-ibt_firmware \ | ||
32 | & Firmware-ice \ | ||
33 | & Firmware-it913x \ | ||
34 | & Firmware-iwlwifi_firmware \ | ||
35 | & Firmware-IntcSST2 \ | ||
36 | & Firmware-kaweth \ | ||
37 | & Firmware-Lontium \ | ||
38 | & Firmware-Marvell \ | ||
39 | & Firmware-moxa \ | ||
40 | & Firmware-myri10ge_firmware \ | ||
41 | & Firmware-netronome \ | ||
42 | & Firmware-nvidia \ | ||
43 | & Firmware-OLPC \ | ||
44 | & Firmware-ath9k-htc \ | ||
45 | & Firmware-phanfw \ | ||
46 | & Firmware-qat \ | ||
47 | & Firmware-qcom \ | ||
48 | & Firmware-qla1280 \ | ||
49 | & Firmware-qla2xxx \ | ||
50 | & Firmware-qualcommAthos_ar3k \ | ||
51 | & Firmware-qualcommAthos_ath10k \ | ||
52 | & Firmware-r8a779x_usb3 \ | ||
53 | & Firmware-radeon \ | ||
54 | & Firmware-ralink_a_mediatek_company_firmware \ | ||
55 | & Firmware-ralink-firmware \ | ||
56 | & Firmware-rtlwifi_firmware \ | ||
57 | & Firmware-imx-sdma_firmware \ | ||
58 | & Firmware-siano \ | ||
59 | & Firmware-tda7706-firmware \ | ||
60 | & Firmware-ti-connectivity \ | ||
61 | & Firmware-ti-keystone \ | ||
62 | & Firmware-ueagle-atm4-firmware \ | ||
63 | & Firmware-via_vt6656 \ | ||
64 | & Firmware-wl1251 \ | ||
65 | & Firmware-xc4000 \ | ||
66 | & Firmware-xc5000 \ | ||
67 | & Firmware-xc5000c \ | ||
68 | & WHENCE \ | ||
69 | " | ||
70 | |||
71 | LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ | ||
72 | file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ | ||
73 | file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ | ||
74 | file://LICENSE.amdgpu;md5=d357524f5099e2a3db3c1838921c593f \ | ||
75 | file://LICENSE.amd-ucode;md5=3c5399dc9148d7f0e1f41e34b69cf14f \ | ||
76 | file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ | ||
77 | file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ | ||
78 | file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ | ||
79 | file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ | ||
80 | file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ | ||
81 | file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ | ||
82 | file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ | ||
83 | file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ | ||
84 | file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ | ||
85 | file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ | ||
86 | file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ | ||
87 | file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ | ||
88 | file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ | ||
89 | file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ | ||
90 | file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ | ||
91 | file://GPL-2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
92 | file://LICENSE.hfi1_firmware;md5=5e7b6e586ce7339d12689e49931ad444 \ | ||
93 | file://LICENCE.i2400m;md5=14b901969e23c41881327c0d9e4b7d36 \ | ||
94 | file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \ | ||
95 | file://LICENCE.ibt_firmware;md5=fdbee1ddfe0fb7ab0b2fcd6b454a366b \ | ||
96 | file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ | ||
97 | file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ | ||
98 | file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ | ||
99 | file://LICENCE.iwlwifi_firmware;md5=3fd842911ea93c29cd32679aa23e1c88 \ | ||
100 | file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ | ||
101 | file://LICENSE.Lontium;md5=4ec8dc582ff7295f39e2ca6a7b0be2b6 \ | ||
102 | file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ | ||
103 | file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ | ||
104 | file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ | ||
105 | file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ | ||
106 | file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ | ||
107 | file://LICENCE.nvidia;md5=4428a922ed3ba2ceec95f076a488ce07 \ | ||
108 | file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \ | ||
109 | file://LICENCE.OLPC;md5=5b917f9d8c061991be4f6f5f108719cd \ | ||
110 | file://LICENCE.open-ath9k-htc-firmware;md5=1b33c9f4d17bc4d457bdb23727046837 \ | ||
111 | file://LICENCE.phanfw;md5=954dcec0e051f9409812b561ea743bfa \ | ||
112 | file://LICENCE.qat_firmware;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ | ||
113 | file://LICENSE.qcom;md5=164e3362a538eb11d3ac51e8e134294b \ | ||
114 | file://LICENCE.qla1280;md5=d6895732e622d950609093223a2c4f5d \ | ||
115 | file://LICENCE.qla2xxx;md5=505855e921b75f1be4a437ad9b79dff0 \ | ||
116 | file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ | ||
117 | file://LICENSE.QualcommAtheros_ath10k;md5=cb42b686ee5f5cb890275e4321db60a8 \ | ||
118 | file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ | ||
119 | file://LICENSE.radeon;md5=68ec28bacb3613200bca44f404c69b16 \ | ||
120 | file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ | ||
121 | file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ | ||
122 | file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ | ||
123 | file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \ | ||
124 | file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ | ||
125 | file://LICENCE.tda7706-firmware.txt;md5=835997cf5e3c131d0dddd695c7d9103e \ | ||
126 | file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \ | ||
127 | file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ | ||
128 | file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ | ||
129 | file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ | ||
130 | file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ | ||
131 | file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ | ||
132 | file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ | ||
133 | file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ | ||
134 | file://WHENCE;md5=ef0565762eac313c409567b59dff00b2 \ | ||
135 | " | ||
136 | |||
137 | # These are not common licenses, set NO_GENERIC_LICENSE for them | ||
138 | # so that the license files will be copied from fetched source | ||
139 | NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" | ||
140 | NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" | ||
141 | NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" | ||
142 | NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" | ||
143 | NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" | ||
144 | NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" | ||
145 | NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" | ||
146 | NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" | ||
147 | NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" | ||
148 | NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" | ||
149 | NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" | ||
150 | NO_GENERIC_LICENSE[Firmware-cavium] = "LICENCE.cavium" | ||
151 | NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware" | ||
152 | NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" | ||
153 | NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" | ||
154 | NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" | ||
155 | NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" | ||
156 | NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" | ||
157 | NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" | ||
158 | NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" | ||
159 | NO_GENERIC_LICENSE[Firmware-GPLv2] = "GPL-2" | ||
160 | NO_GENERIC_LICENSE[Firmware-hfi1_firmware] = "LICENSE.hfi1_firmware" | ||
161 | NO_GENERIC_LICENSE[Firmware-i2400m] = "LICENCE.i2400m" | ||
162 | NO_GENERIC_LICENSE[Firmware-i915] = "LICENSE.i915" | ||
163 | NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware" | ||
164 | NO_GENERIC_LICENSE[Firmware-ice] = "LICENSE.ice" | ||
165 | NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" | ||
166 | NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" | ||
167 | NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" | ||
168 | NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" | ||
169 | NO_GENERIC_LICENSE[Firmware-Lontium] = "LICENSE.Lontium" | ||
170 | NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" | ||
171 | NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" | ||
172 | NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" | ||
173 | NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" | ||
174 | NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" | ||
175 | NO_GENERIC_LICENSE[Firmware-nvidia] = "LICENCE.nvidia" | ||
176 | NO_GENERIC_LICENSE[Firmware-OLPC] = "LICENCE.OLPC" | ||
177 | NO_GENERIC_LICENSE[Firmware-ath9k-htc] = "LICENCE.open-ath9k-htc-firmware" | ||
178 | NO_GENERIC_LICENSE[Firmware-phanfw] = "LICENCE.phanfw" | ||
179 | NO_GENERIC_LICENSE[Firmware-qat] = "LICENCE.qat_firmware" | ||
180 | NO_GENERIC_LICENSE[Firmware-qcom] = "LICENSE.qcom" | ||
181 | NO_GENERIC_LICENSE[Firmware-qla1280] = "LICENCE.qla1280" | ||
182 | NO_GENERIC_LICENSE[Firmware-qla2xxx] = "LICENCE.qla2xxx" | ||
183 | NO_GENERIC_LICENSE[Firmware-qualcommAthos_ar3k] = "LICENSE.QualcommAtheros_ar3k" | ||
184 | NO_GENERIC_LICENSE[Firmware-qualcommAthos_ath10k] = "LICENSE.QualcommAtheros_ath10k" | ||
185 | NO_GENERIC_LICENSE[Firmware-r8a779x_usb3] = "LICENCE.r8a779x_usb3" | ||
186 | NO_GENERIC_LICENSE[Firmware-radeon] = "LICENSE.radeon" | ||
187 | NO_GENERIC_LICENSE[Firmware-ralink_a_mediatek_company_firmware] = "LICENCE.ralink_a_mediatek_company_firmware" | ||
188 | NO_GENERIC_LICENSE[Firmware-ralink-firmware] = "LICENCE.ralink-firmware.txt" | ||
189 | NO_GENERIC_LICENSE[Firmware-rtlwifi_firmware] = "LICENCE.rtlwifi_firmware.txt" | ||
190 | NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano" | ||
191 | NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" | ||
192 | NO_GENERIC_LICENSE[Firmware-tda7706-firmware] = "LICENCE.tda7706-firmware.txt" | ||
193 | NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" | ||
194 | NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" | ||
195 | NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" | ||
196 | NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" | ||
197 | NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" | ||
198 | NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" | ||
199 | NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" | ||
200 | NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" | ||
201 | NO_GENERIC_LICENSE[WHENCE] = "WHENCE" | ||
202 | |||
203 | PE = "1" | ||
204 | |||
205 | SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz" | ||
206 | |||
207 | SRC_URI[sha256sum] = "1bcb1a3944c361507754a7d26ccff40ffc28d1fb93bce711d67da26b33e785b7" | ||
208 | |||
209 | inherit allarch | ||
210 | |||
211 | CLEANBROKEN = "1" | ||
212 | |||
213 | do_compile() { | ||
214 | : | ||
215 | } | ||
216 | |||
217 | do_install() { | ||
218 | oe_runmake 'DESTDIR=${D}' 'FIRMWAREDIR=${nonarch_base_libdir}/firmware' install | ||
219 | cp GPL-2 LICEN[CS]E.* WHENCE ${D}${nonarch_base_libdir}/firmware/ | ||
220 | } | ||
221 | |||
222 | |||
223 | PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ | ||
224 | ${PN}-mt7601u-license ${PN}-mt7601u \ | ||
225 | ${PN}-radeon-license ${PN}-radeon \ | ||
226 | ${PN}-marvell-license ${PN}-pcie8897 ${PN}-pcie8997 \ | ||
227 | ${PN}-sd8686 ${PN}-sd8688 ${PN}-sd8787 ${PN}-sd8797 ${PN}-sd8801 \ | ||
228 | ${PN}-sd8887 ${PN}-sd8897 ${PN}-sd8997 ${PN}-usb8997 \ | ||
229 | ${PN}-ti-connectivity-license ${PN}-wlcommon ${PN}-wl12xx ${PN}-wl18xx \ | ||
230 | ${PN}-vt6656-license ${PN}-vt6656 \ | ||
231 | ${PN}-rtl-license ${PN}-rtl8188 ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su ${PN}-rtl8723 ${PN}-rtl8821 \ | ||
232 | ${PN}-rtl8168 \ | ||
233 | ${PN}-cypress-license \ | ||
234 | ${PN}-broadcom-license \ | ||
235 | ${PN}-bcm-0bb4-0306 \ | ||
236 | ${PN}-bcm43143 \ | ||
237 | ${PN}-bcm43236b \ | ||
238 | ${PN}-bcm43241b0 \ | ||
239 | ${PN}-bcm43241b4 \ | ||
240 | ${PN}-bcm43241b5 \ | ||
241 | ${PN}-bcm43242a \ | ||
242 | ${PN}-bcm4329 \ | ||
243 | ${PN}-bcm4329-fullmac \ | ||
244 | ${PN}-bcm4330 \ | ||
245 | ${PN}-bcm4334 \ | ||
246 | ${PN}-bcm43340 \ | ||
247 | ${PN}-bcm4335 \ | ||
248 | ${PN}-bcm43362 \ | ||
249 | ${PN}-bcm4339 \ | ||
250 | ${PN}-bcm43430 \ | ||
251 | ${PN}-bcm43430a0 \ | ||
252 | ${PN}-bcm43455 \ | ||
253 | ${PN}-bcm4350 \ | ||
254 | ${PN}-bcm4350c2 \ | ||
255 | ${PN}-bcm4354 \ | ||
256 | ${PN}-bcm4356 \ | ||
257 | ${PN}-bcm4356-pcie \ | ||
258 | ${PN}-bcm43569 \ | ||
259 | ${PN}-bcm43570 \ | ||
260 | ${PN}-bcm4358 \ | ||
261 | ${PN}-bcm43602 \ | ||
262 | ${PN}-bcm4366b \ | ||
263 | ${PN}-bcm4366c \ | ||
264 | ${PN}-bcm4371 \ | ||
265 | ${PN}-bcm4373 \ | ||
266 | ${PN}-bcm43xx \ | ||
267 | ${PN}-bcm43xx-hdr \ | ||
268 | ${PN}-atheros-license ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k \ | ||
269 | ${PN}-gplv2-license ${PN}-carl9170 \ | ||
270 | ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-ath11k ${PN}-qca \ | ||
271 | \ | ||
272 | ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ | ||
273 | \ | ||
274 | ${PN}-iwlwifi-license ${PN}-iwlwifi \ | ||
275 | ${PN}-iwlwifi-135-6 \ | ||
276 | ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ | ||
277 | ${PN}-iwlwifi-3160-10 ${PN}-iwlwifi-3160-12 ${PN}-iwlwifi-3160-13 \ | ||
278 | ${PN}-iwlwifi-3160-16 ${PN}-iwlwifi-3160-17 \ | ||
279 | ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ | ||
280 | ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ | ||
281 | ${PN}-iwlwifi-6050-4 ${PN}-iwlwifi-6050-5 \ | ||
282 | ${PN}-iwlwifi-7260 \ | ||
283 | ${PN}-iwlwifi-7265 \ | ||
284 | ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ | ||
285 | ${PN}-iwlwifi-9000 \ | ||
286 | ${PN}-iwlwifi-misc \ | ||
287 | ${PN}-ibt-license ${PN}-ibt \ | ||
288 | ${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \ | ||
289 | ${PN}-ibt-17 \ | ||
290 | ${PN}-ibt-20 \ | ||
291 | ${PN}-ibt-misc \ | ||
292 | ${PN}-i915-license ${PN}-i915 \ | ||
293 | ${PN}-ice-license ${PN}-ice \ | ||
294 | ${PN}-adsp-sst-license ${PN}-adsp-sst \ | ||
295 | ${PN}-bnx2-mips \ | ||
296 | ${PN}-liquidio \ | ||
297 | ${PN}-nvidia-license \ | ||
298 | ${PN}-nvidia-tegra-k1 ${PN}-nvidia-tegra \ | ||
299 | ${PN}-nvidia-gpu \ | ||
300 | ${PN}-netronome-license ${PN}-netronome \ | ||
301 | ${PN}-qat ${PN}-qat-license \ | ||
302 | ${PN}-qcom-license \ | ||
303 | ${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 ${PN}-qcom-venus-5.2 ${PN}-qcom-venus-5.4 \ | ||
304 | ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a530 ${PN}-qcom-adreno-a630 \ | ||
305 | ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \ | ||
306 | ${PN}-amlogic-vdec-license ${PN}-amlogic-vdec \ | ||
307 | ${PN}-lt9611uxc ${PN}-lontium-license \ | ||
308 | ${PN}-whence-license \ | ||
309 | ${PN}-license \ | ||
310 | " | ||
311 | |||
312 | # For atheros | ||
313 | LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware" | ||
314 | LICENSE_${PN}-ath6k = "Firmware-atheros_firmware" | ||
315 | LICENSE_${PN}-ath9k = "Firmware-atheros_firmware" | ||
316 | LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware" | ||
317 | |||
318 | FILES_${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware" | ||
319 | FILES_${PN}-ar9170 = " \ | ||
320 | ${nonarch_base_libdir}/firmware/ar9170*.fw \ | ||
321 | " | ||
322 | FILES_${PN}-ath6k = " \ | ||
323 | ${nonarch_base_libdir}/firmware/ath6k \ | ||
324 | " | ||
325 | FILES_${PN}-ath9k = " \ | ||
326 | ${nonarch_base_libdir}/firmware/ar9271.fw \ | ||
327 | ${nonarch_base_libdir}/firmware/ar7010*.fw \ | ||
328 | ${nonarch_base_libdir}/firmware/htc_9271.fw \ | ||
329 | ${nonarch_base_libdir}/firmware/htc_7010.fw \ | ||
330 | ${nonarch_base_libdir}/firmware/ath9k_htc/htc_7010-1.4.0.fw \ | ||
331 | ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \ | ||
332 | " | ||
333 | |||
334 | RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license" | ||
335 | RDEPENDS_${PN}-ath6k += "${PN}-atheros-license" | ||
336 | RDEPENDS_${PN}-ath9k += "${PN}-atheros-license" | ||
337 | |||
338 | # For carl9170 | ||
339 | LICENSE_${PN}-carl9170 = "Firmware-GPLv2" | ||
340 | LICENSE_${PN}-gplv2-license = "Firmware-GPLv2" | ||
341 | |||
342 | FILES_${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2" | ||
343 | FILES_${PN}-carl9170 = " \ | ||
344 | ${nonarch_base_libdir}/firmware/carl9170*.fw \ | ||
345 | " | ||
346 | |||
347 | RDEPENDS_${PN}-carl9170 += "${PN}-gplv2-license" | ||
348 | |||
349 | # For QualCommAthos | ||
350 | LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k" | ||
351 | LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" | ||
352 | LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k" | ||
353 | LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" | ||
354 | LICENSE_${PN}-qca = "Firmware-qualcommAthos_ath10k" | ||
355 | |||
356 | FILES_${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" | ||
357 | FILES_${PN}-ar3k = " \ | ||
358 | ${nonarch_base_libdir}/firmware/ar3k \ | ||
359 | " | ||
360 | |||
361 | FILES_${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k" | ||
362 | FILES_${PN}-ath10k = " \ | ||
363 | ${nonarch_base_libdir}/firmware/ath10k \ | ||
364 | " | ||
365 | |||
366 | FILES_${PN}-ath11k = " \ | ||
367 | ${nonarch_base_libdir}/firmware/ath11k \ | ||
368 | " | ||
369 | |||
370 | FILES_${PN}-qca = " \ | ||
371 | ${nonarch_base_libdir}/firmware/qca \ | ||
372 | " | ||
373 | |||
374 | RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license" | ||
375 | RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license" | ||
376 | RDEPENDS_${PN}-ath11k += "${PN}-ath10k-license" | ||
377 | RDEPENDS_${PN}-qca += "${PN}-ath10k-license" | ||
378 | |||
379 | # For ralink | ||
380 | LICENSE_${PN}-ralink = "Firmware-ralink-firmware" | ||
381 | LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware" | ||
382 | |||
383 | FILES_${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt" | ||
384 | FILES_${PN}-ralink = " \ | ||
385 | ${nonarch_base_libdir}/firmware/rt*.bin \ | ||
386 | " | ||
387 | |||
388 | RDEPENDS_${PN}-ralink += "${PN}-ralink-license" | ||
389 | |||
390 | # For mediatek MT7601U | ||
391 | LICENSE_${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware" | ||
392 | LICENSE_${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware" | ||
393 | |||
394 | FILES_${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware" | ||
395 | FILES_${PN}-mt7601u = " \ | ||
396 | ${nonarch_base_libdir}/firmware/mt7601u.bin \ | ||
397 | " | ||
398 | |||
399 | RDEPENDS_${PN}-mt7601u += "${PN}-mt7601u-license" | ||
400 | |||
401 | # For radeon | ||
402 | LICENSE_${PN}-radeon = "Firmware-radeon" | ||
403 | LICENSE_${PN}-radeon-license = "Firmware-radeon" | ||
404 | |||
405 | FILES_${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon" | ||
406 | FILES_${PN}-radeon = " \ | ||
407 | ${nonarch_base_libdir}/firmware/radeon \ | ||
408 | " | ||
409 | |||
410 | RDEPENDS_${PN}-radeon += "${PN}-radeon-license" | ||
411 | |||
412 | # For lontium | ||
413 | LICENSE_${PN}-lt9611uxc = "Firmware-Lontium" | ||
414 | |||
415 | FILES_${PN}-lontium-license = "${nonarch_base_libdir}/firmware/LICENSE.Lontium" | ||
416 | FILES_${PN}-lt9611uxc = "${nonarch_base_libdir}/firmware/lt9611uxc_fw.bin" | ||
417 | |||
418 | # For marvell | ||
419 | LICENSE_${PN}-pcie8897 = "Firmware-Marvell" | ||
420 | LICENSE_${PN}-pcie8997 = "Firmware-Marvell" | ||
421 | LICENSE_${PN}-sd8686 = "Firmware-Marvell" | ||
422 | LICENSE_${PN}-sd8688 = "Firmware-Marvell" | ||
423 | LICENSE_${PN}-sd8787 = "Firmware-Marvell" | ||
424 | LICENSE_${PN}-sd8797 = "Firmware-Marvell" | ||
425 | LICENSE_${PN}-sd8801 = "Firmware-Marvell" | ||
426 | LICENSE_${PN}-sd8887 = "Firmware-Marvell" | ||
427 | LICENSE_${PN}-sd8897 = "Firmware-Marvell" | ||
428 | LICENSE_${PN}-sd8997 = "Firmware-Marvell" | ||
429 | LICENSE_${PN}-usb8997 = "Firmware-Marvell" | ||
430 | LICENSE_${PN}-marvell-license = "Firmware-Marvell" | ||
431 | |||
432 | FILES_${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell" | ||
433 | FILES_${PN}-pcie8897 = " \ | ||
434 | ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \ | ||
435 | " | ||
436 | FILES_${PN}-pcie8997 = " \ | ||
437 | ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \ | ||
438 | ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \ | ||
439 | ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \ | ||
440 | " | ||
441 | FILES_${PN}-sd8686 = " \ | ||
442 | ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \ | ||
443 | ${nonarch_base_libdir}/firmware/sd8686* \ | ||
444 | " | ||
445 | FILES_${PN}-sd8688 = " \ | ||
446 | ${nonarch_base_libdir}/firmware/libertas/sd8688* \ | ||
447 | ${nonarch_base_libdir}/firmware/mrvl/sd8688* \ | ||
448 | " | ||
449 | FILES_${PN}-sd8787 = " \ | ||
450 | ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \ | ||
451 | " | ||
452 | FILES_${PN}-sd8797 = " \ | ||
453 | ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \ | ||
454 | " | ||
455 | FILES_${PN}-sd8801 = " \ | ||
456 | ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \ | ||
457 | " | ||
458 | FILES_${PN}-sd8887 = " \ | ||
459 | ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \ | ||
460 | " | ||
461 | FILES_${PN}-sd8897 = " \ | ||
462 | ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \ | ||
463 | " | ||
464 | do_install_append() { | ||
465 | # The kernel 5.6.x driver still uses the old name, provide a symlink for | ||
466 | # older kernels | ||
467 | ln -fs sdsd8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sd8997_uapsta.bin | ||
468 | } | ||
469 | FILES_${PN}-sd8997 = " \ | ||
470 | ${nonarch_base_libdir}/firmware/mrvl/sd8997_uapsta.bin \ | ||
471 | ${nonarch_base_libdir}/firmware/mrvl/sdsd8997_combo_v4.bin \ | ||
472 | " | ||
473 | FILES_${PN}-usb8997 = " \ | ||
474 | ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \ | ||
475 | " | ||
476 | |||
477 | RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license" | ||
478 | RDEPENDS_${PN}-sd8688 += "${PN}-marvell-license" | ||
479 | RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license" | ||
480 | RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license" | ||
481 | RDEPENDS_${PN}-sd8801 += "${PN}-marvell-license" | ||
482 | RDEPENDS_${PN}-sd8887 += "${PN}-marvell-license" | ||
483 | RDEPENDS_${PN}-sd8897 += "${PN}-marvell-license" | ||
484 | RDEPENDS_${PN}-sd8997 += "${PN}-marvell-license" | ||
485 | RDEPENDS_${PN}-usb8997 += "${PN}-marvell-license" | ||
486 | |||
487 | # For netronome | ||
488 | LICENSE_${PN}-netronome = "Firmware-netronome" | ||
489 | |||
490 | FILES_${PN}-netronome-license = " \ | ||
491 | ${nonarch_base_libdir}/firmware/LICENCE.Netronome \ | ||
492 | " | ||
493 | FILES_${PN}-netronome = " \ | ||
494 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \ | ||
495 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \ | ||
496 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \ | ||
497 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \ | ||
498 | " | ||
499 | |||
500 | RDEPENDS_${PN}-netronome += "${PN}-netronome-license" | ||
501 | |||
502 | # For Nvidia | ||
503 | LICENSE_${PN}-nvidia-gpu = "Firmware-nvidia" | ||
504 | LICENSE_${PN}-nvidia-tegra = "Firmware-nvidia" | ||
505 | LICENSE_${PN}-nvidia-tegra-k1 = "Firmware-nvidia" | ||
506 | LICENSE_${PN}-nvidia-license = "Firmware-nvidia" | ||
507 | |||
508 | FILES_${PN}-nvidia-gpu = "${nonarch_base_libdir}/firmware/nvidia" | ||
509 | FILES_${PN}-nvidia-tegra = " \ | ||
510 | ${nonarch_base_libdir}/firmware/nvidia/tegra* \ | ||
511 | ${nonarch_base_libdir}/firmware/nvidia/gm20b \ | ||
512 | ${nonarch_base_libdir}/firmware/nvidia/gp10b \ | ||
513 | " | ||
514 | FILES_${PN}-nvidia-tegra-k1 = " \ | ||
515 | ${nonarch_base_libdir}/firmware/nvidia/tegra124 \ | ||
516 | ${nonarch_base_libdir}/firmware/nvidia/gk20a \ | ||
517 | " | ||
518 | FILES_${PN}-nvidia-license = "${nonarch_base_libdir}/firmware/LICENCE.nvidia" | ||
519 | |||
520 | RDEPENDS_${PN}-nvidia-gpu += "${PN}-nvidia-license" | ||
521 | RDEPENDS_${PN}-nvidia-tegra += "${PN}-nvidia-license" | ||
522 | RDEPENDS_${PN}-nvidia-tegra-k1 += "${PN}-nvidia-license" | ||
523 | |||
524 | # For rtl | ||
525 | LICENSE_${PN}-rtl8188 = "Firmware-rtlwifi_firmware" | ||
526 | LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" | ||
527 | LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" | ||
528 | LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware" | ||
529 | LICENSE_${PN}-rtl8723 = "Firmware-rtlwifi_firmware" | ||
530 | LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware" | ||
531 | LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware" | ||
532 | LICENSE_${PN}-rtl8168 = "WHENCE" | ||
533 | |||
534 | FILES_${PN}-rtl-license = " \ | ||
535 | ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \ | ||
536 | " | ||
537 | FILES_${PN}-rtl8188 = " \ | ||
538 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \ | ||
539 | " | ||
540 | FILES_${PN}-rtl8192cu = " \ | ||
541 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \ | ||
542 | " | ||
543 | FILES_${PN}-rtl8192ce = " \ | ||
544 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \ | ||
545 | " | ||
546 | FILES_${PN}-rtl8192su = " \ | ||
547 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \ | ||
548 | " | ||
549 | FILES_${PN}-rtl8723 = " \ | ||
550 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \ | ||
551 | " | ||
552 | FILES_${PN}-rtl8821 = " \ | ||
553 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \ | ||
554 | " | ||
555 | FILES_${PN}-rtl8168 = " \ | ||
556 | ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \ | ||
557 | " | ||
558 | |||
559 | RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license" | ||
560 | RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license" | ||
561 | RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license" | ||
562 | RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license" | ||
563 | RDEPENDS_${PN}-rtl8723 += "${PN}-rtl-license" | ||
564 | RDEPENDS_${PN}-rtl8821 += "${PN}-rtl-license" | ||
565 | RDEPENDS_${PN}-rtl8168 += "${PN}-whence-license" | ||
566 | |||
567 | # For ti-connectivity | ||
568 | LICENSE_${PN}-wlcommon = "Firmware-ti-connectivity" | ||
569 | LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity" | ||
570 | LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity" | ||
571 | LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity" | ||
572 | |||
573 | FILES_${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity" | ||
574 | # wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to | ||
575 | # wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c | ||
576 | # and drivers/net/wireless/ti/wlcore/spi.c. | ||
577 | # While they're optional and actually only used to override the MAC | ||
578 | # address on wl18xx, driver loading will delay (by udev timout - 60s) | ||
579 | # if not there. So let's make it available always. Because it's a | ||
580 | # symlink, both need to go to wlcommon. | ||
581 | FILES_${PN}-wlcommon = " \ | ||
582 | ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \ | ||
583 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \ | ||
584 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \ | ||
585 | " | ||
586 | FILES_${PN}-wl12xx = " \ | ||
587 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \ | ||
588 | " | ||
589 | FILES_${PN}-wl18xx = " \ | ||
590 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \ | ||
591 | " | ||
592 | |||
593 | RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" | ||
594 | RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" | ||
595 | |||
596 | # For vt6656 | ||
597 | LICENSE_${PN}-vt6656 = "Firmware-via_vt6656" | ||
598 | LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656" | ||
599 | |||
600 | FILES_${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656" | ||
601 | FILES_${PN}-vt6656 = " \ | ||
602 | ${nonarch_base_libdir}/firmware/vntwusb.fw \ | ||
603 | " | ||
604 | |||
605 | RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license" | ||
606 | |||
607 | # For broadcom | ||
608 | |||
609 | # for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e " \${PN}-$pkg \\"; done | sort -u | ||
610 | |||
611 | LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" | ||
612 | FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx" | ||
613 | |||
614 | # for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES_\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES | ||
615 | |||
616 | FILES_${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw" | ||
617 | FILES_${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw" | ||
618 | FILES_${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin" | ||
619 | FILES_${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin" | ||
620 | FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin" | ||
621 | FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*" | ||
622 | FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin" | ||
623 | FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin" | ||
624 | FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin" | ||
625 | FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin" | ||
626 | FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin" | ||
627 | FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin" | ||
628 | FILES_${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin" | ||
629 | FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \ | ||
630 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \ | ||
631 | " | ||
632 | FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*" | ||
633 | FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.*" | ||
634 | FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin" | ||
635 | FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin" | ||
636 | FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin" | ||
637 | FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin" | ||
638 | FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin" | ||
639 | FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin" | ||
640 | FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \ | ||
641 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \ | ||
642 | " | ||
643 | FILES_${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin" | ||
644 | FILES_${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin" | ||
645 | FILES_${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin" | ||
646 | |||
647 | # for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE_\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done | ||
648 | # Currently 1st one and last 6 have cypress LICENSE | ||
649 | |||
650 | LICENSE_${PN}-bcm43xx = "Firmware-broadcom_bcm43xx" | ||
651 | RDEPENDS_${PN}-bcm43xx += "${PN}-broadcom-license" | ||
652 | LICENSE_${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx" | ||
653 | RDEPENDS_${PN}-bcm43xx-hdr += "${PN}-broadcom-license" | ||
654 | LICENSE_${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx" | ||
655 | RDEPENDS_${PN}-bcm4329-fullmac += "${PN}-broadcom-license" | ||
656 | LICENSE_${PN}-bcm43236b = "Firmware-broadcom_bcm43xx" | ||
657 | RDEPENDS_${PN}-bcm43236b += "${PN}-broadcom-license" | ||
658 | LICENSE_${PN}-bcm4329 = "Firmware-broadcom_bcm43xx" | ||
659 | RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license" | ||
660 | LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" | ||
661 | RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license" | ||
662 | LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" | ||
663 | RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license" | ||
664 | LICENSE_${PN}-bcm4335 = "Firmware-broadcom_bcm43xx" | ||
665 | RDEPENDS_${PN}-bcm4335 += "${PN}-broadcom-license" | ||
666 | LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" | ||
667 | RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license" | ||
668 | LICENSE_${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx" | ||
669 | RDEPENDS_${PN}-bcm43241b0 += "${PN}-broadcom-license" | ||
670 | LICENSE_${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx" | ||
671 | RDEPENDS_${PN}-bcm43241b4 += "${PN}-broadcom-license" | ||
672 | LICENSE_${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx" | ||
673 | RDEPENDS_${PN}-bcm43241b5 += "${PN}-broadcom-license" | ||
674 | LICENSE_${PN}-bcm43242a = "Firmware-broadcom_bcm43xx" | ||
675 | RDEPENDS_${PN}-bcm43242a += "${PN}-broadcom-license" | ||
676 | LICENSE_${PN}-bcm43143 = "Firmware-broadcom_bcm43xx" | ||
677 | RDEPENDS_${PN}-bcm43143 += "${PN}-broadcom-license" | ||
678 | LICENSE_${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx" | ||
679 | RDEPENDS_${PN}-bcm43430a0 += "${PN}-broadcom-license" | ||
680 | LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx" | ||
681 | RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license" | ||
682 | LICENSE_${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx" | ||
683 | RDEPENDS_${PN}-bcm4350c2 += "${PN}-broadcom-license" | ||
684 | LICENSE_${PN}-bcm4350 = "Firmware-broadcom_bcm43xx" | ||
685 | RDEPENDS_${PN}-bcm4350 += "${PN}-broadcom-license" | ||
686 | LICENSE_${PN}-bcm4356 = "Firmware-broadcom_bcm43xx" | ||
687 | RDEPENDS_${PN}-bcm4356 += "${PN}-broadcom-license" | ||
688 | LICENSE_${PN}-bcm43569 = "Firmware-broadcom_bcm43xx" | ||
689 | RDEPENDS_${PN}-bcm43569 += "${PN}-broadcom-license" | ||
690 | LICENSE_${PN}-bcm43570 = "Firmware-broadcom_bcm43xx" | ||
691 | RDEPENDS_${PN}-bcm43570 += "${PN}-broadcom-license" | ||
692 | LICENSE_${PN}-bcm4358 = "Firmware-broadcom_bcm43xx" | ||
693 | RDEPENDS_${PN}-bcm4358 += "${PN}-broadcom-license" | ||
694 | LICENSE_${PN}-bcm43602 = "Firmware-broadcom_bcm43xx" | ||
695 | RDEPENDS_${PN}-bcm43602 += "${PN}-broadcom-license" | ||
696 | LICENSE_${PN}-bcm4366b = "Firmware-broadcom_bcm43xx" | ||
697 | RDEPENDS_${PN}-bcm4366b += "${PN}-broadcom-license" | ||
698 | LICENSE_${PN}-bcm4366c = "Firmware-broadcom_bcm43xx" | ||
699 | RDEPENDS_${PN}-bcm4366c += "${PN}-broadcom-license" | ||
700 | LICENSE_${PN}-bcm4371 = "Firmware-broadcom_bcm43xx" | ||
701 | RDEPENDS_${PN}-bcm4371 += "${PN}-broadcom-license" | ||
702 | |||
703 | # For broadcom cypress | ||
704 | |||
705 | LICENSE_${PN}-cypress-license = "Firmware-cypress" | ||
706 | FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress" | ||
707 | |||
708 | FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd" | ||
709 | FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.*" | ||
710 | FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.*" | ||
711 | FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.*" | ||
712 | FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin" | ||
713 | FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.*" | ||
714 | FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \ | ||
715 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \ | ||
716 | " | ||
717 | |||
718 | LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress" | ||
719 | RDEPENDS_${PN}-bcm-0bb4-0306 += "${PN}-cypress-license" | ||
720 | LICENSE_${PN}-bcm43340 = "Firmware-cypress" | ||
721 | RDEPENDS_${PN}-bcm43340 += "${PN}-cypress-license" | ||
722 | LICENSE_${PN}-bcm43362 = "Firmware-cypress" | ||
723 | RDEPENDS_${PN}-bcm43362 += "${PN}-cypress-license" | ||
724 | LICENSE_${PN}-bcm43430 = "Firmware-cypress" | ||
725 | RDEPENDS_${PN}-bcm43430 += "${PN}-cypress-license" | ||
726 | LICENSE_${PN}-bcm4354 = "Firmware-cypress" | ||
727 | RDEPENDS_${PN}-bcm4354 += "${PN}-cypress-license" | ||
728 | LICENSE_${PN}-bcm4356-pcie = "Firmware-cypress" | ||
729 | RDEPENDS_${PN}-bcm4356-pcie += "${PN}-cypress-license" | ||
730 | LICENSE_${PN}-bcm4373 = "Firmware-cypress" | ||
731 | RDEPENDS_${PN}-bcm4373 += "${PN}-cypress-license" | ||
732 | |||
733 | # For Broadcom bnx2-mips | ||
734 | # | ||
735 | # which is a separate case to the other Broadcom firmwares since its | ||
736 | # license is contained in the shared WHENCE file. | ||
737 | |||
738 | LICENSE_${PN}-bnx2-mips = "WHENCE" | ||
739 | LICENSE_${PN}-whence-license = "WHENCE" | ||
740 | |||
741 | FILES_${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw" | ||
742 | FILES_${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE" | ||
743 | |||
744 | RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license" | ||
745 | |||
746 | # For imx-sdma | ||
747 | LICENSE_${PN}-imx-sdma-imx6q = "Firmware-imx-sdma_firmware" | ||
748 | LICENSE_${PN}-imx-sdma-imx7d = "Firmware-imx-sdma_firmware" | ||
749 | LICENSE_${PN}-imx-sdma-license = "Firmware-imx-sdma_firmware" | ||
750 | |||
751 | FILES_${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin" | ||
752 | |||
753 | RPROVIDES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" | ||
754 | RREPLACES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" | ||
755 | RCONFLICTS_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" | ||
756 | |||
757 | FILES_${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin" | ||
758 | |||
759 | FILES_${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware" | ||
760 | |||
761 | RDEPENDS_${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license" | ||
762 | RDEPENDS_${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license" | ||
763 | |||
764 | # For iwlwifi | ||
765 | LICENSE_${PN}-iwlwifi = "Firmware-iwlwifi_firmware" | ||
766 | LICENSE_${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" | ||
767 | LICENSE_${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" | ||
768 | LICENSE_${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" | ||
769 | LICENSE_${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" | ||
770 | LICENSE_${PN}-iwlwifi-3160-10 = "Firmware-iwlwifi_firmware" | ||
771 | LICENSE_${PN}-iwlwifi-3160-12 = "Firmware-iwlwifi_firmware" | ||
772 | LICENSE_${PN}-iwlwifi-3160-13 = "Firmware-iwlwifi_firmware" | ||
773 | LICENSE_${PN}-iwlwifi-3160-16 = "Firmware-iwlwifi_firmware" | ||
774 | LICENSE_${PN}-iwlwifi-3160-17 = "Firmware-iwlwifi_firmware" | ||
775 | LICENSE_${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" | ||
776 | LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" | ||
777 | LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" | ||
778 | LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" | ||
779 | LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" | ||
780 | LICENSE_${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" | ||
781 | LICENSE_${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" | ||
782 | LICENSE_${PN}-iwlwifi-7260 = "Firmware-iwlwifi_firmware" | ||
783 | LICENSE_${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" | ||
784 | LICENSE_${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" | ||
785 | LICENSE_${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" | ||
786 | LICENSE_${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" | ||
787 | LICENSE_${PN}-iwlwifi-9000 = "Firmware-iwlwifi_firmware" | ||
788 | LICENSE_${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" | ||
789 | LICENSE_${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" | ||
790 | |||
791 | |||
792 | FILES_${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware" | ||
793 | FILES_${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode" | ||
794 | FILES_${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode" | ||
795 | FILES_${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode" | ||
796 | FILES_${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode" | ||
797 | FILES_${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode" | ||
798 | FILES_${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode" | ||
799 | FILES_${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode" | ||
800 | FILES_${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode" | ||
801 | FILES_${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode" | ||
802 | FILES_${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode" | ||
803 | FILES_${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode" | ||
804 | FILES_${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode" | ||
805 | FILES_${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode" | ||
806 | FILES_${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode" | ||
807 | FILES_${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode" | ||
808 | FILES_${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode" | ||
809 | FILES_${PN}-iwlwifi-7260 = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode" | ||
810 | FILES_${PN}-iwlwifi-7265 = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode" | ||
811 | FILES_${PN}-iwlwifi-7265d = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode" | ||
812 | FILES_${PN}-iwlwifi-8000c = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode" | ||
813 | FILES_${PN}-iwlwifi-8265 = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode" | ||
814 | FILES_${PN}-iwlwifi-9000 = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode" | ||
815 | FILES_${PN}-iwlwifi-misc = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode" | ||
816 | |||
817 | RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" | ||
818 | RDEPENDS_${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" | ||
819 | RDEPENDS_${PN}-iwlwifi-3160-8 = "${PN}-iwlwifi-license" | ||
820 | RDEPENDS_${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" | ||
821 | RDEPENDS_${PN}-iwlwifi-3160-10 = "${PN}-iwlwifi-license" | ||
822 | RDEPENDS_${PN}-iwlwifi-3160-12 = "${PN}-iwlwifi-license" | ||
823 | RDEPENDS_${PN}-iwlwifi-3160-13 = "${PN}-iwlwifi-license" | ||
824 | RDEPENDS_${PN}-iwlwifi-3160-16 = "${PN}-iwlwifi-license" | ||
825 | RDEPENDS_${PN}-iwlwifi-3160-17 = "${PN}-iwlwifi-license" | ||
826 | RDEPENDS_${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" | ||
827 | RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" | ||
828 | RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" | ||
829 | RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" | ||
830 | RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" | ||
831 | RDEPENDS_${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" | ||
832 | RDEPENDS_${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" | ||
833 | RDEPENDS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-license" | ||
834 | RDEPENDS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" | ||
835 | RDEPENDS_${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" | ||
836 | RDEPENDS_${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" | ||
837 | RDEPENDS_${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" | ||
838 | RDEPENDS_${PN}-iwlwifi-9000 = "${PN}-iwlwifi-license" | ||
839 | RDEPENDS_${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" | ||
840 | |||
841 | # -iwlwifi-misc is a "catch all" package that includes all the iwlwifi | ||
842 | # firmwares that are not already included in other -iwlwifi- packages. | ||
843 | # -iwlwifi is a virtual package that depends upon all iwlwifi packages. | ||
844 | # These are distinct in order to allow the -misc firmwares to be installed | ||
845 | # without pulling in every other iwlwifi package. | ||
846 | ALLOW_EMPTY_${PN}-iwlwifi = "1" | ||
847 | ALLOW_EMPTY_${PN}-iwlwifi-misc = "1" | ||
848 | |||
849 | # Handle package updating for the newly merged iwlwifi groupings | ||
850 | RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" | ||
851 | RREPLACES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" | ||
852 | RCONFLICTS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" | ||
853 | |||
854 | RPROVIDES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" | ||
855 | RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" | ||
856 | RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" | ||
857 | |||
858 | # For ibt | ||
859 | LICENSE_${PN}-ibt-license = "Firmware-ibt_firmware" | ||
860 | LICENSE_${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware" | ||
861 | LICENSE_${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware" | ||
862 | LICENSE_${PN}-ibt-11-5 = "Firmware-ibt_firmware" | ||
863 | LICENSE_${PN}-ibt-12-16 = "Firmware-ibt_firmware" | ||
864 | LICENSE_${PN}-ibt-17 = "Firmware-ibt_firmware" | ||
865 | LICENSE_${PN}-ibt-20 = "Firmware-ibt_firmware" | ||
866 | LICENSE_${PN}-ibt-misc = "Firmware-ibt_firmware" | ||
867 | |||
868 | FILES_${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware" | ||
869 | FILES_${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq" | ||
870 | FILES_${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq" | ||
871 | FILES_${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc" | ||
872 | FILES_${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc" | ||
873 | FILES_${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc" | ||
874 | FILES_${PN}-ibt-20 = "${nonarch_base_libdir}/firmware/intel/ibt-20-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-20-*.ddc" | ||
875 | FILES_${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/intel/ibt-*" | ||
876 | |||
877 | RDEPENDS_${PN}-ibt-hw-37-7 = "${PN}-ibt-license" | ||
878 | RDEPENDS_${PN}-ibt-hw-37.8 = "${PN}-ibt-license" | ||
879 | RDEPENDS_${PN}-ibt-11-5 = "${PN}-ibt-license" | ||
880 | RDEPENDS_${PN}-ibt-12-16 = "${PN}-ibt-license" | ||
881 | RDEPENDS_${PN}-ibt-17 = "${PN}-ibt-license" | ||
882 | RDEPENDS_${PN}-ibt-20 = "${PN}-ibt-license" | ||
883 | RDEPENDS_${PN}-ibt-misc = "${PN}-ibt-license" | ||
884 | |||
885 | ALLOW_EMPTY_${PN}-ibt= "1" | ||
886 | ALLOW_EMPTY_${PN}-ibt-misc = "1" | ||
887 | |||
888 | LICENSE_${PN}-i915 = "Firmware-i915" | ||
889 | LICENSE_${PN}-i915-license = "Firmware-i915" | ||
890 | FILES_${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915" | ||
891 | FILES_${PN}-i915 = "${nonarch_base_libdir}/firmware/i915" | ||
892 | RDEPENDS_${PN}-i915 = "${PN}-i915-license" | ||
893 | |||
894 | LICENSE_${PN}-ice = "Firmware-ice" | ||
895 | LICENSE_${PN}-ice-license = "Firmware-ice" | ||
896 | FILES_${PN}-ice-license = "${nonarch_base_libdir}/firmware/LICENSE.ice" | ||
897 | FILES_${PN}-ice = "${nonarch_base_libdir}/firmware/intel/ice" | ||
898 | RDEPENDS_${PN}-ice = "${PN}-ice-license" | ||
899 | |||
900 | FILES_${PN}-adsp-sst-license = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst" | ||
901 | LICENSE_${PN}-adsp-sst = "Firmware-adsp_sst" | ||
902 | LICENSE_${PN}-adsp-sst-license = "Firmware-adsp_sst" | ||
903 | FILES_${PN}-adsp-sst = "${nonarch_base_libdir}/firmware/intel/dsp_fw*" | ||
904 | RDEPENDS_${PN}-adsp-sst = "${PN}-adsp-sst-license" | ||
905 | |||
906 | # For QAT | ||
907 | LICENSE_${PN}-qat = "Firmware-qat" | ||
908 | LICENSE_${PN}-qat-license = "Firmware-qat" | ||
909 | FILES_${PN}-qat-license = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware" | ||
910 | FILES_${PN}-qat = "${nonarch_base_libdir}/firmware/qat*.bin" | ||
911 | RDEPENDS_${PN}-qat = "${PN}-qat-license" | ||
912 | |||
913 | # For QCOM VPU/GPU and SDM845 | ||
914 | LICENSE_${PN}-qcom-license = "Firmware-qcom" | ||
915 | FILES_${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" | ||
916 | FILES_${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*" | ||
917 | FILES_${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*" | ||
918 | FILES_${PN}-qcom-venus-5.2 = "${nonarch_base_libdir}/firmware/qcom/venus-5.2/*" | ||
919 | FILES_${PN}-qcom-venus-5.4 = "${nonarch_base_libdir}/firmware/qcom/venus-5.4/*" | ||
920 | FILES_${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw" | ||
921 | FILES_${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*" | ||
922 | FILES_${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*" | ||
923 | FILES_${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" | ||
924 | FILES_${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" | ||
925 | FILES_${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn" | ||
926 | RDEPENDS_${PN}-qcom-venus-1.8 = "${PN}-qcom-license" | ||
927 | RDEPENDS_${PN}-qcom-venus-4.2 = "${PN}-qcom-license" | ||
928 | RDEPENDS_${PN}-qcom-venus-5.2 = "${PN}-qcom-license" | ||
929 | RDEPENDS_${PN}-qcom-venus-5.4 = "${PN}-qcom-license" | ||
930 | RDEPENDS_${PN}-qcom-adreno-a3xx = "${PN}-qcom-license" | ||
931 | RDEPENDS_${PN}-qcom-adreno-a530 = "${PN}-qcom-license" | ||
932 | RDEPENDS_${PN}-qcom-adreno-a630 = "${PN}-qcom-license" | ||
933 | RDEPENDS_${PN}-qcom-sdm845-audio = "${PN}-qcom-license" | ||
934 | RDEPENDS_${PN}-qcom-sdm845-compute = "${PN}-qcom-license" | ||
935 | RDEPENDS_${PN}-qcom-sdm845-modem = "${PN}-qcom-license" | ||
936 | |||
937 | FILES_${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" | ||
938 | |||
939 | # For Amlogic VDEC | ||
940 | LICENSE_${PN}-amlogic-vdec = "Firmware-amlogic_vdec" | ||
941 | FILES_${PN}-amlogic-vdec-license = "${nonarch_base_libdir}/firmware/LICENSE.amlogic_vdec" | ||
942 | FILES_${PN}-amlogic-vdec = "${nonarch_base_libdir}/firmware/meson/vdec/*" | ||
943 | RDEPENDS_${PN}-amlogic-vdec = "${PN}-amlogic-vdec-license" | ||
944 | |||
945 | # For other firmwares | ||
946 | # Maybe split out to separate packages when needed. | ||
947 | LICENSE_${PN} = "\ | ||
948 | Firmware-Abilis \ | ||
949 | & Firmware-agere \ | ||
950 | & Firmware-amdgpu \ | ||
951 | & Firmware-amd-ucode \ | ||
952 | & Firmware-amlogic_vdec \ | ||
953 | & Firmware-atmel \ | ||
954 | & Firmware-ca0132 \ | ||
955 | & Firmware-cavium \ | ||
956 | & Firmware-chelsio_firmware \ | ||
957 | & Firmware-cw1200 \ | ||
958 | & Firmware-dib0700 \ | ||
959 | & Firmware-e100 \ | ||
960 | & Firmware-ene_firmware \ | ||
961 | & Firmware-fw_sst_0f28 \ | ||
962 | & Firmware-go7007 \ | ||
963 | & Firmware-hfi1_firmware \ | ||
964 | & Firmware-i2400m \ | ||
965 | & Firmware-ibt_firmware \ | ||
966 | & Firmware-it913x \ | ||
967 | & Firmware-IntcSST2 \ | ||
968 | & Firmware-kaweth \ | ||
969 | & Firmware-moxa \ | ||
970 | & Firmware-myri10ge_firmware \ | ||
971 | & Firmware-nvidia \ | ||
972 | & Firmware-OLPC \ | ||
973 | & Firmware-ath9k-htc \ | ||
974 | & Firmware-phanfw \ | ||
975 | & Firmware-qat \ | ||
976 | & Firmware-qcom \ | ||
977 | & Firmware-qla1280 \ | ||
978 | & Firmware-qla2xxx \ | ||
979 | & Firmware-r8a779x_usb3 \ | ||
980 | & Firmware-radeon \ | ||
981 | & Firmware-ralink_a_mediatek_company_firmware \ | ||
982 | & Firmware-ralink-firmware \ | ||
983 | & Firmware-imx-sdma_firmware \ | ||
984 | & Firmware-siano \ | ||
985 | & Firmware-tda7706-firmware \ | ||
986 | & Firmware-ti-connectivity \ | ||
987 | & Firmware-ti-keystone \ | ||
988 | & Firmware-ueagle-atm4-firmware \ | ||
989 | & Firmware-wl1251 \ | ||
990 | & Firmware-xc4000 \ | ||
991 | & Firmware-xc5000 \ | ||
992 | & Firmware-xc5000c \ | ||
993 | & WHENCE \ | ||
994 | " | ||
995 | |||
996 | FILES_${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*" | ||
997 | FILES_${PN} += "${nonarch_base_libdir}/firmware/*" | ||
998 | RDEPENDS_${PN} += "${PN}-license" | ||
999 | RDEPENDS_${PN} += "${PN}-whence-license" | ||
1000 | |||
1001 | # Make linux-firmware depend on all of the split-out packages. | ||
1002 | # Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. | ||
1003 | # Make linux-firmware-ibt depend on all of the split-out ibt packages. | ||
1004 | python populate_packages_prepend () { | ||
1005 | firmware_pkgs = oe.utils.packages_filter_out_system(d) | ||
1006 | d.appendVar('RRECOMMENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs)) | ||
1007 | |||
1008 | iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) | ||
1009 | d.appendVar('RRECOMMENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) | ||
1010 | |||
1011 | ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs) | ||
1012 | d.appendVar('RRECOMMENDS_linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs)) | ||
1013 | } | ||
1014 | |||
1015 | # Firmware files are generally not ran on the CPU, so they can be | ||
1016 | # allarch despite being architecture specific | ||
1017 | INSANE_SKIP = "arch" | ||
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb new file mode 100644 index 0000000000..ff79bb9b33 --- /dev/null +++ b/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb | |||
@@ -0,0 +1,1583 @@ | |||
1 | SUMMARY = "Firmware files for use with Linux kernel" | ||
2 | HOMEPAGE = "https://www.kernel.org/" | ||
3 | DESCRIPTION = "Linux firmware is a package distributed alongside the Linux kernel \ | ||
4 | that contains firmware binary blobs necessary for partial or full functionality \ | ||
5 | of certain hardware devices." | ||
6 | SECTION = "kernel" | ||
7 | |||
8 | LICENSE = "\ | ||
9 | Firmware-Abilis \ | ||
10 | & Firmware-adsp_sst \ | ||
11 | & Firmware-agere \ | ||
12 | & Firmware-amdgpu \ | ||
13 | & Firmware-amd-ucode \ | ||
14 | & Firmware-amlogic_vdec \ | ||
15 | & Firmware-amphion_vpu \ | ||
16 | & Firmware-atheros_firmware \ | ||
17 | & Firmware-atmel \ | ||
18 | & Firmware-broadcom_bcm43xx \ | ||
19 | & Firmware-ca0132 \ | ||
20 | & Firmware-cavium \ | ||
21 | & Firmware-chelsio_firmware \ | ||
22 | & Firmware-cirrus \ | ||
23 | & Firmware-cnm \ | ||
24 | & Firmware-cw1200 \ | ||
25 | & Firmware-cypress \ | ||
26 | & Firmware-dib0700 \ | ||
27 | & Firmware-e100 \ | ||
28 | & Firmware-ene_firmware \ | ||
29 | & Firmware-fw_sst_0f28 \ | ||
30 | & Firmware-go7007 \ | ||
31 | & Firmware-hfi1_firmware \ | ||
32 | & Firmware-i915 \ | ||
33 | & Firmware-ibt_firmware \ | ||
34 | & Firmware-ice \ | ||
35 | & Firmware-ice_enhanced \ | ||
36 | & Firmware-it913x \ | ||
37 | & Firmware-iwlwifi_firmware \ | ||
38 | & Firmware-IntcSST2 \ | ||
39 | & Firmware-kaweth \ | ||
40 | & Firmware-linaro \ | ||
41 | & Firmware-Lontium \ | ||
42 | & Firmware-Marvell \ | ||
43 | & Firmware-mediatek \ | ||
44 | & Firmware-microchip \ | ||
45 | & Firmware-moxa \ | ||
46 | & Firmware-myri10ge_firmware \ | ||
47 | & Firmware-netronome \ | ||
48 | & Firmware-nvidia \ | ||
49 | & Firmware-nxp \ | ||
50 | & Firmware-nxp_mc_firmware \ | ||
51 | & Firmware-OLPC \ | ||
52 | & Firmware-ath9k-htc \ | ||
53 | & Firmware-phanfw \ | ||
54 | & Firmware-powervr \ | ||
55 | & Firmware-qat \ | ||
56 | & Firmware-qcom \ | ||
57 | & Firmware-qcom-yamato \ | ||
58 | & Firmware-qla1280 \ | ||
59 | & Firmware-qla2xxx \ | ||
60 | & Firmware-qualcommAthos_ar3k \ | ||
61 | & Firmware-qualcommAthos_ath10k \ | ||
62 | & Firmware-r8a779x_usb3 \ | ||
63 | & Firmware-radeon \ | ||
64 | & Firmware-ralink_a_mediatek_company_firmware \ | ||
65 | & Firmware-ralink-firmware \ | ||
66 | & Firmware-rockchip \ | ||
67 | & Firmware-rtlwifi_firmware \ | ||
68 | & Firmware-imx-sdma_firmware \ | ||
69 | & Firmware-siano \ | ||
70 | & Firmware-ti-connectivity \ | ||
71 | & Firmware-ti-keystone \ | ||
72 | & Firmware-ueagle-atm4-firmware \ | ||
73 | & Firmware-via_vt6656 \ | ||
74 | & Firmware-wl1251 \ | ||
75 | & Firmware-xc4000 \ | ||
76 | & Firmware-xc5000 \ | ||
77 | & Firmware-xc5000c \ | ||
78 | & WHENCE \ | ||
79 | & GPL-2.0-or-later \ | ||
80 | " | ||
81 | |||
82 | LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ | ||
83 | file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ | ||
84 | file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ | ||
85 | file://LICENSE.amdgpu;md5=a2589a05ea5b6bd2b7f4f623c7e7a649 \ | ||
86 | file://LICENSE.amd-ucode;md5=6ca90c57f7b248de1e25c7f68ffc4698 \ | ||
87 | file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ | ||
88 | file://LICENSE.amphion_vpu;md5=2bcdc00527b2d0542bd92b52aaec2b60 \ | ||
89 | file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ | ||
90 | file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ | ||
91 | file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ | ||
92 | file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ | ||
93 | file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ | ||
94 | file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ | ||
95 | file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ | ||
96 | file://LICENSE.cirrus;md5=662ea2c1a8888f7d79ed7f27c27472e1 \ | ||
97 | file://LICENCE.cnm;md5=93b67e6bac7f8fec22b96b8ad0a1a9d0 \ | ||
98 | file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ | ||
99 | file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ | ||
100 | file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ | ||
101 | file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ | ||
102 | file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ | ||
103 | file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ | ||
104 | file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ | ||
105 | file://LICENSE.hfi1_firmware;md5=5e7b6e586ce7339d12689e49931ad444 \ | ||
106 | file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \ | ||
107 | file://LICENCE.ibt_firmware;md5=fdbee1ddfe0fb7ab0b2fcd6b454a366b \ | ||
108 | file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ | ||
109 | file://LICENSE.ice_enhanced;md5=f305cfc31b64f95f774f9edd9df0224d \ | ||
110 | file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ | ||
111 | file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ | ||
112 | file://LICENCE.iwlwifi_firmware;md5=2ce6786e0fc11ac6e36b54bb9b799f1b \ | ||
113 | file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ | ||
114 | file://LICENCE.linaro;md5=936d91e71cf9cd30e733db4bf11661cc \ | ||
115 | file://LICENSE.Lontium;md5=4ec8dc582ff7295f39e2ca6a7b0be2b6 \ | ||
116 | file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ | ||
117 | file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ | ||
118 | file://LICENCE.microchip;md5=db753b00305675dfbf120e3f24a47277 \ | ||
119 | file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ | ||
120 | file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ | ||
121 | file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ | ||
122 | file://LICENCE.nvidia;md5=4428a922ed3ba2ceec95f076a488ce07 \ | ||
123 | file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \ | ||
124 | file://LICENSE.nxp;md5=cca321ca1524d6a1e4fed87486cd82dc \ | ||
125 | file://LICENSE.nxp_mc_firmware;md5=9dc97e4b279b3858cae8879ae2fe5dd7 \ | ||
126 | file://LICENCE.OLPC;md5=5b917f9d8c061991be4f6f5f108719cd \ | ||
127 | file://LICENCE.open-ath9k-htc-firmware;md5=1b33c9f4d17bc4d457bdb23727046837 \ | ||
128 | file://LICENCE.phanfw;md5=954dcec0e051f9409812b561ea743bfa \ | ||
129 | file://LICENSE.powervr;md5=83045ed2a2cda15b4eaff682c98c9533 \ | ||
130 | file://LICENCE.qat_firmware;md5=72de83dfd9b87be7685ed099a39fbea4 \ | ||
131 | file://LICENSE.qcom;md5=164e3362a538eb11d3ac51e8e134294b \ | ||
132 | file://LICENSE.qcom_yamato;md5=d0de0eeccaf1843a850bf7a6777eec5c \ | ||
133 | file://LICENCE.qla1280;md5=d6895732e622d950609093223a2c4f5d \ | ||
134 | file://LICENCE.qla2xxx;md5=505855e921b75f1be4a437ad9b79dff0 \ | ||
135 | file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ | ||
136 | file://LICENSE.QualcommAtheros_ath10k;md5=cb42b686ee5f5cb890275e4321db60a8 \ | ||
137 | file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ | ||
138 | file://LICENSE.radeon;md5=68ec28bacb3613200bca44f404c69b16 \ | ||
139 | file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ | ||
140 | file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ | ||
141 | file://LICENCE.rockchip;md5=5fd70190c5ed39734baceada8ecced26 \ | ||
142 | file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ | ||
143 | file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \ | ||
144 | file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ | ||
145 | file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \ | ||
146 | file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ | ||
147 | file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ | ||
148 | file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ | ||
149 | file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ | ||
150 | file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ | ||
151 | file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ | ||
152 | file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ | ||
153 | file://WHENCE;md5=${WHENCE_CHKSUM} \ | ||
154 | " | ||
155 | # WHENCE checksum is defined separately to ease overriding it if | ||
156 | # class-devupstream is selected. | ||
157 | WHENCE_CHKSUM = "514da1cd8b363373030f0c16749feb8d" | ||
158 | |||
159 | # These are not common licenses, set NO_GENERIC_LICENSE for them | ||
160 | # so that the license files will be copied from fetched source | ||
161 | NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" | ||
162 | NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" | ||
163 | NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" | ||
164 | NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" | ||
165 | NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" | ||
166 | NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" | ||
167 | NO_GENERIC_LICENSE[Firmware-amphion_vpu] = "LICENSE.amphion_vpu" | ||
168 | NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" | ||
169 | NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" | ||
170 | NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" | ||
171 | NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" | ||
172 | NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" | ||
173 | NO_GENERIC_LICENSE[Firmware-cavium] = "LICENCE.cavium" | ||
174 | NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware" | ||
175 | NO_GENERIC_LICENSE[Firmware-cirrus] = "LICENSE.cirrus" | ||
176 | NO_GENERIC_LICENSE[Firmware-cnm] = "LICENCE.cnm" | ||
177 | NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" | ||
178 | NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" | ||
179 | NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" | ||
180 | NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" | ||
181 | NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" | ||
182 | NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" | ||
183 | NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" | ||
184 | NO_GENERIC_LICENSE[Firmware-hfi1_firmware] = "LICENSE.hfi1_firmware" | ||
185 | NO_GENERIC_LICENSE[Firmware-i915] = "LICENSE.i915" | ||
186 | NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware" | ||
187 | NO_GENERIC_LICENSE[Firmware-ice] = "LICENSE.ice" | ||
188 | NO_GENERIC_LICENSE[Firmware-ice_enhanced] = "LICENSE.ice_enhanced" | ||
189 | NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" | ||
190 | NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" | ||
191 | NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" | ||
192 | NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" | ||
193 | NO_GENERIC_LICENSE[Firmware-linaro] = "LICENCE.linaro" | ||
194 | NO_GENERIC_LICENSE[Firmware-Lontium] = "LICENSE.Lontium" | ||
195 | NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" | ||
196 | NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" | ||
197 | NO_GENERIC_LICENSE[Firmware-microchip] = "LICENCE.microchip" | ||
198 | NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" | ||
199 | NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" | ||
200 | NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" | ||
201 | NO_GENERIC_LICENSE[Firmware-nvidia] = "LICENCE.nvidia" | ||
202 | NO_GENERIC_LICENSE[Firmware-nxp] = "LICENSE.nxp" | ||
203 | NO_GENERIC_LICENSE[Firmware-nxp_mc_firmware] = "LICENSE.nxp_mc_firmware" | ||
204 | NO_GENERIC_LICENSE[Firmware-OLPC] = "LICENCE.OLPC" | ||
205 | NO_GENERIC_LICENSE[Firmware-ath9k-htc] = "LICENCE.open-ath9k-htc-firmware" | ||
206 | NO_GENERIC_LICENSE[Firmware-phanfw] = "LICENCE.phanfw" | ||
207 | NO_GENERIC_LICENSE[Firmware-powervr] = "LICENSE.powervr" | ||
208 | NO_GENERIC_LICENSE[Firmware-qat] = "LICENCE.qat_firmware" | ||
209 | NO_GENERIC_LICENSE[Firmware-qcom] = "LICENSE.qcom" | ||
210 | NO_GENERIC_LICENSE[Firmware-qcom-yamato] = "LICENSE.qcom_yamato" | ||
211 | NO_GENERIC_LICENSE[Firmware-qla1280] = "LICENCE.qla1280" | ||
212 | NO_GENERIC_LICENSE[Firmware-qla2xxx] = "LICENCE.qla2xxx" | ||
213 | NO_GENERIC_LICENSE[Firmware-qualcommAthos_ar3k] = "LICENSE.QualcommAtheros_ar3k" | ||
214 | NO_GENERIC_LICENSE[Firmware-qualcommAthos_ath10k] = "LICENSE.QualcommAtheros_ath10k" | ||
215 | NO_GENERIC_LICENSE[Firmware-r8a779x_usb3] = "LICENCE.r8a779x_usb3" | ||
216 | NO_GENERIC_LICENSE[Firmware-radeon] = "LICENSE.radeon" | ||
217 | NO_GENERIC_LICENSE[Firmware-ralink_a_mediatek_company_firmware] = "LICENCE.ralink_a_mediatek_company_firmware" | ||
218 | NO_GENERIC_LICENSE[Firmware-ralink-firmware] = "LICENCE.ralink-firmware.txt" | ||
219 | NO_GENERIC_LICENSE[Firmware-rockchip] = "LICENCE.rockchip" | ||
220 | NO_GENERIC_LICENSE[Firmware-rtlwifi_firmware] = "LICENCE.rtlwifi_firmware.txt" | ||
221 | NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano" | ||
222 | NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" | ||
223 | NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" | ||
224 | NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" | ||
225 | NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" | ||
226 | NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" | ||
227 | NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" | ||
228 | NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" | ||
229 | NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" | ||
230 | NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" | ||
231 | NO_GENERIC_LICENSE[WHENCE] = "WHENCE" | ||
232 | |||
233 | PE = "1" | ||
234 | |||
235 | SRC_URI = "\ | ||
236 | ${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz \ | ||
237 | " | ||
238 | |||
239 | BBCLASSEXTEND = "devupstream:target" | ||
240 | SRC_URI:class-devupstream = "git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git;protocol=https;branch=main" | ||
241 | # Pin this to the 20220509 release, override this in local.conf | ||
242 | SRCREV:class-devupstream ?= "b19cbdca78ab2adfd210c91be15a22568e8b8cae" | ||
243 | |||
244 | SRC_URI[sha256sum] = "b2327a54ad1897c828008caf63af5ee15469ba723a5016be58f2b44f07bd4b94" | ||
245 | |||
246 | inherit allarch | ||
247 | |||
248 | CLEANBROKEN = "1" | ||
249 | |||
250 | # Use PACKAGECONFIG_CONFARGS to set the Makefile target | ||
251 | PACKAGECONFIG ??= "" | ||
252 | # Enabling dedup will turn duplicate firmware files into links | ||
253 | PACKAGECONFIG[deduplicate] = "install,install-nodedup,rdfind-native" | ||
254 | |||
255 | do_compile() { | ||
256 | : | ||
257 | } | ||
258 | |||
259 | do_install() { | ||
260 | oe_runmake 'DESTDIR=${D}' 'FIRMWAREDIR=${nonarch_base_libdir}/firmware' ${PACKAGECONFIG_CONFARGS} | ||
261 | cp LICEN[CS]E.* WHENCE ${D}${nonarch_base_libdir}/firmware/ | ||
262 | } | ||
263 | |||
264 | |||
265 | PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \ | ||
266 | ${PN}-cw1200-license ${PN}-cw1200 \ | ||
267 | ${PN}-ralink-license ${PN}-ralink \ | ||
268 | ${PN}-mt76x-license ${PN}-mt7601u ${PN}-mt7650 ${PN}-mt76x2 \ | ||
269 | ${PN}-radeon-license ${PN}-radeon \ | ||
270 | ${PN}-amdgpu-license ${PN}-amdgpu \ | ||
271 | ${PN}-marvell-license ${PN}-pcie8897 ${PN}-pcie8997 \ | ||
272 | ${PN}-mediatek-license ${PN}-mediatek \ | ||
273 | ${PN}-microchip-license ${PN}-microchip \ | ||
274 | ${PN}-moxa-license ${PN}-moxa \ | ||
275 | ${PN}-sd8686 ${PN}-sd8688 ${PN}-sd8787 ${PN}-sd8797 ${PN}-sd8801 \ | ||
276 | ${PN}-sd8887 ${PN}-sd8897 ${PN}-sd8997 ${PN}-usb8997 \ | ||
277 | ${PN}-ti-connectivity-license ${PN}-wlcommon ${PN}-wl12xx ${PN}-wl18xx \ | ||
278 | ${PN}-ti-keystone-license ${PN}-ti-keystone \ | ||
279 | ${PN}-vt6656-license ${PN}-vt6656 \ | ||
280 | ${PN}-rs9113 ${PN}-rs9116 \ | ||
281 | ${PN}-rtl-license ${PN}-rtl8188 ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su ${PN}-rtl8723 ${PN}-rtl8821 \ | ||
282 | ${PN}-rtl8761 \ | ||
283 | ${PN}-rtl8168 \ | ||
284 | ${PN}-rtl8822 \ | ||
285 | ${PN}-rtl-nic \ | ||
286 | ${PN}-cypress-license \ | ||
287 | ${PN}-broadcom-license \ | ||
288 | ${PN}-bcm-0bb4-0306 \ | ||
289 | ${PN}-bcm43143 \ | ||
290 | ${PN}-bcm43236b \ | ||
291 | ${PN}-bcm43241b0 \ | ||
292 | ${PN}-bcm43241b4 \ | ||
293 | ${PN}-bcm43241b5 \ | ||
294 | ${PN}-bcm43242a \ | ||
295 | ${PN}-bcm4329 \ | ||
296 | ${PN}-bcm4329-fullmac \ | ||
297 | ${PN}-bcm4330 \ | ||
298 | ${PN}-bcm4334 \ | ||
299 | ${PN}-bcm43340 \ | ||
300 | ${PN}-bcm4335 \ | ||
301 | ${PN}-bcm43362 \ | ||
302 | ${PN}-bcm4339 \ | ||
303 | ${PN}-bcm43430 \ | ||
304 | ${PN}-bcm43430a0 \ | ||
305 | ${PN}-bcm43455 \ | ||
306 | ${PN}-bcm4350 \ | ||
307 | ${PN}-bcm4350c2 \ | ||
308 | ${PN}-bcm4354 \ | ||
309 | ${PN}-bcm4356 \ | ||
310 | ${PN}-bcm4356-pcie \ | ||
311 | ${PN}-bcm43569 \ | ||
312 | ${PN}-bcm43570 \ | ||
313 | ${PN}-bcm4358 \ | ||
314 | ${PN}-bcm43602 \ | ||
315 | ${PN}-bcm4366b \ | ||
316 | ${PN}-bcm4366c \ | ||
317 | ${PN}-bcm4371 \ | ||
318 | ${PN}-bcm4373 \ | ||
319 | ${PN}-bcm43xx \ | ||
320 | ${PN}-bcm43xx-hdr \ | ||
321 | ${PN}-cirrus-license ${PN}-cirrus \ | ||
322 | ${PN}-cnm-license ${PN}-cnm \ | ||
323 | ${PN}-atheros-license ${PN}-ar5523 ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k ${PN}-ath3k \ | ||
324 | ${PN}-carl9170 \ | ||
325 | ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-ath11k ${PN}-qca \ | ||
326 | \ | ||
327 | ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ | ||
328 | \ | ||
329 | ${PN}-iwlwifi-license ${PN}-iwlwifi \ | ||
330 | ${PN}-iwlwifi-135-6 \ | ||
331 | ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ | ||
332 | ${PN}-iwlwifi-3160-10 ${PN}-iwlwifi-3160-12 ${PN}-iwlwifi-3160-13 \ | ||
333 | ${PN}-iwlwifi-3160-16 ${PN}-iwlwifi-3160-17 \ | ||
334 | ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ | ||
335 | ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ | ||
336 | ${PN}-iwlwifi-6050-4 ${PN}-iwlwifi-6050-5 \ | ||
337 | ${PN}-iwlwifi-7260 \ | ||
338 | ${PN}-iwlwifi-7265 \ | ||
339 | ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ | ||
340 | ${PN}-iwlwifi-9000 \ | ||
341 | ${PN}-iwlwifi-9260 \ | ||
342 | ${PN}-iwlwifi-misc \ | ||
343 | ${PN}-ibt-license ${PN}-ibt \ | ||
344 | ${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \ | ||
345 | ${PN}-ibt-17 \ | ||
346 | ${PN}-ibt-20 \ | ||
347 | ${PN}-ibt-misc \ | ||
348 | ${PN}-i915-license ${PN}-i915 \ | ||
349 | ${PN}-ice-license ${PN}-ice \ | ||
350 | ${PN}-ice-enhanced-license ${PN}-ice-enhanced \ | ||
351 | ${PN}-adsp-sst-license ${PN}-adsp-sst \ | ||
352 | ${PN}-bnx2 \ | ||
353 | ${PN}-bnx2x \ | ||
354 | ${PN}-liquidio \ | ||
355 | ${PN}-mellanox \ | ||
356 | ${PN}-nvidia-license \ | ||
357 | ${PN}-nvidia-tegra-k1 ${PN}-nvidia-tegra \ | ||
358 | ${PN}-nvidia-gpu \ | ||
359 | ${PN}-nxp-license \ | ||
360 | ${PN}-nxp8987-sdio \ | ||
361 | ${PN}-nxp8997-common \ | ||
362 | ${PN}-nxp8997-pcie \ | ||
363 | ${PN}-nxp8997-sdio \ | ||
364 | ${PN}-nxp9098-common \ | ||
365 | ${PN}-nxp9098-pcie \ | ||
366 | ${PN}-nxp9098-sdio \ | ||
367 | ${PN}-nxpiw416-sdio \ | ||
368 | ${PN}-nxpiw612-sdio \ | ||
369 | ${PN}-nxp-mc-license ${PN}-nxp-mc \ | ||
370 | ${PN}-netronome-license ${PN}-netronome \ | ||
371 | ${PN}-olpc-license ${PN}-olpc \ | ||
372 | ${PN}-phanfw-license ${PN}-phanfw \ | ||
373 | ${PN}-powervr-license ${PN}-powervr \ | ||
374 | ${PN}-prestera \ | ||
375 | ${PN}-qat ${PN}-qat-license \ | ||
376 | ${PN}-qed \ | ||
377 | ${PN}-qcom-license ${PN}-qcom-yamato-license \ | ||
378 | ${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 ${PN}-qcom-venus-5.2 ${PN}-qcom-venus-5.4 ${PN}-qcom-venus-6.0 \ | ||
379 | ${PN}-qcom-vpu-1.0 ${PN}-qcom-vpu-2.0 \ | ||
380 | ${PN}-qcom-adreno-a2xx ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a4xx ${PN}-qcom-adreno-a530 \ | ||
381 | ${PN}-qcom-adreno-a630 ${PN}-qcom-adreno-a650 ${PN}-qcom-adreno-a660 ${PN}-qcom-adreno-a702 \ | ||
382 | ${PN}-qcom-apq8016-modem ${PN}-qcom-apq8016-wifi \ | ||
383 | ${PN}-qcom-apq8096-adreno ${PN}-qcom-apq8096-audio ${PN}-qcom-apq8096-modem \ | ||
384 | ${PN}-qcom-qcm2290-adreno ${PN}-qcom-qcm2290-audio ${PN}-qcom-qcm2290-modem ${PN}-qcom-qcm2290-wifi \ | ||
385 | ${PN}-qcom-qrb4210-adreno ${PN}-qcom-qrb4210-audio ${PN}-qcom-qrb4210-compute \ | ||
386 | ${PN}-qcom-qrb4210-modem ${PN}-qcom-qrb4210-wifi \ | ||
387 | ${PN}-qcom-sc8280xp-lenovo-x13s-compat \ | ||
388 | ${PN}-qcom-sc8280xp-lenovo-x13s-audio \ | ||
389 | ${PN}-qcom-sc8280xp-lenovo-x13s-adreno \ | ||
390 | ${PN}-qcom-sc8280xp-lenovo-x13s-compute \ | ||
391 | ${PN}-qcom-sc8280xp-lenovo-x13s-sensors \ | ||
392 | ${PN}-qcom-sdm845-adreno ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \ | ||
393 | ${PN}-qcom-sdm845-thundercomm-db845c-sensors \ | ||
394 | ${PN}-qcom-sm8250-adreno ${PN}-qcom-sm8250-audio ${PN}-qcom-sm8250-compute \ | ||
395 | ${PN}-qcom-sm8250-thundercomm-rb5-sensors \ | ||
396 | ${PN}-qla2xxx ${PN}-qla2xxx-license \ | ||
397 | ${PN}-rockchip-license ${PN}-rockchip-dptx \ | ||
398 | ${PN}-amlogic-vdec-license ${PN}-amlogic-vdec \ | ||
399 | ${PN}-lt9611uxc ${PN}-lontium-license \ | ||
400 | ${PN}-whence-license \ | ||
401 | ${PN}-wl1251-license ${PN}-wl1251 \ | ||
402 | ${PN}-xc4000-license ${PN}-xc4000 \ | ||
403 | ${PN}-xc5000-license ${PN}-xc5000 \ | ||
404 | ${PN}-xc5000c-license ${PN}-xc5000c \ | ||
405 | ${PN}-license \ | ||
406 | " | ||
407 | |||
408 | # For Amphion VPU | ||
409 | LICENSE:${PN}-amphion-vpu = "Firmware-amphion_vpu" | ||
410 | LICENSE:${PN}-amphion-vpu-license = "Firmware-amphion_vpu" | ||
411 | |||
412 | FILES:${PN}-amphion-vpu = "${nonarch_base_libdir}/firmware/amphion/*" | ||
413 | FILES:${PN}-amphion-vpu-license = " \ | ||
414 | ${nonarch_base_libdir}/firmware/LICENSE.amphion_vpu \ | ||
415 | " | ||
416 | RDEPENDS:${PN}-amphion-vpu += "${PN}-amphion-vpu-license" | ||
417 | |||
418 | # For cw1200 | ||
419 | LICENSE:${PN}-cw1200 = "Firmware-cw1200" | ||
420 | LICENSE:${PN}-cw1200-license = "Firmware-cw1200" | ||
421 | |||
422 | FILES:${PN}-cw1200 = "${nonarch_base_libdir}/firmware/wsm_22.bin" | ||
423 | FILES:${PN}-cw1200-license = "${nonarch_base_libdir}/firmware/LICENCE.cw1200" | ||
424 | |||
425 | RDEPENDS:${PN}-cw1200 += "${PN}-cw1200-license" | ||
426 | |||
427 | # For atheros | ||
428 | LICENSE:${PN}-ar5523 = "Firmware-atheros_firmware" | ||
429 | LICENSE:${PN}-ar9170 = "Firmware-atheros_firmware" | ||
430 | LICENSE:${PN}-ath3k = "Firmware-atheros_firmware" | ||
431 | LICENSE:${PN}-ath6k = "Firmware-atheros_firmware" | ||
432 | LICENSE:${PN}-ath9k = "Firmware-atheros_firmware" | ||
433 | LICENSE:${PN}-atheros-license = "Firmware-atheros_firmware" | ||
434 | |||
435 | FILES:${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware" | ||
436 | FILES:${PN}-ar5523 = " \ | ||
437 | ${nonarch_base_libdir}/firmware/ar5523.bin \ | ||
438 | " | ||
439 | FILES:${PN}-ar9170 = " \ | ||
440 | ${nonarch_base_libdir}/firmware/ar9170*.fw \ | ||
441 | " | ||
442 | FILES:${PN}-ath3k = " \ | ||
443 | ${nonarch_base_libdir}/firmware/ath3k*fw \ | ||
444 | " | ||
445 | FILES:${PN}-ath6k = " \ | ||
446 | ${nonarch_base_libdir}/firmware/ath6k \ | ||
447 | " | ||
448 | FILES:${PN}-ath9k = " \ | ||
449 | ${nonarch_base_libdir}/firmware/ar9271.fw \ | ||
450 | ${nonarch_base_libdir}/firmware/ar7010*.fw \ | ||
451 | ${nonarch_base_libdir}/firmware/htc_9271.fw \ | ||
452 | ${nonarch_base_libdir}/firmware/htc_7010.fw \ | ||
453 | ${nonarch_base_libdir}/firmware/ath9k_htc/htc_7010-1.4.0.fw \ | ||
454 | ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \ | ||
455 | " | ||
456 | |||
457 | RDEPENDS:${PN}-ar5523 += "${PN}-atheros-license" | ||
458 | RDEPENDS:${PN}-ar9170 += "${PN}-atheros-license" | ||
459 | RDEPENDS:${PN}-ath6k += "${PN}-atheros-license" | ||
460 | RDEPENDS:${PN}-ath9k += "${PN}-atheros-license" | ||
461 | |||
462 | # For carl9170 | ||
463 | |||
464 | FILES:${PN}-carl9170 = " \ | ||
465 | ${nonarch_base_libdir}/firmware/carl9170*.fw \ | ||
466 | " | ||
467 | LICENSE:${PN}-carl9170 = "GPL-2.0-or-later" | ||
468 | |||
469 | # For QualCommAthos | ||
470 | LICENSE:${PN}-ar3k = "Firmware-qualcommAthos_ar3k & Firmware-atheros_firmware" | ||
471 | LICENSE:${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" | ||
472 | LICENSE:${PN}-ath10k = "Firmware-qualcommAthos_ath10k" | ||
473 | LICENSE:${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" | ||
474 | LICENSE:${PN}-qca = "Firmware-qualcommAthos_ath10k" | ||
475 | |||
476 | FILES:${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" | ||
477 | FILES:${PN}-ar3k = " \ | ||
478 | ${nonarch_base_libdir}/firmware/ar3k \ | ||
479 | " | ||
480 | |||
481 | FILES:${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k" | ||
482 | FILES:${PN}-ath10k = " \ | ||
483 | ${nonarch_base_libdir}/firmware/ath10k \ | ||
484 | " | ||
485 | |||
486 | FILES:${PN}-ath11k = " \ | ||
487 | ${nonarch_base_libdir}/firmware/ath11k \ | ||
488 | " | ||
489 | |||
490 | FILES:${PN}-qca = " \ | ||
491 | ${nonarch_base_libdir}/firmware/qca \ | ||
492 | " | ||
493 | |||
494 | RDEPENDS:${PN}-ar3k += "${PN}-ar3k-license ${PN}-atheros-license" | ||
495 | RDEPENDS:${PN}-ath10k += "${PN}-ath10k-license" | ||
496 | RDEPENDS:${PN}-ath11k += "${PN}-ath10k-license" | ||
497 | RDEPENDS:${PN}-qca += "${PN}-ath10k-license" | ||
498 | |||
499 | # For ralink | ||
500 | LICENSE:${PN}-ralink = "Firmware-ralink-firmware" | ||
501 | LICENSE:${PN}-ralink-license = "Firmware-ralink-firmware" | ||
502 | |||
503 | FILES:${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt" | ||
504 | FILES:${PN}-ralink = " \ | ||
505 | ${nonarch_base_libdir}/firmware/rt*.bin \ | ||
506 | " | ||
507 | |||
508 | RDEPENDS:${PN}-ralink += "${PN}-ralink-license" | ||
509 | |||
510 | # For mediatek MT7601U | ||
511 | LICENSE:${PN}-mt76x-license = "Firmware-ralink_a_mediatek_company_firmware" | ||
512 | FILES:${PN}-mt76x-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware" | ||
513 | |||
514 | LICENSE:${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware" | ||
515 | |||
516 | FILES:${PN}-mt7601u = " \ | ||
517 | ${nonarch_base_libdir}/firmware/mediatek/mt7601u.bin \ | ||
518 | ${nonarch_base_libdir}/firmware/mt7601u.bin \ | ||
519 | " | ||
520 | RDEPENDS:${PN}-mt7601u += "${PN}-mt76x-license" | ||
521 | |||
522 | # For MediaTek Bluetooth USB driver 7650 | ||
523 | LICENSE:${PN}-mt7650 = "Firmware-ralink_a_mediatek_company_firmware" | ||
524 | |||
525 | FILES:${PN}-mt7650 = " \ | ||
526 | ${nonarch_base_libdir}/firmware/mediatek/mt7650.bin \ | ||
527 | ${nonarch_base_libdir}/firmware/mt7650.bin \ | ||
528 | " | ||
529 | RDEPENDS:${PN}-mt7650 += "${PN}-mt76x-license" | ||
530 | |||
531 | # For MediaTek MT76x2 Wireless MACs | ||
532 | LICENSE:${PN}-mt76x2 = "Firmware-ralink_a_mediatek_company_firmware" | ||
533 | |||
534 | FILES:${PN}-mt76x2 = " \ | ||
535 | ${nonarch_base_libdir}/firmware/mediatek/mt7662.bin \ | ||
536 | ${nonarch_base_libdir}/firmware/mt7662.bin \ | ||
537 | ${nonarch_base_libdir}/firmware/mediatek/mt7662_rom_patch.bin \ | ||
538 | ${nonarch_base_libdir}/firmware/mt7662_rom_patch.bin \ | ||
539 | " | ||
540 | RDEPENDS:${PN}-mt76x2 += "${PN}-mt76x-license" | ||
541 | |||
542 | # For MediaTek | ||
543 | LICENSE:${PN}-mediatek = "Firmware-mediatek" | ||
544 | LICENSE:${PN}-mediatek-license = "Firmware-mediatek" | ||
545 | |||
546 | FILES:${PN}-mediatek = " \ | ||
547 | ${nonarch_base_libdir}/firmware/mediatek/* \ | ||
548 | ${nonarch_base_libdir}/firmware/vpu_d.bin \ | ||
549 | ${nonarch_base_libdir}/firmware/vpu_p.bin \ | ||
550 | " | ||
551 | FILES:${PN}-mediatek-license = " \ | ||
552 | ${nonarch_base_libdir}/firmware/LICENCE.mediatek \ | ||
553 | " | ||
554 | RDEPENDS:${PN}-mediatek += "${PN}-mediatek-license" | ||
555 | |||
556 | # For Microchip | ||
557 | LICENSE:${PN}-microchip = "Firmware-microchip" | ||
558 | LICENSE:${PN}-microchip-license = "Firmware-microchip" | ||
559 | |||
560 | FILES:${PN}-microchip = "${nonarch_base_libdir}/firmware/microchip/*" | ||
561 | FILES:${PN}-microchip-license = " \ | ||
562 | ${nonarch_base_libdir}/firmware/LICENCE.microchip \ | ||
563 | " | ||
564 | RDEPENDS:${PN}-microchip += "${PN}-microchip-license" | ||
565 | |||
566 | # For MOXA | ||
567 | LICENSE:${PN}-moxa = "Firmware-moxa" | ||
568 | LICENSE:${PN}-moxa-license = "Firmware-moxa" | ||
569 | |||
570 | FILES:${PN}-moxa = "${nonarch_base_libdir}/firmware/moxa" | ||
571 | FILES:${PN}-moxa-license = "${nonarch_base_libdir}/firmware/LICENCE.moxa" | ||
572 | |||
573 | RDEPENDS:${PN}-moxa += "${PN}-moxa-license" | ||
574 | |||
575 | # For radeon | ||
576 | |||
577 | LICENSE:${PN}-radeon = "Firmware-radeon" | ||
578 | LICENSE:${PN}-radeon-license = "Firmware-radeon" | ||
579 | |||
580 | FILES:${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon" | ||
581 | FILES:${PN}-radeon = " \ | ||
582 | ${nonarch_base_libdir}/firmware/radeon \ | ||
583 | " | ||
584 | |||
585 | RDEPENDS:${PN}-radeon += "${PN}-radeon-license" | ||
586 | |||
587 | # For amdgpu | ||
588 | LICENSE:${PN}-amdgpu = "Firmware-amdgpu" | ||
589 | LICENSE:${PN}-amdgpu-license = "Firmware-amdgpu" | ||
590 | |||
591 | FILES:${PN}-amdgpu-license = "${nonarch_base_libdir}/firmware/LICENSE.amdgpu" | ||
592 | FILES:${PN}-amdgpu = " \ | ||
593 | ${nonarch_base_libdir}/firmware/amdgpu \ | ||
594 | " | ||
595 | |||
596 | RDEPENDS:${PN}-amdgpu += "${PN}-amdgpu-license" | ||
597 | |||
598 | # For lontium | ||
599 | LICENSE:${PN}-lt9611uxc = "Firmware-Lontium" | ||
600 | |||
601 | FILES:${PN}-lontium-license = "${nonarch_base_libdir}/firmware/LICENSE.Lontium" | ||
602 | FILES:${PN}-lt9611uxc = "${nonarch_base_libdir}/firmware/lt9611uxc_fw.bin" | ||
603 | |||
604 | # For marvell | ||
605 | LICENSE:${PN}-pcie8897 = "Firmware-Marvell" | ||
606 | LICENSE:${PN}-pcie8997 = "Firmware-Marvell" | ||
607 | LICENSE:${PN}-sd8686 = "Firmware-Marvell" | ||
608 | LICENSE:${PN}-sd8688 = "Firmware-Marvell" | ||
609 | LICENSE:${PN}-sd8787 = "Firmware-Marvell" | ||
610 | LICENSE:${PN}-sd8797 = "Firmware-Marvell" | ||
611 | LICENSE:${PN}-sd8801 = "Firmware-Marvell" | ||
612 | LICENSE:${PN}-sd8887 = "Firmware-Marvell" | ||
613 | LICENSE:${PN}-sd8897 = "Firmware-Marvell" | ||
614 | LICENSE:${PN}-sd8997 = "Firmware-Marvell" | ||
615 | LICENSE:${PN}-usb8997 = "Firmware-Marvell" | ||
616 | LICENSE:${PN}-marvell-license = "Firmware-Marvell" | ||
617 | |||
618 | FILES:${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell" | ||
619 | FILES:${PN}-pcie8897 = " \ | ||
620 | ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \ | ||
621 | " | ||
622 | FILES:${PN}-pcie8997 = " \ | ||
623 | ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \ | ||
624 | ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \ | ||
625 | ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \ | ||
626 | " | ||
627 | FILES:${PN}-sd8686 = " \ | ||
628 | ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \ | ||
629 | ${nonarch_base_libdir}/firmware/sd8686* \ | ||
630 | " | ||
631 | FILES:${PN}-sd8688 = " \ | ||
632 | ${nonarch_base_libdir}/firmware/libertas/sd8688* \ | ||
633 | ${nonarch_base_libdir}/firmware/mrvl/sd8688* \ | ||
634 | " | ||
635 | FILES:${PN}-sd8787 = " \ | ||
636 | ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \ | ||
637 | " | ||
638 | FILES:${PN}-sd8797 = " \ | ||
639 | ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \ | ||
640 | " | ||
641 | FILES:${PN}-sd8801 = " \ | ||
642 | ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \ | ||
643 | " | ||
644 | FILES:${PN}-sd8887 = " \ | ||
645 | ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \ | ||
646 | " | ||
647 | FILES:${PN}-sd8897 = " \ | ||
648 | ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \ | ||
649 | " | ||
650 | do_install:append() { | ||
651 | # The kernel 5.6.x driver still uses the old name, provide a symlink for | ||
652 | # older kernels | ||
653 | ln -fs sdsd8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sd8997_uapsta.bin | ||
654 | } | ||
655 | FILES:${PN}-sd8997 = " \ | ||
656 | ${nonarch_base_libdir}/firmware/mrvl/sd8997_uapsta.bin \ | ||
657 | ${nonarch_base_libdir}/firmware/mrvl/sdsd8997_combo_v4.bin \ | ||
658 | " | ||
659 | FILES:${PN}-usb8997 = " \ | ||
660 | ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \ | ||
661 | " | ||
662 | |||
663 | RDEPENDS:${PN}-sd8686 += "${PN}-marvell-license" | ||
664 | RDEPENDS:${PN}-sd8688 += "${PN}-marvell-license" | ||
665 | RDEPENDS:${PN}-sd8787 += "${PN}-marvell-license" | ||
666 | RDEPENDS:${PN}-sd8797 += "${PN}-marvell-license" | ||
667 | RDEPENDS:${PN}-sd8801 += "${PN}-marvell-license" | ||
668 | RDEPENDS:${PN}-sd8887 += "${PN}-marvell-license" | ||
669 | RDEPENDS:${PN}-sd8897 += "${PN}-marvell-license" | ||
670 | RDEPENDS:${PN}-sd8997 += "${PN}-marvell-license" | ||
671 | RDEPENDS:${PN}-usb8997 += "${PN}-marvell-license" | ||
672 | |||
673 | # For netronome | ||
674 | LICENSE:${PN}-netronome = "Firmware-netronome" | ||
675 | |||
676 | FILES:${PN}-netronome-license = " \ | ||
677 | ${nonarch_base_libdir}/firmware/LICENCE.Netronome \ | ||
678 | " | ||
679 | FILES:${PN}-netronome = " \ | ||
680 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \ | ||
681 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \ | ||
682 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \ | ||
683 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \ | ||
684 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0058-0011_2x40.nffw \ | ||
685 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0058-0012_2x40.nffw \ | ||
686 | ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0078-0011_1x100.nffw \ | ||
687 | ${nonarch_base_libdir}/firmware/netronome/bpf \ | ||
688 | ${nonarch_base_libdir}/firmware/netronome/flower \ | ||
689 | ${nonarch_base_libdir}/firmware/netronome/nic \ | ||
690 | ${nonarch_base_libdir}/firmware/netronome/nic-sriov \ | ||
691 | " | ||
692 | |||
693 | RDEPENDS:${PN}-netronome += "${PN}-netronome-license" | ||
694 | |||
695 | # For NXP | ||
696 | LICENSE:${PN}-nxp8987-sdio = "Firmware-nxp" | ||
697 | LICENSE:${PN}-nxp8997-common = "Firmware-nxp" | ||
698 | LICENSE:${PN}-nxp8997-pcie = "Firmware-nxp" | ||
699 | LICENSE:${PN}-nxp8997-sdio = "Firmware-nxp" | ||
700 | LICENSE:${PN}-nxp9098-common = "Firmware-nxp" | ||
701 | LICENSE:${PN}-nxp9098-pcie = "Firmware-nxp" | ||
702 | LICENSE:${PN}-nxp9098-sdio = "Firmware-nxp" | ||
703 | LICENSE:${PN}-nxpiw416-sdio = "Firmware-nxp" | ||
704 | LICENSE:${PN}-nxpiw612-sdio = "Firmware-nxp" | ||
705 | LICENSE:${PN}-nxp-license = "Firmware-nxp" | ||
706 | |||
707 | FILES:${PN}-nxp8987-sdio = "${nonarch_base_libdir}/firmware/nxp/*8987*" | ||
708 | FILES:${PN}-nxp8997-common = " \ | ||
709 | ${nonarch_base_libdir}/firmware/nxp/uartuart8997_bt_v4.bin \ | ||
710 | ${nonarch_base_libdir}/firmware/nxp/helper_uart_3000000.bin \ | ||
711 | " | ||
712 | ALLOW_EMPTY:${PN}-nxp8997-pcie = "1" | ||
713 | ALLOW_EMPTY:${PN}-nxp8997-sdio = "1" | ||
714 | FILES:${PN}-nxp9098-common = "${nonarch_base_libdir}/firmware/nxp/uartuart9098_bt_v1.bin" | ||
715 | ALLOW_EMPTY:${PN}-nxp9098-pcie = "1" | ||
716 | ALLOW_EMPTY:${PN}-nxp9098-sdio = "1" | ||
717 | FILES:${PN}-nxpiw416-sdio = "${nonarch_base_libdir}/firmware/nxp/*iw416*" | ||
718 | FILES:${PN}-nxpiw612-sdio = "${nonarch_base_libdir}/firmware/nxp/uartspi_n61x_v1.bin.se" | ||
719 | FILES:${PN}-nxp-license = "${nonarch_base_libdir}/firmware/LICENSE.nxp" | ||
720 | |||
721 | RDEPENDS:${PN}-nxp8987-sdio += "${PN}-nxp-license" | ||
722 | RDEPENDS:${PN}-nxp8997-common += "${PN}-nxp-license" | ||
723 | RDEPENDS:${PN}-nxp8997-pcie += "${PN}-nxp8997-common" | ||
724 | RDEPENDS:${PN}-nxp8997-sdio += "${PN}-nxp8997-common" | ||
725 | RDEPENDS:${PN}-nxp9098-common += "${PN}-nxp-license" | ||
726 | RDEPENDS:${PN}-nxp9098-pcie += "${PN}-nxp9098-common" | ||
727 | RDEPENDS:${PN}-nxp9098-sdio += "${PN}-nxp9098-common" | ||
728 | RDEPENDS:${PN}-nxpiw416-sdio += "${PN}-nxp-license" | ||
729 | RDEPENDS:${PN}-nxpiw612-sdio += "${PN}-nxp-license" | ||
730 | |||
731 | # For nxp-mc | ||
732 | LICENSE:${PN}-nxp-mc = "Firmware-nxp_mc_firmware" | ||
733 | LICENSE:${PN}-nxp-mc-license = "Firmware-nxp_mc_firmware" | ||
734 | |||
735 | FILES:${PN}-nxp-mc= "${nonarch_base_libdir}/firmware/dpaa2/mc/*" | ||
736 | FILES:${PN}-nxp-mc-license = " \ | ||
737 | ${nonarch_base_libdir}/firmware/LICENSE.nxp_mc_firmware \ | ||
738 | " | ||
739 | RDEPENDS:${PN}-nxp-mc += "${PN}-nxp-mc-license" | ||
740 | |||
741 | # For Nvidia | ||
742 | LICENSE:${PN}-nvidia-gpu = "Firmware-nvidia" | ||
743 | LICENSE:${PN}-nvidia-tegra = "Firmware-nvidia" | ||
744 | LICENSE:${PN}-nvidia-tegra-k1 = "Firmware-nvidia" | ||
745 | LICENSE:${PN}-nvidia-license = "Firmware-nvidia" | ||
746 | |||
747 | FILES:${PN}-nvidia-gpu = "${nonarch_base_libdir}/firmware/nvidia" | ||
748 | FILES:${PN}-nvidia-tegra = " \ | ||
749 | ${nonarch_base_libdir}/firmware/nvidia/tegra* \ | ||
750 | ${nonarch_base_libdir}/firmware/nvidia/gm20b \ | ||
751 | ${nonarch_base_libdir}/firmware/nvidia/gp10b \ | ||
752 | " | ||
753 | FILES:${PN}-nvidia-tegra-k1 = " \ | ||
754 | ${nonarch_base_libdir}/firmware/nvidia/tegra124 \ | ||
755 | ${nonarch_base_libdir}/firmware/nvidia/gk20a \ | ||
756 | " | ||
757 | FILES:${PN}-nvidia-license = "${nonarch_base_libdir}/firmware/LICENCE.nvidia" | ||
758 | |||
759 | RDEPENDS:${PN}-nvidia-gpu += "${PN}-nvidia-license" | ||
760 | RDEPENDS:${PN}-nvidia-tegra += "${PN}-nvidia-license" | ||
761 | RDEPENDS:${PN}-nvidia-tegra-k1 += "${PN}-nvidia-license" | ||
762 | |||
763 | # For OLPC | ||
764 | LICENSE:${PN}-olpc = "Firmware-OLPC" | ||
765 | LICENSE:${PN}-olpc-license = "Firmware-OLPC" | ||
766 | |||
767 | FILES:${PN}-olpc = " \ | ||
768 | ${nonarch_base_libdir}/firmware/libertas/lbtf_sdio.bin \ | ||
769 | ${nonarch_base_libdir}/firmware/lbtf_usb.bin \ | ||
770 | ${nonarch_base_libdir}/firmware/libertas/usb8388_olpc.bin \ | ||
771 | " | ||
772 | FILES:${PN}-olpc-license = "${nonarch_base_libdir}/firmware/LICENCE.OLPC" | ||
773 | |||
774 | RDEPENDS:${PN}-olpc += "${PN}-olpc-license" | ||
775 | |||
776 | # For phanfw | ||
777 | LICENSE:${PN}-phanfw = "Firmware-phanfw" | ||
778 | LICENSE:${PN}-phanfw-license = "Firmware-phanfw" | ||
779 | |||
780 | FILES:${PN}-phanfw = "${nonarch_base_libdir}/firmware/phanfw.bin" | ||
781 | FILES:${PN}-phanfw-license = "${nonarch_base_libdir}/firmware/LICENCE.phanfw" | ||
782 | |||
783 | RDEPENDS:${PN}-phanfw += "${PN}-phanfw-license" | ||
784 | |||
785 | # For PowerVR | ||
786 | LICENSE:${PN}-powervr = "Firmware-powervr" | ||
787 | LICENSE:${PN}-powervr-license = "Firmware-powervr" | ||
788 | |||
789 | FILES:${PN}-powervr = "${nonarch_base_libdir}/firmware/powervr" | ||
790 | FILES:${PN}-powervr-license = "${nonarch_base_libdir}/firmware/LICENSE.powervr" | ||
791 | |||
792 | RDEPENDS:${PN}-powervr += "${PN}-powervr-license" | ||
793 | |||
794 | # For qla2xxx | ||
795 | LICENSE:${PN}-qla2xxx = "Firmware-qla2xxx" | ||
796 | LICENSE:${PN}-qla2xxx-license = "Firmware-qla2xxx" | ||
797 | |||
798 | FILES:${PN}-qla2xxx = "${nonarch_base_libdir}/firmware/ql2*" | ||
799 | FILES:${PN}-qla2xxx-license = "${nonarch_base_libdir}/firmware/LICENCE.qla2xxx" | ||
800 | |||
801 | RDEPENDS:${PN}-qla2xxx += "${PN}-qla2xxx-license" | ||
802 | |||
803 | # For RSI RS911x WiFi | ||
804 | LICENSE:${PN}-rs9113 = "WHENCE" | ||
805 | LICENSE:${PN}-rs9116 = "WHENCE" | ||
806 | |||
807 | FILES:${PN}-rs9113 = " ${nonarch_base_libdir}/firmware/rsi/rs9113*.rps " | ||
808 | FILES:${PN}-rs9116 = " ${nonarch_base_libdir}/firmware/rsi/rs9116*.rps " | ||
809 | |||
810 | RDEPENDS:${PN}-rs9113 += "${PN}-whence-license" | ||
811 | RDEPENDS:${PN}-rs9116 += "${PN}-whence-license" | ||
812 | |||
813 | # For rtl | ||
814 | LICENSE:${PN}-rtl8188 = "Firmware-rtlwifi_firmware" | ||
815 | LICENSE:${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" | ||
816 | LICENSE:${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" | ||
817 | LICENSE:${PN}-rtl8192su = "Firmware-rtlwifi_firmware" | ||
818 | LICENSE:${PN}-rtl8723 = "Firmware-rtlwifi_firmware" | ||
819 | LICENSE:${PN}-rtl8761 = "Firmware-rtlwifi_firmware" | ||
820 | LICENSE:${PN}-rtl8821 = "Firmware-rtlwifi_firmware" | ||
821 | LICENSE:${PN}-rtl8822 = "Firmware-rtlwifi_firmware" | ||
822 | LICENSE:${PN}-rtl-license = "Firmware-rtlwifi_firmware" | ||
823 | LICENSE:${PN}-rtl-nic = "WHENCE" | ||
824 | LICENSE:${PN}-rtl8168 = "WHENCE" | ||
825 | |||
826 | FILES:${PN}-rtl-license = " \ | ||
827 | ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \ | ||
828 | " | ||
829 | FILES:${PN}-rtl8188 = " \ | ||
830 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \ | ||
831 | " | ||
832 | FILES:${PN}-rtl8192cu = " \ | ||
833 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \ | ||
834 | " | ||
835 | FILES:${PN}-rtl8192ce = " \ | ||
836 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \ | ||
837 | " | ||
838 | FILES:${PN}-rtl8192su = " \ | ||
839 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \ | ||
840 | " | ||
841 | FILES:${PN}-rtl8723 = " \ | ||
842 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \ | ||
843 | " | ||
844 | FILES:${PN}-rtl8821 = " \ | ||
845 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \ | ||
846 | ${nonarch_base_libdir}/firmware/rtw88/rtw8821*.bin \ | ||
847 | " | ||
848 | FILES:${PN}-rtl8761 = " \ | ||
849 | ${nonarch_base_libdir}/firmware/rtl_bt/rtl8761*.bin \ | ||
850 | " | ||
851 | FILES:${PN}-rtl8168 = " \ | ||
852 | ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \ | ||
853 | " | ||
854 | FILES:${PN}-rtl8822 = " \ | ||
855 | ${nonarch_base_libdir}/firmware/rtl_bt/rtl8822*.bin \ | ||
856 | ${nonarch_base_libdir}/firmware/rtw88/rtw8822*.bin \ | ||
857 | ${nonarch_base_libdir}/firmware/rtlwifi/rtl8822*.bin \ | ||
858 | " | ||
859 | FILES:${PN}-rtl-nic = " \ | ||
860 | ${nonarch_base_libdir}/firmware/rtl_nic/*.fw \ | ||
861 | " | ||
862 | |||
863 | RDEPENDS:${PN}-rtl8188 += "${PN}-rtl-license" | ||
864 | RDEPENDS:${PN}-rtl8192ce += "${PN}-rtl-license" | ||
865 | RDEPENDS:${PN}-rtl8192cu += "${PN}-rtl-license" | ||
866 | RDEPENDS:${PN}-rtl8192su = "${PN}-rtl-license" | ||
867 | RDEPENDS:${PN}-rtl8723 += "${PN}-rtl-license" | ||
868 | RDEPENDS:${PN}-rtl8821 += "${PN}-rtl-license" | ||
869 | RDEPENDS:${PN}-rtl8761 += "${PN}-rtl-license" | ||
870 | RDEPENDS:${PN}-rtl8822 += "${PN}-rtl-license" | ||
871 | RDEPENDS:${PN}-rtl8168 += "${PN}-whence-license" | ||
872 | RDEPENDS:${PN}-rtl-nic += "${PN}-whence-license" | ||
873 | |||
874 | # For TI wl1251 | ||
875 | LICENSE:${PN}-wl1251 = "Firmware-wl1251" | ||
876 | LICENSE:${PN}-wl1251-license = "Firmware-wl1251" | ||
877 | |||
878 | FILES:${PN}-wl1251 = " \ | ||
879 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl1251-fw.bin \ | ||
880 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl1251-nvs.bin \ | ||
881 | " | ||
882 | FILES:${PN}-wl1251-license = "${nonarch_base_libdir}/firmware/LICENCE.wl1251" | ||
883 | |||
884 | RDEPENDS:${PN}-wl1251 += "${PN}-wl1251-license" | ||
885 | |||
886 | # For ti-connectivity | ||
887 | LICENSE:${PN}-wlcommon = "Firmware-ti-connectivity" | ||
888 | LICENSE:${PN}-wl12xx = "Firmware-ti-connectivity" | ||
889 | LICENSE:${PN}-wl18xx = "Firmware-ti-connectivity" | ||
890 | LICENSE:${PN}-ti-connectivity-license = "Firmware-ti-connectivity" | ||
891 | |||
892 | FILES:${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity" | ||
893 | # wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to | ||
894 | # wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c | ||
895 | # and drivers/net/wireless/ti/wlcore/spi.c. | ||
896 | # While they're optional and actually only used to override the MAC | ||
897 | # address on wl18xx, driver loading will delay (by udev timout - 60s) | ||
898 | # if not there. So let's make it available always. Because it's a | ||
899 | # symlink, both need to go to wlcommon. | ||
900 | FILES:${PN}-wlcommon = " \ | ||
901 | ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \ | ||
902 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \ | ||
903 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \ | ||
904 | " | ||
905 | FILES:${PN}-wl12xx = " \ | ||
906 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \ | ||
907 | " | ||
908 | FILES:${PN}-wl18xx = " \ | ||
909 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \ | ||
910 | " | ||
911 | |||
912 | RDEPENDS:${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" | ||
913 | RDEPENDS:${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" | ||
914 | |||
915 | # For ti-keystone | ||
916 | LICENSE:${PN}-ti-keystone = "Firmware-ti-keystone" | ||
917 | LICENSE:${PN}-ti-keystone-license = "Firmware-ti-keystone" | ||
918 | |||
919 | FILES:${PN}-ti-keystone = "${nonarch_base_libdir}/firmware/ti-keystone/*" | ||
920 | FILES:${PN}-ti-keystone-license = " \ | ||
921 | ${nonarch_base_libdir}/firmware/LICENCE.ti-keystone \ | ||
922 | " | ||
923 | RDEPENDS:${PN}-ti-keystone += "${PN}-ti-keystone-license" | ||
924 | |||
925 | # For vt6656 | ||
926 | LICENSE:${PN}-vt6656 = "Firmware-via_vt6656" | ||
927 | LICENSE:${PN}-vt6656-license = "Firmware-via_vt6656" | ||
928 | |||
929 | FILES:${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656" | ||
930 | FILES:${PN}-vt6656 = " \ | ||
931 | ${nonarch_base_libdir}/firmware/vntwusb.fw \ | ||
932 | " | ||
933 | |||
934 | RDEPENDS:${PN}-vt6656 = "${PN}-vt6656-license" | ||
935 | |||
936 | # For xc4000 | ||
937 | LICENSE:${PN}-xc4000 = "Firmware-xc4000" | ||
938 | LICENSE:${PN}-xc4000-license = "Firmware-xc4000" | ||
939 | |||
940 | FILES:${PN}-xc4000 = "${nonarch_base_libdir}/firmware/dvb-fe-xc4000-1.4.1.fw" | ||
941 | FILES:${PN}-xc4000-license = "${nonarch_base_libdir}/firmware/LICENCE.xc4000" | ||
942 | |||
943 | RDEPENDS:${PN}-xc4000 += "${PN}-xc4000-license" | ||
944 | |||
945 | # For xc5000 | ||
946 | LICENSE:${PN}-xc5000 = "Firmware-xc5000" | ||
947 | LICENSE:${PN}-xc5000-license = "Firmware-xc5000" | ||
948 | |||
949 | FILES:${PN}-xc5000 = "${nonarch_base_libdir}/firmware/dvb-fe-xc5000-1.6.114.fw" | ||
950 | FILES:${PN}-xc5000-license = "${nonarch_base_libdir}/firmware/LICENCE.xc5000" | ||
951 | |||
952 | RDEPENDS:${PN}-xc5000 += "${PN}-xc5000-license" | ||
953 | |||
954 | # For xc5000c | ||
955 | LICENSE:${PN}-xc5000c = "Firmware-xc5000c" | ||
956 | LICENSE:${PN}-xc5000c-license = "Firmware-xc5000c" | ||
957 | |||
958 | FILES:${PN}-xc5000c = " \ | ||
959 | ${nonarch_base_libdir}/firmware/dvb-fe-xc5000c-4.1.30.7.fw \ | ||
960 | " | ||
961 | FILES:${PN}-xc5000c-license = "${nonarch_base_libdir}/firmware/LICENCE.xc5000c" | ||
962 | |||
963 | RDEPENDS:${PN}-xc5000c += "${PN}-xc5000c-license" | ||
964 | |||
965 | # For broadcom | ||
966 | |||
967 | # for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e " \${PN}-$pkg \\"; done | sort -u | ||
968 | |||
969 | LICENSE:${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" | ||
970 | FILES:${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx" | ||
971 | |||
972 | # for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES:\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES | ||
973 | |||
974 | FILES:${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw" | ||
975 | FILES:${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw" | ||
976 | FILES:${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin" | ||
977 | FILES:${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin" | ||
978 | FILES:${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin" | ||
979 | FILES:${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*" | ||
980 | FILES:${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin" | ||
981 | FILES:${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin" | ||
982 | FILES:${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin \ | ||
983 | ${nonarch_base_libdir}/firmware/cypress/cyfmac4339-sdio.bin \ | ||
984 | " | ||
985 | FILES:${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin" | ||
986 | FILES:${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin" | ||
987 | FILES:${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin" | ||
988 | FILES:${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin" | ||
989 | FILES:${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \ | ||
990 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \ | ||
991 | " | ||
992 | FILES:${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*" | ||
993 | FILES:${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.* \ | ||
994 | ${nonarch_base_libdir}/firmware/cypress/cyfmac43455-sdio.* \ | ||
995 | " | ||
996 | FILES:${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin" | ||
997 | FILES:${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin" | ||
998 | FILES:${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.* \ | ||
999 | ${nonarch_base_libdir}/firmware/cypress/cyfmac4356-sdio.* \ | ||
1000 | " | ||
1001 | FILES:${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin" | ||
1002 | FILES:${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin \ | ||
1003 | ${nonarch_base_libdir}/firmware/cypress/cyfmac43570-pcie.bin \ | ||
1004 | " | ||
1005 | FILES:${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin" | ||
1006 | FILES:${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \ | ||
1007 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \ | ||
1008 | " | ||
1009 | FILES:${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin" | ||
1010 | FILES:${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin" | ||
1011 | FILES:${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin" | ||
1012 | |||
1013 | # for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE:\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done | ||
1014 | # Currently 1st one and last 6 have cypress LICENSE | ||
1015 | |||
1016 | LICENSE:${PN}-bcm43xx = "Firmware-broadcom_bcm43xx" | ||
1017 | RDEPENDS:${PN}-bcm43xx += "${PN}-broadcom-license" | ||
1018 | LICENSE:${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx" | ||
1019 | RDEPENDS:${PN}-bcm43xx-hdr += "${PN}-broadcom-license" | ||
1020 | LICENSE:${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx" | ||
1021 | RDEPENDS:${PN}-bcm4329-fullmac += "${PN}-broadcom-license" | ||
1022 | LICENSE:${PN}-bcm43236b = "Firmware-broadcom_bcm43xx" | ||
1023 | RDEPENDS:${PN}-bcm43236b += "${PN}-broadcom-license" | ||
1024 | LICENSE:${PN}-bcm4329 = "Firmware-broadcom_bcm43xx" | ||
1025 | RDEPENDS:${PN}-bcm4329 += "${PN}-broadcom-license" | ||
1026 | LICENSE:${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" | ||
1027 | RDEPENDS:${PN}-bcm4330 += "${PN}-broadcom-license" | ||
1028 | LICENSE:${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" | ||
1029 | RDEPENDS:${PN}-bcm4334 += "${PN}-broadcom-license" | ||
1030 | LICENSE:${PN}-bcm4335 = "Firmware-broadcom_bcm43xx" | ||
1031 | RDEPENDS:${PN}-bcm4335 += "${PN}-broadcom-license" | ||
1032 | LICENSE:${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" | ||
1033 | RDEPENDS:${PN}-bcm4339 += "${PN}-broadcom-license" | ||
1034 | LICENSE:${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx" | ||
1035 | RDEPENDS:${PN}-bcm43241b0 += "${PN}-broadcom-license" | ||
1036 | LICENSE:${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx" | ||
1037 | RDEPENDS:${PN}-bcm43241b4 += "${PN}-broadcom-license" | ||
1038 | LICENSE:${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx" | ||
1039 | RDEPENDS:${PN}-bcm43241b5 += "${PN}-broadcom-license" | ||
1040 | LICENSE:${PN}-bcm43242a = "Firmware-broadcom_bcm43xx" | ||
1041 | RDEPENDS:${PN}-bcm43242a += "${PN}-broadcom-license" | ||
1042 | LICENSE:${PN}-bcm43143 = "Firmware-broadcom_bcm43xx" | ||
1043 | RDEPENDS:${PN}-bcm43143 += "${PN}-broadcom-license" | ||
1044 | LICENSE:${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx" | ||
1045 | RDEPENDS:${PN}-bcm43430a0 += "${PN}-broadcom-license" | ||
1046 | LICENSE:${PN}-bcm43455 = "Firmware-broadcom_bcm43xx" | ||
1047 | RDEPENDS:${PN}-bcm43455 += "${PN}-broadcom-license" | ||
1048 | LICENSE:${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx" | ||
1049 | RDEPENDS:${PN}-bcm4350c2 += "${PN}-broadcom-license" | ||
1050 | LICENSE:${PN}-bcm4350 = "Firmware-broadcom_bcm43xx" | ||
1051 | RDEPENDS:${PN}-bcm4350 += "${PN}-broadcom-license" | ||
1052 | LICENSE:${PN}-bcm4356 = "Firmware-broadcom_bcm43xx" | ||
1053 | RDEPENDS:${PN}-bcm4356 += "${PN}-broadcom-license" | ||
1054 | LICENSE:${PN}-bcm43569 = "Firmware-broadcom_bcm43xx" | ||
1055 | RDEPENDS:${PN}-bcm43569 += "${PN}-broadcom-license" | ||
1056 | LICENSE:${PN}-bcm43570 = "Firmware-broadcom_bcm43xx" | ||
1057 | RDEPENDS:${PN}-bcm43570 += "${PN}-broadcom-license" | ||
1058 | LICENSE:${PN}-bcm4358 = "Firmware-broadcom_bcm43xx" | ||
1059 | RDEPENDS:${PN}-bcm4358 += "${PN}-broadcom-license" | ||
1060 | LICENSE:${PN}-bcm43602 = "Firmware-broadcom_bcm43xx" | ||
1061 | RDEPENDS:${PN}-bcm43602 += "${PN}-broadcom-license" | ||
1062 | LICENSE:${PN}-bcm4366b = "Firmware-broadcom_bcm43xx" | ||
1063 | RDEPENDS:${PN}-bcm4366b += "${PN}-broadcom-license" | ||
1064 | LICENSE:${PN}-bcm4366c = "Firmware-broadcom_bcm43xx" | ||
1065 | RDEPENDS:${PN}-bcm4366c += "${PN}-broadcom-license" | ||
1066 | LICENSE:${PN}-bcm4371 = "Firmware-broadcom_bcm43xx" | ||
1067 | RDEPENDS:${PN}-bcm4371 += "${PN}-broadcom-license" | ||
1068 | |||
1069 | # For broadcom cypress | ||
1070 | |||
1071 | LICENSE:${PN}-cypress-license = "Firmware-cypress" | ||
1072 | FILES:${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress" | ||
1073 | |||
1074 | FILES:${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd" | ||
1075 | FILES:${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.* \ | ||
1076 | ${nonarch_base_libdir}/firmware/cypress/cyfmac43340-sdio.*" | ||
1077 | FILES:${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.* \ | ||
1078 | ${nonarch_base_libdir}/firmware/cypress/cyfmac43362-sdio.*" | ||
1079 | FILES:${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.* \ | ||
1080 | ${nonarch_base_libdir}/firmware/cypress/cyfmac43430-sdio.*" | ||
1081 | FILES:${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin \ | ||
1082 | ${nonarch_base_libdir}/firmware/cypress/cyfmac4354-sdio.bin \ | ||
1083 | " | ||
1084 | FILES:${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.* \ | ||
1085 | ${nonarch_base_libdir}/firmware/cypress/cyfmac4356-pcie.* \ | ||
1086 | " | ||
1087 | FILES:${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \ | ||
1088 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \ | ||
1089 | ${nonarch_base_libdir}/firmware/cypress/cyfmac4373-sdio.bin \ | ||
1090 | ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.clm_blob \ | ||
1091 | ${nonarch_base_libdir}/firmware/cypress/cyfmac4373-sdio.clm_blob \ | ||
1092 | " | ||
1093 | |||
1094 | LICENSE:${PN}-bcm-0bb4-0306 = "Firmware-cypress" | ||
1095 | RDEPENDS:${PN}-bcm-0bb4-0306 += "${PN}-cypress-license" | ||
1096 | LICENSE:${PN}-bcm43340 = "Firmware-cypress" | ||
1097 | RDEPENDS:${PN}-bcm43340 += "${PN}-cypress-license" | ||
1098 | LICENSE:${PN}-bcm43362 = "Firmware-cypress" | ||
1099 | RDEPENDS:${PN}-bcm43362 += "${PN}-cypress-license" | ||
1100 | LICENSE:${PN}-bcm43430 = "Firmware-cypress" | ||
1101 | RDEPENDS:${PN}-bcm43430 += "${PN}-cypress-license" | ||
1102 | LICENSE:${PN}-bcm4354 = "Firmware-cypress" | ||
1103 | RDEPENDS:${PN}-bcm4354 += "${PN}-cypress-license" | ||
1104 | LICENSE:${PN}-bcm4356-pcie = "Firmware-cypress" | ||
1105 | RDEPENDS:${PN}-bcm4356-pcie += "${PN}-cypress-license" | ||
1106 | LICENSE:${PN}-bcm4373 = "Firmware-cypress" | ||
1107 | RDEPENDS:${PN}-bcm4373 += "${PN}-cypress-license" | ||
1108 | |||
1109 | # For Broadcom bnx2 | ||
1110 | # | ||
1111 | # which is a separate case to the other Broadcom firmwares since its | ||
1112 | # license is contained in the shared WHENCE file. | ||
1113 | |||
1114 | LICENSE:${PN}-bnx2 = "WHENCE" | ||
1115 | LICENSE:${PN}-whence-license = "WHENCE" | ||
1116 | |||
1117 | FILES:${PN}-bnx2 = " \ | ||
1118 | ${nonarch_base_libdir}/firmware/bnx2/bnx2-mips*.fw \ | ||
1119 | ${nonarch_base_libdir}/firmware/bnx2/bnx2-rv2p*.fw \ | ||
1120 | " | ||
1121 | FILES:${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE" | ||
1122 | |||
1123 | RDEPENDS:${PN}-bnx2 += "${PN}-whence-license" | ||
1124 | RPROVIDES:${PN}-bnx2 = "${PN}-bnx2-mips" | ||
1125 | |||
1126 | LICENSE:${PN}-bnx2x = "WHENCE" | ||
1127 | |||
1128 | FILES:${PN}-bnx2x = "${nonarch_base_libdir}/firmware/bnx2x/bnx2x*.fw" | ||
1129 | |||
1130 | RDEPENDS:${PN}-bnx2x += "${PN}-whence-license" | ||
1131 | |||
1132 | # For cirrus | ||
1133 | LICENSE:${PN}-cirrus = "Firmware-cirrus" | ||
1134 | LICENSE:${PN}-cirrus-license = "Firmware-cirrus" | ||
1135 | |||
1136 | FILES:${PN}-cirrus = "${nonarch_base_libdir}/firmware/cirrus/*" | ||
1137 | FILES:${PN}-cirrus-license = "${nonarch_base_libdir}/firmware/LICENSE.cirrus" | ||
1138 | |||
1139 | RDEPENDS:${PN}-cirrus += "${PN}-cirrus-license" | ||
1140 | |||
1141 | # For cnm | ||
1142 | LICENSE:${PN}-cnm = "Firmware-cnm" | ||
1143 | LICENSE:${PN}-cnm-license = "Firmware-cnm" | ||
1144 | |||
1145 | FILES:${PN}-cnm = "${nonarch_base_libdir}/firmware/cnm/wave521c_k3_codec_fw.bin" | ||
1146 | FILES:${PN}-cnm-license = "${nonarch_base_libdir}/firmware/LICENCE.cnm" | ||
1147 | |||
1148 | RDEPENDS:${PN}-cnm += "${PN}-cnm-license" | ||
1149 | |||
1150 | # For imx-sdma | ||
1151 | LICENSE:${PN}-imx-sdma-imx6q = "Firmware-imx-sdma_firmware" | ||
1152 | LICENSE:${PN}-imx-sdma-imx7d = "Firmware-imx-sdma_firmware" | ||
1153 | LICENSE:${PN}-imx-sdma-license = "Firmware-imx-sdma_firmware" | ||
1154 | |||
1155 | FILES:${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin" | ||
1156 | |||
1157 | RPROVIDES:${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" | ||
1158 | RREPLACES:${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" | ||
1159 | RCONFLICTS:${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" | ||
1160 | |||
1161 | FILES:${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin" | ||
1162 | |||
1163 | FILES:${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware" | ||
1164 | |||
1165 | RDEPENDS:${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license" | ||
1166 | RDEPENDS:${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license" | ||
1167 | |||
1168 | # For iwlwifi | ||
1169 | LICENSE:${PN}-iwlwifi = "Firmware-iwlwifi_firmware" | ||
1170 | LICENSE:${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" | ||
1171 | LICENSE:${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" | ||
1172 | LICENSE:${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" | ||
1173 | LICENSE:${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" | ||
1174 | LICENSE:${PN}-iwlwifi-3160-10 = "Firmware-iwlwifi_firmware" | ||
1175 | LICENSE:${PN}-iwlwifi-3160-12 = "Firmware-iwlwifi_firmware" | ||
1176 | LICENSE:${PN}-iwlwifi-3160-13 = "Firmware-iwlwifi_firmware" | ||
1177 | LICENSE:${PN}-iwlwifi-3160-16 = "Firmware-iwlwifi_firmware" | ||
1178 | LICENSE:${PN}-iwlwifi-3160-17 = "Firmware-iwlwifi_firmware" | ||
1179 | LICENSE:${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" | ||
1180 | LICENSE:${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" | ||
1181 | LICENSE:${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" | ||
1182 | LICENSE:${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" | ||
1183 | LICENSE:${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" | ||
1184 | LICENSE:${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" | ||
1185 | LICENSE:${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" | ||
1186 | LICENSE:${PN}-iwlwifi-7260 = "Firmware-iwlwifi_firmware" | ||
1187 | LICENSE:${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" | ||
1188 | LICENSE:${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" | ||
1189 | LICENSE:${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" | ||
1190 | LICENSE:${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" | ||
1191 | LICENSE:${PN}-iwlwifi-9000 = "Firmware-iwlwifi_firmware" | ||
1192 | LICENSE:${PN}-iwlwifi-9260 = "Firmware-iwlwifi_firmware" | ||
1193 | LICENSE:${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" | ||
1194 | LICENSE:${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" | ||
1195 | |||
1196 | |||
1197 | FILES:${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware" | ||
1198 | FILES:${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode" | ||
1199 | FILES:${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode" | ||
1200 | FILES:${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode" | ||
1201 | FILES:${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode" | ||
1202 | FILES:${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode" | ||
1203 | FILES:${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode" | ||
1204 | FILES:${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode" | ||
1205 | FILES:${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode" | ||
1206 | FILES:${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode" | ||
1207 | FILES:${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode" | ||
1208 | FILES:${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode" | ||
1209 | FILES:${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode" | ||
1210 | FILES:${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode" | ||
1211 | FILES:${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode" | ||
1212 | FILES:${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode" | ||
1213 | FILES:${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode" | ||
1214 | FILES:${PN}-iwlwifi-7260 = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode" | ||
1215 | FILES:${PN}-iwlwifi-7265 = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode" | ||
1216 | FILES:${PN}-iwlwifi-7265d = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode" | ||
1217 | FILES:${PN}-iwlwifi-8000c = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode" | ||
1218 | FILES:${PN}-iwlwifi-8265 = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode" | ||
1219 | FILES:${PN}-iwlwifi-9000 = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode" | ||
1220 | FILES:${PN}-iwlwifi-9260 = "${nonarch_base_libdir}/firmware/iwlwifi-9260-*.ucode" | ||
1221 | FILES:${PN}-iwlwifi-misc = " \ | ||
1222 | ${nonarch_base_libdir}/firmware/iwlwifi-*.ucode \ | ||
1223 | ${nonarch_base_libdir}/firmware/iwlwifi-*.pnvm \ | ||
1224 | " | ||
1225 | |||
1226 | RDEPENDS:${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" | ||
1227 | RDEPENDS:${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" | ||
1228 | RDEPENDS:${PN}-iwlwifi-3160-8 = "${PN}-iwlwifi-license" | ||
1229 | RDEPENDS:${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" | ||
1230 | RDEPENDS:${PN}-iwlwifi-3160-10 = "${PN}-iwlwifi-license" | ||
1231 | RDEPENDS:${PN}-iwlwifi-3160-12 = "${PN}-iwlwifi-license" | ||
1232 | RDEPENDS:${PN}-iwlwifi-3160-13 = "${PN}-iwlwifi-license" | ||
1233 | RDEPENDS:${PN}-iwlwifi-3160-16 = "${PN}-iwlwifi-license" | ||
1234 | RDEPENDS:${PN}-iwlwifi-3160-17 = "${PN}-iwlwifi-license" | ||
1235 | RDEPENDS:${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" | ||
1236 | RDEPENDS:${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" | ||
1237 | RDEPENDS:${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" | ||
1238 | RDEPENDS:${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" | ||
1239 | RDEPENDS:${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" | ||
1240 | RDEPENDS:${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" | ||
1241 | RDEPENDS:${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" | ||
1242 | RDEPENDS:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-license" | ||
1243 | RDEPENDS:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" | ||
1244 | RDEPENDS:${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" | ||
1245 | RDEPENDS:${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" | ||
1246 | RDEPENDS:${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" | ||
1247 | RDEPENDS:${PN}-iwlwifi-9000 = "${PN}-iwlwifi-license" | ||
1248 | RDEPENDS:${PN}-iwlwifi-9260 = "${PN}-iwlwifi-license" | ||
1249 | RDEPENDS:${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" | ||
1250 | |||
1251 | # -iwlwifi-misc is a "catch all" package that includes all the iwlwifi | ||
1252 | # firmwares that are not already included in other -iwlwifi- packages. | ||
1253 | # -iwlwifi is a virtual package that depends upon all iwlwifi packages. | ||
1254 | # These are distinct in order to allow the -misc firmwares to be installed | ||
1255 | # without pulling in every other iwlwifi package. | ||
1256 | ALLOW_EMPTY:${PN}-iwlwifi = "1" | ||
1257 | ALLOW_EMPTY:${PN}-iwlwifi-misc = "1" | ||
1258 | |||
1259 | # Handle package updating for the newly merged iwlwifi groupings | ||
1260 | RPROVIDES:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" | ||
1261 | RREPLACES:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" | ||
1262 | RCONFLICTS:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" | ||
1263 | |||
1264 | RPROVIDES:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" | ||
1265 | RREPLACES:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" | ||
1266 | RCONFLICTS:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" | ||
1267 | |||
1268 | # For ibt | ||
1269 | LICENSE:${PN}-ibt-license = "Firmware-ibt_firmware" | ||
1270 | LICENSE:${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware" | ||
1271 | LICENSE:${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware" | ||
1272 | LICENSE:${PN}-ibt-11-5 = "Firmware-ibt_firmware" | ||
1273 | LICENSE:${PN}-ibt-12-16 = "Firmware-ibt_firmware" | ||
1274 | LICENSE:${PN}-ibt-17 = "Firmware-ibt_firmware" | ||
1275 | LICENSE:${PN}-ibt-20 = "Firmware-ibt_firmware" | ||
1276 | LICENSE:${PN}-ibt-misc = "Firmware-ibt_firmware" | ||
1277 | |||
1278 | FILES:${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware" | ||
1279 | FILES:${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq" | ||
1280 | FILES:${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq" | ||
1281 | FILES:${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc" | ||
1282 | FILES:${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc" | ||
1283 | FILES:${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc" | ||
1284 | FILES:${PN}-ibt-20 = "${nonarch_base_libdir}/firmware/intel/ibt-20-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-20-*.ddc" | ||
1285 | FILES:${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/intel/ibt-*" | ||
1286 | |||
1287 | RDEPENDS:${PN}-ibt-hw-37-7 = "${PN}-ibt-license" | ||
1288 | RDEPENDS:${PN}-ibt-hw-37.8 = "${PN}-ibt-license" | ||
1289 | RDEPENDS:${PN}-ibt-11-5 = "${PN}-ibt-license" | ||
1290 | RDEPENDS:${PN}-ibt-12-16 = "${PN}-ibt-license" | ||
1291 | RDEPENDS:${PN}-ibt-17 = "${PN}-ibt-license" | ||
1292 | RDEPENDS:${PN}-ibt-20 = "${PN}-ibt-license" | ||
1293 | RDEPENDS:${PN}-ibt-misc = "${PN}-ibt-license" | ||
1294 | |||
1295 | ALLOW_EMPTY:${PN}-ibt= "1" | ||
1296 | ALLOW_EMPTY:${PN}-ibt-misc = "1" | ||
1297 | |||
1298 | LICENSE:${PN}-i915 = "Firmware-i915" | ||
1299 | LICENSE:${PN}-i915-license = "Firmware-i915" | ||
1300 | FILES:${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915" | ||
1301 | FILES:${PN}-i915 = "${nonarch_base_libdir}/firmware/i915" | ||
1302 | RDEPENDS:${PN}-i915 = "${PN}-i915-license" | ||
1303 | |||
1304 | # For ice-enhanced | ||
1305 | LICENSE:${PN}-ice-enhanced = "Firmware-ice_enhanced" | ||
1306 | LICENSE:${PN}-ice-enhanced-license = "Firmware-ice_enhanced" | ||
1307 | |||
1308 | FILES:${PN}-ice-enhanced = " \ | ||
1309 | ${nonarch_base_libdir}/firmware/intel/ice/ddp-comms/* \ | ||
1310 | ${nonarch_base_libdir}/firmware/intel/ice/ddp-wireless_edge/* \ | ||
1311 | " | ||
1312 | FILES:${PN}-ice-enhanced-license = " \ | ||
1313 | ${nonarch_base_libdir}/firmware/LICENSE.ice_enhanced \ | ||
1314 | " | ||
1315 | RDEPENDS:${PN}-ice-enhanced = "${PN}-ice-enhanced-license" | ||
1316 | |||
1317 | LICENSE:${PN}-ice = "Firmware-ice" | ||
1318 | LICENSE:${PN}-ice-license = "Firmware-ice" | ||
1319 | FILES:${PN}-ice-license = "${nonarch_base_libdir}/firmware/LICENSE.ice" | ||
1320 | FILES:${PN}-ice = " \ | ||
1321 | ${nonarch_base_libdir}/firmware/intel/ice/ddp/* \ | ||
1322 | ${nonarch_base_libdir}/firmware/intel/ice/ddp-lag/* \ | ||
1323 | " | ||
1324 | RDEPENDS:${PN}-ice = "${PN}-ice-license" | ||
1325 | |||
1326 | FILES:${PN}-adsp-sst-license = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst" | ||
1327 | LICENSE:${PN}-adsp-sst = "Firmware-adsp_sst" | ||
1328 | LICENSE:${PN}-adsp-sst-license = "Firmware-adsp_sst" | ||
1329 | FILES:${PN}-adsp-sst = "${nonarch_base_libdir}/firmware/intel/dsp_fw*" | ||
1330 | RDEPENDS:${PN}-adsp-sst = "${PN}-adsp-sst-license" | ||
1331 | |||
1332 | # For QAT | ||
1333 | LICENSE:${PN}-qat = "Firmware-qat" | ||
1334 | LICENSE:${PN}-qat-license = "Firmware-qat" | ||
1335 | FILES:${PN}-qat-license = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware" | ||
1336 | FILES:${PN}-qat = "${nonarch_base_libdir}/firmware/qat*.bin" | ||
1337 | RDEPENDS:${PN}-qat = "${PN}-qat-license" | ||
1338 | |||
1339 | LICENSE:${PN}-qed = "WHENCE" | ||
1340 | FILES:${PN}-qed = "${nonarch_base_libdir}/firmware/qed/*" | ||
1341 | |||
1342 | # For QCOM VPU/GPU and SDM845 | ||
1343 | LICENSE:${PN}-qcom-license = "Firmware-qcom" | ||
1344 | LICENSE:${PN}-qcom-yamato-license = "Firmware-qcom-yamato" | ||
1345 | LICENSE:${PN}-qcom-venus-1.8 = "Firmware-qcom" | ||
1346 | LICENSE:${PN}-qcom-venus-4.2 = "Firmware-qcom" | ||
1347 | LICENSE:${PN}-qcom-venus-5.2 = "Firmware-qcom" | ||
1348 | LICENSE:${PN}-qcom-venus-5.4 = "Firmware-qcom" | ||
1349 | LICENSE:${PN}-qcom-venus-6.0 = "Firmware-qcom" | ||
1350 | LICENSE:${PN}-qcom-vpu-1.0 = "Firmware-qcom" | ||
1351 | LICENSE:${PN}-qcom-vpu-2.0 = "Firmware-qcom" | ||
1352 | LICENSE:${PN}-qcom-adreno-a2xx = "Firmware-qcom Firmware-qcom-yamato" | ||
1353 | LICENSE:${PN}-qcom-adreno-a3xx = "Firmware-qcom" | ||
1354 | LICENSE:${PN}-qcom-adreno-a4xx = "Firmware-qcom" | ||
1355 | LICENSE:${PN}-qcom-adreno-a530 = "Firmware-qcom" | ||
1356 | LICENSE:${PN}-qcom-adreno-a630 = "Firmware-qcom" | ||
1357 | LICENSE:${PN}-qcom-adreno-a650 = "Firmware-qcom" | ||
1358 | LICENSE:${PN}-qcom-adreno-a660 = "Firmware-qcom" | ||
1359 | LICENSE:${PN}-qcom-adreno-a702 = "Firmware-qcom" | ||
1360 | LICENSE:${PN}-qcom-apq8016-modem = "Firmware-qcom" | ||
1361 | LICENSE:${PN}-qcom-apq8016-wifi = "Firmware-qcom" | ||
1362 | LICENSE:${PN}-qcom-apq8096-audio = "Firmware-qcom" | ||
1363 | LICENSE:${PN}-qcom-apq8096-adreno = "Firmware-qcom" | ||
1364 | LICENSE:${PN}-qcom-apq8096-modem = "Firmware-qcom" | ||
1365 | LICENSE:${PN}-qcom-qcm2290-adreno = "Firmware-qcom" | ||
1366 | LICENSE:${PN}-qcom-qcm2290-audio = "Firmware-qcom" | ||
1367 | LICENSE:${PN}-qcom-qcm2290-modem = "Firmware-qcom" | ||
1368 | LICENSE:${PN}-qcom-qcm2290-wifi = "Firmware-qcom" | ||
1369 | LICENSE:${PN}-qcom-qrb4210-adreno = "Firmware-qcom" | ||
1370 | LICENSE:${PN}-qcom-qrb4210-audio = "Firmware-qcom" | ||
1371 | LICENSE:${PN}-qcom-qrb4210-compute = "Firmware-qcom" | ||
1372 | LICENSE:${PN}-qcom-qrb4210-modem = "Firmware-qcom" | ||
1373 | LICENSE:${PN}-qcom-qrb4210-wifi = "Firmware-qcom" | ||
1374 | LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "Firmware-qcom & Firmware-linaro" | ||
1375 | LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "Firmware-qcom" | ||
1376 | LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "Firmware-qcom" | ||
1377 | LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "Firmware-qcom" | ||
1378 | LICENSE:${PN}-qcom-sdm845-audio = "Firmware-qcom" | ||
1379 | LICENSE:${PN}-qcom-sdm845-adreno = "Firmware-qcom" | ||
1380 | LICENSE:${PN}-qcom-sdm845-compute = "Firmware-qcom" | ||
1381 | LICENSE:${PN}-qcom-sdm845-modem = "Firmware-qcom" | ||
1382 | LICENSE:${PN}-qcom-sdm845-thundercomm-db845c-sensors = "Firmware-qcom" | ||
1383 | LICENSE:${PN}-qcom-sm8250-audio = "Firmware-qcom" | ||
1384 | LICENSE:${PN}-qcom-sm8250-adreno = "Firmware-qcom" | ||
1385 | LICENSE:${PN}-qcom-sm8250-compute = "Firmware-qcom" | ||
1386 | LICENSE:${PN}-qcom-sm8250-thundercomm-rb5-sensors = "Firmware-qcom" | ||
1387 | |||
1388 | FILES:${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" | ||
1389 | FILES:${PN}-qcom-yamato-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom_yamato" | ||
1390 | FILES:${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*" | ||
1391 | FILES:${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*" | ||
1392 | FILES:${PN}-qcom-venus-5.2 = "${nonarch_base_libdir}/firmware/qcom/venus-5.2/*" | ||
1393 | FILES:${PN}-qcom-venus-5.4 = "${nonarch_base_libdir}/firmware/qcom/venus-5.4/*" | ||
1394 | FILES:${PN}-qcom-venus-6.0 = "${nonarch_base_libdir}/firmware/qcom/venus-6.0/*" | ||
1395 | FILES:${PN}-qcom-vpu-1.0 = "${nonarch_base_libdir}/firmware/qcom/vpu-1.0/*" | ||
1396 | FILES:${PN}-qcom-vpu-2.0 = "${nonarch_base_libdir}/firmware/qcom/vpu-2.0/*" | ||
1397 | FILES:${PN}-qcom-adreno-a2xx = "${nonarch_base_libdir}/firmware/qcom/leia_*.fw ${nonarch_base_libdir}/firmware/qcom/yamato_*.fw" | ||
1398 | FILES:${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a3*_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw" | ||
1399 | FILES:${PN}-qcom-adreno-a4xx = "${nonarch_base_libdir}/firmware/qcom/a4*_*.fw" | ||
1400 | FILES:${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.fw*" | ||
1401 | FILES:${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.*" | ||
1402 | FILES:${PN}-qcom-adreno-a650 = "${nonarch_base_libdir}/firmware/qcom/a650*.*" | ||
1403 | FILES:${PN}-qcom-adreno-a660 = "${nonarch_base_libdir}/firmware/qcom/a660*.*" | ||
1404 | FILES:${PN}-qcom-adreno-a702 = "${nonarch_base_libdir}/firmware/qcom/a702*.*" | ||
1405 | FILES:${PN}-qcom-apq8016-modem = "${nonarch_base_libdir}/firmware/qcom/apq8016/mba.mbn ${nonarch_base_libdir}/firmware/qcom/apq8016/modem.mbn" | ||
1406 | FILES:${PN}-qcom-apq8016-wifi = "${nonarch_base_libdir}/firmware/qcom/apq8016/wcnss.mbn ${nonarch_base_libdir}/firmware/qcom/apq8016/WCNSS*" | ||
1407 | FILES:${PN}-qcom-apq8096-adreno = "${nonarch_base_libdir}/firmware/qcom/apq8096/a530_zap.mbn ${nonarch_base_libdir}/firmware/qcom/a530_zap.mdt" | ||
1408 | FILES:${PN}-qcom-apq8096-audio = "${nonarch_base_libdir}/firmware/qcom/apq8096/adsp*.*" | ||
1409 | FILES:${PN}-qcom-apq8096-modem = "${nonarch_base_libdir}/firmware/qcom/apq8096/mba.mbn ${nonarch_base_libdir}/firmware/qcom/apq8096/modem*.* ${nonarch_base_libdir}/firmware/qcom/apq8096/wlanmdsp.mbn" | ||
1410 | FILES:${PN}-qcom-qcm2290-adreno = "${nonarch_base_libdir}/firmware/qcom/qcm2290/a702_zap.mbn" | ||
1411 | FILES:${PN}-qcom-qcm2290-audio = "${nonarch_base_libdir}/firmware/qcom/qcm2290/adsp*.*" | ||
1412 | FILES:${PN}-qcom-qcm2290-modem = "${nonarch_base_libdir}/firmware/qcom/qcm2290/modem*.*" | ||
1413 | FILES:${PN}-qcom-qcm2290-wifi = "${nonarch_base_libdir}/firmware/qcom/qcm2290/wlanmdsp.mbn" | ||
1414 | FILES:${PN}-qcom-qrb4210-adreno = "${nonarch_base_libdir}/firmware/qcom/qrb4210/a610_zap.mbn" | ||
1415 | FILES:${PN}-qcom-qrb4210-audio = "${nonarch_base_libdir}/firmware/qcom/qrb4210/adsp*.*" | ||
1416 | FILES:${PN}-qcom-qrb4210-compute = "${nonarch_base_libdir}/firmware/qcom/qrb4210/cdsp*.*" | ||
1417 | FILES:${PN}-qcom-qrb4210-modem = "${nonarch_base_libdir}/firmware/qcom/qrb4210/modem*.*" | ||
1418 | FILES:${PN}-qcom-qrb4210-wifi = "${nonarch_base_libdir}/firmware/qcom/qrb4210/wlanmdsp.mbn" | ||
1419 | FILES:${PN}-qcom-sc8280xp-lenovo-x13s-compat = "${nonarch_base_libdir}/firmware/qcom/LENOVO/21BX" | ||
1420 | FILES:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*adsp*.* ${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/battmgr.jsn ${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/audioreach-tplg.bin ${nonarch_base_libdir}/firmware/qcom/sc8280xp/SC8280XP-LENOVO-X13S-tplg.bin" | ||
1421 | FILES:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn" | ||
1422 | FILES:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*cdsp*.*" | ||
1423 | FILES:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*slpi*.*" | ||
1424 | FILES:${PN}-qcom-sdm845-adreno = "${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*" | ||
1425 | FILES:${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" | ||
1426 | FILES:${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" | ||
1427 | FILES:${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/notice.txt_wlanmdsp" | ||
1428 | FILES:${PN}-qcom-sdm845-thundercomm-db845c-sensors = "${nonarch_base_libdir}/firmware/qcom/sdm845/Thundercomm/db845c/slpi*.*" | ||
1429 | FILES:${PN}-qcom-sm8250-adreno = "${nonarch_base_libdir}/firmware/qcom/sm8250/a650*.*" | ||
1430 | FILES:${PN}-qcom-sm8250-audio = "${nonarch_base_libdir}/firmware/qcom/sm8250/adsp*.*" | ||
1431 | FILES:${PN}-qcom-sm8250-compute = "${nonarch_base_libdir}/firmware/qcom/sm8250/cdsp*.*" | ||
1432 | FILES:${PN}-qcom-sm8250-thundercomm-rb5-sensors = "${nonarch_base_libdir}/firmware/qcom/sm8250/Thundercomm/RB5/slpi*.*" | ||
1433 | |||
1434 | RDEPENDS:${PN}-qcom-venus-1.8 = "${PN}-qcom-license" | ||
1435 | RDEPENDS:${PN}-qcom-venus-4.2 = "${PN}-qcom-license" | ||
1436 | RDEPENDS:${PN}-qcom-venus-5.2 = "${PN}-qcom-license" | ||
1437 | RDEPENDS:${PN}-qcom-venus-5.4 = "${PN}-qcom-license" | ||
1438 | RDEPENDS:${PN}-qcom-venus-6.0 = "${PN}-qcom-license" | ||
1439 | RDEPENDS:${PN}-qcom-vpu-1.0 = "${PN}-qcom-license" | ||
1440 | RDEPENDS:${PN}-qcom-vpu-2.0 = "${PN}-qcom-license" | ||
1441 | RDEPENDS:${PN}-qcom-adreno-a2xx = "${PN}-qcom-license ${PN}-qcom-yamato-license" | ||
1442 | RDEPENDS:${PN}-qcom-adreno-a3xx = "${PN}-qcom-license" | ||
1443 | RDEPENDS:${PN}-qcom-adreno-a4xx = "${PN}-qcom-license" | ||
1444 | RDEPENDS:${PN}-qcom-adreno-a530 = "${PN}-qcom-license" | ||
1445 | RDEPENDS:${PN}-qcom-adreno-a630 = "${PN}-qcom-license" | ||
1446 | RDEPENDS:${PN}-qcom-adreno-a650 = "${PN}-qcom-license" | ||
1447 | RDEPENDS:${PN}-qcom-adreno-a660 = "${PN}-qcom-license" | ||
1448 | RDEPENDS:${PN}-qcom-adreno-a702 = "${PN}-qcom-license" | ||
1449 | RDEPENDS:${PN}-qcom-apq8016-modem = "${PN}-qcom-license" | ||
1450 | RDEPENDS:${PN}-qcom-apq8016-wifi = "${PN}-qcom-license" | ||
1451 | RDEPENDS:${PN}-qcom-apq8096-adreno = "${PN}-qcom-license" | ||
1452 | RDEPENDS:${PN}-qcom-apq8096-audio = "${PN}-qcom-license" | ||
1453 | RDEPENDS:${PN}-qcom-apq8096-modem = "${PN}-qcom-license" | ||
1454 | RDEPENDS:${PN}-qcom-qcm2290-adreno = "${PN}-qcom-license" | ||
1455 | RDEPENDS:${PN}-qcom-qcm2290-audio = "${PN}-qcom-license" | ||
1456 | RDEPENDS:${PN}-qcom-qcm2290-modem = "${PN}-qcom-license" | ||
1457 | RDEPENDS:${PN}-qcom-qcm2290-wifi = "${PN}-qcom-license" | ||
1458 | RDEPENDS:${PN}-qcom-qrb4210-adreno = "${PN}-qcom-license" | ||
1459 | RDEPENDS:${PN}-qcom-qrb4210-audio = "${PN}-qcom-license" | ||
1460 | RDEPENDS:${PN}-qcom-qrb4210-compute = "${PN}-qcom-license" | ||
1461 | RDEPENDS:${PN}-qcom-qrb4210-modem = "${PN}-qcom-license" | ||
1462 | RDEPENDS:${PN}-qcom-qrb4210-wifi = "${PN}-qcom-license" | ||
1463 | RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-license" | ||
1464 | RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-license" | ||
1465 | RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-license" | ||
1466 | RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-license" | ||
1467 | RDEPENDS:${PN}-qcom-sdm845-adreno = "${PN}-qcom-license" | ||
1468 | RDEPENDS:${PN}-qcom-sdm845-audio = "${PN}-qcom-license" | ||
1469 | RDEPENDS:${PN}-qcom-sdm845-compute = "${PN}-qcom-license" | ||
1470 | RDEPENDS:${PN}-qcom-sdm845-modem = "${PN}-qcom-license" | ||
1471 | RDEPENDS:${PN}-qcom-sdm845-thundercomm-db845c-sensors = "${PN}-qcom-license" | ||
1472 | RDEPENDS:${PN}-qcom-sm8250-adreno = "${PN}-qcom-license" | ||
1473 | RDEPENDS:${PN}-qcom-sm8250-audio = "${PN}-qcom-license" | ||
1474 | RDEPENDS:${PN}-qcom-sm8250-compute = "${PN}-qcom-license" | ||
1475 | RDEPENDS:${PN}-qcom-sm8250-thundercomm-rb5-sensors = "${PN}-qcom-license" | ||
1476 | |||
1477 | RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" | ||
1478 | RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" | ||
1479 | RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" | ||
1480 | RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" | ||
1481 | |||
1482 | LICENSE:${PN}-liquidui = "Firmware-cavium_liquidio" | ||
1483 | FILES:${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" | ||
1484 | |||
1485 | LICENSE:${PN}-mellanox = "WHENCE" | ||
1486 | FILES:${PN}-mellanox = "${nonarch_base_libdir}/firmware/mellanox" | ||
1487 | |||
1488 | LICENSE:${PN}-prestera = "Firmware-Marvell" | ||
1489 | FILES:${PN}-prestera = "${nonarch_base_libdir}/firmware/mrvl/prestera" | ||
1490 | RDEPENDS:${PN}-prestera = "${PN}-marvell-license" | ||
1491 | |||
1492 | # For Rockchip | ||
1493 | LICENSE:${PN}-rockchip-dptx = "Firmware-rockchip" | ||
1494 | FILES:${PN}-rockchip-license = "${nonarch_base_libdir}/firmware/LICENCE.rockchip" | ||
1495 | FILES:${PN}-rockchip-dptx = "${nonarch_base_libdir}/firmware/rockchip/dptx.bin" | ||
1496 | RDEPENDS:${PN}-rockchip-dptx = "${PN}-rockchip-license" | ||
1497 | |||
1498 | # For Amlogic VDEC | ||
1499 | LICENSE:${PN}-amlogic-vdec = "Firmware-amlogic_vdec" | ||
1500 | FILES:${PN}-amlogic-vdec-license = "${nonarch_base_libdir}/firmware/LICENSE.amlogic_vdec" | ||
1501 | FILES:${PN}-amlogic-vdec = "${nonarch_base_libdir}/firmware/meson/vdec/*" | ||
1502 | RDEPENDS:${PN}-amlogic-vdec = "${PN}-amlogic-vdec-license" | ||
1503 | |||
1504 | # For other firmwares | ||
1505 | # Maybe split out to separate packages when needed. | ||
1506 | LICENSE:${PN} = "\ | ||
1507 | Firmware-Abilis \ | ||
1508 | & Firmware-agere \ | ||
1509 | & Firmware-amdgpu \ | ||
1510 | & Firmware-amd-ucode \ | ||
1511 | & Firmware-amlogic_vdec \ | ||
1512 | & Firmware-atmel \ | ||
1513 | & Firmware-ca0132 \ | ||
1514 | & Firmware-cavium \ | ||
1515 | & Firmware-chelsio_firmware \ | ||
1516 | & Firmware-cirrus \ | ||
1517 | & Firmware-cnm \ | ||
1518 | & Firmware-cw1200 \ | ||
1519 | & Firmware-dib0700 \ | ||
1520 | & Firmware-e100 \ | ||
1521 | & Firmware-ene_firmware \ | ||
1522 | & Firmware-fw_sst_0f28 \ | ||
1523 | & Firmware-go7007 \ | ||
1524 | & Firmware-hfi1_firmware \ | ||
1525 | & Firmware-ibt_firmware \ | ||
1526 | & Firmware-it913x \ | ||
1527 | & Firmware-IntcSST2 \ | ||
1528 | & Firmware-kaweth \ | ||
1529 | & Firmware-moxa \ | ||
1530 | & Firmware-myri10ge_firmware \ | ||
1531 | & Firmware-nvidia \ | ||
1532 | & Firmware-nxp \ | ||
1533 | & Firmware-OLPC \ | ||
1534 | & Firmware-ath9k-htc \ | ||
1535 | & Firmware-phanfw \ | ||
1536 | & Firmware-qat \ | ||
1537 | & Firmware-qcom \ | ||
1538 | & Firmware-qla1280 \ | ||
1539 | & Firmware-qla2xxx \ | ||
1540 | & Firmware-r8a779x_usb3 \ | ||
1541 | & Firmware-radeon \ | ||
1542 | & Firmware-ralink_a_mediatek_company_firmware \ | ||
1543 | & Firmware-ralink-firmware \ | ||
1544 | & Firmware-imx-sdma_firmware \ | ||
1545 | & Firmware-siano \ | ||
1546 | & Firmware-ti-connectivity \ | ||
1547 | & Firmware-ti-keystone \ | ||
1548 | & Firmware-ueagle-atm4-firmware \ | ||
1549 | & Firmware-wl1251 \ | ||
1550 | & Firmware-xc4000 \ | ||
1551 | & Firmware-xc5000 \ | ||
1552 | & Firmware-xc5000c \ | ||
1553 | & WHENCE \ | ||
1554 | " | ||
1555 | |||
1556 | FILES:${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*" | ||
1557 | FILES:${PN} += "${nonarch_base_libdir}/firmware/*" | ||
1558 | RDEPENDS:${PN} += "${PN}-license" | ||
1559 | RDEPENDS:${PN} += "${PN}-whence-license" | ||
1560 | |||
1561 | # Make linux-firmware depend on all of the split-out packages. | ||
1562 | # Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. | ||
1563 | # Make linux-firmware-ibt depend on all of the split-out ibt packages. | ||
1564 | python populate_packages:prepend () { | ||
1565 | firmware_pkgs = oe.utils.packages_filter_out_system(d) | ||
1566 | d.appendVar('RRECOMMENDS:linux-firmware', ' ' + ' '.join(firmware_pkgs)) | ||
1567 | |||
1568 | iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) | ||
1569 | d.appendVar('RRECOMMENDS:linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) | ||
1570 | |||
1571 | ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs) | ||
1572 | d.appendVar('RRECOMMENDS:linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs)) | ||
1573 | } | ||
1574 | |||
1575 | # Firmware files are generally not ran on the CPU, so they can be | ||
1576 | # allarch despite being architecture specific | ||
1577 | INSANE_SKIP = "arch" | ||
1578 | |||
1579 | # Don't warn about already stripped files | ||
1580 | INSANE_SKIP:${PN} = "already-stripped" | ||
1581 | |||
1582 | # No need to put firmware into the sysroot | ||
1583 | SYSROOT_DIRS_IGNORE += "${nonarch_base_libdir}/firmware" | ||
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc index 7ec94024c3..3a8d32e785 100644 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc | |||
@@ -1,7 +1,8 @@ | |||
1 | SUMMARY = "Sanitized set of kernel headers for the C library's use" | 1 | SUMMARY = "Sanitized set of kernel headers for the C library's use" |
2 | HOMEPAGE = "https://www.kernel.org/" | ||
2 | DESCRIPTION = "Designed to maintain an Application Programming Interface (API) stable version of the Linux headers" | 3 | DESCRIPTION = "Designed to maintain an Application Programming Interface (API) stable version of the Linux headers" |
3 | SECTION = "devel" | 4 | SECTION = "devel" |
4 | LICENSE = "GPLv2" | 5 | LICENSE = "GPL-2.0-only" |
5 | 6 | ||
6 | ######################################################################### | 7 | ######################################################################### |
7 | #### PLEASE READ | 8 | #### PLEASE READ |
@@ -43,6 +44,8 @@ python __anonymous () { | |||
43 | d.setVar("HEADER_FETCH_VER", "4.x") | 44 | d.setVar("HEADER_FETCH_VER", "4.x") |
44 | elif major == "5": | 45 | elif major == "5": |
45 | d.setVar("HEADER_FETCH_VER", "5.x") | 46 | d.setVar("HEADER_FETCH_VER", "5.x") |
47 | elif major == "6": | ||
48 | d.setVar("HEADER_FETCH_VER", "6.x") | ||
46 | else: | 49 | else: |
47 | d.setVar("HEADER_FETCH_VER", "2.6") | 50 | d.setVar("HEADER_FETCH_VER", "2.6") |
48 | } | 51 | } |
@@ -74,15 +77,15 @@ do_install() { | |||
74 | find ${D}${includedir} -name ..install.cmd | xargs rm -f | 77 | find ${D}${includedir} -name ..install.cmd | xargs rm -f |
75 | } | 78 | } |
76 | 79 | ||
77 | do_install_append_aarch64 () { | 80 | do_install:append:aarch64 () { |
78 | do_install_armmultilib | 81 | do_install_armmultilib |
79 | } | 82 | } |
80 | 83 | ||
81 | do_install_append_arm () { | 84 | do_install:append:arm () { |
82 | do_install_armmultilib | 85 | do_install_armmultilib |
83 | } | 86 | } |
84 | 87 | ||
85 | do_install_append_armeb () { | 88 | do_install:append:armeb () { |
86 | do_install_armmultilib | 89 | do_install_armmultilib |
87 | } | 90 | } |
88 | 91 | ||
@@ -102,8 +105,8 @@ do_install_armmultilib () { | |||
102 | 105 | ||
103 | BBCLASSEXTEND = "nativesdk" | 106 | BBCLASSEXTEND = "nativesdk" |
104 | 107 | ||
105 | RDEPENDS_${PN}-dev = "" | 108 | DEV_PKG_DEPENDENCY = "" |
106 | RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" | 109 | RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" |
107 | 110 | ||
108 | INHIBIT_DEFAULT_DEPS = "1" | 111 | INHIBIT_DEFAULT_DEPS = "1" |
109 | DEPENDS += "unifdef-native bison-native rsync-native" | 112 | DEPENDS += "unifdef-native bison-native rsync-native" |
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch deleted file mode 100644 index 5b7c1b6e21..0000000000 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch +++ /dev/null | |||
@@ -1,42 +0,0 @@ | |||
1 | From dc221138c809125dc1bbff8506c70cb7bd846368 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Wed, 12 Sep 2018 17:08:58 -0700 | ||
4 | Subject: [PATCH] include linux/stddef.h in swab.h uapi header | ||
5 | |||
6 | swab.h uses __always_inline without including the header where it is | ||
7 | defined, this is exposed by musl based distributions where this macro is | ||
8 | not defined by system C library headers unlike glibc where it is defined | ||
9 | in sys/cdefs.h and that header gets pulled in indirectly via | ||
10 | |||
11 | features.h -> sys/cdefs.h | ||
12 | |||
13 | and features.h gets pulled in a lot of headers. Therefore it may work in | ||
14 | cases where features.h is includes but not otherwise. | ||
15 | |||
16 | Adding linux/stddef.h here ensures that __always_inline is always | ||
17 | defined independent of which C library is used in userspace | ||
18 | |||
19 | Upstream-Status: Submitted [https://lkml.org/lkml/2018/9/13/78] | ||
20 | |||
21 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
22 | Cc: Philippe Ombredanne <pombredanne@nexb.com> | ||
23 | Cc: Kate Stewart <kstewart@linuxfoundation.org> | ||
24 | Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> | ||
25 | Cc: Thomas Gleixner <tglx@linutronix.de> | ||
26 | |||
27 | --- | ||
28 | include/uapi/linux/swab.h | 1 + | ||
29 | 1 file changed, 1 insertion(+) | ||
30 | |||
31 | diff --git a/include/uapi/linux/swab.h b/include/uapi/linux/swab.h | ||
32 | index 7272f85d6..2912fe463 100644 | ||
33 | --- a/include/uapi/linux/swab.h | ||
34 | +++ b/include/uapi/linux/swab.h | ||
35 | @@ -3,6 +3,7 @@ | ||
36 | #define _UAPI_LINUX_SWAB_H | ||
37 | |||
38 | #include <linux/types.h> | ||
39 | +#include <linux/stddef.h> | ||
40 | #include <linux/compiler.h> | ||
41 | #include <asm/bitsperlong.h> | ||
42 | #include <asm/swab.h> | ||
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch deleted file mode 100644 index a5ded602e5..0000000000 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch +++ /dev/null | |||
@@ -1,67 +0,0 @@ | |||
1 | From 694eba7bb974f6b8bd308804cb24350150108b2b Mon Sep 17 00:00:00 2001 | ||
2 | From: He Zhe <zhe.he@windriver.com> | ||
3 | Date: Wed, 21 Nov 2018 15:12:43 +0800 | ||
4 | Subject: [PATCH] scripts: Use fixed input and output files instead of pipe for here-doc | ||
5 | |||
6 | There was a bug of "as" in binutils that when it checks if the input file and | ||
7 | output file are the same one, it would not check if they are on the same block | ||
8 | device. The check is introduced by the following commit in v2.31. | ||
9 | |||
10 | https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h= | ||
11 | 67f846b59b32f3d704c601669409c2584383fea9 | ||
12 | |||
13 | The here-doc usage in this script creates temporary file in /tmp. When we run in | ||
14 | an environment where /tmp has rarely been used, the newly created temporary file | ||
15 | may have a very low inode number. If the inode number was 6 which is the same as | ||
16 | /dev/null, the as would wrongly think the input file and the output file are the | ||
17 | same and report the following error. | ||
18 | |||
19 | *** Compiler lacks asm-goto support.. Stop. | ||
20 | |||
21 | One observed case happened in docker where the /tmp could be so rarely used that | ||
22 | very low number inode may be allocated and triggers the error. | ||
23 | |||
24 | The fix below for the bug only exists on the master branch of binutils so far | ||
25 | and has not been released from upstream. As the convict is introduced since | ||
26 | v2.31, only v2.31 is affected. | ||
27 | |||
28 | https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h= | ||
29 | 2a50366ded329bfb39d387253450c9d5302c3503 | ||
30 | |||
31 | When building linux-libc-headers we need to use "as" in binutils which does not | ||
32 | contain the fix for the moment. To work around the error, we create a fixed | ||
33 | temporary file to contain the program being tested. | ||
34 | |||
35 | This patch also removes ">/dev/null 2>&1" so we will have more direct error | ||
36 | information in case something else wrong happened. | ||
37 | |||
38 | Upstream-Status: Inappropriate [A work around for binutils v2.31] | ||
39 | |||
40 | Signed-off-by: He Zhe <zhe.he@windriver.com> | ||
41 | --- | ||
42 | scripts/gcc-goto.sh | 5 ++++- | ||
43 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
44 | |||
45 | diff --git a/scripts/gcc-goto.sh b/scripts/gcc-goto.sh | ||
46 | index 8b980fb22..d256a9438 100755 | ||
47 | --- a/scripts/gcc-goto.sh | ||
48 | +++ b/scripts/gcc-goto.sh | ||
49 | @@ -3,7 +3,7 @@ | ||
50 | # Test for gcc 'asm goto' support | ||
51 | # Copyright (C) 2010, Jason Baron <jbaron@redhat.com> | ||
52 | |||
53 | -cat << "END" | $@ -x c - -fno-PIE -c -o /dev/null | ||
54 | +cat << "END" > ./input | ||
55 | int main(void) | ||
56 | { | ||
57 | #if defined(__arm__) || defined(__aarch64__) | ||
58 | @@ -20,3 +20,6 @@ entry: | ||
59 | return 0; | ||
60 | } | ||
61 | END | ||
62 | + | ||
63 | +$@ -x c ./input -fno-PIE -c -o ./output | ||
64 | +rm ./input ./output | ||
65 | -- | ||
66 | 2.19.1 | ||
67 | |||
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch index b5c4e1750e..b0e7014138 100644 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch | |||
@@ -13,17 +13,17 @@ Upstream-Status: Submitted | |||
13 | include/uapi/linux/kernel.h | 2 ++ | 13 | include/uapi/linux/kernel.h | 2 ++ |
14 | 1 file changed, 2 insertions(+) | 14 | 1 file changed, 2 insertions(+) |
15 | 15 | ||
16 | Index: linux-4.8-rc4/include/uapi/linux/kernel.h | 16 | Index: linux-5.12.11/include/uapi/linux/kernel.h |
17 | =================================================================== | 17 | =================================================================== |
18 | --- linux-4.8-rc4.orig/include/uapi/linux/kernel.h | 18 | --- linux-5.12.11.orig/include/uapi/linux/kernel.h |
19 | +++ linux-4.8-rc4/include/uapi/linux/kernel.h | 19 | +++ linux-5.12.11/include/uapi/linux/kernel.h |
20 | @@ -1,7 +1,9 @@ | 20 | @@ -2,7 +2,9 @@ |
21 | #ifndef _UAPI_LINUX_KERNEL_H | 21 | #ifndef _UAPI_LINUX_KERNEL_H |
22 | #define _UAPI_LINUX_KERNEL_H | 22 | #define _UAPI_LINUX_KERNEL_H |
23 | 23 | ||
24 | +#ifdef __GLIBC__ | 24 | +#ifdef __GLIBC__ |
25 | #include <linux/sysinfo.h> | 25 | #include <linux/sysinfo.h> |
26 | #include <linux/const.h> | ||
26 | +#endif | 27 | +#endif |
27 | 28 | ||
28 | /* | 29 | #endif /* _UAPI_LINUX_KERNEL_H */ |
29 | * 'kernel.h' contains some often-used function prototypes etc | ||
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_6.6.bb index d6a4d5aa61..d68de6ec7e 100644 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_6.6.bb | |||
@@ -1,19 +1,17 @@ | |||
1 | require linux-libc-headers.inc | 1 | require linux-libc-headers.inc |
2 | 2 | ||
3 | SRC_URI_append_libc-musl = "\ | 3 | SRC_URI:append:libc-musl = "\ |
4 | file://0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch \ | 4 | file://0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch \ |
5 | file://0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch \ | 5 | file://0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch \ |
6 | file://0001-libc-compat.h-musl-_does_-define-IFF_LOWER_UP-DORMAN.patch \ | 6 | file://0001-libc-compat.h-musl-_does_-define-IFF_LOWER_UP-DORMAN.patch \ |
7 | file://0001-include-linux-stddef.h-in-swab.h-uapi-header.patch \ | ||
8 | " | 7 | " |
9 | 8 | ||
10 | SRC_URI_append = "\ | 9 | SRC_URI += "\ |
11 | file://0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch \ | ||
12 | file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-define.patch \ | 10 | file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-define.patch \ |
13 | " | 11 | " |
14 | 12 | ||
15 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | 13 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" |
16 | 14 | ||
17 | SRC_URI[md5sum] = "753adc474bf799d569dec4f165ed92c3" | 15 | SRC_URI[sha256sum] = "d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0" |
18 | SRC_URI[sha256sum] = "dcdf99e43e98330d925016985bfbc7b83c66d367b714b2de0cbbfcbf83d8ca43" | 16 | |
19 | 17 | ||
diff --git a/meta/recipes-kernel/linux/cve-exclusion.inc b/meta/recipes-kernel/linux/cve-exclusion.inc new file mode 100644 index 0000000000..7857633943 --- /dev/null +++ b/meta/recipes-kernel/linux/cve-exclusion.inc | |||
@@ -0,0 +1,34 @@ | |||
1 | CVE_STATUS[CVE-1999-0656] = "not-applicable-config: specific to ugidd, part of the old user-mode NFS server" | ||
2 | |||
3 | CVE_STATUS[CVE-2006-2932] = "not-applicable-platform: specific to RHEL" | ||
4 | |||
5 | CVE_STATUS[CVE-2007-2764] = "not-applicable-platform: specific to Sun/Brocade SilkWorm switches" | ||
6 | |||
7 | CVE_STATUS[CVE-2007-4998] = "cpe-incorrect: a historic cp bug, no longer an issue as per https://bugzilla.redhat.com/show_bug.cgi?id=356471#c5" | ||
8 | |||
9 | CVE_STATUS[CVE-2008-2544] = "disputed: not an issue as per https://bugzilla.redhat.com/show_bug.cgi?id=449089#c22" | ||
10 | |||
11 | CVE_STATUS[CVE-2010-0298] = "fixed-version: 2.6.34 (1871c6)" | ||
12 | |||
13 | CVE_STATUS[CVE-2014-2648] = "cpe-incorrect: not Linux" | ||
14 | |||
15 | CVE_STATUS[CVE-2016-0774] = "ignored: result of incomplete backport" | ||
16 | |||
17 | CVE_STATUS[CVE-2016-3695] = "not-applicable-platform: specific to RHEL with securelevel patches" | ||
18 | |||
19 | CVE_STATUS[CVE-2016-3699] = "not-applicable-platform: specific to RHEL with securelevel patches" | ||
20 | |||
21 | CVE_STATUS[CVE-2017-6264] = "not-applicable-platform: Android specific" | ||
22 | |||
23 | CVE_STATUS[CVE-2017-1000377] = "not-applicable-platform: GRSecurity specific" | ||
24 | |||
25 | CVE_STATUS[CVE-2018-6559] = "not-applicable-platform: Issue only affects Ubuntu" | ||
26 | |||
27 | CVE_STATUS[CVE-2020-11935] = "not-applicable-config: Issue only affects aufs, which is not in linux-yocto" | ||
28 | |||
29 | # Introduced in version v6.1 7b88bda3761b95856cf97822efe8281c8100067b | ||
30 | # Patched in kernel since v6.2 4a625ceee8a0ab0273534cb6b432ce6b331db5ee | ||
31 | # But, the CVE is disputed: | ||
32 | CVE_STATUS[CVE-2023-23005] = "disputed: There are no realistic cases \ | ||
33 | in which a user can cause the alloc_memory_type error case to be reached. \ | ||
34 | See: https://bugzilla.suse.com/show_bug.cgi?id=1208844#c2" | ||
diff --git a/meta/recipes-kernel/linux/cve-exclusion_6.6.inc b/meta/recipes-kernel/linux/cve-exclusion_6.6.inc new file mode 100644 index 0000000000..bb9ba49c48 --- /dev/null +++ b/meta/recipes-kernel/linux/cve-exclusion_6.6.inc | |||
@@ -0,0 +1,5384 @@ | |||
1 | |||
2 | # Auto-generated CVE metadata, DO NOT EDIT BY HAND. | ||
3 | # Generated at 2024-03-28 16:40:04.102652+00:00 for version 6.6.23 | ||
4 | |||
5 | python check_kernel_cve_status_version() { | ||
6 | this_version = "6.6.23" | ||
7 | kernel_version = d.getVar("LINUX_VERSION") | ||
8 | if kernel_version != this_version: | ||
9 | bb.warn("Kernel CVE status needs updating: generated for %s but kernel is %s" % (this_version, kernel_version)) | ||
10 | } | ||
11 | do_cve_check[prefuncs] += "check_kernel_cve_status_version" | ||
12 | |||
13 | CVE_STATUS[CVE-2003-1604] = "fixed-version: Fixed from version 2.6.12rc2" | ||
14 | |||
15 | CVE_STATUS[CVE-2004-0230] = "fixed-version: Fixed from version 3.6rc1" | ||
16 | |||
17 | # CVE-2005-3660 has no known resolution | ||
18 | |||
19 | CVE_STATUS[CVE-2006-3635] = "fixed-version: Fixed from version 2.6.26rc5" | ||
20 | |||
21 | CVE_STATUS[CVE-2006-5331] = "fixed-version: Fixed from version 2.6.19rc3" | ||
22 | |||
23 | CVE_STATUS[CVE-2006-6128] = "fixed-version: Fixed from version 2.6.19rc2" | ||
24 | |||
25 | # CVE-2007-3719 has no known resolution | ||
26 | |||
27 | CVE_STATUS[CVE-2007-4774] = "fixed-version: Fixed from version 2.6.12rc2" | ||
28 | |||
29 | CVE_STATUS[CVE-2007-6761] = "fixed-version: Fixed from version 2.6.24rc6" | ||
30 | |||
31 | CVE_STATUS[CVE-2007-6762] = "fixed-version: Fixed from version 2.6.20rc5" | ||
32 | |||
33 | # CVE-2008-2544 has no known resolution | ||
34 | |||
35 | # CVE-2008-4609 has no known resolution | ||
36 | |||
37 | CVE_STATUS[CVE-2008-7316] = "fixed-version: Fixed from version 2.6.25rc1" | ||
38 | |||
39 | CVE_STATUS[CVE-2009-2692] = "fixed-version: Fixed from version 2.6.31rc6" | ||
40 | |||
41 | CVE_STATUS[CVE-2010-0008] = "fixed-version: Fixed from version 2.6.23rc9" | ||
42 | |||
43 | CVE_STATUS[CVE-2010-3432] = "fixed-version: Fixed from version 2.6.36rc5" | ||
44 | |||
45 | # CVE-2010-4563 has no known resolution | ||
46 | |||
47 | CVE_STATUS[CVE-2010-4648] = "fixed-version: Fixed from version 2.6.37rc6" | ||
48 | |||
49 | CVE_STATUS[CVE-2010-5313] = "fixed-version: Fixed from version 2.6.38rc1" | ||
50 | |||
51 | # CVE-2010-5321 has no known resolution | ||
52 | |||
53 | CVE_STATUS[CVE-2010-5328] = "fixed-version: Fixed from version 2.6.35rc1" | ||
54 | |||
55 | CVE_STATUS[CVE-2010-5329] = "fixed-version: Fixed from version 2.6.39rc1" | ||
56 | |||
57 | CVE_STATUS[CVE-2010-5331] = "fixed-version: Fixed from version 2.6.34rc7" | ||
58 | |||
59 | CVE_STATUS[CVE-2010-5332] = "fixed-version: Fixed from version 2.6.37rc1" | ||
60 | |||
61 | CVE_STATUS[CVE-2011-4098] = "fixed-version: Fixed from version 3.2rc1" | ||
62 | |||
63 | CVE_STATUS[CVE-2011-4131] = "fixed-version: Fixed from version 3.3rc1" | ||
64 | |||
65 | CVE_STATUS[CVE-2011-4915] = "fixed-version: Fixed from version 3.2rc1" | ||
66 | |||
67 | # CVE-2011-4916 has no known resolution | ||
68 | |||
69 | # CVE-2011-4917 has no known resolution | ||
70 | |||
71 | CVE_STATUS[CVE-2011-5321] = "fixed-version: Fixed from version 3.2rc1" | ||
72 | |||
73 | CVE_STATUS[CVE-2011-5327] = "fixed-version: Fixed from version 3.1rc1" | ||
74 | |||
75 | CVE_STATUS[CVE-2012-0957] = "fixed-version: Fixed from version 3.7rc2" | ||
76 | |||
77 | CVE_STATUS[CVE-2012-2119] = "fixed-version: Fixed from version 3.5rc1" | ||
78 | |||
79 | CVE_STATUS[CVE-2012-2136] = "fixed-version: Fixed from version 3.5rc1" | ||
80 | |||
81 | CVE_STATUS[CVE-2012-2137] = "fixed-version: Fixed from version 3.5rc2" | ||
82 | |||
83 | CVE_STATUS[CVE-2012-2313] = "fixed-version: Fixed from version 3.4rc6" | ||
84 | |||
85 | CVE_STATUS[CVE-2012-2319] = "fixed-version: Fixed from version 3.4rc6" | ||
86 | |||
87 | CVE_STATUS[CVE-2012-2372] = "fixed-version: Fixed from version 3.13rc4" | ||
88 | |||
89 | CVE_STATUS[CVE-2012-2375] = "fixed-version: Fixed from version 3.4rc1" | ||
90 | |||
91 | CVE_STATUS[CVE-2012-2390] = "fixed-version: Fixed from version 3.5rc1" | ||
92 | |||
93 | CVE_STATUS[CVE-2012-2669] = "fixed-version: Fixed from version 3.5rc4" | ||
94 | |||
95 | CVE_STATUS[CVE-2012-2744] = "fixed-version: Fixed from version 2.6.34rc1" | ||
96 | |||
97 | CVE_STATUS[CVE-2012-2745] = "fixed-version: Fixed from version 3.4rc3" | ||
98 | |||
99 | CVE_STATUS[CVE-2012-3364] = "fixed-version: Fixed from version 3.5rc6" | ||
100 | |||
101 | CVE_STATUS[CVE-2012-3375] = "fixed-version: Fixed from version 3.4rc5" | ||
102 | |||
103 | CVE_STATUS[CVE-2012-3400] = "fixed-version: Fixed from version 3.5rc5" | ||
104 | |||
105 | CVE_STATUS[CVE-2012-3412] = "fixed-version: Fixed from version 3.6rc2" | ||
106 | |||
107 | CVE_STATUS[CVE-2012-3430] = "fixed-version: Fixed from version 3.6rc1" | ||
108 | |||
109 | CVE_STATUS[CVE-2012-3510] = "fixed-version: Fixed from version 2.6.19rc4" | ||
110 | |||
111 | CVE_STATUS[CVE-2012-3511] = "fixed-version: Fixed from version 3.5rc6" | ||
112 | |||
113 | CVE_STATUS[CVE-2012-3520] = "fixed-version: Fixed from version 3.6rc3" | ||
114 | |||
115 | CVE_STATUS[CVE-2012-3552] = "fixed-version: Fixed from version 3.0rc1" | ||
116 | |||
117 | # Skipping CVE-2012-4220, no affected_versions | ||
118 | |||
119 | # Skipping CVE-2012-4221, no affected_versions | ||
120 | |||
121 | # Skipping CVE-2012-4222, no affected_versions | ||
122 | |||
123 | CVE_STATUS[CVE-2012-4398] = "fixed-version: Fixed from version 3.4rc1" | ||
124 | |||
125 | CVE_STATUS[CVE-2012-4444] = "fixed-version: Fixed from version 2.6.36rc4" | ||
126 | |||
127 | CVE_STATUS[CVE-2012-4461] = "fixed-version: Fixed from version 3.7rc6" | ||
128 | |||
129 | CVE_STATUS[CVE-2012-4467] = "fixed-version: Fixed from version 3.6rc5" | ||
130 | |||
131 | CVE_STATUS[CVE-2012-4508] = "fixed-version: Fixed from version 3.7rc3" | ||
132 | |||
133 | CVE_STATUS[CVE-2012-4530] = "fixed-version: Fixed from version 3.8rc1" | ||
134 | |||
135 | # CVE-2012-4542 has no known resolution | ||
136 | |||
137 | CVE_STATUS[CVE-2012-4565] = "fixed-version: Fixed from version 3.7rc4" | ||
138 | |||
139 | CVE_STATUS[CVE-2012-5374] = "fixed-version: Fixed from version 3.8rc1" | ||
140 | |||
141 | CVE_STATUS[CVE-2012-5375] = "fixed-version: Fixed from version 3.8rc1" | ||
142 | |||
143 | CVE_STATUS[CVE-2012-5517] = "fixed-version: Fixed from version 3.6rc1" | ||
144 | |||
145 | CVE_STATUS[CVE-2012-6536] = "fixed-version: Fixed from version 3.6rc7" | ||
146 | |||
147 | CVE_STATUS[CVE-2012-6537] = "fixed-version: Fixed from version 3.6rc7" | ||
148 | |||
149 | CVE_STATUS[CVE-2012-6538] = "fixed-version: Fixed from version 3.6rc7" | ||
150 | |||
151 | CVE_STATUS[CVE-2012-6539] = "fixed-version: Fixed from version 3.6rc3" | ||
152 | |||
153 | CVE_STATUS[CVE-2012-6540] = "fixed-version: Fixed from version 3.6rc3" | ||
154 | |||
155 | CVE_STATUS[CVE-2012-6541] = "fixed-version: Fixed from version 3.6rc3" | ||
156 | |||
157 | CVE_STATUS[CVE-2012-6542] = "fixed-version: Fixed from version 3.6rc3" | ||
158 | |||
159 | CVE_STATUS[CVE-2012-6543] = "fixed-version: Fixed from version 3.6rc3" | ||
160 | |||
161 | CVE_STATUS[CVE-2012-6544] = "fixed-version: Fixed from version 3.6rc3" | ||
162 | |||
163 | CVE_STATUS[CVE-2012-6545] = "fixed-version: Fixed from version 3.6rc3" | ||
164 | |||
165 | CVE_STATUS[CVE-2012-6546] = "fixed-version: Fixed from version 3.6rc3" | ||
166 | |||
167 | CVE_STATUS[CVE-2012-6547] = "fixed-version: Fixed from version 3.6rc1" | ||
168 | |||
169 | CVE_STATUS[CVE-2012-6548] = "fixed-version: Fixed from version 3.6rc1" | ||
170 | |||
171 | CVE_STATUS[CVE-2012-6549] = "fixed-version: Fixed from version 3.6rc1" | ||
172 | |||
173 | CVE_STATUS[CVE-2012-6638] = "fixed-version: Fixed from version 3.3rc1" | ||
174 | |||
175 | CVE_STATUS[CVE-2012-6647] = "fixed-version: Fixed from version 3.6rc2" | ||
176 | |||
177 | CVE_STATUS[CVE-2012-6657] = "fixed-version: Fixed from version 3.6" | ||
178 | |||
179 | CVE_STATUS[CVE-2012-6689] = "fixed-version: Fixed from version 3.6rc5" | ||
180 | |||
181 | CVE_STATUS[CVE-2012-6701] = "fixed-version: Fixed from version 3.5rc1" | ||
182 | |||
183 | CVE_STATUS[CVE-2012-6703] = "fixed-version: Fixed from version 3.7rc1" | ||
184 | |||
185 | CVE_STATUS[CVE-2012-6704] = "fixed-version: Fixed from version 3.5rc1" | ||
186 | |||
187 | CVE_STATUS[CVE-2012-6712] = "fixed-version: Fixed from version 3.4rc1" | ||
188 | |||
189 | CVE_STATUS[CVE-2013-0160] = "fixed-version: Fixed from version 3.9rc1" | ||
190 | |||
191 | CVE_STATUS[CVE-2013-0190] = "fixed-version: Fixed from version 3.8rc5" | ||
192 | |||
193 | CVE_STATUS[CVE-2013-0216] = "fixed-version: Fixed from version 3.8rc7" | ||
194 | |||
195 | CVE_STATUS[CVE-2013-0217] = "fixed-version: Fixed from version 3.8rc7" | ||
196 | |||
197 | CVE_STATUS[CVE-2013-0228] = "fixed-version: Fixed from version 3.8" | ||
198 | |||
199 | CVE_STATUS[CVE-2013-0231] = "fixed-version: Fixed from version 3.8rc7" | ||
200 | |||
201 | CVE_STATUS[CVE-2013-0268] = "fixed-version: Fixed from version 3.8rc6" | ||
202 | |||
203 | CVE_STATUS[CVE-2013-0290] = "fixed-version: Fixed from version 3.8" | ||
204 | |||
205 | CVE_STATUS[CVE-2013-0309] = "fixed-version: Fixed from version 3.7rc1" | ||
206 | |||
207 | CVE_STATUS[CVE-2013-0310] = "fixed-version: Fixed from version 3.5" | ||
208 | |||
209 | CVE_STATUS[CVE-2013-0311] = "fixed-version: Fixed from version 3.7rc8" | ||
210 | |||
211 | CVE_STATUS[CVE-2013-0313] = "fixed-version: Fixed from version 3.8rc5" | ||
212 | |||
213 | CVE_STATUS[CVE-2013-0343] = "fixed-version: Fixed from version 3.11rc7" | ||
214 | |||
215 | CVE_STATUS[CVE-2013-0349] = "fixed-version: Fixed from version 3.8rc6" | ||
216 | |||
217 | CVE_STATUS[CVE-2013-0871] = "fixed-version: Fixed from version 3.8rc5" | ||
218 | |||
219 | CVE_STATUS[CVE-2013-0913] = "fixed-version: Fixed from version 3.9rc4" | ||
220 | |||
221 | CVE_STATUS[CVE-2013-0914] = "fixed-version: Fixed from version 3.9rc3" | ||
222 | |||
223 | CVE_STATUS[CVE-2013-1059] = "fixed-version: Fixed from version 3.11rc1" | ||
224 | |||
225 | CVE_STATUS[CVE-2013-1763] = "fixed-version: Fixed from version 3.9rc1" | ||
226 | |||
227 | CVE_STATUS[CVE-2013-1767] = "fixed-version: Fixed from version 3.9rc1" | ||
228 | |||
229 | CVE_STATUS[CVE-2013-1772] = "fixed-version: Fixed from version 3.5rc1" | ||
230 | |||
231 | CVE_STATUS[CVE-2013-1773] = "fixed-version: Fixed from version 3.3rc1" | ||
232 | |||
233 | CVE_STATUS[CVE-2013-1774] = "fixed-version: Fixed from version 3.8rc5" | ||
234 | |||
235 | CVE_STATUS[CVE-2013-1792] = "fixed-version: Fixed from version 3.9rc3" | ||
236 | |||
237 | CVE_STATUS[CVE-2013-1796] = "fixed-version: Fixed from version 3.9rc4" | ||
238 | |||
239 | CVE_STATUS[CVE-2013-1797] = "fixed-version: Fixed from version 3.9rc4" | ||
240 | |||
241 | CVE_STATUS[CVE-2013-1798] = "fixed-version: Fixed from version 3.9rc4" | ||
242 | |||
243 | CVE_STATUS[CVE-2013-1819] = "fixed-version: Fixed from version 3.8rc6" | ||
244 | |||
245 | CVE_STATUS[CVE-2013-1826] = "fixed-version: Fixed from version 3.6rc7" | ||
246 | |||
247 | CVE_STATUS[CVE-2013-1827] = "fixed-version: Fixed from version 3.6rc3" | ||
248 | |||
249 | CVE_STATUS[CVE-2013-1828] = "fixed-version: Fixed from version 3.9rc2" | ||
250 | |||
251 | CVE_STATUS[CVE-2013-1848] = "fixed-version: Fixed from version 3.9rc3" | ||
252 | |||
253 | CVE_STATUS[CVE-2013-1858] = "fixed-version: Fixed from version 3.9rc3" | ||
254 | |||
255 | CVE_STATUS[CVE-2013-1860] = "fixed-version: Fixed from version 3.9rc3" | ||
256 | |||
257 | CVE_STATUS[CVE-2013-1928] = "fixed-version: Fixed from version 3.7rc3" | ||
258 | |||
259 | CVE_STATUS[CVE-2013-1929] = "fixed-version: Fixed from version 3.9rc6" | ||
260 | |||
261 | # Skipping CVE-2013-1935, no affected_versions | ||
262 | |||
263 | CVE_STATUS[CVE-2013-1943] = "fixed-version: Fixed from version 3.0rc1" | ||
264 | |||
265 | CVE_STATUS[CVE-2013-1956] = "fixed-version: Fixed from version 3.9rc5" | ||
266 | |||
267 | CVE_STATUS[CVE-2013-1957] = "fixed-version: Fixed from version 3.9rc5" | ||
268 | |||
269 | CVE_STATUS[CVE-2013-1958] = "fixed-version: Fixed from version 3.9rc5" | ||
270 | |||
271 | CVE_STATUS[CVE-2013-1959] = "fixed-version: Fixed from version 3.9rc7" | ||
272 | |||
273 | CVE_STATUS[CVE-2013-1979] = "fixed-version: Fixed from version 3.9rc8" | ||
274 | |||
275 | CVE_STATUS[CVE-2013-2015] = "fixed-version: Fixed from version 3.8rc2" | ||
276 | |||
277 | CVE_STATUS[CVE-2013-2017] = "fixed-version: Fixed from version 2.6.34" | ||
278 | |||
279 | CVE_STATUS[CVE-2013-2058] = "fixed-version: Fixed from version 3.8rc4" | ||
280 | |||
281 | CVE_STATUS[CVE-2013-2094] = "fixed-version: Fixed from version 3.9rc8" | ||
282 | |||
283 | CVE_STATUS[CVE-2013-2128] = "fixed-version: Fixed from version 2.6.34rc4" | ||
284 | |||
285 | CVE_STATUS[CVE-2013-2140] = "fixed-version: Fixed from version 3.11rc3" | ||
286 | |||
287 | CVE_STATUS[CVE-2013-2141] = "fixed-version: Fixed from version 3.9rc8" | ||
288 | |||
289 | CVE_STATUS[CVE-2013-2146] = "fixed-version: Fixed from version 3.9rc8" | ||
290 | |||
291 | CVE_STATUS[CVE-2013-2147] = "fixed-version: Fixed from version 3.12rc3" | ||
292 | |||
293 | CVE_STATUS[CVE-2013-2148] = "fixed-version: Fixed from version 3.11rc1" | ||
294 | |||
295 | CVE_STATUS[CVE-2013-2164] = "fixed-version: Fixed from version 3.11rc1" | ||
296 | |||
297 | # Skipping CVE-2013-2188, no affected_versions | ||
298 | |||
299 | CVE_STATUS[CVE-2013-2206] = "fixed-version: Fixed from version 3.9rc4" | ||
300 | |||
301 | # Skipping CVE-2013-2224, no affected_versions | ||
302 | |||
303 | CVE_STATUS[CVE-2013-2232] = "fixed-version: Fixed from version 3.10" | ||
304 | |||
305 | CVE_STATUS[CVE-2013-2234] = "fixed-version: Fixed from version 3.10" | ||
306 | |||
307 | CVE_STATUS[CVE-2013-2237] = "fixed-version: Fixed from version 3.9rc6" | ||
308 | |||
309 | # Skipping CVE-2013-2239, no affected_versions | ||
310 | |||
311 | CVE_STATUS[CVE-2013-2546] = "fixed-version: Fixed from version 3.9rc1" | ||
312 | |||
313 | CVE_STATUS[CVE-2013-2547] = "fixed-version: Fixed from version 3.9rc1" | ||
314 | |||
315 | CVE_STATUS[CVE-2013-2548] = "fixed-version: Fixed from version 3.9rc1" | ||
316 | |||
317 | CVE_STATUS[CVE-2013-2596] = "fixed-version: Fixed from version 3.9rc8" | ||
318 | |||
319 | CVE_STATUS[CVE-2013-2634] = "fixed-version: Fixed from version 3.9rc3" | ||
320 | |||
321 | CVE_STATUS[CVE-2013-2635] = "fixed-version: Fixed from version 3.9rc3" | ||
322 | |||
323 | CVE_STATUS[CVE-2013-2636] = "fixed-version: Fixed from version 3.9rc3" | ||
324 | |||
325 | CVE_STATUS[CVE-2013-2850] = "fixed-version: Fixed from version 3.10rc4" | ||
326 | |||
327 | CVE_STATUS[CVE-2013-2851] = "fixed-version: Fixed from version 3.11rc1" | ||
328 | |||
329 | CVE_STATUS[CVE-2013-2852] = "fixed-version: Fixed from version 3.10rc6" | ||
330 | |||
331 | CVE_STATUS[CVE-2013-2888] = "fixed-version: Fixed from version 3.12rc1" | ||
332 | |||
333 | CVE_STATUS[CVE-2013-2889] = "fixed-version: Fixed from version 3.12rc2" | ||
334 | |||
335 | CVE_STATUS[CVE-2013-2890] = "fixed-version: Fixed from version 3.12rc2" | ||
336 | |||
337 | CVE_STATUS[CVE-2013-2891] = "fixed-version: Fixed from version 3.12rc2" | ||
338 | |||
339 | CVE_STATUS[CVE-2013-2892] = "fixed-version: Fixed from version 3.12rc1" | ||
340 | |||
341 | CVE_STATUS[CVE-2013-2893] = "fixed-version: Fixed from version 3.12rc2" | ||
342 | |||
343 | CVE_STATUS[CVE-2013-2894] = "fixed-version: Fixed from version 3.12rc2" | ||
344 | |||
345 | CVE_STATUS[CVE-2013-2895] = "fixed-version: Fixed from version 3.12rc2" | ||
346 | |||
347 | CVE_STATUS[CVE-2013-2896] = "fixed-version: Fixed from version 3.12rc1" | ||
348 | |||
349 | CVE_STATUS[CVE-2013-2897] = "fixed-version: Fixed from version 3.12rc2" | ||
350 | |||
351 | CVE_STATUS[CVE-2013-2898] = "fixed-version: Fixed from version 3.12rc1" | ||
352 | |||
353 | CVE_STATUS[CVE-2013-2899] = "fixed-version: Fixed from version 3.12rc1" | ||
354 | |||
355 | CVE_STATUS[CVE-2013-2929] = "fixed-version: Fixed from version 3.13rc1" | ||
356 | |||
357 | CVE_STATUS[CVE-2013-2930] = "fixed-version: Fixed from version 3.13rc1" | ||
358 | |||
359 | CVE_STATUS[CVE-2013-3076] = "fixed-version: Fixed from version 3.9" | ||
360 | |||
361 | CVE_STATUS[CVE-2013-3222] = "fixed-version: Fixed from version 3.9rc7" | ||
362 | |||
363 | CVE_STATUS[CVE-2013-3223] = "fixed-version: Fixed from version 3.9rc7" | ||
364 | |||
365 | CVE_STATUS[CVE-2013-3224] = "fixed-version: Fixed from version 3.9rc7" | ||
366 | |||
367 | CVE_STATUS[CVE-2013-3225] = "fixed-version: Fixed from version 3.9rc7" | ||
368 | |||
369 | CVE_STATUS[CVE-2013-3226] = "fixed-version: Fixed from version 3.9rc7" | ||
370 | |||
371 | CVE_STATUS[CVE-2013-3227] = "fixed-version: Fixed from version 3.9rc7" | ||
372 | |||
373 | CVE_STATUS[CVE-2013-3228] = "fixed-version: Fixed from version 3.9rc7" | ||
374 | |||
375 | CVE_STATUS[CVE-2013-3229] = "fixed-version: Fixed from version 3.9rc7" | ||
376 | |||
377 | CVE_STATUS[CVE-2013-3230] = "fixed-version: Fixed from version 3.9rc7" | ||
378 | |||
379 | CVE_STATUS[CVE-2013-3231] = "fixed-version: Fixed from version 3.9rc7" | ||
380 | |||
381 | CVE_STATUS[CVE-2013-3232] = "fixed-version: Fixed from version 3.9rc7" | ||
382 | |||
383 | CVE_STATUS[CVE-2013-3233] = "fixed-version: Fixed from version 3.9rc7" | ||
384 | |||
385 | CVE_STATUS[CVE-2013-3234] = "fixed-version: Fixed from version 3.9rc7" | ||
386 | |||
387 | CVE_STATUS[CVE-2013-3235] = "fixed-version: Fixed from version 3.9rc7" | ||
388 | |||
389 | CVE_STATUS[CVE-2013-3236] = "fixed-version: Fixed from version 3.9rc7" | ||
390 | |||
391 | CVE_STATUS[CVE-2013-3237] = "fixed-version: Fixed from version 3.9rc7" | ||
392 | |||
393 | CVE_STATUS[CVE-2013-3301] = "fixed-version: Fixed from version 3.9rc7" | ||
394 | |||
395 | CVE_STATUS[CVE-2013-3302] = "fixed-version: Fixed from version 3.8rc3" | ||
396 | |||
397 | CVE_STATUS[CVE-2013-4125] = "fixed-version: Fixed from version 3.11rc1" | ||
398 | |||
399 | CVE_STATUS[CVE-2013-4127] = "fixed-version: Fixed from version 3.11rc1" | ||
400 | |||
401 | CVE_STATUS[CVE-2013-4129] = "fixed-version: Fixed from version 3.11rc1" | ||
402 | |||
403 | CVE_STATUS[CVE-2013-4162] = "fixed-version: Fixed from version 3.11rc1" | ||
404 | |||
405 | CVE_STATUS[CVE-2013-4163] = "fixed-version: Fixed from version 3.11rc1" | ||
406 | |||
407 | CVE_STATUS[CVE-2013-4205] = "fixed-version: Fixed from version 3.11rc5" | ||
408 | |||
409 | CVE_STATUS[CVE-2013-4220] = "fixed-version: Fixed from version 3.10rc4" | ||
410 | |||
411 | CVE_STATUS[CVE-2013-4247] = "fixed-version: Fixed from version 3.10rc5" | ||
412 | |||
413 | CVE_STATUS[CVE-2013-4254] = "fixed-version: Fixed from version 3.11rc6" | ||
414 | |||
415 | CVE_STATUS[CVE-2013-4270] = "fixed-version: Fixed from version 3.12rc4" | ||
416 | |||
417 | CVE_STATUS[CVE-2013-4299] = "fixed-version: Fixed from version 3.12rc6" | ||
418 | |||
419 | CVE_STATUS[CVE-2013-4300] = "fixed-version: Fixed from version 3.11" | ||
420 | |||
421 | CVE_STATUS[CVE-2013-4312] = "fixed-version: Fixed from version 4.5rc1" | ||
422 | |||
423 | CVE_STATUS[CVE-2013-4343] = "fixed-version: Fixed from version 3.12rc2" | ||
424 | |||
425 | CVE_STATUS[CVE-2013-4345] = "fixed-version: Fixed from version 3.13rc2" | ||
426 | |||
427 | CVE_STATUS[CVE-2013-4348] = "fixed-version: Fixed from version 3.13rc1" | ||
428 | |||
429 | CVE_STATUS[CVE-2013-4350] = "fixed-version: Fixed from version 3.12rc2" | ||
430 | |||
431 | CVE_STATUS[CVE-2013-4387] = "fixed-version: Fixed from version 3.12rc4" | ||
432 | |||
433 | CVE_STATUS[CVE-2013-4470] = "fixed-version: Fixed from version 3.12rc7" | ||
434 | |||
435 | CVE_STATUS[CVE-2013-4483] = "fixed-version: Fixed from version 3.10rc1" | ||
436 | |||
437 | CVE_STATUS[CVE-2013-4511] = "fixed-version: Fixed from version 3.12" | ||
438 | |||
439 | CVE_STATUS[CVE-2013-4512] = "fixed-version: Fixed from version 3.12" | ||
440 | |||
441 | CVE_STATUS[CVE-2013-4513] = "fixed-version: Fixed from version 3.12" | ||
442 | |||
443 | CVE_STATUS[CVE-2013-4514] = "fixed-version: Fixed from version 3.12" | ||
444 | |||
445 | CVE_STATUS[CVE-2013-4515] = "fixed-version: Fixed from version 3.12" | ||
446 | |||
447 | CVE_STATUS[CVE-2013-4516] = "fixed-version: Fixed from version 3.12" | ||
448 | |||
449 | CVE_STATUS[CVE-2013-4563] = "fixed-version: Fixed from version 3.13rc1" | ||
450 | |||
451 | CVE_STATUS[CVE-2013-4579] = "fixed-version: Fixed from version 3.13rc7" | ||
452 | |||
453 | CVE_STATUS[CVE-2013-4587] = "fixed-version: Fixed from version 3.13rc4" | ||
454 | |||
455 | CVE_STATUS[CVE-2013-4588] = "fixed-version: Fixed from version 2.6.33rc4" | ||
456 | |||
457 | CVE_STATUS[CVE-2013-4591] = "fixed-version: Fixed from version 3.8rc1" | ||
458 | |||
459 | CVE_STATUS[CVE-2013-4592] = "fixed-version: Fixed from version 3.7rc1" | ||
460 | |||
461 | # Skipping CVE-2013-4737, no affected_versions | ||
462 | |||
463 | # Skipping CVE-2013-4738, no affected_versions | ||
464 | |||
465 | # Skipping CVE-2013-4739, no affected_versions | ||
466 | |||
467 | CVE_STATUS[CVE-2013-5634] = "fixed-version: Fixed from version 3.10rc5" | ||
468 | |||
469 | CVE_STATUS[CVE-2013-6282] = "fixed-version: Fixed from version 3.6rc6" | ||
470 | |||
471 | CVE_STATUS[CVE-2013-6367] = "fixed-version: Fixed from version 3.13rc4" | ||
472 | |||
473 | CVE_STATUS[CVE-2013-6368] = "fixed-version: Fixed from version 3.13rc4" | ||
474 | |||
475 | CVE_STATUS[CVE-2013-6376] = "fixed-version: Fixed from version 3.13rc4" | ||
476 | |||
477 | CVE_STATUS[CVE-2013-6378] = "fixed-version: Fixed from version 3.13rc1" | ||
478 | |||
479 | CVE_STATUS[CVE-2013-6380] = "fixed-version: Fixed from version 3.13rc1" | ||
480 | |||
481 | CVE_STATUS[CVE-2013-6381] = "fixed-version: Fixed from version 3.13rc1" | ||
482 | |||
483 | CVE_STATUS[CVE-2013-6382] = "fixed-version: Fixed from version 3.13rc4" | ||
484 | |||
485 | CVE_STATUS[CVE-2013-6383] = "fixed-version: Fixed from version 3.12" | ||
486 | |||
487 | # Skipping CVE-2013-6392, no affected_versions | ||
488 | |||
489 | CVE_STATUS[CVE-2013-6431] = "fixed-version: Fixed from version 3.12rc1" | ||
490 | |||
491 | CVE_STATUS[CVE-2013-6432] = "fixed-version: Fixed from version 3.13rc1" | ||
492 | |||
493 | CVE_STATUS[CVE-2013-6885] = "fixed-version: Fixed from version 3.14rc1" | ||
494 | |||
495 | CVE_STATUS[CVE-2013-7026] = "fixed-version: Fixed from version 3.13rc1" | ||
496 | |||
497 | CVE_STATUS[CVE-2013-7027] = "fixed-version: Fixed from version 3.12rc7" | ||
498 | |||
499 | CVE_STATUS[CVE-2013-7263] = "fixed-version: Fixed from version 3.13rc1" | ||
500 | |||
501 | CVE_STATUS[CVE-2013-7264] = "fixed-version: Fixed from version 3.13rc1" | ||
502 | |||
503 | CVE_STATUS[CVE-2013-7265] = "fixed-version: Fixed from version 3.13rc1" | ||
504 | |||
505 | CVE_STATUS[CVE-2013-7266] = "fixed-version: Fixed from version 3.13rc1" | ||
506 | |||
507 | CVE_STATUS[CVE-2013-7267] = "fixed-version: Fixed from version 3.13rc1" | ||
508 | |||
509 | CVE_STATUS[CVE-2013-7268] = "fixed-version: Fixed from version 3.13rc1" | ||
510 | |||
511 | CVE_STATUS[CVE-2013-7269] = "fixed-version: Fixed from version 3.13rc1" | ||
512 | |||
513 | CVE_STATUS[CVE-2013-7270] = "fixed-version: Fixed from version 3.13rc1" | ||
514 | |||
515 | CVE_STATUS[CVE-2013-7271] = "fixed-version: Fixed from version 3.13rc1" | ||
516 | |||
517 | CVE_STATUS[CVE-2013-7281] = "fixed-version: Fixed from version 3.13rc1" | ||
518 | |||
519 | CVE_STATUS[CVE-2013-7339] = "fixed-version: Fixed from version 3.13rc7" | ||
520 | |||
521 | CVE_STATUS[CVE-2013-7348] = "fixed-version: Fixed from version 3.13rc1" | ||
522 | |||
523 | CVE_STATUS[CVE-2013-7421] = "fixed-version: Fixed from version 3.19rc1" | ||
524 | |||
525 | # CVE-2013-7445 has no known resolution | ||
526 | |||
527 | CVE_STATUS[CVE-2013-7446] = "fixed-version: Fixed from version 4.4rc4" | ||
528 | |||
529 | CVE_STATUS[CVE-2013-7470] = "fixed-version: Fixed from version 3.12rc7" | ||
530 | |||
531 | CVE_STATUS[CVE-2014-0038] = "fixed-version: Fixed from version 3.14rc1" | ||
532 | |||
533 | CVE_STATUS[CVE-2014-0049] = "fixed-version: Fixed from version 3.14rc5" | ||
534 | |||
535 | CVE_STATUS[CVE-2014-0055] = "fixed-version: Fixed from version 3.14" | ||
536 | |||
537 | CVE_STATUS[CVE-2014-0069] = "fixed-version: Fixed from version 3.14rc4" | ||
538 | |||
539 | CVE_STATUS[CVE-2014-0077] = "fixed-version: Fixed from version 3.14" | ||
540 | |||
541 | CVE_STATUS[CVE-2014-0100] = "fixed-version: Fixed from version 3.14rc7" | ||
542 | |||
543 | CVE_STATUS[CVE-2014-0101] = "fixed-version: Fixed from version 3.14rc6" | ||
544 | |||
545 | CVE_STATUS[CVE-2014-0102] = "fixed-version: Fixed from version 3.14rc6" | ||
546 | |||
547 | CVE_STATUS[CVE-2014-0131] = "fixed-version: Fixed from version 3.14rc7" | ||
548 | |||
549 | CVE_STATUS[CVE-2014-0155] = "fixed-version: Fixed from version 3.15rc2" | ||
550 | |||
551 | CVE_STATUS[CVE-2014-0181] = "fixed-version: Fixed from version 3.15rc5" | ||
552 | |||
553 | CVE_STATUS[CVE-2014-0196] = "fixed-version: Fixed from version 3.15rc5" | ||
554 | |||
555 | CVE_STATUS[CVE-2014-0203] = "fixed-version: Fixed from version 2.6.33rc5" | ||
556 | |||
557 | CVE_STATUS[CVE-2014-0205] = "fixed-version: Fixed from version 2.6.37rc1" | ||
558 | |||
559 | CVE_STATUS[CVE-2014-0206] = "fixed-version: Fixed from version 3.16rc3" | ||
560 | |||
561 | # Skipping CVE-2014-0972, no affected_versions | ||
562 | |||
563 | CVE_STATUS[CVE-2014-1438] = "fixed-version: Fixed from version 3.13" | ||
564 | |||
565 | CVE_STATUS[CVE-2014-1444] = "fixed-version: Fixed from version 3.12rc7" | ||
566 | |||
567 | CVE_STATUS[CVE-2014-1445] = "fixed-version: Fixed from version 3.12rc7" | ||
568 | |||
569 | CVE_STATUS[CVE-2014-1446] = "fixed-version: Fixed from version 3.13rc7" | ||
570 | |||
571 | CVE_STATUS[CVE-2014-1690] = "fixed-version: Fixed from version 3.13rc8" | ||
572 | |||
573 | CVE_STATUS[CVE-2014-1737] = "fixed-version: Fixed from version 3.15rc5" | ||
574 | |||
575 | CVE_STATUS[CVE-2014-1738] = "fixed-version: Fixed from version 3.15rc5" | ||
576 | |||
577 | CVE_STATUS[CVE-2014-1739] = "fixed-version: Fixed from version 3.15rc6" | ||
578 | |||
579 | CVE_STATUS[CVE-2014-1874] = "fixed-version: Fixed from version 3.14rc2" | ||
580 | |||
581 | CVE_STATUS[CVE-2014-2038] = "fixed-version: Fixed from version 3.14rc1" | ||
582 | |||
583 | CVE_STATUS[CVE-2014-2039] = "fixed-version: Fixed from version 3.14rc3" | ||
584 | |||
585 | CVE_STATUS[CVE-2014-2309] = "fixed-version: Fixed from version 3.14rc7" | ||
586 | |||
587 | CVE_STATUS[CVE-2014-2523] = "fixed-version: Fixed from version 3.14rc1" | ||
588 | |||
589 | CVE_STATUS[CVE-2014-2568] = "fixed-version: Fixed from version 3.14" | ||
590 | |||
591 | CVE_STATUS[CVE-2014-2580] = "fixed-version: Fixed from version 3.15rc1" | ||
592 | |||
593 | CVE_STATUS[CVE-2014-2672] = "fixed-version: Fixed from version 3.14rc6" | ||
594 | |||
595 | CVE_STATUS[CVE-2014-2673] = "fixed-version: Fixed from version 3.14rc6" | ||
596 | |||
597 | CVE_STATUS[CVE-2014-2678] = "fixed-version: Fixed from version 3.15rc1" | ||
598 | |||
599 | CVE_STATUS[CVE-2014-2706] = "fixed-version: Fixed from version 3.14rc6" | ||
600 | |||
601 | CVE_STATUS[CVE-2014-2739] = "fixed-version: Fixed from version 3.15rc1" | ||
602 | |||
603 | CVE_STATUS[CVE-2014-2851] = "fixed-version: Fixed from version 3.15rc2" | ||
604 | |||
605 | CVE_STATUS[CVE-2014-2889] = "fixed-version: Fixed from version 3.2rc7" | ||
606 | |||
607 | CVE_STATUS[CVE-2014-3122] = "fixed-version: Fixed from version 3.15rc1" | ||
608 | |||
609 | CVE_STATUS[CVE-2014-3144] = "fixed-version: Fixed from version 3.15rc2" | ||
610 | |||
611 | CVE_STATUS[CVE-2014-3145] = "fixed-version: Fixed from version 3.15rc2" | ||
612 | |||
613 | CVE_STATUS[CVE-2014-3153] = "fixed-version: Fixed from version 3.15" | ||
614 | |||
615 | CVE_STATUS[CVE-2014-3180] = "fixed-version: Fixed from version 3.17rc4" | ||
616 | |||
617 | CVE_STATUS[CVE-2014-3181] = "fixed-version: Fixed from version 3.17rc3" | ||
618 | |||
619 | CVE_STATUS[CVE-2014-3182] = "fixed-version: Fixed from version 3.17rc2" | ||
620 | |||
621 | CVE_STATUS[CVE-2014-3183] = "fixed-version: Fixed from version 3.17rc2" | ||
622 | |||
623 | CVE_STATUS[CVE-2014-3184] = "fixed-version: Fixed from version 3.17rc2" | ||
624 | |||
625 | CVE_STATUS[CVE-2014-3185] = "fixed-version: Fixed from version 3.17rc3" | ||
626 | |||
627 | CVE_STATUS[CVE-2014-3186] = "fixed-version: Fixed from version 3.17rc3" | ||
628 | |||
629 | # Skipping CVE-2014-3519, no affected_versions | ||
630 | |||
631 | CVE_STATUS[CVE-2014-3534] = "fixed-version: Fixed from version 3.16rc7" | ||
632 | |||
633 | CVE_STATUS[CVE-2014-3535] = "fixed-version: Fixed from version 2.6.36rc1" | ||
634 | |||
635 | CVE_STATUS[CVE-2014-3601] = "fixed-version: Fixed from version 3.17rc2" | ||
636 | |||
637 | CVE_STATUS[CVE-2014-3610] = "fixed-version: Fixed from version 3.18rc2" | ||
638 | |||
639 | CVE_STATUS[CVE-2014-3611] = "fixed-version: Fixed from version 3.18rc2" | ||
640 | |||
641 | CVE_STATUS[CVE-2014-3631] = "fixed-version: Fixed from version 3.17rc5" | ||
642 | |||
643 | CVE_STATUS[CVE-2014-3645] = "fixed-version: Fixed from version 3.12rc1" | ||
644 | |||
645 | CVE_STATUS[CVE-2014-3646] = "fixed-version: Fixed from version 3.18rc2" | ||
646 | |||
647 | CVE_STATUS[CVE-2014-3647] = "fixed-version: Fixed from version 3.18rc2" | ||
648 | |||
649 | CVE_STATUS[CVE-2014-3673] = "fixed-version: Fixed from version 3.18rc1" | ||
650 | |||
651 | CVE_STATUS[CVE-2014-3687] = "fixed-version: Fixed from version 3.18rc1" | ||
652 | |||
653 | CVE_STATUS[CVE-2014-3688] = "fixed-version: Fixed from version 3.18rc1" | ||
654 | |||
655 | CVE_STATUS[CVE-2014-3690] = "fixed-version: Fixed from version 3.18rc1" | ||
656 | |||
657 | CVE_STATUS[CVE-2014-3917] = "fixed-version: Fixed from version 3.16rc1" | ||
658 | |||
659 | CVE_STATUS[CVE-2014-3940] = "fixed-version: Fixed from version 3.15" | ||
660 | |||
661 | CVE_STATUS[CVE-2014-4014] = "fixed-version: Fixed from version 3.16rc1" | ||
662 | |||
663 | CVE_STATUS[CVE-2014-4027] = "fixed-version: Fixed from version 3.14rc1" | ||
664 | |||
665 | CVE_STATUS[CVE-2014-4157] = "fixed-version: Fixed from version 3.15rc1" | ||
666 | |||
667 | CVE_STATUS[CVE-2014-4171] = "fixed-version: Fixed from version 3.16rc3" | ||
668 | |||
669 | # Skipping CVE-2014-4322, no affected_versions | ||
670 | |||
671 | # Skipping CVE-2014-4323, no affected_versions | ||
672 | |||
673 | CVE_STATUS[CVE-2014-4508] = "fixed-version: Fixed from version 3.16rc3" | ||
674 | |||
675 | CVE_STATUS[CVE-2014-4608] = "fixed-version: Fixed from version 3.18rc1" | ||
676 | |||
677 | CVE_STATUS[CVE-2014-4611] = "fixed-version: Fixed from version 3.16rc3" | ||
678 | |||
679 | CVE_STATUS[CVE-2014-4652] = "fixed-version: Fixed from version 3.16rc2" | ||
680 | |||
681 | CVE_STATUS[CVE-2014-4653] = "fixed-version: Fixed from version 3.16rc2" | ||
682 | |||
683 | CVE_STATUS[CVE-2014-4654] = "fixed-version: Fixed from version 3.16rc2" | ||
684 | |||
685 | CVE_STATUS[CVE-2014-4655] = "fixed-version: Fixed from version 3.16rc2" | ||
686 | |||
687 | CVE_STATUS[CVE-2014-4656] = "fixed-version: Fixed from version 3.16rc2" | ||
688 | |||
689 | CVE_STATUS[CVE-2014-4667] = "fixed-version: Fixed from version 3.16rc1" | ||
690 | |||
691 | CVE_STATUS[CVE-2014-4699] = "fixed-version: Fixed from version 3.16rc4" | ||
692 | |||
693 | CVE_STATUS[CVE-2014-4943] = "fixed-version: Fixed from version 3.16rc6" | ||
694 | |||
695 | CVE_STATUS[CVE-2014-5045] = "fixed-version: Fixed from version 3.16rc7" | ||
696 | |||
697 | CVE_STATUS[CVE-2014-5077] = "fixed-version: Fixed from version 3.16" | ||
698 | |||
699 | CVE_STATUS[CVE-2014-5206] = "fixed-version: Fixed from version 3.17rc1" | ||
700 | |||
701 | CVE_STATUS[CVE-2014-5207] = "fixed-version: Fixed from version 3.17rc1" | ||
702 | |||
703 | # Skipping CVE-2014-5332, no affected_versions | ||
704 | |||
705 | CVE_STATUS[CVE-2014-5471] = "fixed-version: Fixed from version 3.17rc2" | ||
706 | |||
707 | CVE_STATUS[CVE-2014-5472] = "fixed-version: Fixed from version 3.17rc2" | ||
708 | |||
709 | CVE_STATUS[CVE-2014-6410] = "fixed-version: Fixed from version 3.17rc5" | ||
710 | |||
711 | CVE_STATUS[CVE-2014-6416] = "fixed-version: Fixed from version 3.17rc5" | ||
712 | |||
713 | CVE_STATUS[CVE-2014-6417] = "fixed-version: Fixed from version 3.17rc5" | ||
714 | |||
715 | CVE_STATUS[CVE-2014-6418] = "fixed-version: Fixed from version 3.17rc5" | ||
716 | |||
717 | CVE_STATUS[CVE-2014-7145] = "fixed-version: Fixed from version 3.17rc2" | ||
718 | |||
719 | # Skipping CVE-2014-7207, no affected_versions | ||
720 | |||
721 | CVE_STATUS[CVE-2014-7283] = "fixed-version: Fixed from version 3.15rc1" | ||
722 | |||
723 | CVE_STATUS[CVE-2014-7284] = "fixed-version: Fixed from version 3.15rc7" | ||
724 | |||
725 | CVE_STATUS[CVE-2014-7822] = "fixed-version: Fixed from version 3.16rc1" | ||
726 | |||
727 | CVE_STATUS[CVE-2014-7825] = "fixed-version: Fixed from version 3.18rc3" | ||
728 | |||
729 | CVE_STATUS[CVE-2014-7826] = "fixed-version: Fixed from version 3.18rc3" | ||
730 | |||
731 | CVE_STATUS[CVE-2014-7841] = "fixed-version: Fixed from version 3.18rc5" | ||
732 | |||
733 | CVE_STATUS[CVE-2014-7842] = "fixed-version: Fixed from version 3.18rc1" | ||
734 | |||
735 | CVE_STATUS[CVE-2014-7843] = "fixed-version: Fixed from version 3.18rc5" | ||
736 | |||
737 | CVE_STATUS[CVE-2014-7970] = "fixed-version: Fixed from version 3.18rc1" | ||
738 | |||
739 | CVE_STATUS[CVE-2014-7975] = "fixed-version: Fixed from version 3.18rc1" | ||
740 | |||
741 | CVE_STATUS[CVE-2014-8086] = "fixed-version: Fixed from version 3.18rc3" | ||
742 | |||
743 | CVE_STATUS[CVE-2014-8133] = "fixed-version: Fixed from version 3.19rc1" | ||
744 | |||
745 | CVE_STATUS[CVE-2014-8134] = "fixed-version: Fixed from version 3.19rc1" | ||
746 | |||
747 | CVE_STATUS[CVE-2014-8159] = "fixed-version: Fixed from version 4.0rc7" | ||
748 | |||
749 | CVE_STATUS[CVE-2014-8160] = "fixed-version: Fixed from version 3.18rc1" | ||
750 | |||
751 | CVE_STATUS[CVE-2014-8171] = "fixed-version: Fixed from version 3.12rc1" | ||
752 | |||
753 | CVE_STATUS[CVE-2014-8172] = "fixed-version: Fixed from version 3.13rc1" | ||
754 | |||
755 | CVE_STATUS[CVE-2014-8173] = "fixed-version: Fixed from version 3.13rc5" | ||
756 | |||
757 | # Skipping CVE-2014-8181, no affected_versions | ||
758 | |||
759 | CVE_STATUS[CVE-2014-8369] = "fixed-version: Fixed from version 3.18rc2" | ||
760 | |||
761 | CVE_STATUS[CVE-2014-8480] = "fixed-version: Fixed from version 3.18rc2" | ||
762 | |||
763 | CVE_STATUS[CVE-2014-8481] = "fixed-version: Fixed from version 3.18rc2" | ||
764 | |||
765 | CVE_STATUS[CVE-2014-8559] = "fixed-version: Fixed from version 3.19rc1" | ||
766 | |||
767 | CVE_STATUS[CVE-2014-8709] = "fixed-version: Fixed from version 3.14rc3" | ||
768 | |||
769 | CVE_STATUS[CVE-2014-8884] = "fixed-version: Fixed from version 3.18rc1" | ||
770 | |||
771 | CVE_STATUS[CVE-2014-8989] = "fixed-version: Fixed from version 3.19rc1" | ||
772 | |||
773 | CVE_STATUS[CVE-2014-9090] = "fixed-version: Fixed from version 3.18rc6" | ||
774 | |||
775 | CVE_STATUS[CVE-2014-9322] = "fixed-version: Fixed from version 3.18rc6" | ||
776 | |||
777 | CVE_STATUS[CVE-2014-9419] = "fixed-version: Fixed from version 3.19rc1" | ||
778 | |||
779 | CVE_STATUS[CVE-2014-9420] = "fixed-version: Fixed from version 3.19rc1" | ||
780 | |||
781 | CVE_STATUS[CVE-2014-9428] = "fixed-version: Fixed from version 3.19rc3" | ||
782 | |||
783 | CVE_STATUS[CVE-2014-9529] = "fixed-version: Fixed from version 3.19rc4" | ||
784 | |||
785 | CVE_STATUS[CVE-2014-9584] = "fixed-version: Fixed from version 3.19rc3" | ||
786 | |||
787 | CVE_STATUS[CVE-2014-9585] = "fixed-version: Fixed from version 3.19rc4" | ||
788 | |||
789 | CVE_STATUS[CVE-2014-9644] = "fixed-version: Fixed from version 3.19rc1" | ||
790 | |||
791 | CVE_STATUS[CVE-2014-9683] = "fixed-version: Fixed from version 3.19rc1" | ||
792 | |||
793 | CVE_STATUS[CVE-2014-9710] = "fixed-version: Fixed from version 3.19rc1" | ||
794 | |||
795 | CVE_STATUS[CVE-2014-9715] = "fixed-version: Fixed from version 3.15rc1" | ||
796 | |||
797 | CVE_STATUS[CVE-2014-9717] = "fixed-version: Fixed from version 4.1rc1" | ||
798 | |||
799 | CVE_STATUS[CVE-2014-9728] = "fixed-version: Fixed from version 3.19rc3" | ||
800 | |||
801 | CVE_STATUS[CVE-2014-9729] = "fixed-version: Fixed from version 3.19rc3" | ||
802 | |||
803 | CVE_STATUS[CVE-2014-9730] = "fixed-version: Fixed from version 3.19rc3" | ||
804 | |||
805 | CVE_STATUS[CVE-2014-9731] = "fixed-version: Fixed from version 3.19rc3" | ||
806 | |||
807 | # Skipping CVE-2014-9777, no affected_versions | ||
808 | |||
809 | # Skipping CVE-2014-9778, no affected_versions | ||
810 | |||
811 | # Skipping CVE-2014-9779, no affected_versions | ||
812 | |||
813 | # Skipping CVE-2014-9780, no affected_versions | ||
814 | |||
815 | # Skipping CVE-2014-9781, no affected_versions | ||
816 | |||
817 | # Skipping CVE-2014-9782, no affected_versions | ||
818 | |||
819 | # Skipping CVE-2014-9783, no affected_versions | ||
820 | |||
821 | # Skipping CVE-2014-9784, no affected_versions | ||
822 | |||
823 | # Skipping CVE-2014-9785, no affected_versions | ||
824 | |||
825 | # Skipping CVE-2014-9786, no affected_versions | ||
826 | |||
827 | # Skipping CVE-2014-9787, no affected_versions | ||
828 | |||
829 | # Skipping CVE-2014-9788, no affected_versions | ||
830 | |||
831 | # Skipping CVE-2014-9789, no affected_versions | ||
832 | |||
833 | CVE_STATUS[CVE-2014-9803] = "fixed-version: Fixed from version 3.16rc1" | ||
834 | |||
835 | # Skipping CVE-2014-9863, no affected_versions | ||
836 | |||
837 | # Skipping CVE-2014-9864, no affected_versions | ||
838 | |||
839 | # Skipping CVE-2014-9865, no affected_versions | ||
840 | |||
841 | # Skipping CVE-2014-9866, no affected_versions | ||
842 | |||
843 | # Skipping CVE-2014-9867, no affected_versions | ||
844 | |||
845 | # Skipping CVE-2014-9868, no affected_versions | ||
846 | |||
847 | # Skipping CVE-2014-9869, no affected_versions | ||
848 | |||
849 | CVE_STATUS[CVE-2014-9870] = "fixed-version: Fixed from version 3.11rc1" | ||
850 | |||
851 | # Skipping CVE-2014-9871, no affected_versions | ||
852 | |||
853 | # Skipping CVE-2014-9872, no affected_versions | ||
854 | |||
855 | # Skipping CVE-2014-9873, no affected_versions | ||
856 | |||
857 | # Skipping CVE-2014-9874, no affected_versions | ||
858 | |||
859 | # Skipping CVE-2014-9875, no affected_versions | ||
860 | |||
861 | # Skipping CVE-2014-9876, no affected_versions | ||
862 | |||
863 | # Skipping CVE-2014-9877, no affected_versions | ||
864 | |||
865 | # Skipping CVE-2014-9878, no affected_versions | ||
866 | |||
867 | # Skipping CVE-2014-9879, no affected_versions | ||
868 | |||
869 | # Skipping CVE-2014-9880, no affected_versions | ||
870 | |||
871 | # Skipping CVE-2014-9881, no affected_versions | ||
872 | |||
873 | # Skipping CVE-2014-9882, no affected_versions | ||
874 | |||
875 | # Skipping CVE-2014-9883, no affected_versions | ||
876 | |||
877 | # Skipping CVE-2014-9884, no affected_versions | ||
878 | |||
879 | # Skipping CVE-2014-9885, no affected_versions | ||
880 | |||
881 | # Skipping CVE-2014-9886, no affected_versions | ||
882 | |||
883 | # Skipping CVE-2014-9887, no affected_versions | ||
884 | |||
885 | CVE_STATUS[CVE-2014-9888] = "fixed-version: Fixed from version 3.13rc1" | ||
886 | |||
887 | # Skipping CVE-2014-9889, no affected_versions | ||
888 | |||
889 | # Skipping CVE-2014-9890, no affected_versions | ||
890 | |||
891 | # Skipping CVE-2014-9891, no affected_versions | ||
892 | |||
893 | # Skipping CVE-2014-9892, no affected_versions | ||
894 | |||
895 | # Skipping CVE-2014-9893, no affected_versions | ||
896 | |||
897 | # Skipping CVE-2014-9894, no affected_versions | ||
898 | |||
899 | CVE_STATUS[CVE-2014-9895] = "fixed-version: Fixed from version 3.11rc1" | ||
900 | |||
901 | # Skipping CVE-2014-9896, no affected_versions | ||
902 | |||
903 | # Skipping CVE-2014-9897, no affected_versions | ||
904 | |||
905 | # Skipping CVE-2014-9898, no affected_versions | ||
906 | |||
907 | # Skipping CVE-2014-9899, no affected_versions | ||
908 | |||
909 | # Skipping CVE-2014-9900, no affected_versions | ||
910 | |||
911 | CVE_STATUS[CVE-2014-9903] = "fixed-version: Fixed from version 3.14rc4" | ||
912 | |||
913 | CVE_STATUS[CVE-2014-9904] = "fixed-version: Fixed from version 3.17rc1" | ||
914 | |||
915 | CVE_STATUS[CVE-2014-9914] = "fixed-version: Fixed from version 3.16rc1" | ||
916 | |||
917 | CVE_STATUS[CVE-2014-9922] = "fixed-version: Fixed from version 3.18rc2" | ||
918 | |||
919 | CVE_STATUS[CVE-2014-9940] = "fixed-version: Fixed from version 3.19rc1" | ||
920 | |||
921 | CVE_STATUS[CVE-2015-0239] = "fixed-version: Fixed from version 3.19rc6" | ||
922 | |||
923 | CVE_STATUS[CVE-2015-0274] = "fixed-version: Fixed from version 3.15rc5" | ||
924 | |||
925 | CVE_STATUS[CVE-2015-0275] = "fixed-version: Fixed from version 4.1rc1" | ||
926 | |||
927 | # Skipping CVE-2015-0777, no affected_versions | ||
928 | |||
929 | # Skipping CVE-2015-1328, no affected_versions | ||
930 | |||
931 | CVE_STATUS[CVE-2015-1333] = "fixed-version: Fixed from version 4.2rc5" | ||
932 | |||
933 | CVE_STATUS[CVE-2015-1339] = "fixed-version: Fixed from version 4.4rc5" | ||
934 | |||
935 | CVE_STATUS[CVE-2015-1350] = "fixed-version: Fixed from version 4.9rc1" | ||
936 | |||
937 | CVE_STATUS[CVE-2015-1420] = "fixed-version: Fixed from version 4.1rc7" | ||
938 | |||
939 | CVE_STATUS[CVE-2015-1421] = "fixed-version: Fixed from version 3.19rc7" | ||
940 | |||
941 | CVE_STATUS[CVE-2015-1465] = "fixed-version: Fixed from version 3.19rc7" | ||
942 | |||
943 | CVE_STATUS[CVE-2015-1573] = "fixed-version: Fixed from version 3.19rc5" | ||
944 | |||
945 | CVE_STATUS[CVE-2015-1593] = "fixed-version: Fixed from version 4.0rc1" | ||
946 | |||
947 | CVE_STATUS[CVE-2015-1805] = "fixed-version: Fixed from version 3.16rc1" | ||
948 | |||
949 | CVE_STATUS[CVE-2015-2041] = "fixed-version: Fixed from version 3.19rc7" | ||
950 | |||
951 | CVE_STATUS[CVE-2015-2042] = "fixed-version: Fixed from version 3.19" | ||
952 | |||
953 | CVE_STATUS[CVE-2015-2150] = "fixed-version: Fixed from version 4.0rc4" | ||
954 | |||
955 | CVE_STATUS[CVE-2015-2666] = "fixed-version: Fixed from version 4.0rc1" | ||
956 | |||
957 | CVE_STATUS[CVE-2015-2672] = "fixed-version: Fixed from version 4.0rc3" | ||
958 | |||
959 | CVE_STATUS[CVE-2015-2686] = "fixed-version: Fixed from version 4.0rc6" | ||
960 | |||
961 | CVE_STATUS[CVE-2015-2830] = "fixed-version: Fixed from version 4.0rc3" | ||
962 | |||
963 | # CVE-2015-2877 has no known resolution | ||
964 | |||
965 | CVE_STATUS[CVE-2015-2922] = "fixed-version: Fixed from version 4.0rc7" | ||
966 | |||
967 | CVE_STATUS[CVE-2015-2925] = "fixed-version: Fixed from version 4.3rc1" | ||
968 | |||
969 | CVE_STATUS[CVE-2015-3212] = "fixed-version: Fixed from version 4.2rc1" | ||
970 | |||
971 | CVE_STATUS[CVE-2015-3214] = "fixed-version: Fixed from version 2.6.33rc8" | ||
972 | |||
973 | CVE_STATUS[CVE-2015-3288] = "fixed-version: Fixed from version 4.2rc2" | ||
974 | |||
975 | CVE_STATUS[CVE-2015-3290] = "fixed-version: Fixed from version 4.2rc3" | ||
976 | |||
977 | CVE_STATUS[CVE-2015-3291] = "fixed-version: Fixed from version 4.2rc3" | ||
978 | |||
979 | CVE_STATUS[CVE-2015-3331] = "fixed-version: Fixed from version 4.0rc5" | ||
980 | |||
981 | # Skipping CVE-2015-3332, no affected_versions | ||
982 | |||
983 | CVE_STATUS[CVE-2015-3339] = "fixed-version: Fixed from version 4.1rc1" | ||
984 | |||
985 | CVE_STATUS[CVE-2015-3636] = "fixed-version: Fixed from version 4.1rc2" | ||
986 | |||
987 | CVE_STATUS[CVE-2015-4001] = "fixed-version: Fixed from version 4.1rc7" | ||
988 | |||
989 | CVE_STATUS[CVE-2015-4002] = "fixed-version: Fixed from version 4.1rc7" | ||
990 | |||
991 | CVE_STATUS[CVE-2015-4003] = "fixed-version: Fixed from version 4.1rc7" | ||
992 | |||
993 | CVE_STATUS[CVE-2015-4004] = "fixed-version: Fixed from version 4.3rc1" | ||
994 | |||
995 | CVE_STATUS[CVE-2015-4036] = "fixed-version: Fixed from version 4.0rc1" | ||
996 | |||
997 | CVE_STATUS[CVE-2015-4167] = "fixed-version: Fixed from version 4.0rc1" | ||
998 | |||
999 | CVE_STATUS[CVE-2015-4170] = "fixed-version: Fixed from version 3.13rc5" | ||
1000 | |||
1001 | CVE_STATUS[CVE-2015-4176] = "fixed-version: Fixed from version 4.1rc1" | ||
1002 | |||
1003 | CVE_STATUS[CVE-2015-4177] = "fixed-version: Fixed from version 4.1rc1" | ||
1004 | |||
1005 | CVE_STATUS[CVE-2015-4178] = "fixed-version: Fixed from version 4.1rc1" | ||
1006 | |||
1007 | CVE_STATUS[CVE-2015-4692] = "fixed-version: Fixed from version 4.2rc1" | ||
1008 | |||
1009 | CVE_STATUS[CVE-2015-4700] = "fixed-version: Fixed from version 4.1rc6" | ||
1010 | |||
1011 | CVE_STATUS[CVE-2015-5156] = "fixed-version: Fixed from version 4.2rc7" | ||
1012 | |||
1013 | CVE_STATUS[CVE-2015-5157] = "fixed-version: Fixed from version 4.2rc3" | ||
1014 | |||
1015 | CVE_STATUS[CVE-2015-5257] = "fixed-version: Fixed from version 4.3rc3" | ||
1016 | |||
1017 | CVE_STATUS[CVE-2015-5283] = "fixed-version: Fixed from version 4.3rc3" | ||
1018 | |||
1019 | CVE_STATUS[CVE-2015-5307] = "fixed-version: Fixed from version 4.4rc1" | ||
1020 | |||
1021 | CVE_STATUS[CVE-2015-5327] = "fixed-version: Fixed from version 4.4rc1" | ||
1022 | |||
1023 | CVE_STATUS[CVE-2015-5364] = "fixed-version: Fixed from version 4.1rc7" | ||
1024 | |||
1025 | CVE_STATUS[CVE-2015-5366] = "fixed-version: Fixed from version 4.1rc7" | ||
1026 | |||
1027 | CVE_STATUS[CVE-2015-5697] = "fixed-version: Fixed from version 4.2rc6" | ||
1028 | |||
1029 | CVE_STATUS[CVE-2015-5706] = "fixed-version: Fixed from version 4.1rc3" | ||
1030 | |||
1031 | CVE_STATUS[CVE-2015-5707] = "fixed-version: Fixed from version 4.1rc1" | ||
1032 | |||
1033 | CVE_STATUS[CVE-2015-6252] = "fixed-version: Fixed from version 4.2rc5" | ||
1034 | |||
1035 | CVE_STATUS[CVE-2015-6526] = "fixed-version: Fixed from version 4.1rc1" | ||
1036 | |||
1037 | # CVE-2015-6619 has no known resolution | ||
1038 | |||
1039 | # CVE-2015-6646 has no known resolution | ||
1040 | |||
1041 | CVE_STATUS[CVE-2015-6937] = "fixed-version: Fixed from version 4.3rc1" | ||
1042 | |||
1043 | # Skipping CVE-2015-7312, no affected_versions | ||
1044 | |||
1045 | CVE_STATUS[CVE-2015-7509] = "fixed-version: Fixed from version 3.7rc1" | ||
1046 | |||
1047 | CVE_STATUS[CVE-2015-7513] = "fixed-version: Fixed from version 4.4rc7" | ||
1048 | |||
1049 | CVE_STATUS[CVE-2015-7515] = "fixed-version: Fixed from version 4.4rc6" | ||
1050 | |||
1051 | CVE_STATUS[CVE-2015-7550] = "fixed-version: Fixed from version 4.4rc8" | ||
1052 | |||
1053 | # Skipping CVE-2015-7553, no affected_versions | ||
1054 | |||
1055 | CVE_STATUS[CVE-2015-7566] = "fixed-version: Fixed from version 4.5rc2" | ||
1056 | |||
1057 | CVE_STATUS[CVE-2015-7613] = "fixed-version: Fixed from version 4.3rc4" | ||
1058 | |||
1059 | CVE_STATUS[CVE-2015-7799] = "fixed-version: Fixed from version 4.4rc1" | ||
1060 | |||
1061 | CVE_STATUS[CVE-2015-7833] = "fixed-version: Fixed from version 4.6rc6" | ||
1062 | |||
1063 | # Skipping CVE-2015-7837, no affected_versions | ||
1064 | |||
1065 | CVE_STATUS[CVE-2015-7872] = "fixed-version: Fixed from version 4.3rc7" | ||
1066 | |||
1067 | CVE_STATUS[CVE-2015-7884] = "fixed-version: Fixed from version 4.4rc1" | ||
1068 | |||
1069 | CVE_STATUS[CVE-2015-7885] = "fixed-version: Fixed from version 4.4rc1" | ||
1070 | |||
1071 | CVE_STATUS[CVE-2015-7990] = "fixed-version: Fixed from version 4.4rc4" | ||
1072 | |||
1073 | # Skipping CVE-2015-8019, no affected_versions | ||
1074 | |||
1075 | CVE_STATUS[CVE-2015-8104] = "fixed-version: Fixed from version 4.4rc1" | ||
1076 | |||
1077 | CVE_STATUS[CVE-2015-8215] = "fixed-version: Fixed from version 4.0rc3" | ||
1078 | |||
1079 | CVE_STATUS[CVE-2015-8324] = "fixed-version: Fixed from version 2.6.34rc1" | ||
1080 | |||
1081 | CVE_STATUS[CVE-2015-8374] = "fixed-version: Fixed from version 4.4rc1" | ||
1082 | |||
1083 | CVE_STATUS[CVE-2015-8539] = "fixed-version: Fixed from version 4.4rc3" | ||
1084 | |||
1085 | CVE_STATUS[CVE-2015-8543] = "fixed-version: Fixed from version 4.4rc6" | ||
1086 | |||
1087 | CVE_STATUS[CVE-2015-8550] = "fixed-version: Fixed from version 4.4rc6" | ||
1088 | |||
1089 | CVE_STATUS[CVE-2015-8551] = "fixed-version: Fixed from version 4.4rc6" | ||
1090 | |||
1091 | CVE_STATUS[CVE-2015-8552] = "fixed-version: Fixed from version 4.4rc6" | ||
1092 | |||
1093 | CVE_STATUS[CVE-2015-8553] = "fixed-version: Fixed from version 4.4rc6" | ||
1094 | |||
1095 | CVE_STATUS[CVE-2015-8569] = "fixed-version: Fixed from version 4.4rc6" | ||
1096 | |||
1097 | CVE_STATUS[CVE-2015-8575] = "fixed-version: Fixed from version 4.4rc6" | ||
1098 | |||
1099 | CVE_STATUS[CVE-2015-8660] = "fixed-version: Fixed from version 4.4rc4" | ||
1100 | |||
1101 | CVE_STATUS[CVE-2015-8709] = "fixed-version: Fixed from version 4.10rc1" | ||
1102 | |||
1103 | CVE_STATUS[CVE-2015-8746] = "fixed-version: Fixed from version 4.3rc1" | ||
1104 | |||
1105 | CVE_STATUS[CVE-2015-8767] = "fixed-version: Fixed from version 4.3rc4" | ||
1106 | |||
1107 | CVE_STATUS[CVE-2015-8785] = "fixed-version: Fixed from version 4.4rc5" | ||
1108 | |||
1109 | CVE_STATUS[CVE-2015-8787] = "fixed-version: Fixed from version 4.4rc1" | ||
1110 | |||
1111 | CVE_STATUS[CVE-2015-8812] = "fixed-version: Fixed from version 4.5rc1" | ||
1112 | |||
1113 | CVE_STATUS[CVE-2015-8816] = "fixed-version: Fixed from version 4.4rc6" | ||
1114 | |||
1115 | CVE_STATUS[CVE-2015-8830] = "fixed-version: Fixed from version 4.1rc1" | ||
1116 | |||
1117 | CVE_STATUS[CVE-2015-8839] = "fixed-version: Fixed from version 4.5rc1" | ||
1118 | |||
1119 | CVE_STATUS[CVE-2015-8844] = "fixed-version: Fixed from version 4.4rc3" | ||
1120 | |||
1121 | CVE_STATUS[CVE-2015-8845] = "fixed-version: Fixed from version 4.4rc3" | ||
1122 | |||
1123 | # Skipping CVE-2015-8937, no affected_versions | ||
1124 | |||
1125 | # Skipping CVE-2015-8938, no affected_versions | ||
1126 | |||
1127 | # Skipping CVE-2015-8939, no affected_versions | ||
1128 | |||
1129 | # Skipping CVE-2015-8940, no affected_versions | ||
1130 | |||
1131 | # Skipping CVE-2015-8941, no affected_versions | ||
1132 | |||
1133 | # Skipping CVE-2015-8942, no affected_versions | ||
1134 | |||
1135 | # Skipping CVE-2015-8943, no affected_versions | ||
1136 | |||
1137 | # Skipping CVE-2015-8944, no affected_versions | ||
1138 | |||
1139 | CVE_STATUS[CVE-2015-8950] = "fixed-version: Fixed from version 4.1rc2" | ||
1140 | |||
1141 | CVE_STATUS[CVE-2015-8952] = "fixed-version: Fixed from version 4.6rc1" | ||
1142 | |||
1143 | CVE_STATUS[CVE-2015-8953] = "fixed-version: Fixed from version 4.3" | ||
1144 | |||
1145 | CVE_STATUS[CVE-2015-8955] = "fixed-version: Fixed from version 4.1rc1" | ||
1146 | |||
1147 | CVE_STATUS[CVE-2015-8956] = "fixed-version: Fixed from version 4.2rc1" | ||
1148 | |||
1149 | CVE_STATUS[CVE-2015-8961] = "fixed-version: Fixed from version 4.4rc1" | ||
1150 | |||
1151 | CVE_STATUS[CVE-2015-8962] = "fixed-version: Fixed from version 4.4rc1" | ||
1152 | |||
1153 | CVE_STATUS[CVE-2015-8963] = "fixed-version: Fixed from version 4.4" | ||
1154 | |||
1155 | CVE_STATUS[CVE-2015-8964] = "fixed-version: Fixed from version 4.5rc1" | ||
1156 | |||
1157 | CVE_STATUS[CVE-2015-8966] = "fixed-version: Fixed from version 4.4rc8" | ||
1158 | |||
1159 | CVE_STATUS[CVE-2015-8967] = "fixed-version: Fixed from version 4.0rc1" | ||
1160 | |||
1161 | CVE_STATUS[CVE-2015-8970] = "fixed-version: Fixed from version 4.5rc1" | ||
1162 | |||
1163 | CVE_STATUS[CVE-2015-9004] = "fixed-version: Fixed from version 3.19rc7" | ||
1164 | |||
1165 | CVE_STATUS[CVE-2015-9016] = "fixed-version: Fixed from version 4.3rc1" | ||
1166 | |||
1167 | CVE_STATUS[CVE-2015-9289] = "fixed-version: Fixed from version 4.2rc1" | ||
1168 | |||
1169 | CVE_STATUS[CVE-2016-0617] = "fixed-version: Fixed from version 4.5rc1" | ||
1170 | |||
1171 | CVE_STATUS[CVE-2016-0723] = "fixed-version: Fixed from version 4.5rc2" | ||
1172 | |||
1173 | CVE_STATUS[CVE-2016-0728] = "fixed-version: Fixed from version 4.5rc1" | ||
1174 | |||
1175 | CVE_STATUS[CVE-2016-0758] = "fixed-version: Fixed from version 4.6" | ||
1176 | |||
1177 | # Skipping CVE-2016-0774, no affected_versions | ||
1178 | |||
1179 | CVE_STATUS[CVE-2016-0821] = "fixed-version: Fixed from version 4.3rc1" | ||
1180 | |||
1181 | CVE_STATUS[CVE-2016-0823] = "fixed-version: Fixed from version 4.0rc5" | ||
1182 | |||
1183 | CVE_STATUS[CVE-2016-10044] = "fixed-version: Fixed from version 4.8rc7" | ||
1184 | |||
1185 | CVE_STATUS[CVE-2016-10088] = "fixed-version: Fixed from version 4.10rc1" | ||
1186 | |||
1187 | CVE_STATUS[CVE-2016-10147] = "fixed-version: Fixed from version 4.9" | ||
1188 | |||
1189 | CVE_STATUS[CVE-2016-10150] = "fixed-version: Fixed from version 4.9rc8" | ||
1190 | |||
1191 | CVE_STATUS[CVE-2016-10153] = "fixed-version: Fixed from version 4.10rc1" | ||
1192 | |||
1193 | CVE_STATUS[CVE-2016-10154] = "fixed-version: Fixed from version 4.10rc1" | ||
1194 | |||
1195 | CVE_STATUS[CVE-2016-10200] = "fixed-version: Fixed from version 4.9rc7" | ||
1196 | |||
1197 | CVE_STATUS[CVE-2016-10208] = "fixed-version: Fixed from version 4.10rc1" | ||
1198 | |||
1199 | CVE_STATUS[CVE-2016-10229] = "fixed-version: Fixed from version 4.5rc1" | ||
1200 | |||
1201 | CVE_STATUS[CVE-2016-10318] = "fixed-version: Fixed from version 4.8rc6" | ||
1202 | |||
1203 | CVE_STATUS[CVE-2016-10723] = "fixed-version: Fixed from version 4.19rc1" | ||
1204 | |||
1205 | CVE_STATUS[CVE-2016-10741] = "fixed-version: Fixed from version 4.10rc1" | ||
1206 | |||
1207 | CVE_STATUS[CVE-2016-10764] = "fixed-version: Fixed from version 4.10rc1" | ||
1208 | |||
1209 | CVE_STATUS[CVE-2016-10905] = "fixed-version: Fixed from version 4.8rc1" | ||
1210 | |||
1211 | CVE_STATUS[CVE-2016-10906] = "fixed-version: Fixed from version 4.5rc6" | ||
1212 | |||
1213 | CVE_STATUS[CVE-2016-10907] = "fixed-version: Fixed from version 4.9rc1" | ||
1214 | |||
1215 | CVE_STATUS[CVE-2016-1237] = "fixed-version: Fixed from version 4.7rc5" | ||
1216 | |||
1217 | CVE_STATUS[CVE-2016-1575] = "fixed-version: Fixed from version 4.5rc1" | ||
1218 | |||
1219 | CVE_STATUS[CVE-2016-1576] = "fixed-version: Fixed from version 4.5rc1" | ||
1220 | |||
1221 | CVE_STATUS[CVE-2016-1583] = "fixed-version: Fixed from version 4.7rc3" | ||
1222 | |||
1223 | CVE_STATUS[CVE-2016-2053] = "fixed-version: Fixed from version 4.3rc1" | ||
1224 | |||
1225 | CVE_STATUS[CVE-2016-2069] = "fixed-version: Fixed from version 4.5rc1" | ||
1226 | |||
1227 | CVE_STATUS[CVE-2016-2070] = "fixed-version: Fixed from version 4.4" | ||
1228 | |||
1229 | CVE_STATUS[CVE-2016-2085] = "fixed-version: Fixed from version 4.5rc4" | ||
1230 | |||
1231 | CVE_STATUS[CVE-2016-2117] = "fixed-version: Fixed from version 4.6rc5" | ||
1232 | |||
1233 | CVE_STATUS[CVE-2016-2143] = "fixed-version: Fixed from version 4.5" | ||
1234 | |||
1235 | CVE_STATUS[CVE-2016-2184] = "fixed-version: Fixed from version 4.6rc1" | ||
1236 | |||
1237 | CVE_STATUS[CVE-2016-2185] = "fixed-version: Fixed from version 4.6rc1" | ||
1238 | |||
1239 | CVE_STATUS[CVE-2016-2186] = "fixed-version: Fixed from version 4.6rc1" | ||
1240 | |||
1241 | CVE_STATUS[CVE-2016-2187] = "fixed-version: Fixed from version 4.6rc5" | ||
1242 | |||
1243 | CVE_STATUS[CVE-2016-2188] = "fixed-version: Fixed from version 4.11rc2" | ||
1244 | |||
1245 | CVE_STATUS[CVE-2016-2383] = "fixed-version: Fixed from version 4.5rc4" | ||
1246 | |||
1247 | CVE_STATUS[CVE-2016-2384] = "fixed-version: Fixed from version 4.5rc4" | ||
1248 | |||
1249 | CVE_STATUS[CVE-2016-2543] = "fixed-version: Fixed from version 4.5rc1" | ||
1250 | |||
1251 | CVE_STATUS[CVE-2016-2544] = "fixed-version: Fixed from version 4.5rc1" | ||
1252 | |||
1253 | CVE_STATUS[CVE-2016-2545] = "fixed-version: Fixed from version 4.5rc1" | ||
1254 | |||
1255 | CVE_STATUS[CVE-2016-2546] = "fixed-version: Fixed from version 4.5rc1" | ||
1256 | |||
1257 | CVE_STATUS[CVE-2016-2547] = "fixed-version: Fixed from version 4.5rc1" | ||
1258 | |||
1259 | CVE_STATUS[CVE-2016-2548] = "fixed-version: Fixed from version 4.5rc1" | ||
1260 | |||
1261 | CVE_STATUS[CVE-2016-2549] = "fixed-version: Fixed from version 4.5rc1" | ||
1262 | |||
1263 | CVE_STATUS[CVE-2016-2550] = "fixed-version: Fixed from version 4.5rc4" | ||
1264 | |||
1265 | CVE_STATUS[CVE-2016-2782] = "fixed-version: Fixed from version 4.5rc2" | ||
1266 | |||
1267 | CVE_STATUS[CVE-2016-2847] = "fixed-version: Fixed from version 4.5rc1" | ||
1268 | |||
1269 | # Skipping CVE-2016-2853, no affected_versions | ||
1270 | |||
1271 | # Skipping CVE-2016-2854, no affected_versions | ||
1272 | |||
1273 | CVE_STATUS[CVE-2016-3044] = "fixed-version: Fixed from version 4.5" | ||
1274 | |||
1275 | CVE_STATUS[CVE-2016-3070] = "fixed-version: Fixed from version 4.4rc1" | ||
1276 | |||
1277 | CVE_STATUS[CVE-2016-3134] = "fixed-version: Fixed from version 4.6rc2" | ||
1278 | |||
1279 | CVE_STATUS[CVE-2016-3135] = "fixed-version: Fixed from version 4.6rc1" | ||
1280 | |||
1281 | CVE_STATUS[CVE-2016-3136] = "fixed-version: Fixed from version 4.6rc3" | ||
1282 | |||
1283 | CVE_STATUS[CVE-2016-3137] = "fixed-version: Fixed from version 4.6rc3" | ||
1284 | |||
1285 | CVE_STATUS[CVE-2016-3138] = "fixed-version: Fixed from version 4.6rc1" | ||
1286 | |||
1287 | CVE_STATUS[CVE-2016-3139] = "fixed-version: Fixed from version 3.17rc1" | ||
1288 | |||
1289 | CVE_STATUS[CVE-2016-3140] = "fixed-version: Fixed from version 4.6rc3" | ||
1290 | |||
1291 | CVE_STATUS[CVE-2016-3156] = "fixed-version: Fixed from version 4.6rc1" | ||
1292 | |||
1293 | CVE_STATUS[CVE-2016-3157] = "fixed-version: Fixed from version 4.6rc1" | ||
1294 | |||
1295 | CVE_STATUS[CVE-2016-3672] = "fixed-version: Fixed from version 4.6rc1" | ||
1296 | |||
1297 | CVE_STATUS[CVE-2016-3689] = "fixed-version: Fixed from version 4.6rc1" | ||
1298 | |||
1299 | # Skipping CVE-2016-3695, no affected_versions | ||
1300 | |||
1301 | # Skipping CVE-2016-3699, no affected_versions | ||
1302 | |||
1303 | # Skipping CVE-2016-3707, no affected_versions | ||
1304 | |||
1305 | CVE_STATUS[CVE-2016-3713] = "fixed-version: Fixed from version 4.7rc1" | ||
1306 | |||
1307 | # CVE-2016-3775 has no known resolution | ||
1308 | |||
1309 | # CVE-2016-3802 has no known resolution | ||
1310 | |||
1311 | # CVE-2016-3803 has no known resolution | ||
1312 | |||
1313 | CVE_STATUS[CVE-2016-3841] = "fixed-version: Fixed from version 4.4rc4" | ||
1314 | |||
1315 | CVE_STATUS[CVE-2016-3857] = "fixed-version: Fixed from version 4.8rc2" | ||
1316 | |||
1317 | CVE_STATUS[CVE-2016-3951] = "fixed-version: Fixed from version 4.5" | ||
1318 | |||
1319 | CVE_STATUS[CVE-2016-3955] = "fixed-version: Fixed from version 4.6rc3" | ||
1320 | |||
1321 | CVE_STATUS[CVE-2016-3961] = "fixed-version: Fixed from version 4.6rc5" | ||
1322 | |||
1323 | CVE_STATUS[CVE-2016-4440] = "fixed-version: Fixed from version 4.7rc1" | ||
1324 | |||
1325 | CVE_STATUS[CVE-2016-4470] = "fixed-version: Fixed from version 4.7rc4" | ||
1326 | |||
1327 | CVE_STATUS[CVE-2016-4482] = "fixed-version: Fixed from version 4.7rc1" | ||
1328 | |||
1329 | CVE_STATUS[CVE-2016-4485] = "fixed-version: Fixed from version 4.6" | ||
1330 | |||
1331 | CVE_STATUS[CVE-2016-4486] = "fixed-version: Fixed from version 4.6" | ||
1332 | |||
1333 | CVE_STATUS[CVE-2016-4557] = "fixed-version: Fixed from version 4.6rc6" | ||
1334 | |||
1335 | CVE_STATUS[CVE-2016-4558] = "fixed-version: Fixed from version 4.6rc7" | ||
1336 | |||
1337 | CVE_STATUS[CVE-2016-4565] = "fixed-version: Fixed from version 4.6rc6" | ||
1338 | |||
1339 | CVE_STATUS[CVE-2016-4568] = "fixed-version: Fixed from version 4.6rc6" | ||
1340 | |||
1341 | CVE_STATUS[CVE-2016-4569] = "fixed-version: Fixed from version 4.7rc1" | ||
1342 | |||
1343 | CVE_STATUS[CVE-2016-4578] = "fixed-version: Fixed from version 4.7rc1" | ||
1344 | |||
1345 | CVE_STATUS[CVE-2016-4580] = "fixed-version: Fixed from version 4.6" | ||
1346 | |||
1347 | CVE_STATUS[CVE-2016-4581] = "fixed-version: Fixed from version 4.6rc7" | ||
1348 | |||
1349 | CVE_STATUS[CVE-2016-4794] = "fixed-version: Fixed from version 4.7rc4" | ||
1350 | |||
1351 | CVE_STATUS[CVE-2016-4805] = "fixed-version: Fixed from version 4.6rc1" | ||
1352 | |||
1353 | CVE_STATUS[CVE-2016-4913] = "fixed-version: Fixed from version 4.6" | ||
1354 | |||
1355 | CVE_STATUS[CVE-2016-4951] = "fixed-version: Fixed from version 4.7rc1" | ||
1356 | |||
1357 | CVE_STATUS[CVE-2016-4997] = "fixed-version: Fixed from version 4.7rc1" | ||
1358 | |||
1359 | CVE_STATUS[CVE-2016-4998] = "fixed-version: Fixed from version 4.7rc1" | ||
1360 | |||
1361 | CVE_STATUS[CVE-2016-5195] = "fixed-version: Fixed from version 4.9rc2" | ||
1362 | |||
1363 | CVE_STATUS[CVE-2016-5243] = "fixed-version: Fixed from version 4.7rc3" | ||
1364 | |||
1365 | CVE_STATUS[CVE-2016-5244] = "fixed-version: Fixed from version 4.7rc3" | ||
1366 | |||
1367 | # Skipping CVE-2016-5340, no affected_versions | ||
1368 | |||
1369 | # Skipping CVE-2016-5342, no affected_versions | ||
1370 | |||
1371 | # Skipping CVE-2016-5343, no affected_versions | ||
1372 | |||
1373 | # Skipping CVE-2016-5344, no affected_versions | ||
1374 | |||
1375 | CVE_STATUS[CVE-2016-5400] = "fixed-version: Fixed from version 4.7" | ||
1376 | |||
1377 | CVE_STATUS[CVE-2016-5412] = "fixed-version: Fixed from version 4.8rc1" | ||
1378 | |||
1379 | CVE_STATUS[CVE-2016-5696] = "fixed-version: Fixed from version 4.7" | ||
1380 | |||
1381 | CVE_STATUS[CVE-2016-5728] = "fixed-version: Fixed from version 4.7rc1" | ||
1382 | |||
1383 | CVE_STATUS[CVE-2016-5828] = "fixed-version: Fixed from version 4.7rc6" | ||
1384 | |||
1385 | CVE_STATUS[CVE-2016-5829] = "fixed-version: Fixed from version 4.7rc5" | ||
1386 | |||
1387 | # CVE-2016-5870 has no known resolution | ||
1388 | |||
1389 | CVE_STATUS[CVE-2016-6130] = "fixed-version: Fixed from version 4.6rc6" | ||
1390 | |||
1391 | CVE_STATUS[CVE-2016-6136] = "fixed-version: Fixed from version 4.8rc1" | ||
1392 | |||
1393 | CVE_STATUS[CVE-2016-6156] = "fixed-version: Fixed from version 4.7rc7" | ||
1394 | |||
1395 | CVE_STATUS[CVE-2016-6162] = "fixed-version: Fixed from version 4.7" | ||
1396 | |||
1397 | CVE_STATUS[CVE-2016-6187] = "fixed-version: Fixed from version 4.7rc7" | ||
1398 | |||
1399 | CVE_STATUS[CVE-2016-6197] = "fixed-version: Fixed from version 4.6rc1" | ||
1400 | |||
1401 | CVE_STATUS[CVE-2016-6198] = "fixed-version: Fixed from version 4.6" | ||
1402 | |||
1403 | CVE_STATUS[CVE-2016-6213] = "fixed-version: Fixed from version 4.9rc1" | ||
1404 | |||
1405 | CVE_STATUS[CVE-2016-6327] = "fixed-version: Fixed from version 4.6rc1" | ||
1406 | |||
1407 | CVE_STATUS[CVE-2016-6480] = "fixed-version: Fixed from version 4.8rc3" | ||
1408 | |||
1409 | CVE_STATUS[CVE-2016-6516] = "fixed-version: Fixed from version 4.8rc1" | ||
1410 | |||
1411 | # Skipping CVE-2016-6753, no affected_versions | ||
1412 | |||
1413 | CVE_STATUS[CVE-2016-6786] = "fixed-version: Fixed from version 4.0rc1" | ||
1414 | |||
1415 | CVE_STATUS[CVE-2016-6787] = "fixed-version: Fixed from version 4.0rc1" | ||
1416 | |||
1417 | CVE_STATUS[CVE-2016-6828] = "fixed-version: Fixed from version 4.8rc5" | ||
1418 | |||
1419 | CVE_STATUS[CVE-2016-7039] = "fixed-version: Fixed from version 4.9rc4" | ||
1420 | |||
1421 | CVE_STATUS[CVE-2016-7042] = "fixed-version: Fixed from version 4.9rc3" | ||
1422 | |||
1423 | CVE_STATUS[CVE-2016-7097] = "fixed-version: Fixed from version 4.9rc1" | ||
1424 | |||
1425 | CVE_STATUS[CVE-2016-7117] = "fixed-version: Fixed from version 4.6rc1" | ||
1426 | |||
1427 | # Skipping CVE-2016-7118, no affected_versions | ||
1428 | |||
1429 | CVE_STATUS[CVE-2016-7425] = "fixed-version: Fixed from version 4.9rc1" | ||
1430 | |||
1431 | CVE_STATUS[CVE-2016-7910] = "fixed-version: Fixed from version 4.8rc1" | ||
1432 | |||
1433 | CVE_STATUS[CVE-2016-7911] = "fixed-version: Fixed from version 4.7rc7" | ||
1434 | |||
1435 | CVE_STATUS[CVE-2016-7912] = "fixed-version: Fixed from version 4.6rc5" | ||
1436 | |||
1437 | CVE_STATUS[CVE-2016-7913] = "fixed-version: Fixed from version 4.6rc1" | ||
1438 | |||
1439 | CVE_STATUS[CVE-2016-7914] = "fixed-version: Fixed from version 4.6rc4" | ||
1440 | |||
1441 | CVE_STATUS[CVE-2016-7915] = "fixed-version: Fixed from version 4.6rc1" | ||
1442 | |||
1443 | CVE_STATUS[CVE-2016-7916] = "fixed-version: Fixed from version 4.6rc7" | ||
1444 | |||
1445 | CVE_STATUS[CVE-2016-7917] = "fixed-version: Fixed from version 4.5rc6" | ||
1446 | |||
1447 | CVE_STATUS[CVE-2016-8399] = "fixed-version: Fixed from version 4.9" | ||
1448 | |||
1449 | # Skipping CVE-2016-8401, no affected_versions | ||
1450 | |||
1451 | # Skipping CVE-2016-8402, no affected_versions | ||
1452 | |||
1453 | # Skipping CVE-2016-8403, no affected_versions | ||
1454 | |||
1455 | # Skipping CVE-2016-8404, no affected_versions | ||
1456 | |||
1457 | CVE_STATUS[CVE-2016-8405] = "fixed-version: Fixed from version 4.10rc6" | ||
1458 | |||
1459 | # Skipping CVE-2016-8406, no affected_versions | ||
1460 | |||
1461 | # Skipping CVE-2016-8407, no affected_versions | ||
1462 | |||
1463 | CVE_STATUS[CVE-2016-8630] = "fixed-version: Fixed from version 4.9rc4" | ||
1464 | |||
1465 | CVE_STATUS[CVE-2016-8632] = "fixed-version: Fixed from version 4.9rc8" | ||
1466 | |||
1467 | CVE_STATUS[CVE-2016-8633] = "fixed-version: Fixed from version 4.9rc4" | ||
1468 | |||
1469 | CVE_STATUS[CVE-2016-8636] = "fixed-version: Fixed from version 4.10rc8" | ||
1470 | |||
1471 | CVE_STATUS[CVE-2016-8645] = "fixed-version: Fixed from version 4.9rc6" | ||
1472 | |||
1473 | CVE_STATUS[CVE-2016-8646] = "fixed-version: Fixed from version 4.4rc1" | ||
1474 | |||
1475 | CVE_STATUS[CVE-2016-8650] = "fixed-version: Fixed from version 4.9rc7" | ||
1476 | |||
1477 | CVE_STATUS[CVE-2016-8655] = "fixed-version: Fixed from version 4.9rc8" | ||
1478 | |||
1479 | CVE_STATUS[CVE-2016-8658] = "fixed-version: Fixed from version 4.8rc7" | ||
1480 | |||
1481 | # CVE-2016-8660 has no known resolution | ||
1482 | |||
1483 | CVE_STATUS[CVE-2016-8666] = "fixed-version: Fixed from version 4.6rc1" | ||
1484 | |||
1485 | CVE_STATUS[CVE-2016-9083] = "fixed-version: Fixed from version 4.9rc4" | ||
1486 | |||
1487 | CVE_STATUS[CVE-2016-9084] = "fixed-version: Fixed from version 4.9rc4" | ||
1488 | |||
1489 | CVE_STATUS[CVE-2016-9120] = "fixed-version: Fixed from version 4.6rc1" | ||
1490 | |||
1491 | CVE_STATUS[CVE-2016-9178] = "fixed-version: Fixed from version 4.8rc7" | ||
1492 | |||
1493 | CVE_STATUS[CVE-2016-9191] = "fixed-version: Fixed from version 4.10rc4" | ||
1494 | |||
1495 | CVE_STATUS[CVE-2016-9313] = "fixed-version: Fixed from version 4.9rc3" | ||
1496 | |||
1497 | CVE_STATUS[CVE-2016-9555] = "fixed-version: Fixed from version 4.9rc4" | ||
1498 | |||
1499 | CVE_STATUS[CVE-2016-9576] = "fixed-version: Fixed from version 4.9" | ||
1500 | |||
1501 | CVE_STATUS[CVE-2016-9588] = "fixed-version: Fixed from version 4.10rc1" | ||
1502 | |||
1503 | CVE_STATUS[CVE-2016-9604] = "fixed-version: Fixed from version 4.11rc8" | ||
1504 | |||
1505 | # Skipping CVE-2016-9644, no affected_versions | ||
1506 | |||
1507 | CVE_STATUS[CVE-2016-9685] = "fixed-version: Fixed from version 4.6rc1" | ||
1508 | |||
1509 | CVE_STATUS[CVE-2016-9754] = "fixed-version: Fixed from version 4.7rc1" | ||
1510 | |||
1511 | CVE_STATUS[CVE-2016-9755] = "fixed-version: Fixed from version 4.9rc8" | ||
1512 | |||
1513 | CVE_STATUS[CVE-2016-9756] = "fixed-version: Fixed from version 4.9rc7" | ||
1514 | |||
1515 | CVE_STATUS[CVE-2016-9777] = "fixed-version: Fixed from version 4.9rc7" | ||
1516 | |||
1517 | CVE_STATUS[CVE-2016-9793] = "fixed-version: Fixed from version 4.9rc8" | ||
1518 | |||
1519 | CVE_STATUS[CVE-2016-9794] = "fixed-version: Fixed from version 4.7rc1" | ||
1520 | |||
1521 | CVE_STATUS[CVE-2016-9806] = "fixed-version: Fixed from version 4.7rc1" | ||
1522 | |||
1523 | CVE_STATUS[CVE-2016-9919] = "fixed-version: Fixed from version 4.9rc8" | ||
1524 | |||
1525 | # Skipping CVE-2017-0403, no affected_versions | ||
1526 | |||
1527 | # Skipping CVE-2017-0404, no affected_versions | ||
1528 | |||
1529 | # Skipping CVE-2017-0426, no affected_versions | ||
1530 | |||
1531 | # Skipping CVE-2017-0427, no affected_versions | ||
1532 | |||
1533 | # CVE-2017-0507 has no known resolution | ||
1534 | |||
1535 | # CVE-2017-0508 has no known resolution | ||
1536 | |||
1537 | # Skipping CVE-2017-0510, no affected_versions | ||
1538 | |||
1539 | # Skipping CVE-2017-0528, no affected_versions | ||
1540 | |||
1541 | # Skipping CVE-2017-0537, no affected_versions | ||
1542 | |||
1543 | # CVE-2017-0564 has no known resolution | ||
1544 | |||
1545 | CVE_STATUS[CVE-2017-0605] = "fixed-version: Fixed from version 4.12rc1" | ||
1546 | |||
1547 | CVE_STATUS[CVE-2017-0627] = "fixed-version: Fixed from version 4.14rc1" | ||
1548 | |||
1549 | # CVE-2017-0630 has no known resolution | ||
1550 | |||
1551 | # CVE-2017-0749 has no known resolution | ||
1552 | |||
1553 | CVE_STATUS[CVE-2017-0750] = "fixed-version: Fixed from version 4.5rc1" | ||
1554 | |||
1555 | CVE_STATUS[CVE-2017-0786] = "fixed-version: Fixed from version 4.14rc4" | ||
1556 | |||
1557 | CVE_STATUS[CVE-2017-0861] = "fixed-version: Fixed from version 4.15rc3" | ||
1558 | |||
1559 | CVE_STATUS[CVE-2017-1000] = "fixed-version: Fixed from version 4.13rc5" | ||
1560 | |||
1561 | CVE_STATUS[CVE-2017-1000111] = "fixed-version: Fixed from version 4.13rc5" | ||
1562 | |||
1563 | CVE_STATUS[CVE-2017-1000112] = "fixed-version: Fixed from version 4.13rc5" | ||
1564 | |||
1565 | CVE_STATUS[CVE-2017-1000251] = "fixed-version: Fixed from version 4.14rc1" | ||
1566 | |||
1567 | CVE_STATUS[CVE-2017-1000252] = "fixed-version: Fixed from version 4.14rc1" | ||
1568 | |||
1569 | CVE_STATUS[CVE-2017-1000253] = "fixed-version: Fixed from version 4.1rc1" | ||
1570 | |||
1571 | CVE_STATUS[CVE-2017-1000255] = "fixed-version: Fixed from version 4.14rc5" | ||
1572 | |||
1573 | CVE_STATUS[CVE-2017-1000363] = "fixed-version: Fixed from version 4.12rc2" | ||
1574 | |||
1575 | CVE_STATUS[CVE-2017-1000364] = "fixed-version: Fixed from version 4.12rc6" | ||
1576 | |||
1577 | CVE_STATUS[CVE-2017-1000365] = "fixed-version: Fixed from version 4.12rc7" | ||
1578 | |||
1579 | CVE_STATUS[CVE-2017-1000370] = "fixed-version: Fixed from version 4.13rc1" | ||
1580 | |||
1581 | CVE_STATUS[CVE-2017-1000371] = "fixed-version: Fixed from version 4.13rc1" | ||
1582 | |||
1583 | CVE_STATUS[CVE-2017-1000379] = "fixed-version: Fixed from version 4.12rc6" | ||
1584 | |||
1585 | CVE_STATUS[CVE-2017-1000380] = "fixed-version: Fixed from version 4.12rc5" | ||
1586 | |||
1587 | CVE_STATUS[CVE-2017-1000405] = "fixed-version: Fixed from version 4.15rc2" | ||
1588 | |||
1589 | CVE_STATUS[CVE-2017-1000407] = "fixed-version: Fixed from version 4.15rc3" | ||
1590 | |||
1591 | CVE_STATUS[CVE-2017-1000410] = "fixed-version: Fixed from version 4.15rc8" | ||
1592 | |||
1593 | CVE_STATUS[CVE-2017-10661] = "fixed-version: Fixed from version 4.11rc1" | ||
1594 | |||
1595 | CVE_STATUS[CVE-2017-10662] = "fixed-version: Fixed from version 4.12rc1" | ||
1596 | |||
1597 | CVE_STATUS[CVE-2017-10663] = "fixed-version: Fixed from version 4.13rc1" | ||
1598 | |||
1599 | CVE_STATUS[CVE-2017-10810] = "fixed-version: Fixed from version 4.12rc1" | ||
1600 | |||
1601 | CVE_STATUS[CVE-2017-10911] = "fixed-version: Fixed from version 4.12rc7" | ||
1602 | |||
1603 | CVE_STATUS[CVE-2017-11089] = "fixed-version: Fixed from version 4.13rc1" | ||
1604 | |||
1605 | CVE_STATUS[CVE-2017-11176] = "fixed-version: Fixed from version 4.13rc1" | ||
1606 | |||
1607 | CVE_STATUS[CVE-2017-11472] = "fixed-version: Fixed from version 4.12rc1" | ||
1608 | |||
1609 | CVE_STATUS[CVE-2017-11473] = "fixed-version: Fixed from version 4.13rc2" | ||
1610 | |||
1611 | CVE_STATUS[CVE-2017-11600] = "fixed-version: Fixed from version 4.13" | ||
1612 | |||
1613 | CVE_STATUS[CVE-2017-12134] = "fixed-version: Fixed from version 4.13rc6" | ||
1614 | |||
1615 | CVE_STATUS[CVE-2017-12146] = "fixed-version: Fixed from version 4.13rc1" | ||
1616 | |||
1617 | CVE_STATUS[CVE-2017-12153] = "fixed-version: Fixed from version 4.14rc2" | ||
1618 | |||
1619 | CVE_STATUS[CVE-2017-12154] = "fixed-version: Fixed from version 4.14rc1" | ||
1620 | |||
1621 | CVE_STATUS[CVE-2017-12168] = "fixed-version: Fixed from version 4.9rc6" | ||
1622 | |||
1623 | CVE_STATUS[CVE-2017-12188] = "fixed-version: Fixed from version 4.14rc5" | ||
1624 | |||
1625 | CVE_STATUS[CVE-2017-12190] = "fixed-version: Fixed from version 4.14rc5" | ||
1626 | |||
1627 | CVE_STATUS[CVE-2017-12192] = "fixed-version: Fixed from version 4.14rc3" | ||
1628 | |||
1629 | CVE_STATUS[CVE-2017-12193] = "fixed-version: Fixed from version 4.14rc7" | ||
1630 | |||
1631 | CVE_STATUS[CVE-2017-12762] = "fixed-version: Fixed from version 4.13rc4" | ||
1632 | |||
1633 | CVE_STATUS[CVE-2017-13080] = "fixed-version: Fixed from version 4.14rc6" | ||
1634 | |||
1635 | CVE_STATUS[CVE-2017-13166] = "fixed-version: Fixed from version 4.16rc1" | ||
1636 | |||
1637 | CVE_STATUS[CVE-2017-13167] = "fixed-version: Fixed from version 4.5rc4" | ||
1638 | |||
1639 | CVE_STATUS[CVE-2017-13168] = "fixed-version: Fixed from version 4.18rc4" | ||
1640 | |||
1641 | CVE_STATUS[CVE-2017-13215] = "fixed-version: Fixed from version 4.5rc1" | ||
1642 | |||
1643 | CVE_STATUS[CVE-2017-13216] = "fixed-version: Fixed from version 4.15rc8" | ||
1644 | |||
1645 | CVE_STATUS[CVE-2017-13220] = "fixed-version: Fixed from version 3.19rc3" | ||
1646 | |||
1647 | # CVE-2017-13221 has no known resolution | ||
1648 | |||
1649 | # CVE-2017-13222 has no known resolution | ||
1650 | |||
1651 | CVE_STATUS[CVE-2017-13305] = "fixed-version: Fixed from version 4.12rc5" | ||
1652 | |||
1653 | CVE_STATUS[CVE-2017-13686] = "fixed-version: Fixed from version 4.13rc7" | ||
1654 | |||
1655 | # CVE-2017-13693 has no known resolution | ||
1656 | |||
1657 | # CVE-2017-13694 has no known resolution | ||
1658 | |||
1659 | CVE_STATUS[CVE-2017-13695] = "fixed-version: Fixed from version 4.17rc1" | ||
1660 | |||
1661 | CVE_STATUS[CVE-2017-13715] = "fixed-version: Fixed from version 4.3rc1" | ||
1662 | |||
1663 | CVE_STATUS[CVE-2017-14051] = "fixed-version: Fixed from version 4.14rc1" | ||
1664 | |||
1665 | CVE_STATUS[CVE-2017-14106] = "fixed-version: Fixed from version 4.12rc3" | ||
1666 | |||
1667 | CVE_STATUS[CVE-2017-14140] = "fixed-version: Fixed from version 4.13rc6" | ||
1668 | |||
1669 | CVE_STATUS[CVE-2017-14156] = "fixed-version: Fixed from version 4.14rc1" | ||
1670 | |||
1671 | CVE_STATUS[CVE-2017-14340] = "fixed-version: Fixed from version 4.14rc1" | ||
1672 | |||
1673 | CVE_STATUS[CVE-2017-14489] = "fixed-version: Fixed from version 4.14rc3" | ||
1674 | |||
1675 | CVE_STATUS[CVE-2017-14497] = "fixed-version: Fixed from version 4.13" | ||
1676 | |||
1677 | CVE_STATUS[CVE-2017-14954] = "fixed-version: Fixed from version 4.14rc3" | ||
1678 | |||
1679 | CVE_STATUS[CVE-2017-14991] = "fixed-version: Fixed from version 4.14rc2" | ||
1680 | |||
1681 | CVE_STATUS[CVE-2017-15102] = "fixed-version: Fixed from version 4.9rc1" | ||
1682 | |||
1683 | CVE_STATUS[CVE-2017-15115] = "fixed-version: Fixed from version 4.14rc6" | ||
1684 | |||
1685 | CVE_STATUS[CVE-2017-15116] = "fixed-version: Fixed from version 4.2rc1" | ||
1686 | |||
1687 | CVE_STATUS[CVE-2017-15121] = "fixed-version: Fixed from version 3.11rc1" | ||
1688 | |||
1689 | CVE_STATUS[CVE-2017-15126] = "fixed-version: Fixed from version 4.14rc4" | ||
1690 | |||
1691 | CVE_STATUS[CVE-2017-15127] = "fixed-version: Fixed from version 4.13rc5" | ||
1692 | |||
1693 | CVE_STATUS[CVE-2017-15128] = "fixed-version: Fixed from version 4.14rc8" | ||
1694 | |||
1695 | CVE_STATUS[CVE-2017-15129] = "fixed-version: Fixed from version 4.15rc5" | ||
1696 | |||
1697 | CVE_STATUS[CVE-2017-15265] = "fixed-version: Fixed from version 4.14rc5" | ||
1698 | |||
1699 | CVE_STATUS[CVE-2017-15274] = "fixed-version: Fixed from version 4.12rc5" | ||
1700 | |||
1701 | CVE_STATUS[CVE-2017-15299] = "fixed-version: Fixed from version 4.14rc6" | ||
1702 | |||
1703 | CVE_STATUS[CVE-2017-15306] = "fixed-version: Fixed from version 4.14rc7" | ||
1704 | |||
1705 | CVE_STATUS[CVE-2017-15537] = "fixed-version: Fixed from version 4.14rc3" | ||
1706 | |||
1707 | CVE_STATUS[CVE-2017-15649] = "fixed-version: Fixed from version 4.14rc4" | ||
1708 | |||
1709 | CVE_STATUS[CVE-2017-15868] = "fixed-version: Fixed from version 3.19rc3" | ||
1710 | |||
1711 | CVE_STATUS[CVE-2017-15951] = "fixed-version: Fixed from version 4.14rc6" | ||
1712 | |||
1713 | CVE_STATUS[CVE-2017-16525] = "fixed-version: Fixed from version 4.14rc5" | ||
1714 | |||
1715 | CVE_STATUS[CVE-2017-16526] = "fixed-version: Fixed from version 4.14rc4" | ||
1716 | |||
1717 | CVE_STATUS[CVE-2017-16527] = "fixed-version: Fixed from version 4.14rc5" | ||
1718 | |||
1719 | CVE_STATUS[CVE-2017-16528] = "fixed-version: Fixed from version 4.14rc1" | ||
1720 | |||
1721 | CVE_STATUS[CVE-2017-16529] = "fixed-version: Fixed from version 4.14rc4" | ||
1722 | |||
1723 | CVE_STATUS[CVE-2017-16530] = "fixed-version: Fixed from version 4.14rc4" | ||
1724 | |||
1725 | CVE_STATUS[CVE-2017-16531] = "fixed-version: Fixed from version 4.14rc4" | ||
1726 | |||
1727 | CVE_STATUS[CVE-2017-16532] = "fixed-version: Fixed from version 4.14rc5" | ||
1728 | |||
1729 | CVE_STATUS[CVE-2017-16533] = "fixed-version: Fixed from version 4.14rc5" | ||
1730 | |||
1731 | CVE_STATUS[CVE-2017-16534] = "fixed-version: Fixed from version 4.14rc4" | ||
1732 | |||
1733 | CVE_STATUS[CVE-2017-16535] = "fixed-version: Fixed from version 4.14rc6" | ||
1734 | |||
1735 | CVE_STATUS[CVE-2017-16536] = "fixed-version: Fixed from version 4.15rc1" | ||
1736 | |||
1737 | CVE_STATUS[CVE-2017-16537] = "fixed-version: Fixed from version 4.15rc1" | ||
1738 | |||
1739 | CVE_STATUS[CVE-2017-16538] = "fixed-version: Fixed from version 4.16rc1" | ||
1740 | |||
1741 | CVE_STATUS[CVE-2017-16643] = "fixed-version: Fixed from version 4.14rc7" | ||
1742 | |||
1743 | CVE_STATUS[CVE-2017-16644] = "fixed-version: Fixed from version 4.16rc1" | ||
1744 | |||
1745 | CVE_STATUS[CVE-2017-16645] = "fixed-version: Fixed from version 4.14rc6" | ||
1746 | |||
1747 | CVE_STATUS[CVE-2017-16646] = "fixed-version: Fixed from version 4.15rc1" | ||
1748 | |||
1749 | CVE_STATUS[CVE-2017-16647] = "fixed-version: Fixed from version 4.14" | ||
1750 | |||
1751 | CVE_STATUS[CVE-2017-16648] = "fixed-version: Fixed from version 4.15rc1" | ||
1752 | |||
1753 | CVE_STATUS[CVE-2017-16649] = "fixed-version: Fixed from version 4.14" | ||
1754 | |||
1755 | CVE_STATUS[CVE-2017-16650] = "fixed-version: Fixed from version 4.14" | ||
1756 | |||
1757 | CVE_STATUS[CVE-2017-16911] = "fixed-version: Fixed from version 4.15rc4" | ||
1758 | |||
1759 | CVE_STATUS[CVE-2017-16912] = "fixed-version: Fixed from version 4.15rc4" | ||
1760 | |||
1761 | CVE_STATUS[CVE-2017-16913] = "fixed-version: Fixed from version 4.15rc4" | ||
1762 | |||
1763 | CVE_STATUS[CVE-2017-16914] = "fixed-version: Fixed from version 4.15rc4" | ||
1764 | |||
1765 | CVE_STATUS[CVE-2017-16939] = "fixed-version: Fixed from version 4.14rc7" | ||
1766 | |||
1767 | CVE_STATUS[CVE-2017-16994] = "fixed-version: Fixed from version 4.15rc1" | ||
1768 | |||
1769 | CVE_STATUS[CVE-2017-16995] = "fixed-version: Fixed from version 4.15rc5" | ||
1770 | |||
1771 | CVE_STATUS[CVE-2017-16996] = "fixed-version: Fixed from version 4.15rc5" | ||
1772 | |||
1773 | CVE_STATUS[CVE-2017-17052] = "fixed-version: Fixed from version 4.13rc7" | ||
1774 | |||
1775 | CVE_STATUS[CVE-2017-17053] = "fixed-version: Fixed from version 4.13rc7" | ||
1776 | |||
1777 | CVE_STATUS[CVE-2017-17448] = "fixed-version: Fixed from version 4.15rc4" | ||
1778 | |||
1779 | CVE_STATUS[CVE-2017-17449] = "fixed-version: Fixed from version 4.15rc4" | ||
1780 | |||
1781 | CVE_STATUS[CVE-2017-17450] = "fixed-version: Fixed from version 4.15rc4" | ||
1782 | |||
1783 | CVE_STATUS[CVE-2017-17558] = "fixed-version: Fixed from version 4.15rc4" | ||
1784 | |||
1785 | CVE_STATUS[CVE-2017-17712] = "fixed-version: Fixed from version 4.15rc4" | ||
1786 | |||
1787 | CVE_STATUS[CVE-2017-17741] = "fixed-version: Fixed from version 4.15rc5" | ||
1788 | |||
1789 | CVE_STATUS[CVE-2017-17805] = "fixed-version: Fixed from version 4.15rc4" | ||
1790 | |||
1791 | CVE_STATUS[CVE-2017-17806] = "fixed-version: Fixed from version 4.15rc4" | ||
1792 | |||
1793 | CVE_STATUS[CVE-2017-17807] = "fixed-version: Fixed from version 4.15rc3" | ||
1794 | |||
1795 | CVE_STATUS[CVE-2017-17852] = "fixed-version: Fixed from version 4.15rc5" | ||
1796 | |||
1797 | CVE_STATUS[CVE-2017-17853] = "fixed-version: Fixed from version 4.15rc5" | ||
1798 | |||
1799 | CVE_STATUS[CVE-2017-17854] = "fixed-version: Fixed from version 4.15rc5" | ||
1800 | |||
1801 | CVE_STATUS[CVE-2017-17855] = "fixed-version: Fixed from version 4.15rc5" | ||
1802 | |||
1803 | CVE_STATUS[CVE-2017-17856] = "fixed-version: Fixed from version 4.15rc5" | ||
1804 | |||
1805 | CVE_STATUS[CVE-2017-17857] = "fixed-version: Fixed from version 4.15rc5" | ||
1806 | |||
1807 | CVE_STATUS[CVE-2017-17862] = "fixed-version: Fixed from version 4.15rc1" | ||
1808 | |||
1809 | CVE_STATUS[CVE-2017-17863] = "fixed-version: Fixed from version 4.15rc5" | ||
1810 | |||
1811 | CVE_STATUS[CVE-2017-17864] = "fixed-version: Fixed from version 4.15rc5" | ||
1812 | |||
1813 | CVE_STATUS[CVE-2017-17975] = "fixed-version: Fixed from version 4.17rc1" | ||
1814 | |||
1815 | CVE_STATUS[CVE-2017-18017] = "fixed-version: Fixed from version 4.11rc7" | ||
1816 | |||
1817 | CVE_STATUS[CVE-2017-18075] = "fixed-version: Fixed from version 4.15rc7" | ||
1818 | |||
1819 | CVE_STATUS[CVE-2017-18079] = "fixed-version: Fixed from version 4.13rc1" | ||
1820 | |||
1821 | # CVE-2017-18169 has no known resolution | ||
1822 | |||
1823 | CVE_STATUS[CVE-2017-18174] = "fixed-version: Fixed from version 4.7rc1" | ||
1824 | |||
1825 | CVE_STATUS[CVE-2017-18193] = "fixed-version: Fixed from version 4.13rc1" | ||
1826 | |||
1827 | CVE_STATUS[CVE-2017-18200] = "fixed-version: Fixed from version 4.14rc5" | ||
1828 | |||
1829 | CVE_STATUS[CVE-2017-18202] = "fixed-version: Fixed from version 4.15rc2" | ||
1830 | |||
1831 | CVE_STATUS[CVE-2017-18203] = "fixed-version: Fixed from version 4.15rc1" | ||
1832 | |||
1833 | CVE_STATUS[CVE-2017-18204] = "fixed-version: Fixed from version 4.15rc1" | ||
1834 | |||
1835 | CVE_STATUS[CVE-2017-18208] = "fixed-version: Fixed from version 4.15rc2" | ||
1836 | |||
1837 | CVE_STATUS[CVE-2017-18216] = "fixed-version: Fixed from version 4.15rc1" | ||
1838 | |||
1839 | CVE_STATUS[CVE-2017-18218] = "fixed-version: Fixed from version 4.13rc1" | ||
1840 | |||
1841 | CVE_STATUS[CVE-2017-18221] = "fixed-version: Fixed from version 4.12rc4" | ||
1842 | |||
1843 | CVE_STATUS[CVE-2017-18222] = "fixed-version: Fixed from version 4.12rc1" | ||
1844 | |||
1845 | CVE_STATUS[CVE-2017-18224] = "fixed-version: Fixed from version 4.15rc1" | ||
1846 | |||
1847 | CVE_STATUS[CVE-2017-18232] = "fixed-version: Fixed from version 4.16rc1" | ||
1848 | |||
1849 | CVE_STATUS[CVE-2017-18241] = "fixed-version: Fixed from version 4.13rc1" | ||
1850 | |||
1851 | CVE_STATUS[CVE-2017-18249] = "fixed-version: Fixed from version 4.12rc1" | ||
1852 | |||
1853 | CVE_STATUS[CVE-2017-18255] = "fixed-version: Fixed from version 4.11rc1" | ||
1854 | |||
1855 | CVE_STATUS[CVE-2017-18257] = "fixed-version: Fixed from version 4.11rc1" | ||
1856 | |||
1857 | CVE_STATUS[CVE-2017-18261] = "fixed-version: Fixed from version 4.13rc6" | ||
1858 | |||
1859 | CVE_STATUS[CVE-2017-18270] = "fixed-version: Fixed from version 4.14rc3" | ||
1860 | |||
1861 | CVE_STATUS[CVE-2017-18344] = "fixed-version: Fixed from version 4.15rc4" | ||
1862 | |||
1863 | CVE_STATUS[CVE-2017-18360] = "fixed-version: Fixed from version 4.12rc2" | ||
1864 | |||
1865 | CVE_STATUS[CVE-2017-18379] = "fixed-version: Fixed from version 4.14rc3" | ||
1866 | |||
1867 | CVE_STATUS[CVE-2017-18509] = "fixed-version: Fixed from version 4.11rc1" | ||
1868 | |||
1869 | CVE_STATUS[CVE-2017-18549] = "fixed-version: Fixed from version 4.13rc1" | ||
1870 | |||
1871 | CVE_STATUS[CVE-2017-18550] = "fixed-version: Fixed from version 4.13rc1" | ||
1872 | |||
1873 | CVE_STATUS[CVE-2017-18551] = "fixed-version: Fixed from version 4.15rc9" | ||
1874 | |||
1875 | CVE_STATUS[CVE-2017-18552] = "fixed-version: Fixed from version 4.11rc1" | ||
1876 | |||
1877 | CVE_STATUS[CVE-2017-18595] = "fixed-version: Fixed from version 4.15rc6" | ||
1878 | |||
1879 | CVE_STATUS[CVE-2017-2583] = "fixed-version: Fixed from version 4.10rc4" | ||
1880 | |||
1881 | CVE_STATUS[CVE-2017-2584] = "fixed-version: Fixed from version 4.10rc4" | ||
1882 | |||
1883 | CVE_STATUS[CVE-2017-2596] = "fixed-version: Fixed from version 4.11rc1" | ||
1884 | |||
1885 | CVE_STATUS[CVE-2017-2618] = "fixed-version: Fixed from version 4.10rc8" | ||
1886 | |||
1887 | CVE_STATUS[CVE-2017-2634] = "fixed-version: Fixed from version 2.6.25rc1" | ||
1888 | |||
1889 | CVE_STATUS[CVE-2017-2636] = "fixed-version: Fixed from version 4.11rc2" | ||
1890 | |||
1891 | CVE_STATUS[CVE-2017-2647] = "fixed-version: Fixed from version 3.18rc1" | ||
1892 | |||
1893 | CVE_STATUS[CVE-2017-2671] = "fixed-version: Fixed from version 4.11rc6" | ||
1894 | |||
1895 | CVE_STATUS[CVE-2017-5123] = "fixed-version: Fixed from version 4.14rc5" | ||
1896 | |||
1897 | CVE_STATUS[CVE-2017-5546] = "fixed-version: Fixed from version 4.10rc4" | ||
1898 | |||
1899 | CVE_STATUS[CVE-2017-5547] = "fixed-version: Fixed from version 4.10rc5" | ||
1900 | |||
1901 | CVE_STATUS[CVE-2017-5548] = "fixed-version: Fixed from version 4.10rc5" | ||
1902 | |||
1903 | CVE_STATUS[CVE-2017-5549] = "fixed-version: Fixed from version 4.10rc4" | ||
1904 | |||
1905 | CVE_STATUS[CVE-2017-5550] = "fixed-version: Fixed from version 4.10rc4" | ||
1906 | |||
1907 | CVE_STATUS[CVE-2017-5551] = "fixed-version: Fixed from version 4.10rc4" | ||
1908 | |||
1909 | CVE_STATUS[CVE-2017-5576] = "fixed-version: Fixed from version 4.10rc6" | ||
1910 | |||
1911 | CVE_STATUS[CVE-2017-5577] = "fixed-version: Fixed from version 4.10rc6" | ||
1912 | |||
1913 | CVE_STATUS[CVE-2017-5669] = "fixed-version: Fixed from version 4.11rc1" | ||
1914 | |||
1915 | CVE_STATUS[CVE-2017-5715] = "fixed-version: Fixed from version 4.15rc8" | ||
1916 | |||
1917 | CVE_STATUS[CVE-2017-5753] = "fixed-version: Fixed from version 4.15rc8" | ||
1918 | |||
1919 | CVE_STATUS[CVE-2017-5754] = "fixed-version: Fixed from version 4.16rc1" | ||
1920 | |||
1921 | CVE_STATUS[CVE-2017-5897] = "fixed-version: Fixed from version 4.10rc8" | ||
1922 | |||
1923 | CVE_STATUS[CVE-2017-5967] = "fixed-version: Fixed from version 4.11rc1" | ||
1924 | |||
1925 | CVE_STATUS[CVE-2017-5970] = "fixed-version: Fixed from version 4.10rc8" | ||
1926 | |||
1927 | CVE_STATUS[CVE-2017-5972] = "fixed-version: Fixed from version 4.4rc1" | ||
1928 | |||
1929 | CVE_STATUS[CVE-2017-5986] = "fixed-version: Fixed from version 4.10rc8" | ||
1930 | |||
1931 | CVE_STATUS[CVE-2017-6001] = "fixed-version: Fixed from version 4.10rc4" | ||
1932 | |||
1933 | CVE_STATUS[CVE-2017-6074] = "fixed-version: Fixed from version 4.10" | ||
1934 | |||
1935 | CVE_STATUS[CVE-2017-6214] = "fixed-version: Fixed from version 4.10rc8" | ||
1936 | |||
1937 | CVE_STATUS[CVE-2017-6345] = "fixed-version: Fixed from version 4.10" | ||
1938 | |||
1939 | CVE_STATUS[CVE-2017-6346] = "fixed-version: Fixed from version 4.10" | ||
1940 | |||
1941 | CVE_STATUS[CVE-2017-6347] = "fixed-version: Fixed from version 4.11rc1" | ||
1942 | |||
1943 | CVE_STATUS[CVE-2017-6348] = "fixed-version: Fixed from version 4.10" | ||
1944 | |||
1945 | CVE_STATUS[CVE-2017-6353] = "fixed-version: Fixed from version 4.11rc1" | ||
1946 | |||
1947 | CVE_STATUS[CVE-2017-6874] = "fixed-version: Fixed from version 4.11rc2" | ||
1948 | |||
1949 | CVE_STATUS[CVE-2017-6951] = "fixed-version: Fixed from version 3.18rc1" | ||
1950 | |||
1951 | CVE_STATUS[CVE-2017-7184] = "fixed-version: Fixed from version 4.11rc5" | ||
1952 | |||
1953 | CVE_STATUS[CVE-2017-7187] = "fixed-version: Fixed from version 4.11rc5" | ||
1954 | |||
1955 | CVE_STATUS[CVE-2017-7261] = "fixed-version: Fixed from version 4.11rc6" | ||
1956 | |||
1957 | CVE_STATUS[CVE-2017-7273] = "fixed-version: Fixed from version 4.10rc4" | ||
1958 | |||
1959 | CVE_STATUS[CVE-2017-7277] = "fixed-version: Fixed from version 4.11rc4" | ||
1960 | |||
1961 | CVE_STATUS[CVE-2017-7294] = "fixed-version: Fixed from version 4.11rc6" | ||
1962 | |||
1963 | CVE_STATUS[CVE-2017-7308] = "fixed-version: Fixed from version 4.11rc6" | ||
1964 | |||
1965 | CVE_STATUS[CVE-2017-7346] = "fixed-version: Fixed from version 4.12rc5" | ||
1966 | |||
1967 | # CVE-2017-7369 has no known resolution | ||
1968 | |||
1969 | CVE_STATUS[CVE-2017-7374] = "fixed-version: Fixed from version 4.11rc4" | ||
1970 | |||
1971 | CVE_STATUS[CVE-2017-7472] = "fixed-version: Fixed from version 4.11rc8" | ||
1972 | |||
1973 | CVE_STATUS[CVE-2017-7477] = "fixed-version: Fixed from version 4.11" | ||
1974 | |||
1975 | CVE_STATUS[CVE-2017-7482] = "fixed-version: Fixed from version 4.12rc7" | ||
1976 | |||
1977 | CVE_STATUS[CVE-2017-7487] = "fixed-version: Fixed from version 4.12rc1" | ||
1978 | |||
1979 | CVE_STATUS[CVE-2017-7495] = "fixed-version: Fixed from version 4.7rc1" | ||
1980 | |||
1981 | CVE_STATUS[CVE-2017-7518] = "fixed-version: Fixed from version 4.12rc7" | ||
1982 | |||
1983 | CVE_STATUS[CVE-2017-7533] = "fixed-version: Fixed from version 4.13rc1" | ||
1984 | |||
1985 | CVE_STATUS[CVE-2017-7541] = "fixed-version: Fixed from version 4.13rc1" | ||
1986 | |||
1987 | CVE_STATUS[CVE-2017-7542] = "fixed-version: Fixed from version 4.13rc2" | ||
1988 | |||
1989 | CVE_STATUS[CVE-2017-7558] = "fixed-version: Fixed from version 4.13" | ||
1990 | |||
1991 | CVE_STATUS[CVE-2017-7616] = "fixed-version: Fixed from version 4.11rc6" | ||
1992 | |||
1993 | CVE_STATUS[CVE-2017-7618] = "fixed-version: Fixed from version 4.11rc8" | ||
1994 | |||
1995 | CVE_STATUS[CVE-2017-7645] = "fixed-version: Fixed from version 4.11" | ||
1996 | |||
1997 | CVE_STATUS[CVE-2017-7889] = "fixed-version: Fixed from version 4.11rc7" | ||
1998 | |||
1999 | CVE_STATUS[CVE-2017-7895] = "fixed-version: Fixed from version 4.11" | ||
2000 | |||
2001 | CVE_STATUS[CVE-2017-7979] = "fixed-version: Fixed from version 4.11rc8" | ||
2002 | |||
2003 | CVE_STATUS[CVE-2017-8061] = "fixed-version: Fixed from version 4.11rc4" | ||
2004 | |||
2005 | CVE_STATUS[CVE-2017-8062] = "fixed-version: Fixed from version 4.11rc2" | ||
2006 | |||
2007 | CVE_STATUS[CVE-2017-8063] = "fixed-version: Fixed from version 4.11rc1" | ||
2008 | |||
2009 | CVE_STATUS[CVE-2017-8064] = "fixed-version: Fixed from version 4.11rc1" | ||
2010 | |||
2011 | CVE_STATUS[CVE-2017-8065] = "fixed-version: Fixed from version 4.11rc1" | ||
2012 | |||
2013 | CVE_STATUS[CVE-2017-8066] = "fixed-version: Fixed from version 4.11rc1" | ||
2014 | |||
2015 | CVE_STATUS[CVE-2017-8067] = "fixed-version: Fixed from version 4.11rc1" | ||
2016 | |||
2017 | CVE_STATUS[CVE-2017-8068] = "fixed-version: Fixed from version 4.10rc8" | ||
2018 | |||
2019 | CVE_STATUS[CVE-2017-8069] = "fixed-version: Fixed from version 4.10rc8" | ||
2020 | |||
2021 | CVE_STATUS[CVE-2017-8070] = "fixed-version: Fixed from version 4.10rc8" | ||
2022 | |||
2023 | CVE_STATUS[CVE-2017-8071] = "fixed-version: Fixed from version 4.10rc7" | ||
2024 | |||
2025 | CVE_STATUS[CVE-2017-8072] = "fixed-version: Fixed from version 4.10rc7" | ||
2026 | |||
2027 | CVE_STATUS[CVE-2017-8106] = "fixed-version: Fixed from version 3.16rc1" | ||
2028 | |||
2029 | CVE_STATUS[CVE-2017-8240] = "fixed-version: Fixed from version 3.19rc6" | ||
2030 | |||
2031 | # CVE-2017-8242 has no known resolution | ||
2032 | |||
2033 | # CVE-2017-8244 has no known resolution | ||
2034 | |||
2035 | # CVE-2017-8245 has no known resolution | ||
2036 | |||
2037 | # CVE-2017-8246 has no known resolution | ||
2038 | |||
2039 | CVE_STATUS[CVE-2017-8797] = "fixed-version: Fixed from version 4.12rc1" | ||
2040 | |||
2041 | CVE_STATUS[CVE-2017-8824] = "fixed-version: Fixed from version 4.15rc3" | ||
2042 | |||
2043 | CVE_STATUS[CVE-2017-8831] = "fixed-version: Fixed from version 4.13rc1" | ||
2044 | |||
2045 | CVE_STATUS[CVE-2017-8890] = "fixed-version: Fixed from version 4.12rc1" | ||
2046 | |||
2047 | CVE_STATUS[CVE-2017-8924] = "fixed-version: Fixed from version 4.11rc2" | ||
2048 | |||
2049 | CVE_STATUS[CVE-2017-8925] = "fixed-version: Fixed from version 4.11rc2" | ||
2050 | |||
2051 | CVE_STATUS[CVE-2017-9059] = "fixed-version: Fixed from version 4.12rc1" | ||
2052 | |||
2053 | CVE_STATUS[CVE-2017-9074] = "fixed-version: Fixed from version 4.12rc2" | ||
2054 | |||
2055 | CVE_STATUS[CVE-2017-9075] = "fixed-version: Fixed from version 4.12rc2" | ||
2056 | |||
2057 | CVE_STATUS[CVE-2017-9076] = "fixed-version: Fixed from version 4.12rc2" | ||
2058 | |||
2059 | CVE_STATUS[CVE-2017-9077] = "fixed-version: Fixed from version 4.12rc2" | ||
2060 | |||
2061 | CVE_STATUS[CVE-2017-9150] = "fixed-version: Fixed from version 4.12rc1" | ||
2062 | |||
2063 | CVE_STATUS[CVE-2017-9211] = "fixed-version: Fixed from version 4.12rc3" | ||
2064 | |||
2065 | CVE_STATUS[CVE-2017-9242] = "fixed-version: Fixed from version 4.12rc3" | ||
2066 | |||
2067 | CVE_STATUS[CVE-2017-9605] = "fixed-version: Fixed from version 4.12rc5" | ||
2068 | |||
2069 | CVE_STATUS[CVE-2017-9725] = "fixed-version: Fixed from version 4.3rc7" | ||
2070 | |||
2071 | CVE_STATUS[CVE-2017-9984] = "fixed-version: Fixed from version 4.13rc1" | ||
2072 | |||
2073 | CVE_STATUS[CVE-2017-9985] = "fixed-version: Fixed from version 4.13rc1" | ||
2074 | |||
2075 | CVE_STATUS[CVE-2017-9986] = "fixed-version: Fixed from version 4.15rc1" | ||
2076 | |||
2077 | CVE_STATUS[CVE-2018-1000004] = "fixed-version: Fixed from version 4.15rc9" | ||
2078 | |||
2079 | CVE_STATUS[CVE-2018-1000026] = "fixed-version: Fixed from version 4.16rc1" | ||
2080 | |||
2081 | CVE_STATUS[CVE-2018-1000028] = "fixed-version: Fixed from version 4.15" | ||
2082 | |||
2083 | CVE_STATUS[CVE-2018-1000199] = "fixed-version: Fixed from version 4.16" | ||
2084 | |||
2085 | CVE_STATUS[CVE-2018-1000200] = "fixed-version: Fixed from version 4.17rc5" | ||
2086 | |||
2087 | CVE_STATUS[CVE-2018-1000204] = "fixed-version: Fixed from version 4.17rc7" | ||
2088 | |||
2089 | CVE_STATUS[CVE-2018-10021] = "fixed-version: Fixed from version 4.16rc7" | ||
2090 | |||
2091 | CVE_STATUS[CVE-2018-10074] = "fixed-version: Fixed from version 4.16rc7" | ||
2092 | |||
2093 | CVE_STATUS[CVE-2018-10087] = "fixed-version: Fixed from version 4.13rc1" | ||
2094 | |||
2095 | CVE_STATUS[CVE-2018-10124] = "fixed-version: Fixed from version 4.13rc1" | ||
2096 | |||
2097 | CVE_STATUS[CVE-2018-10322] = "fixed-version: Fixed from version 4.17rc4" | ||
2098 | |||
2099 | CVE_STATUS[CVE-2018-10323] = "fixed-version: Fixed from version 4.17rc4" | ||
2100 | |||
2101 | CVE_STATUS[CVE-2018-1065] = "fixed-version: Fixed from version 4.16rc3" | ||
2102 | |||
2103 | CVE_STATUS[CVE-2018-1066] = "fixed-version: Fixed from version 4.11rc1" | ||
2104 | |||
2105 | CVE_STATUS[CVE-2018-10675] = "fixed-version: Fixed from version 4.13rc6" | ||
2106 | |||
2107 | CVE_STATUS[CVE-2018-1068] = "fixed-version: Fixed from version 4.16rc5" | ||
2108 | |||
2109 | CVE_STATUS[CVE-2018-10840] = "fixed-version: Fixed from version 4.18rc1" | ||
2110 | |||
2111 | CVE_STATUS[CVE-2018-10853] = "fixed-version: Fixed from version 4.18rc1" | ||
2112 | |||
2113 | CVE_STATUS[CVE-2018-1087] = "fixed-version: Fixed from version 4.16rc7" | ||
2114 | |||
2115 | # CVE-2018-10872 has no known resolution | ||
2116 | |||
2117 | CVE_STATUS[CVE-2018-10876] = "fixed-version: Fixed from version 4.18rc4" | ||
2118 | |||
2119 | CVE_STATUS[CVE-2018-10877] = "fixed-version: Fixed from version 4.18rc4" | ||
2120 | |||
2121 | CVE_STATUS[CVE-2018-10878] = "fixed-version: Fixed from version 4.18rc4" | ||
2122 | |||
2123 | CVE_STATUS[CVE-2018-10879] = "fixed-version: Fixed from version 4.18rc4" | ||
2124 | |||
2125 | CVE_STATUS[CVE-2018-10880] = "fixed-version: Fixed from version 4.18rc4" | ||
2126 | |||
2127 | CVE_STATUS[CVE-2018-10881] = "fixed-version: Fixed from version 4.18rc4" | ||
2128 | |||
2129 | CVE_STATUS[CVE-2018-10882] = "fixed-version: Fixed from version 4.18rc4" | ||
2130 | |||
2131 | CVE_STATUS[CVE-2018-10883] = "fixed-version: Fixed from version 4.18rc4" | ||
2132 | |||
2133 | CVE_STATUS[CVE-2018-10901] = "fixed-version: Fixed from version 2.6.36rc1" | ||
2134 | |||
2135 | CVE_STATUS[CVE-2018-10902] = "fixed-version: Fixed from version 4.18rc6" | ||
2136 | |||
2137 | CVE_STATUS[CVE-2018-1091] = "fixed-version: Fixed from version 4.14rc2" | ||
2138 | |||
2139 | CVE_STATUS[CVE-2018-1092] = "fixed-version: Fixed from version 4.17rc1" | ||
2140 | |||
2141 | CVE_STATUS[CVE-2018-1093] = "fixed-version: Fixed from version 4.17rc1" | ||
2142 | |||
2143 | CVE_STATUS[CVE-2018-10938] = "fixed-version: Fixed from version 4.13rc5" | ||
2144 | |||
2145 | CVE_STATUS[CVE-2018-1094] = "fixed-version: Fixed from version 4.17rc1" | ||
2146 | |||
2147 | CVE_STATUS[CVE-2018-10940] = "fixed-version: Fixed from version 4.17rc3" | ||
2148 | |||
2149 | CVE_STATUS[CVE-2018-1095] = "fixed-version: Fixed from version 4.17rc1" | ||
2150 | |||
2151 | CVE_STATUS[CVE-2018-1108] = "fixed-version: Fixed from version 4.17rc2" | ||
2152 | |||
2153 | CVE_STATUS[CVE-2018-1118] = "fixed-version: Fixed from version 4.18rc1" | ||
2154 | |||
2155 | CVE_STATUS[CVE-2018-1120] = "fixed-version: Fixed from version 4.17rc6" | ||
2156 | |||
2157 | # CVE-2018-1121 has no known resolution | ||
2158 | |||
2159 | CVE_STATUS[CVE-2018-11232] = "fixed-version: Fixed from version 4.11rc1" | ||
2160 | |||
2161 | CVE_STATUS[CVE-2018-1128] = "fixed-version: Fixed from version 4.19rc1" | ||
2162 | |||
2163 | CVE_STATUS[CVE-2018-1129] = "fixed-version: Fixed from version 4.19rc1" | ||
2164 | |||
2165 | CVE_STATUS[CVE-2018-1130] = "fixed-version: Fixed from version 4.16rc7" | ||
2166 | |||
2167 | CVE_STATUS[CVE-2018-11412] = "fixed-version: Fixed from version 4.18rc1" | ||
2168 | |||
2169 | CVE_STATUS[CVE-2018-11506] = "fixed-version: Fixed from version 4.17rc7" | ||
2170 | |||
2171 | CVE_STATUS[CVE-2018-11508] = "fixed-version: Fixed from version 4.17rc5" | ||
2172 | |||
2173 | # CVE-2018-11987 has no known resolution | ||
2174 | |||
2175 | CVE_STATUS[CVE-2018-12126] = "fixed-version: Fixed from version 5.2rc1" | ||
2176 | |||
2177 | CVE_STATUS[CVE-2018-12127] = "fixed-version: Fixed from version 5.2rc1" | ||
2178 | |||
2179 | CVE_STATUS[CVE-2018-12130] = "fixed-version: Fixed from version 5.2rc1" | ||
2180 | |||
2181 | CVE_STATUS[CVE-2018-12207] = "fixed-version: Fixed from version 5.4rc2" | ||
2182 | |||
2183 | CVE_STATUS[CVE-2018-12232] = "fixed-version: Fixed from version 4.18rc1" | ||
2184 | |||
2185 | CVE_STATUS[CVE-2018-12233] = "fixed-version: Fixed from version 4.18rc2" | ||
2186 | |||
2187 | CVE_STATUS[CVE-2018-12633] = "fixed-version: Fixed from version 4.18rc1" | ||
2188 | |||
2189 | CVE_STATUS[CVE-2018-12714] = "fixed-version: Fixed from version 4.18rc2" | ||
2190 | |||
2191 | CVE_STATUS[CVE-2018-12896] = "fixed-version: Fixed from version 4.19rc1" | ||
2192 | |||
2193 | CVE_STATUS[CVE-2018-12904] = "fixed-version: Fixed from version 4.18rc1" | ||
2194 | |||
2195 | # CVE-2018-12928 has no known resolution | ||
2196 | |||
2197 | # CVE-2018-12929 has no known resolution | ||
2198 | |||
2199 | # CVE-2018-12930 has no known resolution | ||
2200 | |||
2201 | # CVE-2018-12931 has no known resolution | ||
2202 | |||
2203 | CVE_STATUS[CVE-2018-13053] = "fixed-version: Fixed from version 4.19rc1" | ||
2204 | |||
2205 | CVE_STATUS[CVE-2018-13093] = "fixed-version: Fixed from version 4.18rc1" | ||
2206 | |||
2207 | CVE_STATUS[CVE-2018-13094] = "fixed-version: Fixed from version 4.18rc1" | ||
2208 | |||
2209 | CVE_STATUS[CVE-2018-13095] = "fixed-version: Fixed from version 4.18rc3" | ||
2210 | |||
2211 | CVE_STATUS[CVE-2018-13096] = "fixed-version: Fixed from version 4.19rc1" | ||
2212 | |||
2213 | CVE_STATUS[CVE-2018-13097] = "fixed-version: Fixed from version 4.19rc1" | ||
2214 | |||
2215 | CVE_STATUS[CVE-2018-13098] = "fixed-version: Fixed from version 4.19rc1" | ||
2216 | |||
2217 | CVE_STATUS[CVE-2018-13099] = "fixed-version: Fixed from version 4.19rc1" | ||
2218 | |||
2219 | CVE_STATUS[CVE-2018-13100] = "fixed-version: Fixed from version 4.19rc1" | ||
2220 | |||
2221 | CVE_STATUS[CVE-2018-13405] = "fixed-version: Fixed from version 4.18rc4" | ||
2222 | |||
2223 | CVE_STATUS[CVE-2018-13406] = "fixed-version: Fixed from version 4.18rc1" | ||
2224 | |||
2225 | CVE_STATUS[CVE-2018-14609] = "fixed-version: Fixed from version 4.19rc1" | ||
2226 | |||
2227 | CVE_STATUS[CVE-2018-14610] = "fixed-version: Fixed from version 4.19rc1" | ||
2228 | |||
2229 | CVE_STATUS[CVE-2018-14611] = "fixed-version: Fixed from version 4.19rc1" | ||
2230 | |||
2231 | CVE_STATUS[CVE-2018-14612] = "fixed-version: Fixed from version 4.19rc1" | ||
2232 | |||
2233 | CVE_STATUS[CVE-2018-14613] = "fixed-version: Fixed from version 4.19rc1" | ||
2234 | |||
2235 | CVE_STATUS[CVE-2018-14614] = "fixed-version: Fixed from version 4.19rc1" | ||
2236 | |||
2237 | CVE_STATUS[CVE-2018-14615] = "fixed-version: Fixed from version 4.19rc1" | ||
2238 | |||
2239 | CVE_STATUS[CVE-2018-14616] = "fixed-version: Fixed from version 4.19rc1" | ||
2240 | |||
2241 | CVE_STATUS[CVE-2018-14617] = "fixed-version: Fixed from version 4.19rc1" | ||
2242 | |||
2243 | CVE_STATUS[CVE-2018-14619] = "fixed-version: Fixed from version 4.15rc4" | ||
2244 | |||
2245 | CVE_STATUS[CVE-2018-14625] = "fixed-version: Fixed from version 4.20rc6" | ||
2246 | |||
2247 | CVE_STATUS[CVE-2018-14633] = "fixed-version: Fixed from version 4.19rc6" | ||
2248 | |||
2249 | CVE_STATUS[CVE-2018-14634] = "fixed-version: Fixed from version 4.13rc1" | ||
2250 | |||
2251 | CVE_STATUS[CVE-2018-14641] = "fixed-version: Fixed from version 4.19rc4" | ||
2252 | |||
2253 | CVE_STATUS[CVE-2018-14646] = "fixed-version: Fixed from version 4.15rc8" | ||
2254 | |||
2255 | CVE_STATUS[CVE-2018-14656] = "fixed-version: Fixed from version 4.19rc2" | ||
2256 | |||
2257 | CVE_STATUS[CVE-2018-14678] = "fixed-version: Fixed from version 4.18rc8" | ||
2258 | |||
2259 | CVE_STATUS[CVE-2018-14734] = "fixed-version: Fixed from version 4.18rc1" | ||
2260 | |||
2261 | CVE_STATUS[CVE-2018-15471] = "fixed-version: Fixed from version 4.19rc7" | ||
2262 | |||
2263 | CVE_STATUS[CVE-2018-15572] = "fixed-version: Fixed from version 4.19rc1" | ||
2264 | |||
2265 | CVE_STATUS[CVE-2018-15594] = "fixed-version: Fixed from version 4.19rc1" | ||
2266 | |||
2267 | CVE_STATUS[CVE-2018-16276] = "fixed-version: Fixed from version 4.18rc5" | ||
2268 | |||
2269 | CVE_STATUS[CVE-2018-16597] = "fixed-version: Fixed from version 4.8rc1" | ||
2270 | |||
2271 | CVE_STATUS[CVE-2018-16658] = "fixed-version: Fixed from version 4.19rc2" | ||
2272 | |||
2273 | CVE_STATUS[CVE-2018-16862] = "fixed-version: Fixed from version 4.20rc5" | ||
2274 | |||
2275 | CVE_STATUS[CVE-2018-16871] = "fixed-version: Fixed from version 4.20rc3" | ||
2276 | |||
2277 | CVE_STATUS[CVE-2018-16880] = "fixed-version: Fixed from version 5.0rc5" | ||
2278 | |||
2279 | CVE_STATUS[CVE-2018-16882] = "fixed-version: Fixed from version 4.20" | ||
2280 | |||
2281 | CVE_STATUS[CVE-2018-16884] = "fixed-version: Fixed from version 5.0rc1" | ||
2282 | |||
2283 | # CVE-2018-16885 has no known resolution | ||
2284 | |||
2285 | CVE_STATUS[CVE-2018-17182] = "fixed-version: Fixed from version 4.19rc4" | ||
2286 | |||
2287 | CVE_STATUS[CVE-2018-17972] = "fixed-version: Fixed from version 4.19rc7" | ||
2288 | |||
2289 | # CVE-2018-17977 has no known resolution | ||
2290 | |||
2291 | CVE_STATUS[CVE-2018-18021] = "fixed-version: Fixed from version 4.19rc7" | ||
2292 | |||
2293 | CVE_STATUS[CVE-2018-18281] = "fixed-version: Fixed from version 4.19" | ||
2294 | |||
2295 | CVE_STATUS[CVE-2018-18386] = "fixed-version: Fixed from version 4.15rc6" | ||
2296 | |||
2297 | CVE_STATUS[CVE-2018-18397] = "fixed-version: Fixed from version 4.20rc5" | ||
2298 | |||
2299 | CVE_STATUS[CVE-2018-18445] = "fixed-version: Fixed from version 4.19rc7" | ||
2300 | |||
2301 | CVE_STATUS[CVE-2018-18559] = "fixed-version: Fixed from version 4.15rc2" | ||
2302 | |||
2303 | # CVE-2018-18653 has no known resolution | ||
2304 | |||
2305 | CVE_STATUS[CVE-2018-18690] = "fixed-version: Fixed from version 4.17rc4" | ||
2306 | |||
2307 | CVE_STATUS[CVE-2018-18710] = "fixed-version: Fixed from version 4.20rc1" | ||
2308 | |||
2309 | CVE_STATUS[CVE-2018-18955] = "fixed-version: Fixed from version 4.20rc2" | ||
2310 | |||
2311 | CVE_STATUS[CVE-2018-19406] = "fixed-version: Fixed from version 4.20rc5" | ||
2312 | |||
2313 | CVE_STATUS[CVE-2018-19407] = "fixed-version: Fixed from version 4.20rc5" | ||
2314 | |||
2315 | CVE_STATUS[CVE-2018-19824] = "fixed-version: Fixed from version 4.20rc6" | ||
2316 | |||
2317 | CVE_STATUS[CVE-2018-19854] = "fixed-version: Fixed from version 4.20rc3" | ||
2318 | |||
2319 | CVE_STATUS[CVE-2018-19985] = "fixed-version: Fixed from version 4.20" | ||
2320 | |||
2321 | CVE_STATUS[CVE-2018-20169] = "fixed-version: Fixed from version 4.20rc6" | ||
2322 | |||
2323 | CVE_STATUS[CVE-2018-20449] = "fixed-version: Fixed from version 4.15rc2" | ||
2324 | |||
2325 | CVE_STATUS[CVE-2018-20509] = "fixed-version: Fixed from version 4.14rc1" | ||
2326 | |||
2327 | CVE_STATUS[CVE-2018-20510] = "fixed-version: Fixed from version 4.16rc3" | ||
2328 | |||
2329 | CVE_STATUS[CVE-2018-20511] = "fixed-version: Fixed from version 4.19rc5" | ||
2330 | |||
2331 | CVE_STATUS[CVE-2018-20669] = "fixed-version: Fixed from version 5.0rc1" | ||
2332 | |||
2333 | CVE_STATUS[CVE-2018-20784] = "fixed-version: Fixed from version 5.0rc1" | ||
2334 | |||
2335 | CVE_STATUS[CVE-2018-20836] = "fixed-version: Fixed from version 4.20rc1" | ||
2336 | |||
2337 | CVE_STATUS[CVE-2018-20854] = "fixed-version: Fixed from version 4.20rc1" | ||
2338 | |||
2339 | CVE_STATUS[CVE-2018-20855] = "fixed-version: Fixed from version 4.19rc1" | ||
2340 | |||
2341 | CVE_STATUS[CVE-2018-20856] = "fixed-version: Fixed from version 4.19rc1" | ||
2342 | |||
2343 | CVE_STATUS[CVE-2018-20961] = "fixed-version: Fixed from version 4.17rc1" | ||
2344 | |||
2345 | CVE_STATUS[CVE-2018-20976] = "fixed-version: Fixed from version 4.18rc1" | ||
2346 | |||
2347 | CVE_STATUS[CVE-2018-21008] = "fixed-version: Fixed from version 4.18rc1" | ||
2348 | |||
2349 | CVE_STATUS[CVE-2018-25015] = "fixed-version: Fixed from version 4.15rc9" | ||
2350 | |||
2351 | CVE_STATUS[CVE-2018-25020] = "fixed-version: Fixed from version 4.17rc7" | ||
2352 | |||
2353 | # CVE-2018-3574 has no known resolution | ||
2354 | |||
2355 | CVE_STATUS[CVE-2018-3620] = "fixed-version: Fixed from version 4.19rc1" | ||
2356 | |||
2357 | CVE_STATUS[CVE-2018-3639] = "fixed-version: Fixed from version 4.17rc7" | ||
2358 | |||
2359 | CVE_STATUS[CVE-2018-3646] = "fixed-version: Fixed from version 4.19rc1" | ||
2360 | |||
2361 | CVE_STATUS[CVE-2018-3665] = "fixed-version: Fixed from version 3.7rc1" | ||
2362 | |||
2363 | CVE_STATUS[CVE-2018-3693] = "fixed-version: Fixed from version 4.19rc1" | ||
2364 | |||
2365 | CVE_STATUS[CVE-2018-5332] = "fixed-version: Fixed from version 4.15rc8" | ||
2366 | |||
2367 | CVE_STATUS[CVE-2018-5333] = "fixed-version: Fixed from version 4.15rc8" | ||
2368 | |||
2369 | CVE_STATUS[CVE-2018-5344] = "fixed-version: Fixed from version 4.15rc8" | ||
2370 | |||
2371 | CVE_STATUS[CVE-2018-5390] = "fixed-version: Fixed from version 4.18rc7" | ||
2372 | |||
2373 | CVE_STATUS[CVE-2018-5391] = "fixed-version: Fixed from version 4.19rc1" | ||
2374 | |||
2375 | CVE_STATUS[CVE-2018-5703] = "fixed-version: Fixed from version 4.16rc5" | ||
2376 | |||
2377 | CVE_STATUS[CVE-2018-5750] = "fixed-version: Fixed from version 4.16rc1" | ||
2378 | |||
2379 | CVE_STATUS[CVE-2018-5803] = "fixed-version: Fixed from version 4.16rc1" | ||
2380 | |||
2381 | CVE_STATUS[CVE-2018-5814] = "fixed-version: Fixed from version 4.17rc6" | ||
2382 | |||
2383 | CVE_STATUS[CVE-2018-5848] = "fixed-version: Fixed from version 4.16rc1" | ||
2384 | |||
2385 | # Skipping CVE-2018-5856, no affected_versions | ||
2386 | |||
2387 | CVE_STATUS[CVE-2018-5873] = "fixed-version: Fixed from version 4.11rc8" | ||
2388 | |||
2389 | CVE_STATUS[CVE-2018-5953] = "fixed-version: Fixed from version 4.15rc2" | ||
2390 | |||
2391 | CVE_STATUS[CVE-2018-5995] = "fixed-version: Fixed from version 4.15rc2" | ||
2392 | |||
2393 | CVE_STATUS[CVE-2018-6412] = "fixed-version: Fixed from version 4.16rc5" | ||
2394 | |||
2395 | CVE_STATUS[CVE-2018-6554] = "fixed-version: Fixed from version 4.17rc1" | ||
2396 | |||
2397 | CVE_STATUS[CVE-2018-6555] = "fixed-version: Fixed from version 4.17rc1" | ||
2398 | |||
2399 | # CVE-2018-6559 has no known resolution | ||
2400 | |||
2401 | CVE_STATUS[CVE-2018-6927] = "fixed-version: Fixed from version 4.15rc9" | ||
2402 | |||
2403 | CVE_STATUS[CVE-2018-7191] = "fixed-version: Fixed from version 4.14rc6" | ||
2404 | |||
2405 | CVE_STATUS[CVE-2018-7273] = "fixed-version: Fixed from version 4.15rc2" | ||
2406 | |||
2407 | CVE_STATUS[CVE-2018-7480] = "fixed-version: Fixed from version 4.11rc1" | ||
2408 | |||
2409 | CVE_STATUS[CVE-2018-7492] = "fixed-version: Fixed from version 4.15rc3" | ||
2410 | |||
2411 | CVE_STATUS[CVE-2018-7566] = "fixed-version: Fixed from version 4.16rc2" | ||
2412 | |||
2413 | CVE_STATUS[CVE-2018-7740] = "fixed-version: Fixed from version 4.16rc7" | ||
2414 | |||
2415 | CVE_STATUS[CVE-2018-7754] = "fixed-version: Fixed from version 4.15rc2" | ||
2416 | |||
2417 | CVE_STATUS[CVE-2018-7755] = "fixed-version: Fixed from version 4.19rc5" | ||
2418 | |||
2419 | CVE_STATUS[CVE-2018-7757] = "fixed-version: Fixed from version 4.16rc1" | ||
2420 | |||
2421 | CVE_STATUS[CVE-2018-7995] = "fixed-version: Fixed from version 4.16rc5" | ||
2422 | |||
2423 | CVE_STATUS[CVE-2018-8043] = "fixed-version: Fixed from version 4.16rc1" | ||
2424 | |||
2425 | CVE_STATUS[CVE-2018-8087] = "fixed-version: Fixed from version 4.16rc1" | ||
2426 | |||
2427 | CVE_STATUS[CVE-2018-8781] = "fixed-version: Fixed from version 4.16rc7" | ||
2428 | |||
2429 | CVE_STATUS[CVE-2018-8822] = "fixed-version: Fixed from version 4.16rc7" | ||
2430 | |||
2431 | CVE_STATUS[CVE-2018-8897] = "fixed-version: Fixed from version 4.16rc7" | ||
2432 | |||
2433 | CVE_STATUS[CVE-2018-9363] = "fixed-version: Fixed from version 4.19rc1" | ||
2434 | |||
2435 | CVE_STATUS[CVE-2018-9385] = "fixed-version: Fixed from version 4.17rc3" | ||
2436 | |||
2437 | CVE_STATUS[CVE-2018-9415] = "fixed-version: Fixed from version 4.17rc3" | ||
2438 | |||
2439 | CVE_STATUS[CVE-2018-9422] = "fixed-version: Fixed from version 4.6rc1" | ||
2440 | |||
2441 | CVE_STATUS[CVE-2018-9465] = "fixed-version: Fixed from version 4.15rc6" | ||
2442 | |||
2443 | CVE_STATUS[CVE-2018-9516] = "fixed-version: Fixed from version 4.18rc5" | ||
2444 | |||
2445 | CVE_STATUS[CVE-2018-9517] = "fixed-version: Fixed from version 4.14rc1" | ||
2446 | |||
2447 | CVE_STATUS[CVE-2018-9518] = "fixed-version: Fixed from version 4.16rc3" | ||
2448 | |||
2449 | CVE_STATUS[CVE-2018-9568] = "fixed-version: Fixed from version 4.14rc4" | ||
2450 | |||
2451 | CVE_STATUS[CVE-2019-0136] = "fixed-version: Fixed from version 5.2rc6" | ||
2452 | |||
2453 | CVE_STATUS[CVE-2019-0145] = "fixed-version: Fixed from version 5.2rc1" | ||
2454 | |||
2455 | CVE_STATUS[CVE-2019-0146] = "fixed-version: Fixed from version 5.2rc1" | ||
2456 | |||
2457 | CVE_STATUS[CVE-2019-0147] = "fixed-version: Fixed from version 5.2rc1" | ||
2458 | |||
2459 | CVE_STATUS[CVE-2019-0148] = "fixed-version: Fixed from version 5.2rc1" | ||
2460 | |||
2461 | CVE_STATUS[CVE-2019-0149] = "fixed-version: Fixed from version 5.3rc1" | ||
2462 | |||
2463 | CVE_STATUS[CVE-2019-0154] = "fixed-version: Fixed from version 5.4rc8" | ||
2464 | |||
2465 | CVE_STATUS[CVE-2019-0155] = "fixed-version: Fixed from version 5.4rc8" | ||
2466 | |||
2467 | CVE_STATUS[CVE-2019-10124] = "fixed-version: Fixed from version 5.1rc1" | ||
2468 | |||
2469 | CVE_STATUS[CVE-2019-10125] = "fixed-version: Fixed from version 5.1rc1" | ||
2470 | |||
2471 | CVE_STATUS[CVE-2019-10126] = "fixed-version: Fixed from version 5.2rc6" | ||
2472 | |||
2473 | # CVE-2019-10140 has no known resolution | ||
2474 | |||
2475 | CVE_STATUS[CVE-2019-10142] = "fixed-version: Fixed from version 5.2rc1" | ||
2476 | |||
2477 | CVE_STATUS[CVE-2019-10207] = "fixed-version: Fixed from version 5.3rc3" | ||
2478 | |||
2479 | CVE_STATUS[CVE-2019-10220] = "fixed-version: Fixed from version 5.4rc2" | ||
2480 | |||
2481 | CVE_STATUS[CVE-2019-10638] = "fixed-version: Fixed from version 5.2rc1" | ||
2482 | |||
2483 | CVE_STATUS[CVE-2019-10639] = "fixed-version: Fixed from version 5.1rc4" | ||
2484 | |||
2485 | CVE_STATUS[CVE-2019-11085] = "fixed-version: Fixed from version 5.0rc3" | ||
2486 | |||
2487 | CVE_STATUS[CVE-2019-11091] = "fixed-version: Fixed from version 5.2rc1" | ||
2488 | |||
2489 | CVE_STATUS[CVE-2019-11135] = "fixed-version: Fixed from version 5.4rc8" | ||
2490 | |||
2491 | CVE_STATUS[CVE-2019-11190] = "fixed-version: Fixed from version 4.8rc5" | ||
2492 | |||
2493 | CVE_STATUS[CVE-2019-11191] = "fixed-version: Fixed from version 5.1rc1" | ||
2494 | |||
2495 | CVE_STATUS[CVE-2019-1125] = "fixed-version: Fixed from version 5.3rc4" | ||
2496 | |||
2497 | CVE_STATUS[CVE-2019-11477] = "fixed-version: Fixed from version 5.2rc6" | ||
2498 | |||
2499 | CVE_STATUS[CVE-2019-11478] = "fixed-version: Fixed from version 5.2rc6" | ||
2500 | |||
2501 | CVE_STATUS[CVE-2019-11479] = "fixed-version: Fixed from version 5.2rc6" | ||
2502 | |||
2503 | CVE_STATUS[CVE-2019-11486] = "fixed-version: Fixed from version 5.1rc4" | ||
2504 | |||
2505 | CVE_STATUS[CVE-2019-11487] = "fixed-version: Fixed from version 5.1rc5" | ||
2506 | |||
2507 | CVE_STATUS[CVE-2019-11599] = "fixed-version: Fixed from version 5.1rc6" | ||
2508 | |||
2509 | CVE_STATUS[CVE-2019-11683] = "fixed-version: Fixed from version 5.1" | ||
2510 | |||
2511 | CVE_STATUS[CVE-2019-11810] = "fixed-version: Fixed from version 5.1rc1" | ||
2512 | |||
2513 | CVE_STATUS[CVE-2019-11811] = "fixed-version: Fixed from version 5.1rc1" | ||
2514 | |||
2515 | CVE_STATUS[CVE-2019-11815] = "fixed-version: Fixed from version 5.1rc4" | ||
2516 | |||
2517 | CVE_STATUS[CVE-2019-11833] = "fixed-version: Fixed from version 5.2rc1" | ||
2518 | |||
2519 | CVE_STATUS[CVE-2019-11884] = "fixed-version: Fixed from version 5.2rc1" | ||
2520 | |||
2521 | CVE_STATUS[CVE-2019-12378] = "fixed-version: Fixed from version 5.2rc3" | ||
2522 | |||
2523 | CVE_STATUS[CVE-2019-12379] = "fixed-version: Fixed from version 5.3rc1" | ||
2524 | |||
2525 | CVE_STATUS[CVE-2019-12380] = "fixed-version: Fixed from version 5.2rc3" | ||
2526 | |||
2527 | CVE_STATUS[CVE-2019-12381] = "fixed-version: Fixed from version 5.2rc3" | ||
2528 | |||
2529 | CVE_STATUS[CVE-2019-12382] = "fixed-version: Fixed from version 5.3rc1" | ||
2530 | |||
2531 | CVE_STATUS[CVE-2019-12454] = "fixed-version: Fixed from version 5.3rc1" | ||
2532 | |||
2533 | CVE_STATUS[CVE-2019-12455] = "fixed-version: Fixed from version 5.3rc1" | ||
2534 | |||
2535 | # CVE-2019-12456 has no known resolution | ||
2536 | |||
2537 | CVE_STATUS[CVE-2019-12614] = "fixed-version: Fixed from version 5.3rc1" | ||
2538 | |||
2539 | CVE_STATUS[CVE-2019-12615] = "fixed-version: Fixed from version 5.2rc4" | ||
2540 | |||
2541 | CVE_STATUS[CVE-2019-12817] = "fixed-version: Fixed from version 5.2rc7" | ||
2542 | |||
2543 | CVE_STATUS[CVE-2019-12818] = "fixed-version: Fixed from version 5.0" | ||
2544 | |||
2545 | CVE_STATUS[CVE-2019-12819] = "fixed-version: Fixed from version 5.0rc8" | ||
2546 | |||
2547 | CVE_STATUS[CVE-2019-12881] = "fixed-version: Fixed from version 4.18rc1" | ||
2548 | |||
2549 | CVE_STATUS[CVE-2019-12984] = "fixed-version: Fixed from version 5.2rc6" | ||
2550 | |||
2551 | CVE_STATUS[CVE-2019-13233] = "fixed-version: Fixed from version 5.2rc4" | ||
2552 | |||
2553 | CVE_STATUS[CVE-2019-13272] = "fixed-version: Fixed from version 5.2" | ||
2554 | |||
2555 | CVE_STATUS[CVE-2019-13631] = "fixed-version: Fixed from version 5.3rc1" | ||
2556 | |||
2557 | CVE_STATUS[CVE-2019-13648] = "fixed-version: Fixed from version 5.3rc2" | ||
2558 | |||
2559 | CVE_STATUS[CVE-2019-14283] = "fixed-version: Fixed from version 5.3rc1" | ||
2560 | |||
2561 | CVE_STATUS[CVE-2019-14284] = "fixed-version: Fixed from version 5.3rc1" | ||
2562 | |||
2563 | CVE_STATUS[CVE-2019-14615] = "fixed-version: Fixed from version 5.5rc7" | ||
2564 | |||
2565 | CVE_STATUS[CVE-2019-14763] = "fixed-version: Fixed from version 4.17rc1" | ||
2566 | |||
2567 | CVE_STATUS[CVE-2019-14814] = "fixed-version: Fixed from version 5.3" | ||
2568 | |||
2569 | CVE_STATUS[CVE-2019-14815] = "fixed-version: Fixed from version 5.3" | ||
2570 | |||
2571 | CVE_STATUS[CVE-2019-14816] = "fixed-version: Fixed from version 5.3" | ||
2572 | |||
2573 | CVE_STATUS[CVE-2019-14821] = "fixed-version: Fixed from version 5.4rc1" | ||
2574 | |||
2575 | CVE_STATUS[CVE-2019-14835] = "fixed-version: Fixed from version 5.3" | ||
2576 | |||
2577 | CVE_STATUS[CVE-2019-14895] = "fixed-version: Fixed from version 5.5rc3" | ||
2578 | |||
2579 | CVE_STATUS[CVE-2019-14896] = "fixed-version: Fixed from version 5.5" | ||
2580 | |||
2581 | CVE_STATUS[CVE-2019-14897] = "fixed-version: Fixed from version 5.5" | ||
2582 | |||
2583 | # CVE-2019-14898 has no known resolution | ||
2584 | |||
2585 | CVE_STATUS[CVE-2019-14901] = "fixed-version: Fixed from version 5.5rc3" | ||
2586 | |||
2587 | CVE_STATUS[CVE-2019-15030] = "fixed-version: Fixed from version 5.3rc8" | ||
2588 | |||
2589 | CVE_STATUS[CVE-2019-15031] = "fixed-version: Fixed from version 5.3rc8" | ||
2590 | |||
2591 | CVE_STATUS[CVE-2019-15090] = "fixed-version: Fixed from version 5.2rc2" | ||
2592 | |||
2593 | CVE_STATUS[CVE-2019-15098] = "fixed-version: Fixed from version 5.4rc1" | ||
2594 | |||
2595 | CVE_STATUS[CVE-2019-15099] = "fixed-version: Fixed from version 5.5rc1" | ||
2596 | |||
2597 | CVE_STATUS[CVE-2019-15117] = "fixed-version: Fixed from version 5.3rc5" | ||
2598 | |||
2599 | CVE_STATUS[CVE-2019-15118] = "fixed-version: Fixed from version 5.3rc5" | ||
2600 | |||
2601 | CVE_STATUS[CVE-2019-15211] = "fixed-version: Fixed from version 5.3rc1" | ||
2602 | |||
2603 | CVE_STATUS[CVE-2019-15212] = "fixed-version: Fixed from version 5.2rc3" | ||
2604 | |||
2605 | CVE_STATUS[CVE-2019-15213] = "fixed-version: Fixed from version 5.3rc1" | ||
2606 | |||
2607 | CVE_STATUS[CVE-2019-15214] = "fixed-version: Fixed from version 5.1rc6" | ||
2608 | |||
2609 | CVE_STATUS[CVE-2019-15215] = "fixed-version: Fixed from version 5.3rc1" | ||
2610 | |||
2611 | CVE_STATUS[CVE-2019-15216] = "fixed-version: Fixed from version 5.1" | ||
2612 | |||
2613 | CVE_STATUS[CVE-2019-15217] = "fixed-version: Fixed from version 5.3rc1" | ||
2614 | |||
2615 | CVE_STATUS[CVE-2019-15218] = "fixed-version: Fixed from version 5.2rc3" | ||
2616 | |||
2617 | CVE_STATUS[CVE-2019-15219] = "fixed-version: Fixed from version 5.2rc3" | ||
2618 | |||
2619 | CVE_STATUS[CVE-2019-15220] = "fixed-version: Fixed from version 5.3rc1" | ||
2620 | |||
2621 | CVE_STATUS[CVE-2019-15221] = "fixed-version: Fixed from version 5.2" | ||
2622 | |||
2623 | CVE_STATUS[CVE-2019-15222] = "fixed-version: Fixed from version 5.3rc3" | ||
2624 | |||
2625 | CVE_STATUS[CVE-2019-15223] = "fixed-version: Fixed from version 5.2rc3" | ||
2626 | |||
2627 | # CVE-2019-15239 has no known resolution | ||
2628 | |||
2629 | # CVE-2019-15290 has no known resolution | ||
2630 | |||
2631 | CVE_STATUS[CVE-2019-15291] = "fixed-version: Fixed from version 5.5rc1" | ||
2632 | |||
2633 | CVE_STATUS[CVE-2019-15292] = "fixed-version: Fixed from version 5.1rc1" | ||
2634 | |||
2635 | CVE_STATUS[CVE-2019-15504] = "fixed-version: Fixed from version 5.3" | ||
2636 | |||
2637 | CVE_STATUS[CVE-2019-15505] = "fixed-version: Fixed from version 5.4rc1" | ||
2638 | |||
2639 | CVE_STATUS[CVE-2019-15538] = "fixed-version: Fixed from version 5.3rc6" | ||
2640 | |||
2641 | CVE_STATUS[CVE-2019-15666] = "fixed-version: Fixed from version 5.1" | ||
2642 | |||
2643 | # CVE-2019-15791 has no known resolution | ||
2644 | |||
2645 | # CVE-2019-15792 has no known resolution | ||
2646 | |||
2647 | # CVE-2019-15793 has no known resolution | ||
2648 | |||
2649 | CVE_STATUS[CVE-2019-15794] = "fixed-version: Fixed from version 5.12" | ||
2650 | |||
2651 | CVE_STATUS[CVE-2019-15807] = "fixed-version: Fixed from version 5.2rc3" | ||
2652 | |||
2653 | # CVE-2019-15902 has no known resolution | ||
2654 | |||
2655 | CVE_STATUS[CVE-2019-15916] = "fixed-version: Fixed from version 5.1rc1" | ||
2656 | |||
2657 | CVE_STATUS[CVE-2019-15917] = "fixed-version: Fixed from version 5.1rc1" | ||
2658 | |||
2659 | CVE_STATUS[CVE-2019-15918] = "fixed-version: Fixed from version 5.1rc6" | ||
2660 | |||
2661 | CVE_STATUS[CVE-2019-15919] = "fixed-version: Fixed from version 5.1rc6" | ||
2662 | |||
2663 | CVE_STATUS[CVE-2019-15920] = "fixed-version: Fixed from version 5.1rc6" | ||
2664 | |||
2665 | CVE_STATUS[CVE-2019-15921] = "fixed-version: Fixed from version 5.1rc3" | ||
2666 | |||
2667 | CVE_STATUS[CVE-2019-15922] = "fixed-version: Fixed from version 5.1rc4" | ||
2668 | |||
2669 | CVE_STATUS[CVE-2019-15923] = "fixed-version: Fixed from version 5.1rc4" | ||
2670 | |||
2671 | CVE_STATUS[CVE-2019-15924] = "fixed-version: Fixed from version 5.1rc4" | ||
2672 | |||
2673 | CVE_STATUS[CVE-2019-15925] = "fixed-version: Fixed from version 5.3rc1" | ||
2674 | |||
2675 | CVE_STATUS[CVE-2019-15926] = "fixed-version: Fixed from version 5.3rc1" | ||
2676 | |||
2677 | CVE_STATUS[CVE-2019-15927] = "fixed-version: Fixed from version 5.0rc2" | ||
2678 | |||
2679 | # CVE-2019-16089 has no known resolution | ||
2680 | |||
2681 | CVE_STATUS[CVE-2019-16229] = "fixed-version: Fixed from version 5.5rc1" | ||
2682 | |||
2683 | CVE_STATUS[CVE-2019-16230] = "fixed-version: Fixed from version 5.5rc1" | ||
2684 | |||
2685 | CVE_STATUS[CVE-2019-16231] = "fixed-version: Fixed from version 5.4rc6" | ||
2686 | |||
2687 | CVE_STATUS[CVE-2019-16232] = "fixed-version: Fixed from version 5.5rc1" | ||
2688 | |||
2689 | CVE_STATUS[CVE-2019-16233] = "fixed-version: Fixed from version 5.4rc5" | ||
2690 | |||
2691 | CVE_STATUS[CVE-2019-16234] = "fixed-version: Fixed from version 5.4rc4" | ||
2692 | |||
2693 | CVE_STATUS[CVE-2019-16413] = "fixed-version: Fixed from version 5.1rc1" | ||
2694 | |||
2695 | CVE_STATUS[CVE-2019-16714] = "fixed-version: Fixed from version 5.3rc7" | ||
2696 | |||
2697 | CVE_STATUS[CVE-2019-16746] = "fixed-version: Fixed from version 5.4rc2" | ||
2698 | |||
2699 | CVE_STATUS[CVE-2019-16921] = "fixed-version: Fixed from version 4.17rc1" | ||
2700 | |||
2701 | CVE_STATUS[CVE-2019-16994] = "fixed-version: Fixed from version 5.0" | ||
2702 | |||
2703 | CVE_STATUS[CVE-2019-16995] = "fixed-version: Fixed from version 5.1rc1" | ||
2704 | |||
2705 | CVE_STATUS[CVE-2019-17052] = "fixed-version: Fixed from version 5.4rc1" | ||
2706 | |||
2707 | CVE_STATUS[CVE-2019-17053] = "fixed-version: Fixed from version 5.4rc1" | ||
2708 | |||
2709 | CVE_STATUS[CVE-2019-17054] = "fixed-version: Fixed from version 5.4rc1" | ||
2710 | |||
2711 | CVE_STATUS[CVE-2019-17055] = "fixed-version: Fixed from version 5.4rc1" | ||
2712 | |||
2713 | CVE_STATUS[CVE-2019-17056] = "fixed-version: Fixed from version 5.4rc1" | ||
2714 | |||
2715 | CVE_STATUS[CVE-2019-17075] = "fixed-version: Fixed from version 5.4rc3" | ||
2716 | |||
2717 | CVE_STATUS[CVE-2019-17133] = "fixed-version: Fixed from version 5.4rc4" | ||
2718 | |||
2719 | CVE_STATUS[CVE-2019-17351] = "fixed-version: Fixed from version 5.3rc1" | ||
2720 | |||
2721 | CVE_STATUS[CVE-2019-17666] = "fixed-version: Fixed from version 5.4rc6" | ||
2722 | |||
2723 | CVE_STATUS[CVE-2019-18198] = "fixed-version: Fixed from version 5.4rc1" | ||
2724 | |||
2725 | CVE_STATUS[CVE-2019-18282] = "fixed-version: Fixed from version 5.4rc6" | ||
2726 | |||
2727 | CVE_STATUS[CVE-2019-18660] = "fixed-version: Fixed from version 5.5rc1" | ||
2728 | |||
2729 | CVE_STATUS[CVE-2019-18675] = "fixed-version: Fixed from version 4.17rc5" | ||
2730 | |||
2731 | # CVE-2019-18680 has no known resolution | ||
2732 | |||
2733 | CVE_STATUS[CVE-2019-18683] = "fixed-version: Fixed from version 5.5rc1" | ||
2734 | |||
2735 | CVE_STATUS[CVE-2019-18786] = "fixed-version: Fixed from version 5.5rc1" | ||
2736 | |||
2737 | CVE_STATUS[CVE-2019-18805] = "fixed-version: Fixed from version 5.1rc7" | ||
2738 | |||
2739 | CVE_STATUS[CVE-2019-18806] = "fixed-version: Fixed from version 5.4rc2" | ||
2740 | |||
2741 | CVE_STATUS[CVE-2019-18807] = "fixed-version: Fixed from version 5.4rc2" | ||
2742 | |||
2743 | CVE_STATUS[CVE-2019-18808] = "fixed-version: Fixed from version 5.5rc1" | ||
2744 | |||
2745 | CVE_STATUS[CVE-2019-18809] = "fixed-version: Fixed from version 5.5rc1" | ||
2746 | |||
2747 | CVE_STATUS[CVE-2019-18810] = "fixed-version: Fixed from version 5.4rc2" | ||
2748 | |||
2749 | CVE_STATUS[CVE-2019-18811] = "fixed-version: Fixed from version 5.4rc7" | ||
2750 | |||
2751 | CVE_STATUS[CVE-2019-18812] = "fixed-version: Fixed from version 5.4rc7" | ||
2752 | |||
2753 | CVE_STATUS[CVE-2019-18813] = "fixed-version: Fixed from version 5.4rc6" | ||
2754 | |||
2755 | CVE_STATUS[CVE-2019-18814] = "fixed-version: Fixed from version 5.7rc7" | ||
2756 | |||
2757 | CVE_STATUS[CVE-2019-18885] = "fixed-version: Fixed from version 5.1rc1" | ||
2758 | |||
2759 | CVE_STATUS[CVE-2019-19036] = "fixed-version: Fixed from version 5.4rc1" | ||
2760 | |||
2761 | CVE_STATUS[CVE-2019-19037] = "fixed-version: Fixed from version 5.5rc3" | ||
2762 | |||
2763 | CVE_STATUS[CVE-2019-19039] = "fixed-version: Fixed from version 5.7rc1" | ||
2764 | |||
2765 | CVE_STATUS[CVE-2019-19043] = "fixed-version: Fixed from version 5.5rc1" | ||
2766 | |||
2767 | CVE_STATUS[CVE-2019-19044] = "fixed-version: Fixed from version 5.4rc6" | ||
2768 | |||
2769 | CVE_STATUS[CVE-2019-19045] = "fixed-version: Fixed from version 5.4rc6" | ||
2770 | |||
2771 | CVE_STATUS[CVE-2019-19046] = "fixed-version: Fixed from version 5.5rc1" | ||
2772 | |||
2773 | CVE_STATUS[CVE-2019-19047] = "fixed-version: Fixed from version 5.4rc6" | ||
2774 | |||
2775 | CVE_STATUS[CVE-2019-19048] = "fixed-version: Fixed from version 5.4rc3" | ||
2776 | |||
2777 | CVE_STATUS[CVE-2019-19049] = "fixed-version: Fixed from version 5.4rc5" | ||
2778 | |||
2779 | CVE_STATUS[CVE-2019-19050] = "fixed-version: Fixed from version 5.5rc1" | ||
2780 | |||
2781 | CVE_STATUS[CVE-2019-19051] = "fixed-version: Fixed from version 5.4rc6" | ||
2782 | |||
2783 | CVE_STATUS[CVE-2019-19052] = "fixed-version: Fixed from version 5.4rc7" | ||
2784 | |||
2785 | CVE_STATUS[CVE-2019-19053] = "fixed-version: Fixed from version 5.5rc1" | ||
2786 | |||
2787 | CVE_STATUS[CVE-2019-19054] = "fixed-version: Fixed from version 5.5rc1" | ||
2788 | |||
2789 | CVE_STATUS[CVE-2019-19055] = "fixed-version: Fixed from version 5.4rc4" | ||
2790 | |||
2791 | CVE_STATUS[CVE-2019-19056] = "fixed-version: Fixed from version 5.5rc1" | ||
2792 | |||
2793 | CVE_STATUS[CVE-2019-19057] = "fixed-version: Fixed from version 5.5rc1" | ||
2794 | |||
2795 | CVE_STATUS[CVE-2019-19058] = "fixed-version: Fixed from version 5.4rc4" | ||
2796 | |||
2797 | CVE_STATUS[CVE-2019-19059] = "fixed-version: Fixed from version 5.4rc4" | ||
2798 | |||
2799 | CVE_STATUS[CVE-2019-19060] = "fixed-version: Fixed from version 5.4rc3" | ||
2800 | |||
2801 | CVE_STATUS[CVE-2019-19061] = "fixed-version: Fixed from version 5.4rc3" | ||
2802 | |||
2803 | CVE_STATUS[CVE-2019-19062] = "fixed-version: Fixed from version 5.5rc1" | ||
2804 | |||
2805 | CVE_STATUS[CVE-2019-19063] = "fixed-version: Fixed from version 5.5rc1" | ||
2806 | |||
2807 | CVE_STATUS[CVE-2019-19064] = "fixed-version: Fixed from version 5.5rc1" | ||
2808 | |||
2809 | CVE_STATUS[CVE-2019-19065] = "fixed-version: Fixed from version 5.4rc3" | ||
2810 | |||
2811 | CVE_STATUS[CVE-2019-19066] = "fixed-version: Fixed from version 5.5rc1" | ||
2812 | |||
2813 | CVE_STATUS[CVE-2019-19067] = "fixed-version: Fixed from version 5.4rc2" | ||
2814 | |||
2815 | CVE_STATUS[CVE-2019-19068] = "fixed-version: Fixed from version 5.5rc1" | ||
2816 | |||
2817 | CVE_STATUS[CVE-2019-19069] = "fixed-version: Fixed from version 5.4rc3" | ||
2818 | |||
2819 | CVE_STATUS[CVE-2019-19070] = "fixed-version: Fixed from version 5.5rc1" | ||
2820 | |||
2821 | CVE_STATUS[CVE-2019-19071] = "fixed-version: Fixed from version 5.5rc1" | ||
2822 | |||
2823 | CVE_STATUS[CVE-2019-19072] = "fixed-version: Fixed from version 5.4rc1" | ||
2824 | |||
2825 | CVE_STATUS[CVE-2019-19073] = "fixed-version: Fixed from version 5.4rc1" | ||
2826 | |||
2827 | CVE_STATUS[CVE-2019-19074] = "fixed-version: Fixed from version 5.4rc1" | ||
2828 | |||
2829 | CVE_STATUS[CVE-2019-19075] = "fixed-version: Fixed from version 5.4rc2" | ||
2830 | |||
2831 | CVE_STATUS[CVE-2019-19076] = "fixed-version: Fixed from version 5.4rc1" | ||
2832 | |||
2833 | CVE_STATUS[CVE-2019-19077] = "fixed-version: Fixed from version 5.4rc1" | ||
2834 | |||
2835 | CVE_STATUS[CVE-2019-19078] = "fixed-version: Fixed from version 5.5rc1" | ||
2836 | |||
2837 | CVE_STATUS[CVE-2019-19079] = "fixed-version: Fixed from version 5.3" | ||
2838 | |||
2839 | CVE_STATUS[CVE-2019-19080] = "fixed-version: Fixed from version 5.4rc1" | ||
2840 | |||
2841 | CVE_STATUS[CVE-2019-19081] = "fixed-version: Fixed from version 5.4rc1" | ||
2842 | |||
2843 | CVE_STATUS[CVE-2019-19082] = "fixed-version: Fixed from version 5.4rc1" | ||
2844 | |||
2845 | CVE_STATUS[CVE-2019-19083] = "fixed-version: Fixed from version 5.4rc2" | ||
2846 | |||
2847 | CVE_STATUS[CVE-2019-19227] = "fixed-version: Fixed from version 5.1rc3" | ||
2848 | |||
2849 | CVE_STATUS[CVE-2019-19241] = "fixed-version: Fixed from version 5.5rc1" | ||
2850 | |||
2851 | CVE_STATUS[CVE-2019-19252] = "fixed-version: Fixed from version 5.5rc1" | ||
2852 | |||
2853 | CVE_STATUS[CVE-2019-19318] = "fixed-version: Fixed from version 5.4rc1" | ||
2854 | |||
2855 | CVE_STATUS[CVE-2019-19319] = "fixed-version: Fixed from version 5.2rc1" | ||
2856 | |||
2857 | CVE_STATUS[CVE-2019-19332] = "fixed-version: Fixed from version 5.5rc1" | ||
2858 | |||
2859 | CVE_STATUS[CVE-2019-19338] = "fixed-version: Fixed from version 5.5rc1" | ||
2860 | |||
2861 | CVE_STATUS[CVE-2019-19377] = "fixed-version: Fixed from version 5.7rc1" | ||
2862 | |||
2863 | # CVE-2019-19378 has no known resolution | ||
2864 | |||
2865 | CVE_STATUS[CVE-2019-19447] = "fixed-version: Fixed from version 5.5rc1" | ||
2866 | |||
2867 | CVE_STATUS[CVE-2019-19448] = "fixed-version: Fixed from version 5.9rc1" | ||
2868 | |||
2869 | CVE_STATUS[CVE-2019-19449] = "fixed-version: Fixed from version 5.10rc1" | ||
2870 | |||
2871 | CVE_STATUS[CVE-2019-19462] = "fixed-version: Fixed from version 5.8rc1" | ||
2872 | |||
2873 | CVE_STATUS[CVE-2019-19523] = "fixed-version: Fixed from version 5.4rc3" | ||
2874 | |||
2875 | CVE_STATUS[CVE-2019-19524] = "fixed-version: Fixed from version 5.4rc8" | ||
2876 | |||
2877 | CVE_STATUS[CVE-2019-19525] = "fixed-version: Fixed from version 5.4rc2" | ||
2878 | |||
2879 | CVE_STATUS[CVE-2019-19526] = "fixed-version: Fixed from version 5.4rc4" | ||
2880 | |||
2881 | CVE_STATUS[CVE-2019-19527] = "fixed-version: Fixed from version 5.3rc4" | ||
2882 | |||
2883 | CVE_STATUS[CVE-2019-19528] = "fixed-version: Fixed from version 5.4rc3" | ||
2884 | |||
2885 | CVE_STATUS[CVE-2019-19529] = "fixed-version: Fixed from version 5.4rc7" | ||
2886 | |||
2887 | CVE_STATUS[CVE-2019-19530] = "fixed-version: Fixed from version 5.3rc5" | ||
2888 | |||
2889 | CVE_STATUS[CVE-2019-19531] = "fixed-version: Fixed from version 5.3rc4" | ||
2890 | |||
2891 | CVE_STATUS[CVE-2019-19532] = "fixed-version: Fixed from version 5.4rc6" | ||
2892 | |||
2893 | CVE_STATUS[CVE-2019-19533] = "fixed-version: Fixed from version 5.4rc1" | ||
2894 | |||
2895 | CVE_STATUS[CVE-2019-19534] = "fixed-version: Fixed from version 5.4rc7" | ||
2896 | |||
2897 | CVE_STATUS[CVE-2019-19535] = "fixed-version: Fixed from version 5.3rc4" | ||
2898 | |||
2899 | CVE_STATUS[CVE-2019-19536] = "fixed-version: Fixed from version 5.3rc4" | ||
2900 | |||
2901 | CVE_STATUS[CVE-2019-19537] = "fixed-version: Fixed from version 5.3rc5" | ||
2902 | |||
2903 | CVE_STATUS[CVE-2019-19543] = "fixed-version: Fixed from version 5.2rc1" | ||
2904 | |||
2905 | CVE_STATUS[CVE-2019-19602] = "fixed-version: Fixed from version 5.5rc1" | ||
2906 | |||
2907 | CVE_STATUS[CVE-2019-19767] = "fixed-version: Fixed from version 5.5rc1" | ||
2908 | |||
2909 | CVE_STATUS[CVE-2019-19768] = "fixed-version: Fixed from version 5.6rc4" | ||
2910 | |||
2911 | CVE_STATUS[CVE-2019-19769] = "fixed-version: Fixed from version 5.6rc5" | ||
2912 | |||
2913 | CVE_STATUS[CVE-2019-19770] = "fixed-version: Fixed from version 5.9rc1" | ||
2914 | |||
2915 | CVE_STATUS[CVE-2019-19807] = "fixed-version: Fixed from version 5.4rc7" | ||
2916 | |||
2917 | CVE_STATUS[CVE-2019-19813] = "fixed-version: Fixed from version 5.2rc1" | ||
2918 | |||
2919 | # CVE-2019-19814 has no known resolution | ||
2920 | |||
2921 | CVE_STATUS[CVE-2019-19815] = "fixed-version: Fixed from version 5.3rc1" | ||
2922 | |||
2923 | CVE_STATUS[CVE-2019-19816] = "fixed-version: Fixed from version 5.2rc1" | ||
2924 | |||
2925 | CVE_STATUS[CVE-2019-19922] = "fixed-version: Fixed from version 5.4rc1" | ||
2926 | |||
2927 | CVE_STATUS[CVE-2019-19927] = "fixed-version: Fixed from version 5.1rc6" | ||
2928 | |||
2929 | CVE_STATUS[CVE-2019-19947] = "fixed-version: Fixed from version 5.5rc3" | ||
2930 | |||
2931 | CVE_STATUS[CVE-2019-19965] = "fixed-version: Fixed from version 5.5rc2" | ||
2932 | |||
2933 | CVE_STATUS[CVE-2019-19966] = "fixed-version: Fixed from version 5.2rc1" | ||
2934 | |||
2935 | CVE_STATUS[CVE-2019-1999] = "fixed-version: Fixed from version 5.1rc3" | ||
2936 | |||
2937 | CVE_STATUS[CVE-2019-20054] = "fixed-version: Fixed from version 5.1rc3" | ||
2938 | |||
2939 | CVE_STATUS[CVE-2019-20095] = "fixed-version: Fixed from version 5.2rc1" | ||
2940 | |||
2941 | CVE_STATUS[CVE-2019-20096] = "fixed-version: Fixed from version 5.1rc4" | ||
2942 | |||
2943 | CVE_STATUS[CVE-2019-2024] = "fixed-version: Fixed from version 4.16rc1" | ||
2944 | |||
2945 | CVE_STATUS[CVE-2019-2025] = "fixed-version: Fixed from version 4.20rc5" | ||
2946 | |||
2947 | CVE_STATUS[CVE-2019-20422] = "fixed-version: Fixed from version 5.4rc1" | ||
2948 | |||
2949 | CVE_STATUS[CVE-2019-2054] = "fixed-version: Fixed from version 4.8rc1" | ||
2950 | |||
2951 | CVE_STATUS[CVE-2019-20636] = "fixed-version: Fixed from version 5.5rc6" | ||
2952 | |||
2953 | # CVE-2019-20794 has no known resolution | ||
2954 | |||
2955 | CVE_STATUS[CVE-2019-20806] = "fixed-version: Fixed from version 5.2rc1" | ||
2956 | |||
2957 | CVE_STATUS[CVE-2019-20810] = "fixed-version: Fixed from version 5.6rc1" | ||
2958 | |||
2959 | CVE_STATUS[CVE-2019-20811] = "fixed-version: Fixed from version 5.1rc3" | ||
2960 | |||
2961 | CVE_STATUS[CVE-2019-20812] = "fixed-version: Fixed from version 5.5rc3" | ||
2962 | |||
2963 | CVE_STATUS[CVE-2019-20908] = "fixed-version: Fixed from version 5.4rc1" | ||
2964 | |||
2965 | CVE_STATUS[CVE-2019-20934] = "fixed-version: Fixed from version 5.3rc2" | ||
2966 | |||
2967 | CVE_STATUS[CVE-2019-2101] = "fixed-version: Fixed from version 5.1rc1" | ||
2968 | |||
2969 | CVE_STATUS[CVE-2019-2181] = "fixed-version: Fixed from version 5.2rc1" | ||
2970 | |||
2971 | CVE_STATUS[CVE-2019-2182] = "fixed-version: Fixed from version 4.16rc3" | ||
2972 | |||
2973 | CVE_STATUS[CVE-2019-2213] = "fixed-version: Fixed from version 5.2rc6" | ||
2974 | |||
2975 | CVE_STATUS[CVE-2019-2214] = "fixed-version: Fixed from version 5.3rc2" | ||
2976 | |||
2977 | CVE_STATUS[CVE-2019-2215] = "fixed-version: Fixed from version 4.16rc1" | ||
2978 | |||
2979 | CVE_STATUS[CVE-2019-25044] = "fixed-version: Fixed from version 5.2rc4" | ||
2980 | |||
2981 | CVE_STATUS[CVE-2019-25045] = "fixed-version: Fixed from version 5.1" | ||
2982 | |||
2983 | CVE_STATUS[CVE-2019-3016] = "fixed-version: Fixed from version 5.6rc1" | ||
2984 | |||
2985 | CVE_STATUS[CVE-2019-3459] = "fixed-version: Fixed from version 5.1rc1" | ||
2986 | |||
2987 | CVE_STATUS[CVE-2019-3460] = "fixed-version: Fixed from version 5.1rc1" | ||
2988 | |||
2989 | CVE_STATUS[CVE-2019-3701] = "fixed-version: Fixed from version 5.0rc3" | ||
2990 | |||
2991 | CVE_STATUS[CVE-2019-3819] = "fixed-version: Fixed from version 5.0rc6" | ||
2992 | |||
2993 | CVE_STATUS[CVE-2019-3837] = "fixed-version: Fixed from version 3.18rc1" | ||
2994 | |||
2995 | CVE_STATUS[CVE-2019-3846] = "fixed-version: Fixed from version 5.2rc6" | ||
2996 | |||
2997 | CVE_STATUS[CVE-2019-3874] = "fixed-version: Fixed from version 5.2rc1" | ||
2998 | |||
2999 | CVE_STATUS[CVE-2019-3882] = "fixed-version: Fixed from version 5.1rc4" | ||
3000 | |||
3001 | CVE_STATUS[CVE-2019-3887] = "fixed-version: Fixed from version 5.1rc4" | ||
3002 | |||
3003 | CVE_STATUS[CVE-2019-3892] = "fixed-version: Fixed from version 5.1rc6" | ||
3004 | |||
3005 | CVE_STATUS[CVE-2019-3896] = "fixed-version: Fixed from version 2.6.35rc1" | ||
3006 | |||
3007 | CVE_STATUS[CVE-2019-3900] = "fixed-version: Fixed from version 5.2rc4" | ||
3008 | |||
3009 | CVE_STATUS[CVE-2019-3901] = "fixed-version: Fixed from version 4.6rc6" | ||
3010 | |||
3011 | CVE_STATUS[CVE-2019-5108] = "fixed-version: Fixed from version 5.3" | ||
3012 | |||
3013 | # Skipping CVE-2019-5489, no affected_versions | ||
3014 | |||
3015 | CVE_STATUS[CVE-2019-6133] = "fixed-version: Fixed from version 5.0rc2" | ||
3016 | |||
3017 | CVE_STATUS[CVE-2019-6974] = "fixed-version: Fixed from version 5.0rc6" | ||
3018 | |||
3019 | CVE_STATUS[CVE-2019-7221] = "fixed-version: Fixed from version 5.0rc6" | ||
3020 | |||
3021 | CVE_STATUS[CVE-2019-7222] = "fixed-version: Fixed from version 5.0rc6" | ||
3022 | |||
3023 | CVE_STATUS[CVE-2019-7308] = "fixed-version: Fixed from version 5.0rc3" | ||
3024 | |||
3025 | CVE_STATUS[CVE-2019-8912] = "fixed-version: Fixed from version 5.0rc8" | ||
3026 | |||
3027 | CVE_STATUS[CVE-2019-8956] = "fixed-version: Fixed from version 5.0rc6" | ||
3028 | |||
3029 | CVE_STATUS[CVE-2019-8980] = "fixed-version: Fixed from version 5.1rc1" | ||
3030 | |||
3031 | CVE_STATUS[CVE-2019-9003] = "fixed-version: Fixed from version 5.0rc4" | ||
3032 | |||
3033 | CVE_STATUS[CVE-2019-9162] = "fixed-version: Fixed from version 5.0rc7" | ||
3034 | |||
3035 | CVE_STATUS[CVE-2019-9213] = "fixed-version: Fixed from version 5.0" | ||
3036 | |||
3037 | CVE_STATUS[CVE-2019-9245] = "fixed-version: Fixed from version 5.0rc1" | ||
3038 | |||
3039 | CVE_STATUS[CVE-2019-9444] = "fixed-version: Fixed from version 4.15rc2" | ||
3040 | |||
3041 | CVE_STATUS[CVE-2019-9445] = "fixed-version: Fixed from version 5.1rc1" | ||
3042 | |||
3043 | CVE_STATUS[CVE-2019-9453] = "fixed-version: Fixed from version 5.2rc1" | ||
3044 | |||
3045 | CVE_STATUS[CVE-2019-9454] = "fixed-version: Fixed from version 4.15rc9" | ||
3046 | |||
3047 | CVE_STATUS[CVE-2019-9455] = "fixed-version: Fixed from version 5.0rc1" | ||
3048 | |||
3049 | CVE_STATUS[CVE-2019-9456] = "fixed-version: Fixed from version 4.16rc6" | ||
3050 | |||
3051 | CVE_STATUS[CVE-2019-9457] = "fixed-version: Fixed from version 4.13rc1" | ||
3052 | |||
3053 | CVE_STATUS[CVE-2019-9458] = "fixed-version: Fixed from version 4.19rc7" | ||
3054 | |||
3055 | CVE_STATUS[CVE-2019-9466] = "fixed-version: Fixed from version 5.1rc1" | ||
3056 | |||
3057 | CVE_STATUS[CVE-2019-9500] = "fixed-version: Fixed from version 5.1rc1" | ||
3058 | |||
3059 | CVE_STATUS[CVE-2019-9503] = "fixed-version: Fixed from version 5.1rc1" | ||
3060 | |||
3061 | CVE_STATUS[CVE-2019-9506] = "fixed-version: Fixed from version 5.2" | ||
3062 | |||
3063 | CVE_STATUS[CVE-2019-9857] = "fixed-version: Fixed from version 5.1rc2" | ||
3064 | |||
3065 | CVE_STATUS[CVE-2020-0009] = "fixed-version: Fixed from version 5.6rc3" | ||
3066 | |||
3067 | CVE_STATUS[CVE-2020-0030] = "fixed-version: Fixed from version 4.16rc3" | ||
3068 | |||
3069 | CVE_STATUS[CVE-2020-0041] = "fixed-version: Fixed from version 5.5rc2" | ||
3070 | |||
3071 | CVE_STATUS[CVE-2020-0066] = "fixed-version: Fixed from version 4.3rc7" | ||
3072 | |||
3073 | CVE_STATUS[CVE-2020-0067] = "fixed-version: Fixed from version 5.5rc1" | ||
3074 | |||
3075 | CVE_STATUS[CVE-2020-0110] = "fixed-version: Fixed from version 5.6rc2" | ||
3076 | |||
3077 | CVE_STATUS[CVE-2020-0255] = "fixed-version: Fixed from version 5.7rc4" | ||
3078 | |||
3079 | CVE_STATUS[CVE-2020-0305] = "fixed-version: Fixed from version 5.5rc6" | ||
3080 | |||
3081 | # CVE-2020-0347 has no known resolution | ||
3082 | |||
3083 | CVE_STATUS[CVE-2020-0404] = "fixed-version: Fixed from version 5.6rc1" | ||
3084 | |||
3085 | CVE_STATUS[CVE-2020-0423] = "fixed-version: Fixed from version 5.10rc1" | ||
3086 | |||
3087 | CVE_STATUS[CVE-2020-0427] = "fixed-version: Fixed from version 5.5rc1" | ||
3088 | |||
3089 | CVE_STATUS[CVE-2020-0429] = "fixed-version: Fixed from version 4.14rc4" | ||
3090 | |||
3091 | CVE_STATUS[CVE-2020-0430] = "fixed-version: Fixed from version 4.18rc1" | ||
3092 | |||
3093 | CVE_STATUS[CVE-2020-0431] = "fixed-version: Fixed from version 5.5rc6" | ||
3094 | |||
3095 | CVE_STATUS[CVE-2020-0432] = "fixed-version: Fixed from version 5.6rc1" | ||
3096 | |||
3097 | CVE_STATUS[CVE-2020-0433] = "fixed-version: Fixed from version 4.19rc1" | ||
3098 | |||
3099 | CVE_STATUS[CVE-2020-0435] = "fixed-version: Fixed from version 4.19rc1" | ||
3100 | |||
3101 | CVE_STATUS[CVE-2020-0444] = "fixed-version: Fixed from version 5.6rc4" | ||
3102 | |||
3103 | CVE_STATUS[CVE-2020-0465] = "fixed-version: Fixed from version 5.9rc4" | ||
3104 | |||
3105 | CVE_STATUS[CVE-2020-0466] = "fixed-version: Fixed from version 5.9rc2" | ||
3106 | |||
3107 | CVE_STATUS[CVE-2020-0543] = "fixed-version: Fixed from version 5.8rc1" | ||
3108 | |||
3109 | CVE_STATUS[CVE-2020-10135] = "fixed-version: Fixed from version 5.8rc1" | ||
3110 | |||
3111 | CVE_STATUS[CVE-2020-10690] = "fixed-version: Fixed from version 5.5rc5" | ||
3112 | |||
3113 | # CVE-2020-10708 has no known resolution | ||
3114 | |||
3115 | CVE_STATUS[CVE-2020-10711] = "fixed-version: Fixed from version 5.7rc6" | ||
3116 | |||
3117 | CVE_STATUS[CVE-2020-10720] = "fixed-version: Fixed from version 5.2rc3" | ||
3118 | |||
3119 | CVE_STATUS[CVE-2020-10732] = "fixed-version: Fixed from version 5.7" | ||
3120 | |||
3121 | CVE_STATUS[CVE-2020-10742] = "fixed-version: Fixed from version 3.16rc1" | ||
3122 | |||
3123 | CVE_STATUS[CVE-2020-10751] = "fixed-version: Fixed from version 5.7rc4" | ||
3124 | |||
3125 | CVE_STATUS[CVE-2020-10757] = "fixed-version: Fixed from version 5.8rc1" | ||
3126 | |||
3127 | CVE_STATUS[CVE-2020-10766] = "fixed-version: Fixed from version 5.8rc1" | ||
3128 | |||
3129 | CVE_STATUS[CVE-2020-10767] = "fixed-version: Fixed from version 5.8rc1" | ||
3130 | |||
3131 | CVE_STATUS[CVE-2020-10768] = "fixed-version: Fixed from version 5.8rc1" | ||
3132 | |||
3133 | CVE_STATUS[CVE-2020-10769] = "fixed-version: Fixed from version 5.0rc3" | ||
3134 | |||
3135 | CVE_STATUS[CVE-2020-10773] = "fixed-version: Fixed from version 5.4rc6" | ||
3136 | |||
3137 | # CVE-2020-10774 has no known resolution | ||
3138 | |||
3139 | CVE_STATUS[CVE-2020-10781] = "fixed-version: Fixed from version 5.8rc6" | ||
3140 | |||
3141 | CVE_STATUS[CVE-2020-10942] = "fixed-version: Fixed from version 5.6rc4" | ||
3142 | |||
3143 | CVE_STATUS[CVE-2020-11494] = "fixed-version: Fixed from version 5.7rc1" | ||
3144 | |||
3145 | CVE_STATUS[CVE-2020-11565] = "fixed-version: Fixed from version 5.7rc1" | ||
3146 | |||
3147 | CVE_STATUS[CVE-2020-11608] = "fixed-version: Fixed from version 5.7rc1" | ||
3148 | |||
3149 | CVE_STATUS[CVE-2020-11609] = "fixed-version: Fixed from version 5.7rc1" | ||
3150 | |||
3151 | CVE_STATUS[CVE-2020-11668] = "fixed-version: Fixed from version 5.7rc1" | ||
3152 | |||
3153 | CVE_STATUS[CVE-2020-11669] = "fixed-version: Fixed from version 5.2rc1" | ||
3154 | |||
3155 | # CVE-2020-11725 has no known resolution | ||
3156 | |||
3157 | CVE_STATUS[CVE-2020-11884] = "fixed-version: Fixed from version 5.7rc4" | ||
3158 | |||
3159 | # CVE-2020-11935 has no known resolution | ||
3160 | |||
3161 | CVE_STATUS[CVE-2020-12114] = "fixed-version: Fixed from version 5.3rc1" | ||
3162 | |||
3163 | CVE_STATUS[CVE-2020-12351] = "fixed-version: Fixed from version 5.10rc1" | ||
3164 | |||
3165 | CVE_STATUS[CVE-2020-12352] = "fixed-version: Fixed from version 5.10rc1" | ||
3166 | |||
3167 | CVE_STATUS[CVE-2020-12362] = "fixed-version: Fixed from version 5.11rc1" | ||
3168 | |||
3169 | CVE_STATUS[CVE-2020-12363] = "fixed-version: Fixed from version 5.11rc1" | ||
3170 | |||
3171 | CVE_STATUS[CVE-2020-12364] = "fixed-version: Fixed from version 5.11rc1" | ||
3172 | |||
3173 | CVE_STATUS[CVE-2020-12464] = "fixed-version: Fixed from version 5.7rc3" | ||
3174 | |||
3175 | CVE_STATUS[CVE-2020-12465] = "fixed-version: Fixed from version 5.6rc6" | ||
3176 | |||
3177 | CVE_STATUS[CVE-2020-12652] = "fixed-version: Fixed from version 5.5rc7" | ||
3178 | |||
3179 | CVE_STATUS[CVE-2020-12653] = "fixed-version: Fixed from version 5.6rc1" | ||
3180 | |||
3181 | CVE_STATUS[CVE-2020-12654] = "fixed-version: Fixed from version 5.6rc1" | ||
3182 | |||
3183 | CVE_STATUS[CVE-2020-12655] = "fixed-version: Fixed from version 5.7rc1" | ||
3184 | |||
3185 | CVE_STATUS[CVE-2020-12656] = "fixed-version: Fixed from version 5.8rc1" | ||
3186 | |||
3187 | CVE_STATUS[CVE-2020-12657] = "fixed-version: Fixed from version 5.7rc1" | ||
3188 | |||
3189 | CVE_STATUS[CVE-2020-12659] = "fixed-version: Fixed from version 5.7rc2" | ||
3190 | |||
3191 | CVE_STATUS[CVE-2020-12768] = "fixed-version: Fixed from version 5.6rc4" | ||
3192 | |||
3193 | CVE_STATUS[CVE-2020-12769] = "fixed-version: Fixed from version 5.5rc6" | ||
3194 | |||
3195 | CVE_STATUS[CVE-2020-12770] = "fixed-version: Fixed from version 5.7rc3" | ||
3196 | |||
3197 | CVE_STATUS[CVE-2020-12771] = "fixed-version: Fixed from version 5.8rc2" | ||
3198 | |||
3199 | CVE_STATUS[CVE-2020-12826] = "fixed-version: Fixed from version 5.7rc1" | ||
3200 | |||
3201 | CVE_STATUS[CVE-2020-12888] = "fixed-version: Fixed from version 5.8rc1" | ||
3202 | |||
3203 | CVE_STATUS[CVE-2020-12912] = "fixed-version: Fixed from version 5.10rc4" | ||
3204 | |||
3205 | CVE_STATUS[CVE-2020-13143] = "fixed-version: Fixed from version 5.7rc6" | ||
3206 | |||
3207 | CVE_STATUS[CVE-2020-13974] = "fixed-version: Fixed from version 5.8rc1" | ||
3208 | |||
3209 | # CVE-2020-14304 has no known resolution | ||
3210 | |||
3211 | CVE_STATUS[CVE-2020-14305] = "fixed-version: Fixed from version 4.12rc1" | ||
3212 | |||
3213 | CVE_STATUS[CVE-2020-14314] = "fixed-version: Fixed from version 5.9rc2" | ||
3214 | |||
3215 | CVE_STATUS[CVE-2020-14331] = "fixed-version: Fixed from version 5.9rc1" | ||
3216 | |||
3217 | CVE_STATUS[CVE-2020-14351] = "fixed-version: Fixed from version 5.10rc1" | ||
3218 | |||
3219 | CVE_STATUS[CVE-2020-14353] = "fixed-version: Fixed from version 4.14rc3" | ||
3220 | |||
3221 | CVE_STATUS[CVE-2020-14356] = "fixed-version: Fixed from version 5.8rc5" | ||
3222 | |||
3223 | CVE_STATUS[CVE-2020-14381] = "fixed-version: Fixed from version 5.6rc6" | ||
3224 | |||
3225 | CVE_STATUS[CVE-2020-14385] = "fixed-version: Fixed from version 5.9rc4" | ||
3226 | |||
3227 | CVE_STATUS[CVE-2020-14386] = "fixed-version: Fixed from version 5.9rc4" | ||
3228 | |||
3229 | CVE_STATUS[CVE-2020-14390] = "fixed-version: Fixed from version 5.9rc6" | ||
3230 | |||
3231 | CVE_STATUS[CVE-2020-14416] = "fixed-version: Fixed from version 5.5" | ||
3232 | |||
3233 | CVE_STATUS[CVE-2020-15393] = "fixed-version: Fixed from version 5.8rc3" | ||
3234 | |||
3235 | CVE_STATUS[CVE-2020-15436] = "fixed-version: Fixed from version 5.8rc2" | ||
3236 | |||
3237 | CVE_STATUS[CVE-2020-15437] = "fixed-version: Fixed from version 5.8rc7" | ||
3238 | |||
3239 | CVE_STATUS[CVE-2020-15780] = "fixed-version: Fixed from version 5.8rc3" | ||
3240 | |||
3241 | # CVE-2020-15802 has no known resolution | ||
3242 | |||
3243 | CVE_STATUS[CVE-2020-15852] = "fixed-version: Fixed from version 5.8rc6" | ||
3244 | |||
3245 | CVE_STATUS[CVE-2020-16119] = "fixed-version: Fixed from version 5.15rc2" | ||
3246 | |||
3247 | CVE_STATUS[CVE-2020-16120] = "fixed-version: Fixed from version 5.8rc1" | ||
3248 | |||
3249 | CVE_STATUS[CVE-2020-16166] = "fixed-version: Fixed from version 5.8" | ||
3250 | |||
3251 | CVE_STATUS[CVE-2020-1749] = "fixed-version: Fixed from version 5.5rc1" | ||
3252 | |||
3253 | CVE_STATUS[CVE-2020-24394] = "fixed-version: Fixed from version 5.8rc4" | ||
3254 | |||
3255 | CVE_STATUS[CVE-2020-24490] = "fixed-version: Fixed from version 5.8" | ||
3256 | |||
3257 | # CVE-2020-24502 has no known resolution | ||
3258 | |||
3259 | # CVE-2020-24503 has no known resolution | ||
3260 | |||
3261 | CVE_STATUS[CVE-2020-24504] = "fixed-version: Fixed from version 5.12rc1" | ||
3262 | |||
3263 | CVE_STATUS[CVE-2020-24586] = "fixed-version: Fixed from version 5.13rc4" | ||
3264 | |||
3265 | CVE_STATUS[CVE-2020-24587] = "fixed-version: Fixed from version 5.13rc4" | ||
3266 | |||
3267 | CVE_STATUS[CVE-2020-24588] = "fixed-version: Fixed from version 5.13rc4" | ||
3268 | |||
3269 | CVE_STATUS[CVE-2020-25211] = "fixed-version: Fixed from version 5.9rc7" | ||
3270 | |||
3271 | CVE_STATUS[CVE-2020-25212] = "fixed-version: Fixed from version 5.9rc1" | ||
3272 | |||
3273 | # CVE-2020-25220 has no known resolution | ||
3274 | |||
3275 | CVE_STATUS[CVE-2020-25221] = "fixed-version: Fixed from version 5.9rc4" | ||
3276 | |||
3277 | CVE_STATUS[CVE-2020-25284] = "fixed-version: Fixed from version 5.9rc5" | ||
3278 | |||
3279 | CVE_STATUS[CVE-2020-25285] = "fixed-version: Fixed from version 5.9rc4" | ||
3280 | |||
3281 | CVE_STATUS[CVE-2020-25639] = "fixed-version: Fixed from version 5.12rc1" | ||
3282 | |||
3283 | CVE_STATUS[CVE-2020-25641] = "fixed-version: Fixed from version 5.9rc4" | ||
3284 | |||
3285 | CVE_STATUS[CVE-2020-25643] = "fixed-version: Fixed from version 5.9rc7" | ||
3286 | |||
3287 | CVE_STATUS[CVE-2020-25645] = "fixed-version: Fixed from version 5.9rc7" | ||
3288 | |||
3289 | CVE_STATUS[CVE-2020-25656] = "fixed-version: Fixed from version 5.10rc2" | ||
3290 | |||
3291 | # CVE-2020-25661 has no known resolution | ||
3292 | |||
3293 | # CVE-2020-25662 has no known resolution | ||
3294 | |||
3295 | CVE_STATUS[CVE-2020-25668] = "fixed-version: Fixed from version 5.10rc3" | ||
3296 | |||
3297 | CVE_STATUS[CVE-2020-25669] = "fixed-version: Fixed from version 5.10rc5" | ||
3298 | |||
3299 | CVE_STATUS[CVE-2020-25670] = "fixed-version: Fixed from version 5.12rc7" | ||
3300 | |||
3301 | CVE_STATUS[CVE-2020-25671] = "fixed-version: Fixed from version 5.12rc7" | ||
3302 | |||
3303 | CVE_STATUS[CVE-2020-25672] = "fixed-version: Fixed from version 5.12rc7" | ||
3304 | |||
3305 | CVE_STATUS[CVE-2020-25673] = "fixed-version: Fixed from version 5.12rc7" | ||
3306 | |||
3307 | CVE_STATUS[CVE-2020-25704] = "fixed-version: Fixed from version 5.10rc3" | ||
3308 | |||
3309 | CVE_STATUS[CVE-2020-25705] = "fixed-version: Fixed from version 5.10rc1" | ||
3310 | |||
3311 | CVE_STATUS[CVE-2020-26088] = "fixed-version: Fixed from version 5.9rc1" | ||
3312 | |||
3313 | CVE_STATUS[CVE-2020-26139] = "fixed-version: Fixed from version 5.13rc4" | ||
3314 | |||
3315 | # CVE-2020-26140 has no known resolution | ||
3316 | |||
3317 | CVE_STATUS[CVE-2020-26141] = "fixed-version: Fixed from version 5.13rc4" | ||
3318 | |||
3319 | # CVE-2020-26142 has no known resolution | ||
3320 | |||
3321 | # CVE-2020-26143 has no known resolution | ||
3322 | |||
3323 | CVE_STATUS[CVE-2020-26145] = "fixed-version: Fixed from version 5.13rc4" | ||
3324 | |||
3325 | CVE_STATUS[CVE-2020-26147] = "fixed-version: Fixed from version 5.13rc4" | ||
3326 | |||
3327 | CVE_STATUS[CVE-2020-26541] = "fixed-version: Fixed from version 5.13rc1" | ||
3328 | |||
3329 | CVE_STATUS[CVE-2020-26555] = "fixed-version: Fixed from version 5.13rc1" | ||
3330 | |||
3331 | # CVE-2020-26556 has no known resolution | ||
3332 | |||
3333 | # CVE-2020-26557 has no known resolution | ||
3334 | |||
3335 | CVE_STATUS[CVE-2020-26558] = "fixed-version: Fixed from version 5.13rc1" | ||
3336 | |||
3337 | # CVE-2020-26559 has no known resolution | ||
3338 | |||
3339 | # CVE-2020-26560 has no known resolution | ||
3340 | |||
3341 | CVE_STATUS[CVE-2020-27066] = "fixed-version: Fixed from version 5.6" | ||
3342 | |||
3343 | CVE_STATUS[CVE-2020-27067] = "fixed-version: Fixed from version 4.14rc4" | ||
3344 | |||
3345 | CVE_STATUS[CVE-2020-27068] = "fixed-version: Fixed from version 5.6rc2" | ||
3346 | |||
3347 | CVE_STATUS[CVE-2020-27152] = "fixed-version: Fixed from version 5.10rc1" | ||
3348 | |||
3349 | CVE_STATUS[CVE-2020-27170] = "fixed-version: Fixed from version 5.12rc5" | ||
3350 | |||
3351 | CVE_STATUS[CVE-2020-27171] = "fixed-version: Fixed from version 5.12rc5" | ||
3352 | |||
3353 | CVE_STATUS[CVE-2020-27194] = "fixed-version: Fixed from version 5.9" | ||
3354 | |||
3355 | CVE_STATUS[CVE-2020-2732] = "fixed-version: Fixed from version 5.6rc4" | ||
3356 | |||
3357 | CVE_STATUS[CVE-2020-27418] = "fixed-version: Fixed from version 5.6rc5" | ||
3358 | |||
3359 | CVE_STATUS[CVE-2020-27673] = "fixed-version: Fixed from version 5.10rc1" | ||
3360 | |||
3361 | CVE_STATUS[CVE-2020-27675] = "fixed-version: Fixed from version 5.10rc1" | ||
3362 | |||
3363 | CVE_STATUS[CVE-2020-27777] = "fixed-version: Fixed from version 5.10rc1" | ||
3364 | |||
3365 | CVE_STATUS[CVE-2020-27784] = "fixed-version: Fixed from version 5.10rc1" | ||
3366 | |||
3367 | CVE_STATUS[CVE-2020-27786] = "fixed-version: Fixed from version 5.7rc6" | ||
3368 | |||
3369 | CVE_STATUS[CVE-2020-27815] = "fixed-version: Fixed from version 5.11rc1" | ||
3370 | |||
3371 | CVE_STATUS[CVE-2020-27820] = "fixed-version: Fixed from version 5.16rc1" | ||
3372 | |||
3373 | CVE_STATUS[CVE-2020-27825] = "fixed-version: Fixed from version 5.10rc1" | ||
3374 | |||
3375 | CVE_STATUS[CVE-2020-27830] = "fixed-version: Fixed from version 5.10rc7" | ||
3376 | |||
3377 | CVE_STATUS[CVE-2020-27835] = "fixed-version: Fixed from version 5.10rc6" | ||
3378 | |||
3379 | CVE_STATUS[CVE-2020-28097] = "fixed-version: Fixed from version 5.9rc6" | ||
3380 | |||
3381 | CVE_STATUS[CVE-2020-28374] = "fixed-version: Fixed from version 5.11rc4" | ||
3382 | |||
3383 | CVE_STATUS[CVE-2020-28588] = "fixed-version: Fixed from version 5.10rc7" | ||
3384 | |||
3385 | CVE_STATUS[CVE-2020-28915] = "fixed-version: Fixed from version 5.9" | ||
3386 | |||
3387 | CVE_STATUS[CVE-2020-28941] = "fixed-version: Fixed from version 5.10rc5" | ||
3388 | |||
3389 | CVE_STATUS[CVE-2020-28974] = "fixed-version: Fixed from version 5.10rc3" | ||
3390 | |||
3391 | CVE_STATUS[CVE-2020-29368] = "fixed-version: Fixed from version 5.8rc1" | ||
3392 | |||
3393 | CVE_STATUS[CVE-2020-29369] = "fixed-version: Fixed from version 5.8rc7" | ||
3394 | |||
3395 | CVE_STATUS[CVE-2020-29370] = "fixed-version: Fixed from version 5.6rc7" | ||
3396 | |||
3397 | CVE_STATUS[CVE-2020-29371] = "fixed-version: Fixed from version 5.9rc2" | ||
3398 | |||
3399 | CVE_STATUS[CVE-2020-29372] = "fixed-version: Fixed from version 5.7rc3" | ||
3400 | |||
3401 | CVE_STATUS[CVE-2020-29373] = "fixed-version: Fixed from version 5.6rc2" | ||
3402 | |||
3403 | CVE_STATUS[CVE-2020-29374] = "fixed-version: Fixed from version 5.8rc1" | ||
3404 | |||
3405 | CVE_STATUS[CVE-2020-29534] = "fixed-version: Fixed from version 5.10rc1" | ||
3406 | |||
3407 | CVE_STATUS[CVE-2020-29568] = "fixed-version: Fixed from version 5.11rc1" | ||
3408 | |||
3409 | CVE_STATUS[CVE-2020-29569] = "fixed-version: Fixed from version 5.11rc1" | ||
3410 | |||
3411 | CVE_STATUS[CVE-2020-29660] = "fixed-version: Fixed from version 5.10rc7" | ||
3412 | |||
3413 | CVE_STATUS[CVE-2020-29661] = "fixed-version: Fixed from version 5.10rc7" | ||
3414 | |||
3415 | CVE_STATUS[CVE-2020-35499] = "fixed-version: Fixed from version 5.11rc1" | ||
3416 | |||
3417 | # CVE-2020-35501 has no known resolution | ||
3418 | |||
3419 | CVE_STATUS[CVE-2020-35508] = "fixed-version: Fixed from version 5.10rc3" | ||
3420 | |||
3421 | CVE_STATUS[CVE-2020-35513] = "fixed-version: Fixed from version 4.17rc1" | ||
3422 | |||
3423 | CVE_STATUS[CVE-2020-35519] = "fixed-version: Fixed from version 5.10rc7" | ||
3424 | |||
3425 | CVE_STATUS[CVE-2020-36158] = "fixed-version: Fixed from version 5.11rc1" | ||
3426 | |||
3427 | CVE_STATUS[CVE-2020-36310] = "fixed-version: Fixed from version 5.8rc1" | ||
3428 | |||
3429 | CVE_STATUS[CVE-2020-36311] = "fixed-version: Fixed from version 5.9rc5" | ||
3430 | |||
3431 | CVE_STATUS[CVE-2020-36312] = "fixed-version: Fixed from version 5.9rc5" | ||
3432 | |||
3433 | CVE_STATUS[CVE-2020-36313] = "fixed-version: Fixed from version 5.7rc1" | ||
3434 | |||
3435 | CVE_STATUS[CVE-2020-36322] = "fixed-version: Fixed from version 5.11rc1" | ||
3436 | |||
3437 | CVE_STATUS[CVE-2020-36385] = "fixed-version: Fixed from version 5.10rc1" | ||
3438 | |||
3439 | CVE_STATUS[CVE-2020-36386] = "fixed-version: Fixed from version 5.9rc1" | ||
3440 | |||
3441 | CVE_STATUS[CVE-2020-36387] = "fixed-version: Fixed from version 5.9rc1" | ||
3442 | |||
3443 | CVE_STATUS[CVE-2020-36516] = "fixed-version: Fixed from version 5.17rc2" | ||
3444 | |||
3445 | CVE_STATUS[CVE-2020-36557] = "fixed-version: Fixed from version 5.7rc1" | ||
3446 | |||
3447 | CVE_STATUS[CVE-2020-36558] = "fixed-version: Fixed from version 5.6rc3" | ||
3448 | |||
3449 | CVE_STATUS[CVE-2020-36691] = "fixed-version: Fixed from version 5.8rc1" | ||
3450 | |||
3451 | CVE_STATUS[CVE-2020-36694] = "fixed-version: Fixed from version 5.10" | ||
3452 | |||
3453 | CVE_STATUS[CVE-2020-36766] = "fixed-version: Fixed from version 5.9rc1" | ||
3454 | |||
3455 | CVE_STATUS[CVE-2020-3702] = "fixed-version: Fixed from version 5.12rc1" | ||
3456 | |||
3457 | CVE_STATUS[CVE-2020-4788] = "fixed-version: Fixed from version 5.10rc5" | ||
3458 | |||
3459 | CVE_STATUS[CVE-2020-7053] = "fixed-version: Fixed from version 5.2rc1" | ||
3460 | |||
3461 | CVE_STATUS[CVE-2020-8428] = "fixed-version: Fixed from version 5.5" | ||
3462 | |||
3463 | CVE_STATUS[CVE-2020-8647] = "fixed-version: Fixed from version 5.6rc5" | ||
3464 | |||
3465 | CVE_STATUS[CVE-2020-8648] = "fixed-version: Fixed from version 5.6rc3" | ||
3466 | |||
3467 | CVE_STATUS[CVE-2020-8649] = "fixed-version: Fixed from version 5.6rc5" | ||
3468 | |||
3469 | CVE_STATUS[CVE-2020-8694] = "fixed-version: Fixed from version 5.10rc4" | ||
3470 | |||
3471 | # CVE-2020-8832 has no known resolution | ||
3472 | |||
3473 | CVE_STATUS[CVE-2020-8834] = "fixed-version: Fixed from version 4.18rc1" | ||
3474 | |||
3475 | CVE_STATUS[CVE-2020-8835] = "fixed-version: Fixed from version 5.7rc1" | ||
3476 | |||
3477 | CVE_STATUS[CVE-2020-8992] = "fixed-version: Fixed from version 5.6rc2" | ||
3478 | |||
3479 | CVE_STATUS[CVE-2020-9383] = "fixed-version: Fixed from version 5.6rc4" | ||
3480 | |||
3481 | CVE_STATUS[CVE-2020-9391] = "fixed-version: Fixed from version 5.6rc3" | ||
3482 | |||
3483 | CVE_STATUS[CVE-2021-0129] = "fixed-version: Fixed from version 5.13rc1" | ||
3484 | |||
3485 | CVE_STATUS[CVE-2021-0342] = "fixed-version: Fixed from version 5.8rc1" | ||
3486 | |||
3487 | # CVE-2021-0399 has no known resolution | ||
3488 | |||
3489 | CVE_STATUS[CVE-2021-0447] = "fixed-version: Fixed from version 4.15rc1" | ||
3490 | |||
3491 | CVE_STATUS[CVE-2021-0448] = "fixed-version: Fixed from version 5.9rc7" | ||
3492 | |||
3493 | CVE_STATUS[CVE-2021-0512] = "fixed-version: Fixed from version 5.12rc1" | ||
3494 | |||
3495 | CVE_STATUS[CVE-2021-0605] = "fixed-version: Fixed from version 5.8" | ||
3496 | |||
3497 | # CVE-2021-0606 has no known resolution | ||
3498 | |||
3499 | # CVE-2021-0695 has no known resolution | ||
3500 | |||
3501 | CVE_STATUS[CVE-2021-0707] = "fixed-version: Fixed from version 5.11rc3" | ||
3502 | |||
3503 | CVE_STATUS[CVE-2021-0920] = "fixed-version: Fixed from version 5.14rc4" | ||
3504 | |||
3505 | # CVE-2021-0924 has no known resolution | ||
3506 | |||
3507 | CVE_STATUS[CVE-2021-0929] = "fixed-version: Fixed from version 5.6rc1" | ||
3508 | |||
3509 | CVE_STATUS[CVE-2021-0935] = "fixed-version: Fixed from version 4.16rc7" | ||
3510 | |||
3511 | # CVE-2021-0936 has no known resolution | ||
3512 | |||
3513 | CVE_STATUS[CVE-2021-0937] = "fixed-version: Fixed from version 5.12rc8" | ||
3514 | |||
3515 | CVE_STATUS[CVE-2021-0938] = "fixed-version: Fixed from version 5.10rc4" | ||
3516 | |||
3517 | CVE_STATUS[CVE-2021-0941] = "fixed-version: Fixed from version 5.12rc1" | ||
3518 | |||
3519 | # CVE-2021-0961 has no known resolution | ||
3520 | |||
3521 | CVE_STATUS[CVE-2021-1048] = "fixed-version: Fixed from version 5.9rc4" | ||
3522 | |||
3523 | CVE_STATUS[CVE-2021-20177] = "fixed-version: Fixed from version 5.5rc1" | ||
3524 | |||
3525 | CVE_STATUS[CVE-2021-20194] = "fixed-version: Fixed from version 5.10rc1" | ||
3526 | |||
3527 | # CVE-2021-20219 has no known resolution | ||
3528 | |||
3529 | CVE_STATUS[CVE-2021-20226] = "fixed-version: Fixed from version 5.10rc1" | ||
3530 | |||
3531 | CVE_STATUS[CVE-2021-20239] = "fixed-version: Fixed from version 5.9rc1" | ||
3532 | |||
3533 | CVE_STATUS[CVE-2021-20261] = "fixed-version: Fixed from version 4.5rc5" | ||
3534 | |||
3535 | CVE_STATUS[CVE-2021-20265] = "fixed-version: Fixed from version 4.5rc3" | ||
3536 | |||
3537 | CVE_STATUS[CVE-2021-20268] = "fixed-version: Fixed from version 5.11rc5" | ||
3538 | |||
3539 | CVE_STATUS[CVE-2021-20292] = "fixed-version: Fixed from version 5.9rc1" | ||
3540 | |||
3541 | CVE_STATUS[CVE-2021-20317] = "fixed-version: Fixed from version 5.4rc1" | ||
3542 | |||
3543 | CVE_STATUS[CVE-2021-20320] = "fixed-version: Fixed from version 5.15rc3" | ||
3544 | |||
3545 | CVE_STATUS[CVE-2021-20321] = "fixed-version: Fixed from version 5.15rc5" | ||
3546 | |||
3547 | CVE_STATUS[CVE-2021-20322] = "fixed-version: Fixed from version 5.15rc1" | ||
3548 | |||
3549 | CVE_STATUS[CVE-2021-21781] = "fixed-version: Fixed from version 5.11rc7" | ||
3550 | |||
3551 | CVE_STATUS[CVE-2021-22543] = "fixed-version: Fixed from version 5.13" | ||
3552 | |||
3553 | CVE_STATUS[CVE-2021-22555] = "fixed-version: Fixed from version 5.12rc8" | ||
3554 | |||
3555 | CVE_STATUS[CVE-2021-22600] = "fixed-version: Fixed from version 5.16rc6" | ||
3556 | |||
3557 | CVE_STATUS[CVE-2021-23133] = "fixed-version: Fixed from version 5.12rc8" | ||
3558 | |||
3559 | CVE_STATUS[CVE-2021-23134] = "fixed-version: Fixed from version 5.13rc1" | ||
3560 | |||
3561 | CVE_STATUS[CVE-2021-26401] = "fixed-version: Fixed from version 5.17rc8" | ||
3562 | |||
3563 | CVE_STATUS[CVE-2021-26708] = "fixed-version: Fixed from version 5.11rc7" | ||
3564 | |||
3565 | CVE_STATUS[CVE-2021-26930] = "fixed-version: Fixed from version 5.12rc1" | ||
3566 | |||
3567 | CVE_STATUS[CVE-2021-26931] = "fixed-version: Fixed from version 5.12rc1" | ||
3568 | |||
3569 | CVE_STATUS[CVE-2021-26932] = "fixed-version: Fixed from version 5.12rc1" | ||
3570 | |||
3571 | # CVE-2021-26934 has no known resolution | ||
3572 | |||
3573 | CVE_STATUS[CVE-2021-27363] = "fixed-version: Fixed from version 5.12rc2" | ||
3574 | |||
3575 | CVE_STATUS[CVE-2021-27364] = "fixed-version: Fixed from version 5.12rc2" | ||
3576 | |||
3577 | CVE_STATUS[CVE-2021-27365] = "fixed-version: Fixed from version 5.12rc2" | ||
3578 | |||
3579 | CVE_STATUS[CVE-2021-28038] = "fixed-version: Fixed from version 5.12rc2" | ||
3580 | |||
3581 | CVE_STATUS[CVE-2021-28039] = "fixed-version: Fixed from version 5.12rc2" | ||
3582 | |||
3583 | CVE_STATUS[CVE-2021-28375] = "fixed-version: Fixed from version 5.12rc3" | ||
3584 | |||
3585 | CVE_STATUS[CVE-2021-28660] = "fixed-version: Fixed from version 5.12rc3" | ||
3586 | |||
3587 | CVE_STATUS[CVE-2021-28688] = "fixed-version: Fixed from version 5.12rc6" | ||
3588 | |||
3589 | CVE_STATUS[CVE-2021-28691] = "fixed-version: Fixed from version 5.13rc6" | ||
3590 | |||
3591 | CVE_STATUS[CVE-2021-28711] = "fixed-version: Fixed from version 5.16rc7" | ||
3592 | |||
3593 | CVE_STATUS[CVE-2021-28712] = "fixed-version: Fixed from version 5.16rc7" | ||
3594 | |||
3595 | CVE_STATUS[CVE-2021-28713] = "fixed-version: Fixed from version 5.16rc7" | ||
3596 | |||
3597 | CVE_STATUS[CVE-2021-28714] = "fixed-version: Fixed from version 5.16rc7" | ||
3598 | |||
3599 | CVE_STATUS[CVE-2021-28715] = "fixed-version: Fixed from version 5.16rc7" | ||
3600 | |||
3601 | CVE_STATUS[CVE-2021-28950] = "fixed-version: Fixed from version 5.12rc4" | ||
3602 | |||
3603 | CVE_STATUS[CVE-2021-28951] = "fixed-version: Fixed from version 5.12rc2" | ||
3604 | |||
3605 | CVE_STATUS[CVE-2021-28952] = "fixed-version: Fixed from version 5.12rc4" | ||
3606 | |||
3607 | CVE_STATUS[CVE-2021-28964] = "fixed-version: Fixed from version 5.12rc4" | ||
3608 | |||
3609 | CVE_STATUS[CVE-2021-28971] = "fixed-version: Fixed from version 5.12rc4" | ||
3610 | |||
3611 | CVE_STATUS[CVE-2021-28972] = "fixed-version: Fixed from version 5.12rc4" | ||
3612 | |||
3613 | CVE_STATUS[CVE-2021-29154] = "fixed-version: Fixed from version 5.12rc7" | ||
3614 | |||
3615 | CVE_STATUS[CVE-2021-29155] = "fixed-version: Fixed from version 5.12rc8" | ||
3616 | |||
3617 | CVE_STATUS[CVE-2021-29264] = "fixed-version: Fixed from version 5.12rc3" | ||
3618 | |||
3619 | CVE_STATUS[CVE-2021-29265] = "fixed-version: Fixed from version 5.12rc3" | ||
3620 | |||
3621 | CVE_STATUS[CVE-2021-29266] = "fixed-version: Fixed from version 5.12rc4" | ||
3622 | |||
3623 | CVE_STATUS[CVE-2021-29646] = "fixed-version: Fixed from version 5.12rc5" | ||
3624 | |||
3625 | CVE_STATUS[CVE-2021-29647] = "fixed-version: Fixed from version 5.12rc5" | ||
3626 | |||
3627 | CVE_STATUS[CVE-2021-29648] = "fixed-version: Fixed from version 5.12rc5" | ||
3628 | |||
3629 | CVE_STATUS[CVE-2021-29649] = "fixed-version: Fixed from version 5.12rc5" | ||
3630 | |||
3631 | CVE_STATUS[CVE-2021-29650] = "fixed-version: Fixed from version 5.12rc5" | ||
3632 | |||
3633 | CVE_STATUS[CVE-2021-29657] = "fixed-version: Fixed from version 5.12rc6" | ||
3634 | |||
3635 | CVE_STATUS[CVE-2021-30002] = "fixed-version: Fixed from version 5.12rc1" | ||
3636 | |||
3637 | CVE_STATUS[CVE-2021-30178] = "fixed-version: Fixed from version 5.12rc2" | ||
3638 | |||
3639 | CVE_STATUS[CVE-2021-31440] = "fixed-version: Fixed from version 5.13rc1" | ||
3640 | |||
3641 | CVE_STATUS[CVE-2021-3178] = "fixed-version: Fixed from version 5.11rc5" | ||
3642 | |||
3643 | CVE_STATUS[CVE-2021-31829] = "fixed-version: Fixed from version 5.13rc1" | ||
3644 | |||
3645 | CVE_STATUS[CVE-2021-31916] = "fixed-version: Fixed from version 5.12rc5" | ||
3646 | |||
3647 | CVE_STATUS[CVE-2021-32078] = "fixed-version: Fixed from version 5.13rc1" | ||
3648 | |||
3649 | CVE_STATUS[CVE-2021-32399] = "fixed-version: Fixed from version 5.13rc1" | ||
3650 | |||
3651 | CVE_STATUS[CVE-2021-32606] = "fixed-version: Fixed from version 5.13rc4" | ||
3652 | |||
3653 | CVE_STATUS[CVE-2021-33033] = "fixed-version: Fixed from version 5.12rc3" | ||
3654 | |||
3655 | CVE_STATUS[CVE-2021-33034] = "fixed-version: Fixed from version 5.13rc1" | ||
3656 | |||
3657 | CVE_STATUS[CVE-2021-33061] = "fixed-version: Fixed from version 5.18rc1" | ||
3658 | |||
3659 | CVE_STATUS[CVE-2021-33098] = "fixed-version: Fixed from version 5.13rc4" | ||
3660 | |||
3661 | CVE_STATUS[CVE-2021-33135] = "fixed-version: Fixed from version 5.17rc8" | ||
3662 | |||
3663 | CVE_STATUS[CVE-2021-33200] = "fixed-version: Fixed from version 5.13rc4" | ||
3664 | |||
3665 | CVE_STATUS[CVE-2021-3347] = "fixed-version: Fixed from version 5.11rc6" | ||
3666 | |||
3667 | CVE_STATUS[CVE-2021-3348] = "fixed-version: Fixed from version 5.11rc6" | ||
3668 | |||
3669 | CVE_STATUS[CVE-2021-33624] = "fixed-version: Fixed from version 5.13rc7" | ||
3670 | |||
3671 | CVE_STATUS[CVE-2021-33630] = "fixed-version: Fixed from version 5.4rc1" | ||
3672 | |||
3673 | CVE_STATUS[CVE-2021-33631] = "fixed-version: Fixed from version 6.2rc1" | ||
3674 | |||
3675 | CVE_STATUS[CVE-2021-33655] = "fixed-version: Fixed from version 5.19rc6" | ||
3676 | |||
3677 | CVE_STATUS[CVE-2021-33656] = "fixed-version: Fixed from version 5.12rc1" | ||
3678 | |||
3679 | CVE_STATUS[CVE-2021-33909] = "fixed-version: Fixed from version 5.14rc3" | ||
3680 | |||
3681 | CVE_STATUS[CVE-2021-3411] = "fixed-version: Fixed from version 5.10" | ||
3682 | |||
3683 | CVE_STATUS[CVE-2021-3428] = "fixed-version: Fixed from version 5.9rc2" | ||
3684 | |||
3685 | CVE_STATUS[CVE-2021-3444] = "fixed-version: Fixed from version 5.12rc1" | ||
3686 | |||
3687 | CVE_STATUS[CVE-2021-34556] = "fixed-version: Fixed from version 5.14rc4" | ||
3688 | |||
3689 | CVE_STATUS[CVE-2021-34693] = "fixed-version: Fixed from version 5.13rc7" | ||
3690 | |||
3691 | CVE_STATUS[CVE-2021-3483] = "fixed-version: Fixed from version 5.12rc6" | ||
3692 | |||
3693 | CVE_STATUS[CVE-2021-34866] = "fixed-version: Fixed from version 5.14" | ||
3694 | |||
3695 | CVE_STATUS[CVE-2021-3489] = "fixed-version: Fixed from version 5.13rc4" | ||
3696 | |||
3697 | CVE_STATUS[CVE-2021-3490] = "fixed-version: Fixed from version 5.13rc4" | ||
3698 | |||
3699 | CVE_STATUS[CVE-2021-3491] = "fixed-version: Fixed from version 5.13rc1" | ||
3700 | |||
3701 | # CVE-2021-3492 has no known resolution | ||
3702 | |||
3703 | CVE_STATUS[CVE-2021-3493] = "fixed-version: Fixed from version 5.11rc1" | ||
3704 | |||
3705 | CVE_STATUS[CVE-2021-34981] = "fixed-version: Fixed from version 5.14rc1" | ||
3706 | |||
3707 | CVE_STATUS[CVE-2021-3501] = "fixed-version: Fixed from version 5.12rc8" | ||
3708 | |||
3709 | CVE_STATUS[CVE-2021-35039] = "fixed-version: Fixed from version 5.13" | ||
3710 | |||
3711 | CVE_STATUS[CVE-2021-3506] = "fixed-version: Fixed from version 5.13rc1" | ||
3712 | |||
3713 | # CVE-2021-3542 has no known resolution | ||
3714 | |||
3715 | CVE_STATUS[CVE-2021-3543] = "fixed-version: Fixed from version 5.13rc1" | ||
3716 | |||
3717 | CVE_STATUS[CVE-2021-35477] = "fixed-version: Fixed from version 5.14rc4" | ||
3718 | |||
3719 | CVE_STATUS[CVE-2021-3564] = "fixed-version: Fixed from version 5.13rc5" | ||
3720 | |||
3721 | CVE_STATUS[CVE-2021-3573] = "fixed-version: Fixed from version 5.13rc5" | ||
3722 | |||
3723 | CVE_STATUS[CVE-2021-3587] = "fixed-version: Fixed from version 5.13rc5" | ||
3724 | |||
3725 | CVE_STATUS[CVE-2021-3600] = "fixed-version: Fixed from version 5.11" | ||
3726 | |||
3727 | CVE_STATUS[CVE-2021-3609] = "fixed-version: Fixed from version 5.14rc1" | ||
3728 | |||
3729 | CVE_STATUS[CVE-2021-3612] = "fixed-version: Fixed from version 5.12rc1" | ||
3730 | |||
3731 | CVE_STATUS[CVE-2021-3635] = "fixed-version: Fixed from version 5.5rc7" | ||
3732 | |||
3733 | CVE_STATUS[CVE-2021-3640] = "fixed-version: Fixed from version 5.16rc1" | ||
3734 | |||
3735 | CVE_STATUS[CVE-2021-3653] = "fixed-version: Fixed from version 5.14rc7" | ||
3736 | |||
3737 | CVE_STATUS[CVE-2021-3655] = "fixed-version: Fixed from version 5.14rc1" | ||
3738 | |||
3739 | CVE_STATUS[CVE-2021-3656] = "fixed-version: Fixed from version 5.14rc7" | ||
3740 | |||
3741 | CVE_STATUS[CVE-2021-3659] = "fixed-version: Fixed from version 5.12rc7" | ||
3742 | |||
3743 | CVE_STATUS[CVE-2021-3669] = "fixed-version: Fixed from version 5.15rc1" | ||
3744 | |||
3745 | CVE_STATUS[CVE-2021-3679] = "fixed-version: Fixed from version 5.14rc3" | ||
3746 | |||
3747 | # CVE-2021-3714 has no known resolution | ||
3748 | |||
3749 | CVE_STATUS[CVE-2021-3715] = "fixed-version: Fixed from version 5.6" | ||
3750 | |||
3751 | CVE_STATUS[CVE-2021-37159] = "fixed-version: Fixed from version 5.14rc3" | ||
3752 | |||
3753 | CVE_STATUS[CVE-2021-3732] = "fixed-version: Fixed from version 5.14rc6" | ||
3754 | |||
3755 | CVE_STATUS[CVE-2021-3736] = "fixed-version: Fixed from version 5.15rc1" | ||
3756 | |||
3757 | CVE_STATUS[CVE-2021-3739] = "fixed-version: Fixed from version 5.15rc1" | ||
3758 | |||
3759 | CVE_STATUS[CVE-2021-3743] = "fixed-version: Fixed from version 5.13rc7" | ||
3760 | |||
3761 | CVE_STATUS[CVE-2021-3744] = "fixed-version: Fixed from version 5.15rc4" | ||
3762 | |||
3763 | CVE_STATUS[CVE-2021-3752] = "fixed-version: Fixed from version 5.16rc1" | ||
3764 | |||
3765 | CVE_STATUS[CVE-2021-3753] = "fixed-version: Fixed from version 5.15rc1" | ||
3766 | |||
3767 | CVE_STATUS[CVE-2021-37576] = "fixed-version: Fixed from version 5.14rc3" | ||
3768 | |||
3769 | CVE_STATUS[CVE-2021-3759] = "fixed-version: Fixed from version 5.15rc1" | ||
3770 | |||
3771 | CVE_STATUS[CVE-2021-3760] = "fixed-version: Fixed from version 5.15rc6" | ||
3772 | |||
3773 | CVE_STATUS[CVE-2021-3764] = "fixed-version: Fixed from version 5.15rc4" | ||
3774 | |||
3775 | CVE_STATUS[CVE-2021-3772] = "fixed-version: Fixed from version 5.15" | ||
3776 | |||
3777 | CVE_STATUS[CVE-2021-38160] = "fixed-version: Fixed from version 5.14rc1" | ||
3778 | |||
3779 | CVE_STATUS[CVE-2021-38166] = "fixed-version: Fixed from version 5.14rc6" | ||
3780 | |||
3781 | CVE_STATUS[CVE-2021-38198] = "fixed-version: Fixed from version 5.13rc6" | ||
3782 | |||
3783 | CVE_STATUS[CVE-2021-38199] = "fixed-version: Fixed from version 5.14rc1" | ||
3784 | |||
3785 | CVE_STATUS[CVE-2021-38200] = "fixed-version: Fixed from version 5.13rc7" | ||
3786 | |||
3787 | CVE_STATUS[CVE-2021-38201] = "fixed-version: Fixed from version 5.14rc1" | ||
3788 | |||
3789 | CVE_STATUS[CVE-2021-38202] = "fixed-version: Fixed from version 5.14rc1" | ||
3790 | |||
3791 | CVE_STATUS[CVE-2021-38203] = "fixed-version: Fixed from version 5.14rc2" | ||
3792 | |||
3793 | CVE_STATUS[CVE-2021-38204] = "fixed-version: Fixed from version 5.14rc3" | ||
3794 | |||
3795 | CVE_STATUS[CVE-2021-38205] = "fixed-version: Fixed from version 5.14rc1" | ||
3796 | |||
3797 | CVE_STATUS[CVE-2021-38206] = "fixed-version: Fixed from version 5.13rc7" | ||
3798 | |||
3799 | CVE_STATUS[CVE-2021-38207] = "fixed-version: Fixed from version 5.13rc7" | ||
3800 | |||
3801 | CVE_STATUS[CVE-2021-38208] = "fixed-version: Fixed from version 5.13rc5" | ||
3802 | |||
3803 | CVE_STATUS[CVE-2021-38209] = "fixed-version: Fixed from version 5.13rc1" | ||
3804 | |||
3805 | CVE_STATUS[CVE-2021-38300] = "fixed-version: Fixed from version 5.15rc4" | ||
3806 | |||
3807 | # CVE-2021-3847 has no known resolution | ||
3808 | |||
3809 | # CVE-2021-3864 has no known resolution | ||
3810 | |||
3811 | # CVE-2021-3892 has no known resolution | ||
3812 | |||
3813 | CVE_STATUS[CVE-2021-3894] = "fixed-version: Fixed from version 5.15rc6" | ||
3814 | |||
3815 | CVE_STATUS[CVE-2021-3896] = "fixed-version: Fixed from version 5.15rc6" | ||
3816 | |||
3817 | CVE_STATUS[CVE-2021-3923] = "fixed-version: Fixed from version 5.16" | ||
3818 | |||
3819 | CVE_STATUS[CVE-2021-39633] = "fixed-version: Fixed from version 5.14" | ||
3820 | |||
3821 | CVE_STATUS[CVE-2021-39634] = "fixed-version: Fixed from version 5.9rc8" | ||
3822 | |||
3823 | CVE_STATUS[CVE-2021-39636] = "fixed-version: Fixed from version 4.16rc1" | ||
3824 | |||
3825 | CVE_STATUS[CVE-2021-39648] = "fixed-version: Fixed from version 5.11rc3" | ||
3826 | |||
3827 | CVE_STATUS[CVE-2021-39656] = "fixed-version: Fixed from version 5.12rc3" | ||
3828 | |||
3829 | CVE_STATUS[CVE-2021-39657] = "fixed-version: Fixed from version 5.11rc4" | ||
3830 | |||
3831 | CVE_STATUS[CVE-2021-39685] = "fixed-version: Fixed from version 5.16rc5" | ||
3832 | |||
3833 | CVE_STATUS[CVE-2021-39686] = "fixed-version: Fixed from version 5.16rc1" | ||
3834 | |||
3835 | CVE_STATUS[CVE-2021-39698] = "fixed-version: Fixed from version 5.16rc5" | ||
3836 | |||
3837 | CVE_STATUS[CVE-2021-39711] = "fixed-version: Fixed from version 4.18rc6" | ||
3838 | |||
3839 | CVE_STATUS[CVE-2021-39713] = "fixed-version: Fixed from version 4.20rc1" | ||
3840 | |||
3841 | CVE_STATUS[CVE-2021-39714] = "fixed-version: Fixed from version 4.12rc1" | ||
3842 | |||
3843 | # CVE-2021-39800 has no known resolution | ||
3844 | |||
3845 | # CVE-2021-39801 has no known resolution | ||
3846 | |||
3847 | # CVE-2021-39802 has no known resolution | ||
3848 | |||
3849 | CVE_STATUS[CVE-2021-4001] = "fixed-version: Fixed from version 5.16rc2" | ||
3850 | |||
3851 | CVE_STATUS[CVE-2021-4002] = "fixed-version: Fixed from version 5.16rc3" | ||
3852 | |||
3853 | CVE_STATUS[CVE-2021-4023] = "fixed-version: Fixed from version 5.15rc1" | ||
3854 | |||
3855 | CVE_STATUS[CVE-2021-4028] = "fixed-version: Fixed from version 5.15rc4" | ||
3856 | |||
3857 | CVE_STATUS[CVE-2021-4032] = "fixed-version: Fixed from version 5.15rc7" | ||
3858 | |||
3859 | CVE_STATUS[CVE-2021-4037] = "fixed-version: Fixed from version 5.12rc1" | ||
3860 | |||
3861 | CVE_STATUS[CVE-2021-40490] = "fixed-version: Fixed from version 5.15rc1" | ||
3862 | |||
3863 | CVE_STATUS[CVE-2021-4083] = "fixed-version: Fixed from version 5.16rc4" | ||
3864 | |||
3865 | CVE_STATUS[CVE-2021-4090] = "fixed-version: Fixed from version 5.16rc2" | ||
3866 | |||
3867 | CVE_STATUS[CVE-2021-4093] = "fixed-version: Fixed from version 5.15rc7" | ||
3868 | |||
3869 | CVE_STATUS[CVE-2021-4095] = "fixed-version: Fixed from version 5.17rc1" | ||
3870 | |||
3871 | CVE_STATUS[CVE-2021-41073] = "fixed-version: Fixed from version 5.15rc2" | ||
3872 | |||
3873 | CVE_STATUS[CVE-2021-4135] = "fixed-version: Fixed from version 5.16rc6" | ||
3874 | |||
3875 | CVE_STATUS[CVE-2021-4148] = "fixed-version: Fixed from version 5.15" | ||
3876 | |||
3877 | CVE_STATUS[CVE-2021-4149] = "fixed-version: Fixed from version 5.15rc6" | ||
3878 | |||
3879 | CVE_STATUS[CVE-2021-4150] = "fixed-version: Fixed from version 5.15rc7" | ||
3880 | |||
3881 | CVE_STATUS[CVE-2021-4154] = "fixed-version: Fixed from version 5.14rc2" | ||
3882 | |||
3883 | CVE_STATUS[CVE-2021-4155] = "fixed-version: Fixed from version 5.16" | ||
3884 | |||
3885 | CVE_STATUS[CVE-2021-4157] = "fixed-version: Fixed from version 5.13rc1" | ||
3886 | |||
3887 | CVE_STATUS[CVE-2021-4159] = "fixed-version: Fixed from version 5.7rc1" | ||
3888 | |||
3889 | CVE_STATUS[CVE-2021-41864] = "fixed-version: Fixed from version 5.15rc5" | ||
3890 | |||
3891 | CVE_STATUS[CVE-2021-4197] = "fixed-version: Fixed from version 5.16" | ||
3892 | |||
3893 | CVE_STATUS[CVE-2021-42008] = "fixed-version: Fixed from version 5.14rc7" | ||
3894 | |||
3895 | CVE_STATUS[CVE-2021-4202] = "fixed-version: Fixed from version 5.16rc2" | ||
3896 | |||
3897 | CVE_STATUS[CVE-2021-4203] = "fixed-version: Fixed from version 5.15rc4" | ||
3898 | |||
3899 | CVE_STATUS[CVE-2021-4204] = "fixed-version: Fixed from version 5.17rc1" | ||
3900 | |||
3901 | CVE_STATUS[CVE-2021-4218] = "fixed-version: Fixed from version 5.8rc1" | ||
3902 | |||
3903 | CVE_STATUS[CVE-2021-42252] = "fixed-version: Fixed from version 5.15rc1" | ||
3904 | |||
3905 | CVE_STATUS[CVE-2021-42327] = "fixed-version: Fixed from version 5.15" | ||
3906 | |||
3907 | CVE_STATUS[CVE-2021-42739] = "fixed-version: Fixed from version 5.16rc1" | ||
3908 | |||
3909 | CVE_STATUS[CVE-2021-43056] = "fixed-version: Fixed from version 5.15rc6" | ||
3910 | |||
3911 | CVE_STATUS[CVE-2021-43057] = "fixed-version: Fixed from version 5.15rc3" | ||
3912 | |||
3913 | CVE_STATUS[CVE-2021-43267] = "fixed-version: Fixed from version 5.15" | ||
3914 | |||
3915 | CVE_STATUS[CVE-2021-43389] = "fixed-version: Fixed from version 5.15rc6" | ||
3916 | |||
3917 | CVE_STATUS[CVE-2021-43975] = "fixed-version: Fixed from version 5.16rc2" | ||
3918 | |||
3919 | CVE_STATUS[CVE-2021-43976] = "fixed-version: Fixed from version 5.17rc1" | ||
3920 | |||
3921 | CVE_STATUS[CVE-2021-44733] = "fixed-version: Fixed from version 5.16rc7" | ||
3922 | |||
3923 | CVE_STATUS[CVE-2021-44879] = "fixed-version: Fixed from version 5.17rc1" | ||
3924 | |||
3925 | CVE_STATUS[CVE-2021-45095] = "fixed-version: Fixed from version 5.16rc6" | ||
3926 | |||
3927 | CVE_STATUS[CVE-2021-45100] = "fixed-version: Fixed from version 5.16rc7" | ||
3928 | |||
3929 | CVE_STATUS[CVE-2021-45402] = "fixed-version: Fixed from version 5.16rc6" | ||
3930 | |||
3931 | CVE_STATUS[CVE-2021-45469] = "fixed-version: Fixed from version 5.17rc1" | ||
3932 | |||
3933 | CVE_STATUS[CVE-2021-45480] = "fixed-version: Fixed from version 5.16rc6" | ||
3934 | |||
3935 | CVE_STATUS[CVE-2021-45485] = "fixed-version: Fixed from version 5.14rc1" | ||
3936 | |||
3937 | CVE_STATUS[CVE-2021-45486] = "fixed-version: Fixed from version 5.13rc1" | ||
3938 | |||
3939 | CVE_STATUS[CVE-2021-45868] = "fixed-version: Fixed from version 5.16rc1" | ||
3940 | |||
3941 | CVE_STATUS[CVE-2021-46283] = "fixed-version: Fixed from version 5.13rc7" | ||
3942 | |||
3943 | CVE_STATUS[CVE-2022-0001] = "fixed-version: Fixed from version 5.17rc8" | ||
3944 | |||
3945 | CVE_STATUS[CVE-2022-0002] = "fixed-version: Fixed from version 5.17rc8" | ||
3946 | |||
3947 | CVE_STATUS[CVE-2022-0168] = "fixed-version: Fixed from version 5.18rc1" | ||
3948 | |||
3949 | CVE_STATUS[CVE-2022-0171] = "fixed-version: Fixed from version 5.18rc4" | ||
3950 | |||
3951 | CVE_STATUS[CVE-2022-0185] = "fixed-version: Fixed from version 5.17rc1" | ||
3952 | |||
3953 | CVE_STATUS[CVE-2022-0264] = "fixed-version: Fixed from version 5.16rc6" | ||
3954 | |||
3955 | CVE_STATUS[CVE-2022-0286] = "fixed-version: Fixed from version 5.14rc2" | ||
3956 | |||
3957 | CVE_STATUS[CVE-2022-0322] = "fixed-version: Fixed from version 5.15rc6" | ||
3958 | |||
3959 | CVE_STATUS[CVE-2022-0330] = "fixed-version: Fixed from version 5.17rc2" | ||
3960 | |||
3961 | CVE_STATUS[CVE-2022-0382] = "fixed-version: Fixed from version 5.16" | ||
3962 | |||
3963 | # CVE-2022-0400 has no known resolution | ||
3964 | |||
3965 | CVE_STATUS[CVE-2022-0433] = "fixed-version: Fixed from version 5.17rc1" | ||
3966 | |||
3967 | CVE_STATUS[CVE-2022-0435] = "fixed-version: Fixed from version 5.17rc4" | ||
3968 | |||
3969 | CVE_STATUS[CVE-2022-0480] = "fixed-version: Fixed from version 5.15rc1" | ||
3970 | |||
3971 | CVE_STATUS[CVE-2022-0487] = "fixed-version: Fixed from version 5.17rc4" | ||
3972 | |||
3973 | CVE_STATUS[CVE-2022-0492] = "fixed-version: Fixed from version 5.17rc3" | ||
3974 | |||
3975 | CVE_STATUS[CVE-2022-0494] = "fixed-version: Fixed from version 5.17rc5" | ||
3976 | |||
3977 | CVE_STATUS[CVE-2022-0500] = "fixed-version: Fixed from version 5.17rc1" | ||
3978 | |||
3979 | CVE_STATUS[CVE-2022-0516] = "fixed-version: Fixed from version 5.17rc4" | ||
3980 | |||
3981 | CVE_STATUS[CVE-2022-0617] = "fixed-version: Fixed from version 5.17rc2" | ||
3982 | |||
3983 | CVE_STATUS[CVE-2022-0644] = "fixed-version: Fixed from version 5.15rc7" | ||
3984 | |||
3985 | CVE_STATUS[CVE-2022-0646] = "fixed-version: Fixed from version 5.17rc5" | ||
3986 | |||
3987 | CVE_STATUS[CVE-2022-0742] = "fixed-version: Fixed from version 5.17rc7" | ||
3988 | |||
3989 | CVE_STATUS[CVE-2022-0812] = "fixed-version: Fixed from version 5.8rc6" | ||
3990 | |||
3991 | CVE_STATUS[CVE-2022-0847] = "fixed-version: Fixed from version 5.17rc6" | ||
3992 | |||
3993 | CVE_STATUS[CVE-2022-0850] = "fixed-version: Fixed from version 5.14rc1" | ||
3994 | |||
3995 | CVE_STATUS[CVE-2022-0854] = "fixed-version: Fixed from version 5.17rc8" | ||
3996 | |||
3997 | CVE_STATUS[CVE-2022-0995] = "fixed-version: Fixed from version 5.17rc8" | ||
3998 | |||
3999 | CVE_STATUS[CVE-2022-0998] = "fixed-version: Fixed from version 5.17rc1" | ||
4000 | |||
4001 | CVE_STATUS[CVE-2022-1011] = "fixed-version: Fixed from version 5.17rc8" | ||
4002 | |||
4003 | CVE_STATUS[CVE-2022-1012] = "fixed-version: Fixed from version 5.18rc6" | ||
4004 | |||
4005 | CVE_STATUS[CVE-2022-1015] = "fixed-version: Fixed from version 5.18rc1" | ||
4006 | |||
4007 | CVE_STATUS[CVE-2022-1016] = "fixed-version: Fixed from version 5.18rc1" | ||
4008 | |||
4009 | CVE_STATUS[CVE-2022-1043] = "fixed-version: Fixed from version 5.14rc7" | ||
4010 | |||
4011 | CVE_STATUS[CVE-2022-1048] = "fixed-version: Fixed from version 5.18rc1" | ||
4012 | |||
4013 | CVE_STATUS[CVE-2022-1055] = "fixed-version: Fixed from version 5.17rc3" | ||
4014 | |||
4015 | # CVE-2022-1116 has no known resolution | ||
4016 | |||
4017 | CVE_STATUS[CVE-2022-1158] = "fixed-version: Fixed from version 5.18rc1" | ||
4018 | |||
4019 | CVE_STATUS[CVE-2022-1184] = "fixed-version: Fixed from version 5.19rc1" | ||
4020 | |||
4021 | CVE_STATUS[CVE-2022-1195] = "fixed-version: Fixed from version 5.16rc7" | ||
4022 | |||
4023 | CVE_STATUS[CVE-2022-1198] = "fixed-version: Fixed from version 5.17rc6" | ||
4024 | |||
4025 | CVE_STATUS[CVE-2022-1199] = "fixed-version: Fixed from version 5.17rc8" | ||
4026 | |||
4027 | CVE_STATUS[CVE-2022-1204] = "fixed-version: Fixed from version 5.18rc1" | ||
4028 | |||
4029 | CVE_STATUS[CVE-2022-1205] = "fixed-version: Fixed from version 5.18rc1" | ||
4030 | |||
4031 | # CVE-2022-1247 has no known resolution | ||
4032 | |||
4033 | CVE_STATUS[CVE-2022-1263] = "fixed-version: Fixed from version 5.18rc3" | ||
4034 | |||
4035 | CVE_STATUS[CVE-2022-1280] = "fixed-version: Fixed from version 5.15rc1" | ||
4036 | |||
4037 | CVE_STATUS[CVE-2022-1353] = "fixed-version: Fixed from version 5.17" | ||
4038 | |||
4039 | CVE_STATUS[CVE-2022-1419] = "fixed-version: Fixed from version 5.6rc2" | ||
4040 | |||
4041 | CVE_STATUS[CVE-2022-1462] = "fixed-version: Fixed from version 5.19rc7" | ||
4042 | |||
4043 | CVE_STATUS[CVE-2022-1508] = "fixed-version: Fixed from version 5.15rc1" | ||
4044 | |||
4045 | CVE_STATUS[CVE-2022-1516] = "fixed-version: Fixed from version 5.18rc1" | ||
4046 | |||
4047 | CVE_STATUS[CVE-2022-1651] = "fixed-version: Fixed from version 5.18rc1" | ||
4048 | |||
4049 | CVE_STATUS[CVE-2022-1652] = "fixed-version: Fixed from version 5.18rc6" | ||
4050 | |||
4051 | CVE_STATUS[CVE-2022-1671] = "fixed-version: Fixed from version 5.18rc1" | ||
4052 | |||
4053 | CVE_STATUS[CVE-2022-1678] = "fixed-version: Fixed from version 4.20rc1" | ||
4054 | |||
4055 | CVE_STATUS[CVE-2022-1679] = "fixed-version: Fixed from version 6.0rc1" | ||
4056 | |||
4057 | CVE_STATUS[CVE-2022-1729] = "fixed-version: Fixed from version 5.18" | ||
4058 | |||
4059 | CVE_STATUS[CVE-2022-1734] = "fixed-version: Fixed from version 5.18rc6" | ||
4060 | |||
4061 | CVE_STATUS[CVE-2022-1786] = "fixed-version: Fixed from version 5.12rc1" | ||
4062 | |||
4063 | CVE_STATUS[CVE-2022-1789] = "fixed-version: Fixed from version 5.18" | ||
4064 | |||
4065 | CVE_STATUS[CVE-2022-1836] = "fixed-version: Fixed from version 5.18rc5" | ||
4066 | |||
4067 | CVE_STATUS[CVE-2022-1852] = "fixed-version: Fixed from version 5.19rc1" | ||
4068 | |||
4069 | CVE_STATUS[CVE-2022-1882] = "fixed-version: Fixed from version 5.19rc8" | ||
4070 | |||
4071 | CVE_STATUS[CVE-2022-1943] = "fixed-version: Fixed from version 5.18rc7" | ||
4072 | |||
4073 | CVE_STATUS[CVE-2022-1966] = "fixed-version: Fixed from version 5.19rc1" | ||
4074 | |||
4075 | CVE_STATUS[CVE-2022-1972] = "fixed-version: Fixed from version 5.19rc1" | ||
4076 | |||
4077 | CVE_STATUS[CVE-2022-1973] = "fixed-version: Fixed from version 5.19rc1" | ||
4078 | |||
4079 | CVE_STATUS[CVE-2022-1974] = "fixed-version: Fixed from version 5.18rc6" | ||
4080 | |||
4081 | CVE_STATUS[CVE-2022-1975] = "fixed-version: Fixed from version 5.18rc6" | ||
4082 | |||
4083 | CVE_STATUS[CVE-2022-1976] = "fixed-version: Fixed from version 5.19rc1" | ||
4084 | |||
4085 | CVE_STATUS[CVE-2022-1998] = "fixed-version: Fixed from version 5.17rc3" | ||
4086 | |||
4087 | CVE_STATUS[CVE-2022-20008] = "fixed-version: Fixed from version 5.17rc5" | ||
4088 | |||
4089 | CVE_STATUS[CVE-2022-20132] = "fixed-version: Fixed from version 5.16rc5" | ||
4090 | |||
4091 | CVE_STATUS[CVE-2022-20141] = "fixed-version: Fixed from version 5.15rc1" | ||
4092 | |||
4093 | CVE_STATUS[CVE-2022-20148] = "fixed-version: Fixed from version 5.16rc1" | ||
4094 | |||
4095 | CVE_STATUS[CVE-2022-20153] = "fixed-version: Fixed from version 5.13rc1" | ||
4096 | |||
4097 | CVE_STATUS[CVE-2022-20154] = "fixed-version: Fixed from version 5.16rc8" | ||
4098 | |||
4099 | CVE_STATUS[CVE-2022-20158] = "fixed-version: Fixed from version 5.17" | ||
4100 | |||
4101 | CVE_STATUS[CVE-2022-20166] = "fixed-version: Fixed from version 5.10rc1" | ||
4102 | |||
4103 | CVE_STATUS[CVE-2022-20368] = "fixed-version: Fixed from version 5.17" | ||
4104 | |||
4105 | CVE_STATUS[CVE-2022-20369] = "fixed-version: Fixed from version 5.18rc1" | ||
4106 | |||
4107 | CVE_STATUS[CVE-2022-20409] = "fixed-version: Fixed from version 5.12rc1" | ||
4108 | |||
4109 | CVE_STATUS[CVE-2022-20421] = "fixed-version: Fixed from version 6.0rc4" | ||
4110 | |||
4111 | CVE_STATUS[CVE-2022-20422] = "fixed-version: Fixed from version 6.0rc1" | ||
4112 | |||
4113 | CVE_STATUS[CVE-2022-20423] = "fixed-version: Fixed from version 5.17" | ||
4114 | |||
4115 | CVE_STATUS[CVE-2022-20424] = "fixed-version: Fixed from version 5.12rc1" | ||
4116 | |||
4117 | CVE_STATUS[CVE-2022-20565] = "fixed-version: Fixed from version 5.9rc4" | ||
4118 | |||
4119 | CVE_STATUS[CVE-2022-20566] = "fixed-version: Fixed from version 5.19" | ||
4120 | |||
4121 | CVE_STATUS[CVE-2022-20567] = "fixed-version: Fixed from version 4.16rc5" | ||
4122 | |||
4123 | CVE_STATUS[CVE-2022-20568] = "fixed-version: Fixed from version 5.12rc1" | ||
4124 | |||
4125 | CVE_STATUS[CVE-2022-20572] = "fixed-version: Fixed from version 5.19rc1" | ||
4126 | |||
4127 | CVE_STATUS[CVE-2022-2078] = "fixed-version: Fixed from version 5.19rc1" | ||
4128 | |||
4129 | CVE_STATUS[CVE-2022-21123] = "fixed-version: Fixed from version 5.19rc3" | ||
4130 | |||
4131 | CVE_STATUS[CVE-2022-21125] = "fixed-version: Fixed from version 5.19rc3" | ||
4132 | |||
4133 | CVE_STATUS[CVE-2022-21166] = "fixed-version: Fixed from version 5.19rc3" | ||
4134 | |||
4135 | CVE_STATUS[CVE-2022-21385] = "fixed-version: Fixed from version 4.20" | ||
4136 | |||
4137 | CVE_STATUS[CVE-2022-21499] = "fixed-version: Fixed from version 5.19rc1" | ||
4138 | |||
4139 | CVE_STATUS[CVE-2022-21505] = "fixed-version: Fixed from version 5.19rc8" | ||
4140 | |||
4141 | CVE_STATUS[CVE-2022-2153] = "fixed-version: Fixed from version 5.18rc1" | ||
4142 | |||
4143 | CVE_STATUS[CVE-2022-2196] = "fixed-version: Fixed from version 6.2rc1" | ||
4144 | |||
4145 | # CVE-2022-2209 has no known resolution | ||
4146 | |||
4147 | CVE_STATUS[CVE-2022-22942] = "fixed-version: Fixed from version 5.17rc2" | ||
4148 | |||
4149 | CVE_STATUS[CVE-2022-23036] = "fixed-version: Fixed from version 5.17rc8" | ||
4150 | |||
4151 | CVE_STATUS[CVE-2022-23037] = "fixed-version: Fixed from version 5.17rc8" | ||
4152 | |||
4153 | CVE_STATUS[CVE-2022-23038] = "fixed-version: Fixed from version 5.17rc8" | ||
4154 | |||
4155 | CVE_STATUS[CVE-2022-23039] = "fixed-version: Fixed from version 5.17rc8" | ||
4156 | |||
4157 | CVE_STATUS[CVE-2022-23040] = "fixed-version: Fixed from version 5.17rc8" | ||
4158 | |||
4159 | CVE_STATUS[CVE-2022-23041] = "fixed-version: Fixed from version 5.17rc8" | ||
4160 | |||
4161 | CVE_STATUS[CVE-2022-23042] = "fixed-version: Fixed from version 5.17rc8" | ||
4162 | |||
4163 | CVE_STATUS[CVE-2022-2308] = "fixed-version: Fixed from version 6.0" | ||
4164 | |||
4165 | CVE_STATUS[CVE-2022-2318] = "fixed-version: Fixed from version 5.19rc5" | ||
4166 | |||
4167 | CVE_STATUS[CVE-2022-23222] = "fixed-version: Fixed from version 5.17rc1" | ||
4168 | |||
4169 | CVE_STATUS[CVE-2022-2327] = "fixed-version: Fixed from version 5.12rc1" | ||
4170 | |||
4171 | CVE_STATUS[CVE-2022-2380] = "fixed-version: Fixed from version 5.18rc1" | ||
4172 | |||
4173 | CVE_STATUS[CVE-2022-23816] = "fixed-version: Fixed from version 5.19rc7" | ||
4174 | |||
4175 | # CVE-2022-23825 has no known resolution | ||
4176 | |||
4177 | CVE_STATUS[CVE-2022-23960] = "fixed-version: Fixed from version 5.17rc8" | ||
4178 | |||
4179 | CVE_STATUS[CVE-2022-24122] = "fixed-version: Fixed from version 5.17rc2" | ||
4180 | |||
4181 | CVE_STATUS[CVE-2022-24448] = "fixed-version: Fixed from version 5.17rc2" | ||
4182 | |||
4183 | CVE_STATUS[CVE-2022-24958] = "fixed-version: Fixed from version 5.17rc1" | ||
4184 | |||
4185 | CVE_STATUS[CVE-2022-24959] = "fixed-version: Fixed from version 5.17rc2" | ||
4186 | |||
4187 | CVE_STATUS[CVE-2022-2503] = "fixed-version: Fixed from version 5.19rc1" | ||
4188 | |||
4189 | CVE_STATUS[CVE-2022-25258] = "fixed-version: Fixed from version 5.17rc4" | ||
4190 | |||
4191 | # CVE-2022-25265 has no known resolution | ||
4192 | |||
4193 | CVE_STATUS[CVE-2022-25375] = "fixed-version: Fixed from version 5.17rc4" | ||
4194 | |||
4195 | CVE_STATUS[CVE-2022-25636] = "fixed-version: Fixed from version 5.17rc6" | ||
4196 | |||
4197 | CVE_STATUS[CVE-2022-2585] = "fixed-version: Fixed from version 6.0rc1" | ||
4198 | |||
4199 | CVE_STATUS[CVE-2022-2586] = "fixed-version: Fixed from version 6.0rc1" | ||
4200 | |||
4201 | CVE_STATUS[CVE-2022-2588] = "fixed-version: Fixed from version 6.0rc1" | ||
4202 | |||
4203 | CVE_STATUS[CVE-2022-2590] = "fixed-version: Fixed from version 6.0rc3" | ||
4204 | |||
4205 | CVE_STATUS[CVE-2022-2602] = "fixed-version: Fixed from version 6.1rc1" | ||
4206 | |||
4207 | CVE_STATUS[CVE-2022-26365] = "fixed-version: Fixed from version 5.19rc6" | ||
4208 | |||
4209 | CVE_STATUS[CVE-2022-26373] = "fixed-version: Fixed from version 6.0rc1" | ||
4210 | |||
4211 | CVE_STATUS[CVE-2022-2639] = "fixed-version: Fixed from version 5.18rc4" | ||
4212 | |||
4213 | CVE_STATUS[CVE-2022-26490] = "fixed-version: Fixed from version 5.17rc1" | ||
4214 | |||
4215 | CVE_STATUS[CVE-2022-2663] = "fixed-version: Fixed from version 6.0rc5" | ||
4216 | |||
4217 | # CVE-2022-26878 has no known resolution | ||
4218 | |||
4219 | CVE_STATUS[CVE-2022-26966] = "fixed-version: Fixed from version 5.17rc6" | ||
4220 | |||
4221 | CVE_STATUS[CVE-2022-27223] = "fixed-version: Fixed from version 5.17rc6" | ||
4222 | |||
4223 | CVE_STATUS[CVE-2022-27666] = "fixed-version: Fixed from version 5.17rc8" | ||
4224 | |||
4225 | CVE_STATUS[CVE-2022-27672] = "fixed-version: Fixed from version 6.2" | ||
4226 | |||
4227 | CVE_STATUS[CVE-2022-2785] = "fixed-version: Fixed from version 6.0rc1" | ||
4228 | |||
4229 | CVE_STATUS[CVE-2022-27950] = "fixed-version: Fixed from version 5.17rc5" | ||
4230 | |||
4231 | CVE_STATUS[CVE-2022-28356] = "fixed-version: Fixed from version 5.18rc1" | ||
4232 | |||
4233 | CVE_STATUS[CVE-2022-28388] = "fixed-version: Fixed from version 5.18rc1" | ||
4234 | |||
4235 | CVE_STATUS[CVE-2022-28389] = "fixed-version: Fixed from version 5.18rc1" | ||
4236 | |||
4237 | CVE_STATUS[CVE-2022-28390] = "fixed-version: Fixed from version 5.18rc1" | ||
4238 | |||
4239 | CVE_STATUS[CVE-2022-2873] = "fixed-version: Fixed from version 5.19rc1" | ||
4240 | |||
4241 | CVE_STATUS[CVE-2022-28796] = "fixed-version: Fixed from version 5.18rc1" | ||
4242 | |||
4243 | CVE_STATUS[CVE-2022-28893] = "fixed-version: Fixed from version 5.18rc2" | ||
4244 | |||
4245 | CVE_STATUS[CVE-2022-2905] = "fixed-version: Fixed from version 6.0rc4" | ||
4246 | |||
4247 | CVE_STATUS[CVE-2022-29156] = "fixed-version: Fixed from version 5.17rc6" | ||
4248 | |||
4249 | CVE_STATUS[CVE-2022-2938] = "fixed-version: Fixed from version 5.17rc2" | ||
4250 | |||
4251 | CVE_STATUS[CVE-2022-29581] = "fixed-version: Fixed from version 5.18rc4" | ||
4252 | |||
4253 | CVE_STATUS[CVE-2022-29582] = "fixed-version: Fixed from version 5.18rc2" | ||
4254 | |||
4255 | CVE_STATUS[CVE-2022-2959] = "fixed-version: Fixed from version 5.19rc1" | ||
4256 | |||
4257 | # CVE-2022-2961 has no known resolution | ||
4258 | |||
4259 | CVE_STATUS[CVE-2022-2964] = "fixed-version: Fixed from version 5.17rc4" | ||
4260 | |||
4261 | CVE_STATUS[CVE-2022-2977] = "fixed-version: Fixed from version 5.18rc1" | ||
4262 | |||
4263 | CVE_STATUS[CVE-2022-2978] = "fixed-version: Fixed from version 6.1rc1" | ||
4264 | |||
4265 | CVE_STATUS[CVE-2022-29900] = "fixed-version: Fixed from version 5.19rc7" | ||
4266 | |||
4267 | CVE_STATUS[CVE-2022-29901] = "fixed-version: Fixed from version 5.19rc7" | ||
4268 | |||
4269 | CVE_STATUS[CVE-2022-2991] = "fixed-version: Fixed from version 5.15rc1" | ||
4270 | |||
4271 | CVE_STATUS[CVE-2022-29968] = "fixed-version: Fixed from version 5.18rc5" | ||
4272 | |||
4273 | CVE_STATUS[CVE-2022-3028] = "fixed-version: Fixed from version 6.0rc3" | ||
4274 | |||
4275 | CVE_STATUS[CVE-2022-30594] = "fixed-version: Fixed from version 5.18rc1" | ||
4276 | |||
4277 | CVE_STATUS[CVE-2022-3061] = "fixed-version: Fixed from version 5.18rc5" | ||
4278 | |||
4279 | CVE_STATUS[CVE-2022-3077] = "fixed-version: Fixed from version 5.19rc1" | ||
4280 | |||
4281 | CVE_STATUS[CVE-2022-3078] = "fixed-version: Fixed from version 5.18rc1" | ||
4282 | |||
4283 | CVE_STATUS[CVE-2022-3103] = "fixed-version: Fixed from version 6.0rc3" | ||
4284 | |||
4285 | CVE_STATUS[CVE-2022-3104] = "fixed-version: Fixed from version 5.19rc1" | ||
4286 | |||
4287 | CVE_STATUS[CVE-2022-3105] = "fixed-version: Fixed from version 5.16" | ||
4288 | |||
4289 | CVE_STATUS[CVE-2022-3106] = "fixed-version: Fixed from version 5.16rc6" | ||
4290 | |||
4291 | CVE_STATUS[CVE-2022-3107] = "fixed-version: Fixed from version 5.17" | ||
4292 | |||
4293 | CVE_STATUS[CVE-2022-3108] = "fixed-version: Fixed from version 5.17rc1" | ||
4294 | |||
4295 | CVE_STATUS[CVE-2022-3110] = "fixed-version: Fixed from version 5.19rc1" | ||
4296 | |||
4297 | CVE_STATUS[CVE-2022-3111] = "fixed-version: Fixed from version 5.18rc1" | ||
4298 | |||
4299 | CVE_STATUS[CVE-2022-3112] = "fixed-version: Fixed from version 5.18rc1" | ||
4300 | |||
4301 | CVE_STATUS[CVE-2022-3113] = "fixed-version: Fixed from version 5.18rc1" | ||
4302 | |||
4303 | CVE_STATUS[CVE-2022-3114] = "fixed-version: Fixed from version 5.19rc1" | ||
4304 | |||
4305 | CVE_STATUS[CVE-2022-3115] = "fixed-version: Fixed from version 5.19rc1" | ||
4306 | |||
4307 | CVE_STATUS[CVE-2022-3169] = "fixed-version: Fixed from version 6.1rc1" | ||
4308 | |||
4309 | CVE_STATUS[CVE-2022-3170] = "fixed-version: Fixed from version 6.0rc4" | ||
4310 | |||
4311 | CVE_STATUS[CVE-2022-3176] = "fixed-version: Fixed from version 5.17rc1" | ||
4312 | |||
4313 | CVE_STATUS[CVE-2022-3202] = "fixed-version: Fixed from version 5.18rc1" | ||
4314 | |||
4315 | CVE_STATUS[CVE-2022-32250] = "fixed-version: Fixed from version 5.19rc1" | ||
4316 | |||
4317 | CVE_STATUS[CVE-2022-32296] = "fixed-version: Fixed from version 5.18rc6" | ||
4318 | |||
4319 | # CVE-2022-3238 has no known resolution | ||
4320 | |||
4321 | CVE_STATUS[CVE-2022-3239] = "fixed-version: Fixed from version 5.18rc1" | ||
4322 | |||
4323 | CVE_STATUS[CVE-2022-32981] = "fixed-version: Fixed from version 5.19rc2" | ||
4324 | |||
4325 | CVE_STATUS[CVE-2022-3303] = "fixed-version: Fixed from version 6.0rc5" | ||
4326 | |||
4327 | CVE_STATUS[CVE-2022-3344] = "fixed-version: Fixed from version 6.1rc7" | ||
4328 | |||
4329 | CVE_STATUS[CVE-2022-33740] = "fixed-version: Fixed from version 5.19rc6" | ||
4330 | |||
4331 | CVE_STATUS[CVE-2022-33741] = "fixed-version: Fixed from version 5.19rc6" | ||
4332 | |||
4333 | CVE_STATUS[CVE-2022-33742] = "fixed-version: Fixed from version 5.19rc6" | ||
4334 | |||
4335 | CVE_STATUS[CVE-2022-33743] = "fixed-version: Fixed from version 5.19rc6" | ||
4336 | |||
4337 | CVE_STATUS[CVE-2022-33744] = "fixed-version: Fixed from version 5.19rc6" | ||
4338 | |||
4339 | CVE_STATUS[CVE-2022-33981] = "fixed-version: Fixed from version 5.18rc5" | ||
4340 | |||
4341 | CVE_STATUS[CVE-2022-3424] = "fixed-version: Fixed from version 6.2rc1" | ||
4342 | |||
4343 | CVE_STATUS[CVE-2022-3435] = "fixed-version: Fixed from version 6.1rc1" | ||
4344 | |||
4345 | CVE_STATUS[CVE-2022-34494] = "fixed-version: Fixed from version 5.19rc1" | ||
4346 | |||
4347 | CVE_STATUS[CVE-2022-34495] = "fixed-version: Fixed from version 5.19rc1" | ||
4348 | |||
4349 | CVE_STATUS[CVE-2022-34918] = "fixed-version: Fixed from version 5.19rc6" | ||
4350 | |||
4351 | CVE_STATUS[CVE-2022-3521] = "fixed-version: Fixed from version 6.1rc1" | ||
4352 | |||
4353 | CVE_STATUS[CVE-2022-3522] = "fixed-version: Fixed from version 6.1rc1" | ||
4354 | |||
4355 | CVE_STATUS[CVE-2022-3523] = "fixed-version: Fixed from version 6.1rc1" | ||
4356 | |||
4357 | CVE_STATUS[CVE-2022-3524] = "fixed-version: Fixed from version 6.1rc1" | ||
4358 | |||
4359 | CVE_STATUS[CVE-2022-3526] = "fixed-version: Fixed from version 5.18rc3" | ||
4360 | |||
4361 | CVE_STATUS[CVE-2022-3531] = "fixed-version: Fixed from version 6.2rc1" | ||
4362 | |||
4363 | CVE_STATUS[CVE-2022-3532] = "fixed-version: Fixed from version 6.2rc1" | ||
4364 | |||
4365 | # CVE-2022-3533 has no known resolution | ||
4366 | |||
4367 | CVE_STATUS[CVE-2022-3534] = "fixed-version: Fixed from version 6.2rc1" | ||
4368 | |||
4369 | CVE_STATUS[CVE-2022-3535] = "fixed-version: Fixed from version 6.1rc1" | ||
4370 | |||
4371 | CVE_STATUS[CVE-2022-3541] = "fixed-version: Fixed from version 6.1rc1" | ||
4372 | |||
4373 | CVE_STATUS[CVE-2022-3542] = "fixed-version: Fixed from version 6.1rc1" | ||
4374 | |||
4375 | CVE_STATUS[CVE-2022-3543] = "fixed-version: Fixed from version 6.1rc1" | ||
4376 | |||
4377 | # CVE-2022-3544 has no known resolution | ||
4378 | |||
4379 | CVE_STATUS[CVE-2022-3545] = "fixed-version: Fixed from version 6.0rc1" | ||
4380 | |||
4381 | CVE_STATUS[CVE-2022-3564] = "fixed-version: Fixed from version 6.1rc4" | ||
4382 | |||
4383 | CVE_STATUS[CVE-2022-3565] = "fixed-version: Fixed from version 6.1rc1" | ||
4384 | |||
4385 | CVE_STATUS[CVE-2022-3566] = "fixed-version: Fixed from version 6.1rc1" | ||
4386 | |||
4387 | CVE_STATUS[CVE-2022-3567] = "fixed-version: Fixed from version 6.1rc1" | ||
4388 | |||
4389 | CVE_STATUS[CVE-2022-3577] = "fixed-version: Fixed from version 5.19rc1" | ||
4390 | |||
4391 | CVE_STATUS[CVE-2022-3586] = "fixed-version: Fixed from version 6.0rc5" | ||
4392 | |||
4393 | CVE_STATUS[CVE-2022-3594] = "fixed-version: Fixed from version 6.1rc1" | ||
4394 | |||
4395 | CVE_STATUS[CVE-2022-3595] = "fixed-version: Fixed from version 6.1rc1" | ||
4396 | |||
4397 | # CVE-2022-3606 has no known resolution | ||
4398 | |||
4399 | CVE_STATUS[CVE-2022-36123] = "fixed-version: Fixed from version 5.19rc6" | ||
4400 | |||
4401 | CVE_STATUS[CVE-2022-3619] = "fixed-version: Fixed from version 6.1rc4" | ||
4402 | |||
4403 | CVE_STATUS[CVE-2022-3621] = "fixed-version: Fixed from version 6.1rc1" | ||
4404 | |||
4405 | CVE_STATUS[CVE-2022-3623] = "fixed-version: Fixed from version 6.1rc1" | ||
4406 | |||
4407 | CVE_STATUS[CVE-2022-3624] = "fixed-version: Fixed from version 6.0rc1" | ||
4408 | |||
4409 | CVE_STATUS[CVE-2022-3625] = "fixed-version: Fixed from version 6.0rc1" | ||
4410 | |||
4411 | CVE_STATUS[CVE-2022-3628] = "fixed-version: Fixed from version 6.1rc5" | ||
4412 | |||
4413 | CVE_STATUS[CVE-2022-36280] = "fixed-version: Fixed from version 6.2rc1" | ||
4414 | |||
4415 | CVE_STATUS[CVE-2022-3629] = "fixed-version: Fixed from version 6.0rc1" | ||
4416 | |||
4417 | CVE_STATUS[CVE-2022-3630] = "fixed-version: Fixed from version 6.0rc1" | ||
4418 | |||
4419 | CVE_STATUS[CVE-2022-3633] = "fixed-version: Fixed from version 6.0rc1" | ||
4420 | |||
4421 | CVE_STATUS[CVE-2022-3635] = "fixed-version: Fixed from version 6.0rc1" | ||
4422 | |||
4423 | CVE_STATUS[CVE-2022-3636] = "fixed-version: Fixed from version 5.19rc1" | ||
4424 | |||
4425 | CVE_STATUS[CVE-2022-3640] = "fixed-version: Fixed from version 6.1rc4" | ||
4426 | |||
4427 | CVE_STATUS[CVE-2022-36402] = "fixed-version: Fixed from version 6.5" | ||
4428 | |||
4429 | # CVE-2022-3642 has no known resolution | ||
4430 | |||
4431 | CVE_STATUS[CVE-2022-3643] = "fixed-version: Fixed from version 6.1" | ||
4432 | |||
4433 | CVE_STATUS[CVE-2022-3646] = "fixed-version: Fixed from version 6.1rc1" | ||
4434 | |||
4435 | CVE_STATUS[CVE-2022-3649] = "fixed-version: Fixed from version 6.1rc1" | ||
4436 | |||
4437 | CVE_STATUS[CVE-2022-36879] = "fixed-version: Fixed from version 5.19rc8" | ||
4438 | |||
4439 | CVE_STATUS[CVE-2022-36946] = "fixed-version: Fixed from version 5.19" | ||
4440 | |||
4441 | CVE_STATUS[CVE-2022-3707] = "fixed-version: Fixed from version 6.2rc3" | ||
4442 | |||
4443 | # CVE-2022-38096 has no known resolution | ||
4444 | |||
4445 | CVE_STATUS[CVE-2022-38457] = "fixed-version: Fixed from version 6.2rc4" | ||
4446 | |||
4447 | CVE_STATUS[CVE-2022-3903] = "fixed-version: Fixed from version 6.1rc2" | ||
4448 | |||
4449 | CVE_STATUS[CVE-2022-3910] = "fixed-version: Fixed from version 6.0rc6" | ||
4450 | |||
4451 | CVE_STATUS[CVE-2022-39188] = "fixed-version: Fixed from version 5.19rc8" | ||
4452 | |||
4453 | CVE_STATUS[CVE-2022-39189] = "fixed-version: Fixed from version 5.19rc2" | ||
4454 | |||
4455 | CVE_STATUS[CVE-2022-39190] = "fixed-version: Fixed from version 6.0rc3" | ||
4456 | |||
4457 | CVE_STATUS[CVE-2022-3977] = "fixed-version: Fixed from version 6.1rc1" | ||
4458 | |||
4459 | CVE_STATUS[CVE-2022-39842] = "fixed-version: Fixed from version 5.19rc4" | ||
4460 | |||
4461 | CVE_STATUS[CVE-2022-40133] = "fixed-version: Fixed from version 6.2rc4" | ||
4462 | |||
4463 | CVE_STATUS[CVE-2022-40307] = "fixed-version: Fixed from version 6.0rc5" | ||
4464 | |||
4465 | CVE_STATUS[CVE-2022-40476] = "fixed-version: Fixed from version 5.19rc4" | ||
4466 | |||
4467 | CVE_STATUS[CVE-2022-40768] = "fixed-version: Fixed from version 6.1rc1" | ||
4468 | |||
4469 | CVE_STATUS[CVE-2022-4095] = "fixed-version: Fixed from version 6.0rc4" | ||
4470 | |||
4471 | CVE_STATUS[CVE-2022-40982] = "fixed-version: Fixed from version 6.5rc6" | ||
4472 | |||
4473 | CVE_STATUS[CVE-2022-41218] = "fixed-version: Fixed from version 6.2rc1" | ||
4474 | |||
4475 | CVE_STATUS[CVE-2022-41222] = "fixed-version: Fixed from version 5.14rc1" | ||
4476 | |||
4477 | CVE_STATUS[CVE-2022-4127] = "fixed-version: Fixed from version 5.19rc6" | ||
4478 | |||
4479 | CVE_STATUS[CVE-2022-4128] = "fixed-version: Fixed from version 5.19rc7" | ||
4480 | |||
4481 | CVE_STATUS[CVE-2022-4129] = "fixed-version: Fixed from version 6.1rc6" | ||
4482 | |||
4483 | CVE_STATUS[CVE-2022-4139] = "fixed-version: Fixed from version 6.1rc8" | ||
4484 | |||
4485 | CVE_STATUS[CVE-2022-41674] = "fixed-version: Fixed from version 6.1rc1" | ||
4486 | |||
4487 | # CVE-2022-41848 has no known resolution | ||
4488 | |||
4489 | CVE_STATUS[CVE-2022-41849] = "fixed-version: Fixed from version 6.1rc1" | ||
4490 | |||
4491 | CVE_STATUS[CVE-2022-41850] = "fixed-version: Fixed from version 6.1rc1" | ||
4492 | |||
4493 | CVE_STATUS[CVE-2022-41858] = "fixed-version: Fixed from version 5.18rc2" | ||
4494 | |||
4495 | CVE_STATUS[CVE-2022-42328] = "fixed-version: Fixed from version 6.1" | ||
4496 | |||
4497 | CVE_STATUS[CVE-2022-42329] = "fixed-version: Fixed from version 6.1" | ||
4498 | |||
4499 | CVE_STATUS[CVE-2022-42432] = "fixed-version: Fixed from version 6.0rc7" | ||
4500 | |||
4501 | CVE_STATUS[CVE-2022-4269] = "fixed-version: Fixed from version 6.3rc1" | ||
4502 | |||
4503 | CVE_STATUS[CVE-2022-42703] = "fixed-version: Fixed from version 6.0rc4" | ||
4504 | |||
4505 | CVE_STATUS[CVE-2022-42719] = "fixed-version: Fixed from version 6.1rc1" | ||
4506 | |||
4507 | CVE_STATUS[CVE-2022-42720] = "fixed-version: Fixed from version 6.1rc1" | ||
4508 | |||
4509 | CVE_STATUS[CVE-2022-42721] = "fixed-version: Fixed from version 6.1rc1" | ||
4510 | |||
4511 | CVE_STATUS[CVE-2022-42722] = "fixed-version: Fixed from version 6.1rc1" | ||
4512 | |||
4513 | CVE_STATUS[CVE-2022-42895] = "fixed-version: Fixed from version 6.1rc4" | ||
4514 | |||
4515 | CVE_STATUS[CVE-2022-42896] = "fixed-version: Fixed from version 6.1rc4" | ||
4516 | |||
4517 | CVE_STATUS[CVE-2022-43750] = "fixed-version: Fixed from version 6.1rc1" | ||
4518 | |||
4519 | CVE_STATUS[CVE-2022-4378] = "fixed-version: Fixed from version 6.1" | ||
4520 | |||
4521 | CVE_STATUS[CVE-2022-4379] = "fixed-version: Fixed from version 6.2rc1" | ||
4522 | |||
4523 | CVE_STATUS[CVE-2022-4382] = "fixed-version: Fixed from version 6.2rc5" | ||
4524 | |||
4525 | CVE_STATUS[CVE-2022-43945] = "fixed-version: Fixed from version 6.1rc1" | ||
4526 | |||
4527 | CVE_STATUS[CVE-2022-44032] = "fixed-version: Fixed from version 6.4rc1" | ||
4528 | |||
4529 | CVE_STATUS[CVE-2022-44033] = "fixed-version: Fixed from version 6.4rc1" | ||
4530 | |||
4531 | CVE_STATUS[CVE-2022-44034] = "fixed-version: Fixed from version 6.4rc1" | ||
4532 | |||
4533 | # CVE-2022-4543 has no known resolution | ||
4534 | |||
4535 | CVE_STATUS[CVE-2022-45869] = "fixed-version: Fixed from version 6.1rc7" | ||
4536 | |||
4537 | # CVE-2022-45884 has no known resolution | ||
4538 | |||
4539 | # CVE-2022-45885 has no known resolution | ||
4540 | |||
4541 | CVE_STATUS[CVE-2022-45886] = "fixed-version: Fixed from version 6.4rc3" | ||
4542 | |||
4543 | CVE_STATUS[CVE-2022-45887] = "fixed-version: Fixed from version 6.4rc3" | ||
4544 | |||
4545 | CVE_STATUS[CVE-2022-45888] = "fixed-version: Fixed from version 6.2rc1" | ||
4546 | |||
4547 | CVE_STATUS[CVE-2022-45919] = "fixed-version: Fixed from version 6.4rc3" | ||
4548 | |||
4549 | CVE_STATUS[CVE-2022-45934] = "fixed-version: Fixed from version 6.1" | ||
4550 | |||
4551 | CVE_STATUS[CVE-2022-4662] = "fixed-version: Fixed from version 6.0rc4" | ||
4552 | |||
4553 | CVE_STATUS[CVE-2022-4696] = "fixed-version: Fixed from version 5.12rc1" | ||
4554 | |||
4555 | CVE_STATUS[CVE-2022-4744] = "fixed-version: Fixed from version 5.16rc7" | ||
4556 | |||
4557 | CVE_STATUS[CVE-2022-47518] = "fixed-version: Fixed from version 6.1rc8" | ||
4558 | |||
4559 | CVE_STATUS[CVE-2022-47519] = "fixed-version: Fixed from version 6.1rc8" | ||
4560 | |||
4561 | CVE_STATUS[CVE-2022-47520] = "fixed-version: Fixed from version 6.1rc8" | ||
4562 | |||
4563 | CVE_STATUS[CVE-2022-47521] = "fixed-version: Fixed from version 6.1rc8" | ||
4564 | |||
4565 | CVE_STATUS[CVE-2022-47929] = "fixed-version: Fixed from version 6.2rc4" | ||
4566 | |||
4567 | CVE_STATUS[CVE-2022-47938] = "fixed-version: Fixed from version 6.0rc1" | ||
4568 | |||
4569 | CVE_STATUS[CVE-2022-47939] = "fixed-version: Fixed from version 6.0rc1" | ||
4570 | |||
4571 | CVE_STATUS[CVE-2022-47940] = "fixed-version: Fixed from version 5.19rc1" | ||
4572 | |||
4573 | CVE_STATUS[CVE-2022-47941] = "fixed-version: Fixed from version 6.0rc1" | ||
4574 | |||
4575 | CVE_STATUS[CVE-2022-47942] = "fixed-version: Fixed from version 6.0rc1" | ||
4576 | |||
4577 | CVE_STATUS[CVE-2022-47943] = "fixed-version: Fixed from version 6.0rc1" | ||
4578 | |||
4579 | CVE_STATUS[CVE-2022-47946] = "fixed-version: Fixed from version 5.12rc2" | ||
4580 | |||
4581 | CVE_STATUS[CVE-2022-4842] = "fixed-version: Fixed from version 6.2rc1" | ||
4582 | |||
4583 | CVE_STATUS[CVE-2022-48423] = "fixed-version: Fixed from version 6.2rc1" | ||
4584 | |||
4585 | CVE_STATUS[CVE-2022-48424] = "fixed-version: Fixed from version 6.2rc1" | ||
4586 | |||
4587 | CVE_STATUS[CVE-2022-48425] = "fixed-version: Fixed from version 6.4rc1" | ||
4588 | |||
4589 | CVE_STATUS[CVE-2022-48502] = "fixed-version: Fixed from version 6.2rc1" | ||
4590 | |||
4591 | CVE_STATUS[CVE-2022-48619] = "fixed-version: Fixed from version 5.18rc1" | ||
4592 | |||
4593 | CVE_STATUS[CVE-2023-0030] = "fixed-version: Fixed from version 5.0rc1" | ||
4594 | |||
4595 | CVE_STATUS[CVE-2023-0045] = "fixed-version: Fixed from version 6.2rc3" | ||
4596 | |||
4597 | CVE_STATUS[CVE-2023-0047] = "fixed-version: Fixed from version 5.16rc1" | ||
4598 | |||
4599 | CVE_STATUS[CVE-2023-0122] = "fixed-version: Fixed from version 6.0rc4" | ||
4600 | |||
4601 | CVE_STATUS[CVE-2023-0160] = "fixed-version: Fixed from version 6.4rc1" | ||
4602 | |||
4603 | CVE_STATUS[CVE-2023-0179] = "fixed-version: Fixed from version 6.2rc5" | ||
4604 | |||
4605 | CVE_STATUS[CVE-2023-0210] = "fixed-version: Fixed from version 6.2rc4" | ||
4606 | |||
4607 | CVE_STATUS[CVE-2023-0240] = "fixed-version: Fixed from version 5.10rc1" | ||
4608 | |||
4609 | CVE_STATUS[CVE-2023-0266] = "fixed-version: Fixed from version 6.2rc4" | ||
4610 | |||
4611 | CVE_STATUS[CVE-2023-0386] = "fixed-version: Fixed from version 6.2rc6" | ||
4612 | |||
4613 | CVE_STATUS[CVE-2023-0394] = "fixed-version: Fixed from version 6.2rc4" | ||
4614 | |||
4615 | CVE_STATUS[CVE-2023-0458] = "fixed-version: Fixed from version 6.2rc5" | ||
4616 | |||
4617 | CVE_STATUS[CVE-2023-0459] = "fixed-version: Fixed from version 6.3rc1" | ||
4618 | |||
4619 | CVE_STATUS[CVE-2023-0461] = "fixed-version: Fixed from version 6.2rc3" | ||
4620 | |||
4621 | CVE_STATUS[CVE-2023-0468] = "fixed-version: Fixed from version 6.1rc7" | ||
4622 | |||
4623 | CVE_STATUS[CVE-2023-0469] = "fixed-version: Fixed from version 6.1rc7" | ||
4624 | |||
4625 | CVE_STATUS[CVE-2023-0590] = "fixed-version: Fixed from version 6.1rc2" | ||
4626 | |||
4627 | CVE_STATUS[CVE-2023-0597] = "fixed-version: Fixed from version 6.2rc1" | ||
4628 | |||
4629 | CVE_STATUS[CVE-2023-0615] = "fixed-version: Fixed from version 6.1rc3" | ||
4630 | |||
4631 | CVE_STATUS[CVE-2023-1032] = "fixed-version: Fixed from version 6.3rc2" | ||
4632 | |||
4633 | CVE_STATUS[CVE-2023-1073] = "fixed-version: Fixed from version 6.2rc5" | ||
4634 | |||
4635 | CVE_STATUS[CVE-2023-1074] = "fixed-version: Fixed from version 6.2rc6" | ||
4636 | |||
4637 | CVE_STATUS[CVE-2023-1075] = "fixed-version: Fixed from version 6.2rc7" | ||
4638 | |||
4639 | CVE_STATUS[CVE-2023-1076] = "fixed-version: Fixed from version 6.3rc1" | ||
4640 | |||
4641 | CVE_STATUS[CVE-2023-1077] = "fixed-version: Fixed from version 6.3rc1" | ||
4642 | |||
4643 | CVE_STATUS[CVE-2023-1078] = "fixed-version: Fixed from version 6.2rc8" | ||
4644 | |||
4645 | CVE_STATUS[CVE-2023-1079] = "fixed-version: Fixed from version 6.3rc1" | ||
4646 | |||
4647 | CVE_STATUS[CVE-2023-1095] = "fixed-version: Fixed from version 6.0rc1" | ||
4648 | |||
4649 | CVE_STATUS[CVE-2023-1118] = "fixed-version: Fixed from version 6.3rc1" | ||
4650 | |||
4651 | CVE_STATUS[CVE-2023-1192] = "fixed-version: Fixed from version 6.4rc1" | ||
4652 | |||
4653 | CVE_STATUS[CVE-2023-1193] = "fixed-version: Fixed from version 6.3rc6" | ||
4654 | |||
4655 | CVE_STATUS[CVE-2023-1194] = "fixed-version: Fixed from version 6.4rc6" | ||
4656 | |||
4657 | CVE_STATUS[CVE-2023-1195] = "fixed-version: Fixed from version 6.1rc3" | ||
4658 | |||
4659 | CVE_STATUS[CVE-2023-1206] = "fixed-version: Fixed from version 6.5rc4" | ||
4660 | |||
4661 | CVE_STATUS[CVE-2023-1249] = "fixed-version: Fixed from version 5.18rc1" | ||
4662 | |||
4663 | CVE_STATUS[CVE-2023-1252] = "fixed-version: Fixed from version 5.16rc1" | ||
4664 | |||
4665 | CVE_STATUS[CVE-2023-1281] = "fixed-version: Fixed from version 6.2" | ||
4666 | |||
4667 | CVE_STATUS[CVE-2023-1295] = "fixed-version: Fixed from version 5.12rc1" | ||
4668 | |||
4669 | CVE_STATUS[CVE-2023-1380] = "fixed-version: Fixed from version 6.4rc1" | ||
4670 | |||
4671 | CVE_STATUS[CVE-2023-1382] = "fixed-version: Fixed from version 6.1rc7" | ||
4672 | |||
4673 | CVE_STATUS[CVE-2023-1390] = "fixed-version: Fixed from version 5.11rc4" | ||
4674 | |||
4675 | # CVE-2023-1476 has no known resolution | ||
4676 | |||
4677 | CVE_STATUS[CVE-2023-1513] = "fixed-version: Fixed from version 6.2" | ||
4678 | |||
4679 | CVE_STATUS[CVE-2023-1582] = "fixed-version: Fixed from version 5.17rc4" | ||
4680 | |||
4681 | CVE_STATUS[CVE-2023-1583] = "fixed-version: Fixed from version 6.3rc4" | ||
4682 | |||
4683 | CVE_STATUS[CVE-2023-1611] = "fixed-version: Fixed from version 6.3rc5" | ||
4684 | |||
4685 | CVE_STATUS[CVE-2023-1637] = "fixed-version: Fixed from version 5.18rc2" | ||
4686 | |||
4687 | CVE_STATUS[CVE-2023-1652] = "fixed-version: Fixed from version 6.2rc5" | ||
4688 | |||
4689 | CVE_STATUS[CVE-2023-1670] = "fixed-version: Fixed from version 6.3rc4" | ||
4690 | |||
4691 | CVE_STATUS[CVE-2023-1829] = "fixed-version: Fixed from version 6.3rc1" | ||
4692 | |||
4693 | CVE_STATUS[CVE-2023-1838] = "fixed-version: Fixed from version 5.18" | ||
4694 | |||
4695 | CVE_STATUS[CVE-2023-1855] = "fixed-version: Fixed from version 6.3rc3" | ||
4696 | |||
4697 | CVE_STATUS[CVE-2023-1859] = "fixed-version: Fixed from version 6.3rc7" | ||
4698 | |||
4699 | CVE_STATUS[CVE-2023-1872] = "fixed-version: Fixed from version 5.18rc2" | ||
4700 | |||
4701 | CVE_STATUS[CVE-2023-1989] = "fixed-version: Fixed from version 6.3rc4" | ||
4702 | |||
4703 | CVE_STATUS[CVE-2023-1990] = "fixed-version: Fixed from version 6.3rc3" | ||
4704 | |||
4705 | CVE_STATUS[CVE-2023-1998] = "fixed-version: Fixed from version 6.3rc1" | ||
4706 | |||
4707 | CVE_STATUS[CVE-2023-2002] = "fixed-version: Fixed from version 6.4rc1" | ||
4708 | |||
4709 | CVE_STATUS[CVE-2023-2006] = "fixed-version: Fixed from version 6.1rc7" | ||
4710 | |||
4711 | CVE_STATUS[CVE-2023-2007] = "fixed-version: Fixed from version 6.0rc1" | ||
4712 | |||
4713 | CVE_STATUS[CVE-2023-2008] = "fixed-version: Fixed from version 5.19rc4" | ||
4714 | |||
4715 | CVE_STATUS[CVE-2023-2019] = "fixed-version: Fixed from version 6.0rc1" | ||
4716 | |||
4717 | CVE_STATUS[CVE-2023-20569] = "fixed-version: Fixed from version 6.5rc6" | ||
4718 | |||
4719 | CVE_STATUS[CVE-2023-20588] = "fixed-version: Fixed from version 6.5rc6" | ||
4720 | |||
4721 | CVE_STATUS[CVE-2023-20593] = "fixed-version: Fixed from version 6.5rc4" | ||
4722 | |||
4723 | CVE_STATUS[CVE-2023-20928] = "fixed-version: Fixed from version 6.0rc1" | ||
4724 | |||
4725 | # CVE-2023-20937 has no known resolution | ||
4726 | |||
4727 | CVE_STATUS[CVE-2023-20938] = "fixed-version: Fixed from version 5.18rc5" | ||
4728 | |||
4729 | # CVE-2023-20941 has no known resolution | ||
4730 | |||
4731 | CVE_STATUS[CVE-2023-21102] = "fixed-version: Fixed from version 6.2rc4" | ||
4732 | |||
4733 | CVE_STATUS[CVE-2023-21106] = "fixed-version: Fixed from version 6.2rc5" | ||
4734 | |||
4735 | CVE_STATUS[CVE-2023-2124] = "fixed-version: Fixed from version 6.4rc1" | ||
4736 | |||
4737 | CVE_STATUS[CVE-2023-21255] = "fixed-version: Fixed from version 6.4rc4" | ||
4738 | |||
4739 | CVE_STATUS[CVE-2023-21264] = "fixed-version: Fixed from version 6.4rc5" | ||
4740 | |||
4741 | # CVE-2023-21400 has no known resolution | ||
4742 | |||
4743 | CVE_STATUS[CVE-2023-2156] = "fixed-version: Fixed from version 6.3" | ||
4744 | |||
4745 | CVE_STATUS[CVE-2023-2162] = "fixed-version: Fixed from version 6.2rc6" | ||
4746 | |||
4747 | CVE_STATUS[CVE-2023-2163] = "fixed-version: Fixed from version 6.3" | ||
4748 | |||
4749 | CVE_STATUS[CVE-2023-2166] = "fixed-version: Fixed from version 6.1" | ||
4750 | |||
4751 | CVE_STATUS[CVE-2023-2176] = "fixed-version: Fixed from version 6.3rc1" | ||
4752 | |||
4753 | CVE_STATUS[CVE-2023-2177] = "fixed-version: Fixed from version 5.19" | ||
4754 | |||
4755 | CVE_STATUS[CVE-2023-2194] = "fixed-version: Fixed from version 6.3rc4" | ||
4756 | |||
4757 | CVE_STATUS[CVE-2023-2235] = "fixed-version: Fixed from version 6.3rc3" | ||
4758 | |||
4759 | CVE_STATUS[CVE-2023-2236] = "fixed-version: Fixed from version 6.1rc7" | ||
4760 | |||
4761 | CVE_STATUS[CVE-2023-2248] = "fixed-version: Fixed from version 6.3" | ||
4762 | |||
4763 | CVE_STATUS[CVE-2023-2269] = "fixed-version: Fixed from version 6.4rc1" | ||
4764 | |||
4765 | CVE_STATUS[CVE-2023-22995] = "fixed-version: Fixed from version 5.17rc1" | ||
4766 | |||
4767 | CVE_STATUS[CVE-2023-22996] = "fixed-version: Fixed from version 5.18rc1" | ||
4768 | |||
4769 | CVE_STATUS[CVE-2023-22997] = "fixed-version: Fixed from version 6.2rc1" | ||
4770 | |||
4771 | CVE_STATUS[CVE-2023-22998] = "fixed-version: Fixed from version 6.0rc1" | ||
4772 | |||
4773 | CVE_STATUS[CVE-2023-22999] = "fixed-version: Fixed from version 5.17rc1" | ||
4774 | |||
4775 | CVE_STATUS[CVE-2023-23000] = "fixed-version: Fixed from version 5.17rc1" | ||
4776 | |||
4777 | CVE_STATUS[CVE-2023-23001] = "fixed-version: Fixed from version 5.17rc1" | ||
4778 | |||
4779 | CVE_STATUS[CVE-2023-23002] = "fixed-version: Fixed from version 5.17rc1" | ||
4780 | |||
4781 | CVE_STATUS[CVE-2023-23003] = "fixed-version: Fixed from version 5.16rc6" | ||
4782 | |||
4783 | CVE_STATUS[CVE-2023-23004] = "fixed-version: Fixed from version 5.19rc1" | ||
4784 | |||
4785 | CVE_STATUS[CVE-2023-23005] = "fixed-version: Fixed from version 6.2rc1" | ||
4786 | |||
4787 | CVE_STATUS[CVE-2023-23006] = "fixed-version: Fixed from version 5.16rc8" | ||
4788 | |||
4789 | # CVE-2023-23039 has no known resolution | ||
4790 | |||
4791 | CVE_STATUS[CVE-2023-23454] = "fixed-version: Fixed from version 6.2rc3" | ||
4792 | |||
4793 | CVE_STATUS[CVE-2023-23455] = "fixed-version: Fixed from version 6.2rc3" | ||
4794 | |||
4795 | CVE_STATUS[CVE-2023-23559] = "fixed-version: Fixed from version 6.2rc5" | ||
4796 | |||
4797 | CVE_STATUS[CVE-2023-23586] = "fixed-version: Fixed from version 5.12rc1" | ||
4798 | |||
4799 | CVE_STATUS[CVE-2023-2430] = "fixed-version: Fixed from version 6.2rc5" | ||
4800 | |||
4801 | CVE_STATUS[CVE-2023-2483] = "fixed-version: Fixed from version 6.3rc4" | ||
4802 | |||
4803 | CVE_STATUS[CVE-2023-25012] = "fixed-version: Fixed from version 6.3rc1" | ||
4804 | |||
4805 | CVE_STATUS[CVE-2023-2513] = "fixed-version: Fixed from version 6.0rc1" | ||
4806 | |||
4807 | CVE_STATUS[CVE-2023-25775] = "fixed-version: Fixed from version 6.6rc1" | ||
4808 | |||
4809 | CVE_STATUS[CVE-2023-2598] = "fixed-version: Fixed from version 6.4rc1" | ||
4810 | |||
4811 | # CVE-2023-26242 has no known resolution | ||
4812 | |||
4813 | # CVE-2023-2640 has no known resolution | ||
4814 | |||
4815 | CVE_STATUS[CVE-2023-26544] = "fixed-version: Fixed from version 6.2rc1" | ||
4816 | |||
4817 | CVE_STATUS[CVE-2023-26545] = "fixed-version: Fixed from version 6.2" | ||
4818 | |||
4819 | CVE_STATUS[CVE-2023-26605] = "fixed-version: Fixed from version 6.1rc7" | ||
4820 | |||
4821 | CVE_STATUS[CVE-2023-26606] = "fixed-version: Fixed from version 6.2rc1" | ||
4822 | |||
4823 | CVE_STATUS[CVE-2023-26607] = "fixed-version: Fixed from version 6.1rc1" | ||
4824 | |||
4825 | CVE_STATUS[CVE-2023-28327] = "fixed-version: Fixed from version 6.1" | ||
4826 | |||
4827 | CVE_STATUS[CVE-2023-28328] = "fixed-version: Fixed from version 6.2rc1" | ||
4828 | |||
4829 | CVE_STATUS[CVE-2023-28410] = "fixed-version: Fixed from version 5.19rc1" | ||
4830 | |||
4831 | CVE_STATUS[CVE-2023-28464] = "fixed-version: Fixed from version 6.3rc7" | ||
4832 | |||
4833 | CVE_STATUS[CVE-2023-28466] = "fixed-version: Fixed from version 6.3rc2" | ||
4834 | |||
4835 | CVE_STATUS[CVE-2023-2860] = "fixed-version: Fixed from version 6.0rc5" | ||
4836 | |||
4837 | CVE_STATUS[CVE-2023-28772] = "fixed-version: Fixed from version 5.14rc1" | ||
4838 | |||
4839 | CVE_STATUS[CVE-2023-28866] = "fixed-version: Fixed from version 6.3rc4" | ||
4840 | |||
4841 | CVE_STATUS[CVE-2023-2898] = "fixed-version: Fixed from version 6.5rc1" | ||
4842 | |||
4843 | CVE_STATUS[CVE-2023-2985] = "fixed-version: Fixed from version 6.3rc1" | ||
4844 | |||
4845 | CVE_STATUS[CVE-2023-3006] = "fixed-version: Fixed from version 6.1rc1" | ||
4846 | |||
4847 | # Skipping CVE-2023-3022, no affected_versions | ||
4848 | |||
4849 | CVE_STATUS[CVE-2023-30456] = "fixed-version: Fixed from version 6.3rc3" | ||
4850 | |||
4851 | CVE_STATUS[CVE-2023-30772] = "fixed-version: Fixed from version 6.3rc4" | ||
4852 | |||
4853 | CVE_STATUS[CVE-2023-3090] = "fixed-version: Fixed from version 6.4rc2" | ||
4854 | |||
4855 | CVE_STATUS[CVE-2023-3106] = "fixed-version: Fixed from version 4.8rc7" | ||
4856 | |||
4857 | # Skipping CVE-2023-3108, no affected_versions | ||
4858 | |||
4859 | # CVE-2023-31081 has no known resolution | ||
4860 | |||
4861 | # CVE-2023-31082 has no known resolution | ||
4862 | |||
4863 | CVE_STATUS[CVE-2023-31083] = "fixed-version: Fixed from version 6.6rc1" | ||
4864 | |||
4865 | CVE_STATUS[CVE-2023-31084] = "fixed-version: Fixed from version 6.4rc3" | ||
4866 | |||
4867 | CVE_STATUS[CVE-2023-31085] = "fixed-version: Fixed from version 6.6rc5" | ||
4868 | |||
4869 | CVE_STATUS[CVE-2023-3111] = "fixed-version: Fixed from version 6.0rc2" | ||
4870 | |||
4871 | CVE_STATUS[CVE-2023-3117] = "fixed-version: Fixed from version 6.4rc7" | ||
4872 | |||
4873 | CVE_STATUS[CVE-2023-31248] = "fixed-version: Fixed from version 6.5rc2" | ||
4874 | |||
4875 | CVE_STATUS[CVE-2023-3141] = "fixed-version: Fixed from version 6.4rc1" | ||
4876 | |||
4877 | CVE_STATUS[CVE-2023-31436] = "fixed-version: Fixed from version 6.3" | ||
4878 | |||
4879 | CVE_STATUS[CVE-2023-3159] = "fixed-version: Fixed from version 5.18rc6" | ||
4880 | |||
4881 | CVE_STATUS[CVE-2023-3161] = "fixed-version: Fixed from version 6.2rc7" | ||
4882 | |||
4883 | CVE_STATUS[CVE-2023-3212] = "fixed-version: Fixed from version 6.4rc2" | ||
4884 | |||
4885 | CVE_STATUS[CVE-2023-3220] = "fixed-version: Fixed from version 6.3rc1" | ||
4886 | |||
4887 | CVE_STATUS[CVE-2023-32233] = "fixed-version: Fixed from version 6.4rc1" | ||
4888 | |||
4889 | CVE_STATUS[CVE-2023-32247] = "fixed-version: Fixed from version 6.4rc1" | ||
4890 | |||
4891 | CVE_STATUS[CVE-2023-32248] = "fixed-version: Fixed from version 6.4rc1" | ||
4892 | |||
4893 | CVE_STATUS[CVE-2023-32250] = "fixed-version: Fixed from version 6.4rc1" | ||
4894 | |||
4895 | CVE_STATUS[CVE-2023-32252] = "fixed-version: Fixed from version 6.4rc1" | ||
4896 | |||
4897 | CVE_STATUS[CVE-2023-32254] = "fixed-version: Fixed from version 6.4rc1" | ||
4898 | |||
4899 | CVE_STATUS[CVE-2023-32257] = "fixed-version: Fixed from version 6.4rc1" | ||
4900 | |||
4901 | CVE_STATUS[CVE-2023-32258] = "fixed-version: Fixed from version 6.4rc1" | ||
4902 | |||
4903 | CVE_STATUS[CVE-2023-32269] = "fixed-version: Fixed from version 6.2rc7" | ||
4904 | |||
4905 | # CVE-2023-32629 has no known resolution | ||
4906 | |||
4907 | CVE_STATUS[CVE-2023-3268] = "fixed-version: Fixed from version 6.4rc1" | ||
4908 | |||
4909 | CVE_STATUS[CVE-2023-3269] = "fixed-version: Fixed from version 6.5rc1" | ||
4910 | |||
4911 | CVE_STATUS[CVE-2023-3312] = "fixed-version: Fixed from version 6.4rc1" | ||
4912 | |||
4913 | CVE_STATUS[CVE-2023-3317] = "fixed-version: Fixed from version 6.3rc6" | ||
4914 | |||
4915 | CVE_STATUS[CVE-2023-33203] = "fixed-version: Fixed from version 6.3rc4" | ||
4916 | |||
4917 | CVE_STATUS[CVE-2023-33250] = "fixed-version: Fixed from version 6.5rc1" | ||
4918 | |||
4919 | CVE_STATUS[CVE-2023-33288] = "fixed-version: Fixed from version 6.3rc4" | ||
4920 | |||
4921 | CVE_STATUS[CVE-2023-3338] = "fixed-version: Fixed from version 6.1rc1" | ||
4922 | |||
4923 | CVE_STATUS[CVE-2023-3355] = "fixed-version: Fixed from version 6.3rc1" | ||
4924 | |||
4925 | CVE_STATUS[CVE-2023-3357] = "fixed-version: Fixed from version 6.2rc1" | ||
4926 | |||
4927 | CVE_STATUS[CVE-2023-3358] = "fixed-version: Fixed from version 6.2rc5" | ||
4928 | |||
4929 | CVE_STATUS[CVE-2023-3359] = "fixed-version: Fixed from version 6.2rc7" | ||
4930 | |||
4931 | CVE_STATUS[CVE-2023-3389] = "fixed-version: Fixed from version 6.0rc1" | ||
4932 | |||
4933 | CVE_STATUS[CVE-2023-3390] = "fixed-version: Fixed from version 6.4rc7" | ||
4934 | |||
4935 | CVE_STATUS[CVE-2023-33951] = "fixed-version: Fixed from version 6.4rc1" | ||
4936 | |||
4937 | CVE_STATUS[CVE-2023-33952] = "fixed-version: Fixed from version 6.4rc1" | ||
4938 | |||
4939 | # CVE-2023-3397 has no known resolution | ||
4940 | |||
4941 | CVE_STATUS[CVE-2023-34255] = "fixed-version: Fixed from version 6.4rc1" | ||
4942 | |||
4943 | CVE_STATUS[CVE-2023-34256] = "fixed-version: Fixed from version 6.4rc2" | ||
4944 | |||
4945 | CVE_STATUS[CVE-2023-34319] = "fixed-version: Fixed from version 6.5rc6" | ||
4946 | |||
4947 | CVE_STATUS[CVE-2023-34324] = "fixed-version: Fixed from version 6.6rc6" | ||
4948 | |||
4949 | CVE_STATUS[CVE-2023-3439] = "fixed-version: Fixed from version 5.18rc5" | ||
4950 | |||
4951 | CVE_STATUS[CVE-2023-35001] = "fixed-version: Fixed from version 6.5rc2" | ||
4952 | |||
4953 | CVE_STATUS[CVE-2023-3567] = "fixed-version: Fixed from version 6.2rc7" | ||
4954 | |||
4955 | # CVE-2023-35693 has no known resolution | ||
4956 | |||
4957 | CVE_STATUS[CVE-2023-35788] = "fixed-version: Fixed from version 6.4rc5" | ||
4958 | |||
4959 | CVE_STATUS[CVE-2023-35823] = "fixed-version: Fixed from version 6.4rc1" | ||
4960 | |||
4961 | CVE_STATUS[CVE-2023-35824] = "fixed-version: Fixed from version 6.4rc1" | ||
4962 | |||
4963 | CVE_STATUS[CVE-2023-35826] = "fixed-version: Fixed from version 6.4rc1" | ||
4964 | |||
4965 | CVE_STATUS[CVE-2023-35827] = "fixed-version: Fixed from version 6.6rc6" | ||
4966 | |||
4967 | CVE_STATUS[CVE-2023-35828] = "fixed-version: Fixed from version 6.4rc1" | ||
4968 | |||
4969 | CVE_STATUS[CVE-2023-35829] = "fixed-version: Fixed from version 6.4rc1" | ||
4970 | |||
4971 | CVE_STATUS[CVE-2023-3609] = "fixed-version: Fixed from version 6.4rc7" | ||
4972 | |||
4973 | CVE_STATUS[CVE-2023-3610] = "fixed-version: Fixed from version 6.4" | ||
4974 | |||
4975 | CVE_STATUS[CVE-2023-3611] = "fixed-version: Fixed from version 6.5rc2" | ||
4976 | |||
4977 | # CVE-2023-3640 has no known resolution | ||
4978 | |||
4979 | CVE_STATUS[CVE-2023-37453] = "fixed-version: Fixed from version 6.6rc1" | ||
4980 | |||
4981 | # CVE-2023-37454 has no known resolution | ||
4982 | |||
4983 | CVE_STATUS[CVE-2023-3772] = "fixed-version: Fixed from version 6.5rc7" | ||
4984 | |||
4985 | CVE_STATUS[CVE-2023-3773] = "fixed-version: Fixed from version 6.5rc7" | ||
4986 | |||
4987 | CVE_STATUS[CVE-2023-3776] = "fixed-version: Fixed from version 6.5rc2" | ||
4988 | |||
4989 | CVE_STATUS[CVE-2023-3777] = "fixed-version: Fixed from version 6.5rc3" | ||
4990 | |||
4991 | CVE_STATUS[CVE-2023-3812] = "fixed-version: Fixed from version 6.1rc4" | ||
4992 | |||
4993 | CVE_STATUS[CVE-2023-38409] = "fixed-version: Fixed from version 6.3rc7" | ||
4994 | |||
4995 | CVE_STATUS[CVE-2023-38426] = "fixed-version: Fixed from version 6.4rc3" | ||
4996 | |||
4997 | CVE_STATUS[CVE-2023-38427] = "fixed-version: Fixed from version 6.4rc6" | ||
4998 | |||
4999 | CVE_STATUS[CVE-2023-38428] = "fixed-version: Fixed from version 6.4rc3" | ||
5000 | |||
5001 | CVE_STATUS[CVE-2023-38429] = "fixed-version: Fixed from version 6.4rc3" | ||
5002 | |||
5003 | CVE_STATUS[CVE-2023-38430] = "fixed-version: Fixed from version 6.4rc6" | ||
5004 | |||
5005 | CVE_STATUS[CVE-2023-38431] = "fixed-version: Fixed from version 6.4rc6" | ||
5006 | |||
5007 | CVE_STATUS[CVE-2023-38432] = "fixed-version: Fixed from version 6.4" | ||
5008 | |||
5009 | CVE_STATUS[CVE-2023-3863] = "fixed-version: Fixed from version 6.5rc1" | ||
5010 | |||
5011 | CVE_STATUS[CVE-2023-3865] = "fixed-version: Fixed from version 6.4" | ||
5012 | |||
5013 | CVE_STATUS[CVE-2023-3866] = "fixed-version: Fixed from version 6.4" | ||
5014 | |||
5015 | CVE_STATUS[CVE-2023-3867] = "fixed-version: Fixed from version 6.5rc1" | ||
5016 | |||
5017 | CVE_STATUS[CVE-2023-39189] = "fixed-version: Fixed from version 6.6rc1" | ||
5018 | |||
5019 | CVE_STATUS[CVE-2023-39191] = "fixed-version: Fixed from version 6.3rc1" | ||
5020 | |||
5021 | CVE_STATUS[CVE-2023-39192] = "fixed-version: Fixed from version 6.6rc1" | ||
5022 | |||
5023 | CVE_STATUS[CVE-2023-39193] = "fixed-version: Fixed from version 6.6rc1" | ||
5024 | |||
5025 | CVE_STATUS[CVE-2023-39194] = "fixed-version: Fixed from version 6.5rc7" | ||
5026 | |||
5027 | CVE_STATUS[CVE-2023-39197] = "fixed-version: Fixed from version 6.5rc1" | ||
5028 | |||
5029 | CVE_STATUS[CVE-2023-39198] = "fixed-version: Fixed from version 6.5rc7" | ||
5030 | |||
5031 | CVE_STATUS[CVE-2023-4004] = "fixed-version: Fixed from version 6.5rc3" | ||
5032 | |||
5033 | # CVE-2023-4010 has no known resolution | ||
5034 | |||
5035 | CVE_STATUS[CVE-2023-4015] = "fixed-version: Fixed from version 6.5rc4" | ||
5036 | |||
5037 | CVE_STATUS[CVE-2023-40283] = "fixed-version: Fixed from version 6.5rc1" | ||
5038 | |||
5039 | CVE_STATUS[CVE-2023-40791] = "fixed-version: Fixed from version 6.5rc6" | ||
5040 | |||
5041 | CVE_STATUS[CVE-2023-4128] = "fixed-version: Fixed from version 6.5rc5" | ||
5042 | |||
5043 | CVE_STATUS[CVE-2023-4132] = "fixed-version: Fixed from version 6.5rc1" | ||
5044 | |||
5045 | CVE_STATUS[CVE-2023-4133] = "fixed-version: Fixed from version 6.3" | ||
5046 | |||
5047 | CVE_STATUS[CVE-2023-4134] = "fixed-version: Fixed from version 6.5rc1" | ||
5048 | |||
5049 | CVE_STATUS[CVE-2023-4147] = "fixed-version: Fixed from version 6.5rc4" | ||
5050 | |||
5051 | CVE_STATUS[CVE-2023-4155] = "fixed-version: Fixed from version 6.5rc6" | ||
5052 | |||
5053 | CVE_STATUS[CVE-2023-4194] = "fixed-version: Fixed from version 6.5rc5" | ||
5054 | |||
5055 | CVE_STATUS[CVE-2023-4206] = "fixed-version: Fixed from version 6.5rc5" | ||
5056 | |||
5057 | CVE_STATUS[CVE-2023-4207] = "fixed-version: Fixed from version 6.5rc5" | ||
5058 | |||
5059 | CVE_STATUS[CVE-2023-4208] = "fixed-version: Fixed from version 6.5rc5" | ||
5060 | |||
5061 | CVE_STATUS[CVE-2023-4244] = "fixed-version: Fixed from version 6.5rc7" | ||
5062 | |||
5063 | CVE_STATUS[CVE-2023-4273] = "fixed-version: Fixed from version 6.5rc5" | ||
5064 | |||
5065 | CVE_STATUS[CVE-2023-42752] = "fixed-version: Fixed from version 6.6rc1" | ||
5066 | |||
5067 | CVE_STATUS[CVE-2023-42753] = "fixed-version: Fixed from version 6.6rc1" | ||
5068 | |||
5069 | CVE_STATUS[CVE-2023-42754] = "fixed-version: Fixed from version 6.6rc3" | ||
5070 | |||
5071 | CVE_STATUS[CVE-2023-42755] = "fixed-version: Fixed from version 6.3rc1" | ||
5072 | |||
5073 | CVE_STATUS[CVE-2023-42756] = "fixed-version: Fixed from version 6.6rc3" | ||
5074 | |||
5075 | CVE_STATUS[CVE-2023-4385] = "fixed-version: Fixed from version 5.19rc1" | ||
5076 | |||
5077 | CVE_STATUS[CVE-2023-4387] = "fixed-version: Fixed from version 5.18" | ||
5078 | |||
5079 | CVE_STATUS[CVE-2023-4389] = "fixed-version: Fixed from version 5.18rc3" | ||
5080 | |||
5081 | CVE_STATUS[CVE-2023-4394] = "fixed-version: Fixed from version 6.0rc3" | ||
5082 | |||
5083 | CVE_STATUS[CVE-2023-44466] = "fixed-version: Fixed from version 6.5rc2" | ||
5084 | |||
5085 | CVE_STATUS[CVE-2023-4459] = "fixed-version: Fixed from version 5.18" | ||
5086 | |||
5087 | CVE_STATUS[CVE-2023-4563] = "fixed-version: Fixed from version 6.5rc6" | ||
5088 | |||
5089 | CVE_STATUS[CVE-2023-4569] = "fixed-version: Fixed from version 6.5rc7" | ||
5090 | |||
5091 | CVE_STATUS[CVE-2023-45862] = "fixed-version: Fixed from version 6.3rc1" | ||
5092 | |||
5093 | CVE_STATUS[CVE-2023-45863] = "fixed-version: Fixed from version 6.3rc1" | ||
5094 | |||
5095 | CVE_STATUS[CVE-2023-45871] = "fixed-version: Fixed from version 6.6rc1" | ||
5096 | |||
5097 | CVE_STATUS[CVE-2023-45898] = "fixed-version: Fixed from version 6.6rc1" | ||
5098 | |||
5099 | CVE_STATUS[CVE-2023-4610] = "fixed-version: Fixed from version 6.4" | ||
5100 | |||
5101 | CVE_STATUS[CVE-2023-4611] = "fixed-version: Fixed from version 6.5rc4" | ||
5102 | |||
5103 | CVE_STATUS[CVE-2023-4622] = "fixed-version: Fixed from version 6.5rc1" | ||
5104 | |||
5105 | CVE_STATUS[CVE-2023-4623] = "fixed-version: Fixed from version 6.6rc1" | ||
5106 | |||
5107 | CVE_STATUS[CVE-2023-46343] = "fixed-version: Fixed from version 6.6rc7" | ||
5108 | |||
5109 | CVE_STATUS[CVE-2023-46813] = "fixed-version: Fixed from version 6.6rc7" | ||
5110 | |||
5111 | CVE_STATUS[CVE-2023-46838] = "cpe-stable-backport: Backported in 6.6.14" | ||
5112 | |||
5113 | CVE_STATUS[CVE-2023-46862] = "fixed-version: Fixed from version 6.6" | ||
5114 | |||
5115 | # CVE-2023-47233 has no known resolution | ||
5116 | |||
5117 | CVE_STATUS[CVE-2023-4732] = "fixed-version: Fixed from version 5.14rc1" | ||
5118 | |||
5119 | CVE_STATUS[CVE-2023-4881] = "fixed-version: Fixed from version 6.6rc1" | ||
5120 | |||
5121 | CVE_STATUS[CVE-2023-4921] = "fixed-version: Fixed from version 6.6rc1" | ||
5122 | |||
5123 | CVE_STATUS[CVE-2023-50431] = "cpe-stable-backport: Backported in 6.6.14" | ||
5124 | |||
5125 | CVE_STATUS[CVE-2023-5090] = "fixed-version: Fixed from version 6.6rc7" | ||
5126 | |||
5127 | CVE_STATUS[CVE-2023-51042] = "fixed-version: Fixed from version 6.5rc1" | ||
5128 | |||
5129 | CVE_STATUS[CVE-2023-51043] = "fixed-version: Fixed from version 6.5rc3" | ||
5130 | |||
5131 | CVE_STATUS[CVE-2023-5158] = "fixed-version: Fixed from version 6.6rc5" | ||
5132 | |||
5133 | CVE_STATUS[CVE-2023-51779] = "cpe-stable-backport: Backported in 6.6.9" | ||
5134 | |||
5135 | CVE_STATUS[CVE-2023-5178] = "fixed-version: Fixed from version 6.6rc7" | ||
5136 | |||
5137 | CVE_STATUS[CVE-2023-51780] = "cpe-stable-backport: Backported in 6.6.8" | ||
5138 | |||
5139 | CVE_STATUS[CVE-2023-51781] = "cpe-stable-backport: Backported in 6.6.8" | ||
5140 | |||
5141 | CVE_STATUS[CVE-2023-51782] = "cpe-stable-backport: Backported in 6.6.8" | ||
5142 | |||
5143 | CVE_STATUS[CVE-2023-5197] = "fixed-version: Fixed from version 6.6rc3" | ||
5144 | |||
5145 | CVE_STATUS[CVE-2023-52340] = "fixed-version: Fixed from version 6.3rc1" | ||
5146 | |||
5147 | CVE_STATUS[CVE-2023-52429] = "cpe-stable-backport: Backported in 6.6.18" | ||
5148 | |||
5149 | CVE_STATUS[CVE-2023-52433] = "fixed-version: Fixed from version 6.6rc1" | ||
5150 | |||
5151 | CVE_STATUS[CVE-2023-52434] = "cpe-stable-backport: Backported in 6.6.8" | ||
5152 | |||
5153 | CVE_STATUS[CVE-2023-52435] = "cpe-stable-backport: Backported in 6.6.11" | ||
5154 | |||
5155 | CVE_STATUS[CVE-2023-52436] = "cpe-stable-backport: Backported in 6.6.13" | ||
5156 | |||
5157 | CVE_STATUS[CVE-2023-52438] = "cpe-stable-backport: Backported in 6.6.13" | ||
5158 | |||
5159 | CVE_STATUS[CVE-2023-52439] = "cpe-stable-backport: Backported in 6.6.13" | ||
5160 | |||
5161 | CVE_STATUS[CVE-2023-52440] = "fixed-version: Fixed from version 6.6rc1" | ||
5162 | |||
5163 | CVE_STATUS[CVE-2023-52441] = "fixed-version: Fixed from version 6.5rc4" | ||
5164 | |||
5165 | CVE_STATUS[CVE-2023-52442] = "fixed-version: Fixed from version 6.5rc4" | ||
5166 | |||
5167 | CVE_STATUS[CVE-2023-52443] = "cpe-stable-backport: Backported in 6.6.14" | ||
5168 | |||
5169 | CVE_STATUS[CVE-2023-52444] = "cpe-stable-backport: Backported in 6.6.14" | ||
5170 | |||
5171 | CVE_STATUS[CVE-2023-52445] = "cpe-stable-backport: Backported in 6.6.14" | ||
5172 | |||
5173 | CVE_STATUS[CVE-2023-52446] = "cpe-stable-backport: Backported in 6.6.14" | ||
5174 | |||
5175 | CVE_STATUS[CVE-2023-52447] = "cpe-stable-backport: Backported in 6.6.14" | ||
5176 | |||
5177 | CVE_STATUS[CVE-2023-52448] = "cpe-stable-backport: Backported in 6.6.14" | ||
5178 | |||
5179 | CVE_STATUS[CVE-2023-52449] = "cpe-stable-backport: Backported in 6.6.14" | ||
5180 | |||
5181 | CVE_STATUS[CVE-2023-52450] = "cpe-stable-backport: Backported in 6.6.14" | ||
5182 | |||
5183 | CVE_STATUS[CVE-2023-52451] = "cpe-stable-backport: Backported in 6.6.14" | ||
5184 | |||
5185 | CVE_STATUS[CVE-2023-52452] = "cpe-stable-backport: Backported in 6.6.14" | ||
5186 | |||
5187 | CVE_STATUS[CVE-2023-52453] = "cpe-stable-backport: Backported in 6.6.14" | ||
5188 | |||
5189 | CVE_STATUS[CVE-2023-52454] = "cpe-stable-backport: Backported in 6.6.14" | ||
5190 | |||
5191 | CVE_STATUS[CVE-2023-52455] = "cpe-stable-backport: Backported in 6.6.14" | ||
5192 | |||
5193 | CVE_STATUS[CVE-2023-52456] = "cpe-stable-backport: Backported in 6.6.14" | ||
5194 | |||
5195 | CVE_STATUS[CVE-2023-52457] = "cpe-stable-backport: Backported in 6.6.14" | ||
5196 | |||
5197 | CVE_STATUS[CVE-2023-52458] = "cpe-stable-backport: Backported in 6.6.14" | ||
5198 | |||
5199 | CVE_STATUS[CVE-2023-52459] = "cpe-stable-backport: Backported in 6.6.14" | ||
5200 | |||
5201 | CVE_STATUS[CVE-2023-52460] = "fixed-version: only affects 6.7rc1 onwards" | ||
5202 | |||
5203 | CVE_STATUS[CVE-2023-52461] = "fixed-version: only affects 6.7rc1 onwards" | ||
5204 | |||
5205 | CVE_STATUS[CVE-2023-52462] = "cpe-stable-backport: Backported in 6.6.14" | ||
5206 | |||
5207 | CVE_STATUS[CVE-2023-52463] = "cpe-stable-backport: Backported in 6.6.14" | ||
5208 | |||
5209 | CVE_STATUS[CVE-2023-52464] = "cpe-stable-backport: Backported in 6.6.14" | ||
5210 | |||
5211 | CVE_STATUS[CVE-2023-5345] = "fixed-version: Fixed from version 6.6rc4" | ||
5212 | |||
5213 | CVE_STATUS[CVE-2023-5633] = "fixed-version: Fixed from version 6.6rc6" | ||
5214 | |||
5215 | CVE_STATUS[CVE-2023-5717] = "fixed-version: Fixed from version 6.6rc7" | ||
5216 | |||
5217 | CVE_STATUS[CVE-2023-5972] = "fixed-version: Fixed from version 6.6rc7" | ||
5218 | |||
5219 | CVE_STATUS[CVE-2023-6039] = "fixed-version: Fixed from version 6.5rc5" | ||
5220 | |||
5221 | CVE_STATUS[CVE-2023-6040] = "fixed-version: Fixed from version 5.18rc1" | ||
5222 | |||
5223 | CVE_STATUS[CVE-2023-6111] = "cpe-stable-backport: Backported in 6.6.3" | ||
5224 | |||
5225 | CVE_STATUS[CVE-2023-6121] = "cpe-stable-backport: Backported in 6.6.4" | ||
5226 | |||
5227 | CVE_STATUS[CVE-2023-6176] = "fixed-version: Fixed from version 6.6rc2" | ||
5228 | |||
5229 | CVE_STATUS[CVE-2023-6200] = "cpe-stable-backport: Backported in 6.6.9" | ||
5230 | |||
5231 | # CVE-2023-6238 has no known resolution | ||
5232 | |||
5233 | # CVE-2023-6240 has no known resolution | ||
5234 | |||
5235 | # CVE-2023-6270 has no known resolution | ||
5236 | |||
5237 | # CVE-2023-6356 has no known resolution | ||
5238 | |||
5239 | CVE_STATUS[CVE-2023-6531] = "cpe-stable-backport: Backported in 6.6.7" | ||
5240 | |||
5241 | # CVE-2023-6535 has no known resolution | ||
5242 | |||
5243 | # CVE-2023-6536 has no known resolution | ||
5244 | |||
5245 | CVE_STATUS[CVE-2023-6546] = "fixed-version: Fixed from version 6.5rc7" | ||
5246 | |||
5247 | CVE_STATUS[CVE-2023-6560] = "cpe-stable-backport: Backported in 6.6.5" | ||
5248 | |||
5249 | CVE_STATUS[CVE-2023-6606] = "cpe-stable-backport: Backported in 6.6.9" | ||
5250 | |||
5251 | CVE_STATUS[CVE-2023-6610] = "cpe-stable-backport: Backported in 6.6.13" | ||
5252 | |||
5253 | CVE_STATUS[CVE-2023-6622] = "cpe-stable-backport: Backported in 6.6.7" | ||
5254 | |||
5255 | CVE_STATUS[CVE-2023-6679] = "fixed-version: only affects 6.7rc1 onwards" | ||
5256 | |||
5257 | CVE_STATUS[CVE-2023-6817] = "cpe-stable-backport: Backported in 6.6.7" | ||
5258 | |||
5259 | CVE_STATUS[CVE-2023-6915] = "cpe-stable-backport: Backported in 6.6.13" | ||
5260 | |||
5261 | CVE_STATUS[CVE-2023-6931] = "cpe-stable-backport: Backported in 6.6.7" | ||
5262 | |||
5263 | CVE_STATUS[CVE-2023-6932] = "cpe-stable-backport: Backported in 6.6.5" | ||
5264 | |||
5265 | # CVE-2023-7042 has no known resolution | ||
5266 | |||
5267 | CVE_STATUS[CVE-2023-7192] = "fixed-version: Fixed from version 6.3rc1" | ||
5268 | |||
5269 | CVE_STATUS[CVE-2024-0193] = "cpe-stable-backport: Backported in 6.6.10" | ||
5270 | |||
5271 | CVE_STATUS[CVE-2024-0340] = "fixed-version: Fixed from version 6.4rc6" | ||
5272 | |||
5273 | CVE_STATUS[CVE-2024-0443] = "fixed-version: Fixed from version 6.4rc7" | ||
5274 | |||
5275 | CVE_STATUS[CVE-2024-0562] = "fixed-version: Fixed from version 6.0rc3" | ||
5276 | |||
5277 | # CVE-2024-0564 has no known resolution | ||
5278 | |||
5279 | CVE_STATUS[CVE-2024-0565] = "cpe-stable-backport: Backported in 6.6.8" | ||
5280 | |||
5281 | CVE_STATUS[CVE-2024-0582] = "cpe-stable-backport: Backported in 6.6.5" | ||
5282 | |||
5283 | CVE_STATUS[CVE-2024-0584] = "cpe-stable-backport: Backported in 6.6.5" | ||
5284 | |||
5285 | CVE_STATUS[CVE-2024-0607] = "cpe-stable-backport: Backported in 6.6.3" | ||
5286 | |||
5287 | CVE_STATUS[CVE-2024-0639] = "fixed-version: Fixed from version 6.5rc1" | ||
5288 | |||
5289 | CVE_STATUS[CVE-2024-0641] = "fixed-version: Fixed from version 6.6rc5" | ||
5290 | |||
5291 | CVE_STATUS[CVE-2024-0646] = "cpe-stable-backport: Backported in 6.6.7" | ||
5292 | |||
5293 | CVE_STATUS[CVE-2024-0775] = "fixed-version: Fixed from version 6.4rc2" | ||
5294 | |||
5295 | # CVE-2024-0841 has no known resolution | ||
5296 | |||
5297 | CVE_STATUS[CVE-2024-1085] = "cpe-stable-backport: Backported in 6.6.14" | ||
5298 | |||
5299 | CVE_STATUS[CVE-2024-1086] = "cpe-stable-backport: Backported in 6.6.15" | ||
5300 | |||
5301 | CVE_STATUS[CVE-2024-1151] = "cpe-stable-backport: Backported in 6.6.18" | ||
5302 | |||
5303 | CVE_STATUS[CVE-2024-1312] = "fixed-version: Fixed from version 6.5rc4" | ||
5304 | |||
5305 | # CVE-2024-21803 has no known resolution | ||
5306 | |||
5307 | # CVE-2024-22099 has no known resolution | ||
5308 | |||
5309 | # CVE-2024-22386 has no known resolution | ||
5310 | |||
5311 | CVE_STATUS[CVE-2024-22705] = "cpe-stable-backport: Backported in 6.6.10" | ||
5312 | |||
5313 | # CVE-2024-23196 has no known resolution | ||
5314 | |||
5315 | # CVE-2024-23307 has no known resolution | ||
5316 | |||
5317 | # CVE-2024-23848 has no known resolution | ||
5318 | |||
5319 | CVE_STATUS[CVE-2024-23849] = "cpe-stable-backport: Backported in 6.6.15" | ||
5320 | |||
5321 | CVE_STATUS[CVE-2024-23850] = "cpe-stable-backport: Backported in 6.6.18" | ||
5322 | |||
5323 | CVE_STATUS[CVE-2024-23851] = "cpe-stable-backport: Backported in 6.6.18" | ||
5324 | |||
5325 | CVE_STATUS[CVE-2024-24855] = "fixed-version: Fixed from version 6.5rc2" | ||
5326 | |||
5327 | # CVE-2024-24857 has no known resolution | ||
5328 | |||
5329 | # CVE-2024-24858 has no known resolution | ||
5330 | |||
5331 | # CVE-2024-24859 has no known resolution | ||
5332 | |||
5333 | CVE_STATUS[CVE-2024-24860] = "cpe-stable-backport: Backported in 6.6.14" | ||
5334 | |||
5335 | # CVE-2024-24861 has no known resolution | ||
5336 | |||
5337 | # CVE-2024-24864 has no known resolution | ||
5338 | |||
5339 | # CVE-2024-25739 has no known resolution | ||
5340 | |||
5341 | # CVE-2024-25740 has no known resolution | ||
5342 | |||
5343 | # CVE-2024-25741 has no known resolution | ||
5344 | |||
5345 | CVE_STATUS[CVE-2024-25744] = "cpe-stable-backport: Backported in 6.6.7" | ||
5346 | |||
5347 | CVE_STATUS[CVE-2024-26581] = "cpe-stable-backport: Backported in 6.6.17" | ||
5348 | |||
5349 | CVE_STATUS[CVE-2024-26582] = "cpe-stable-backport: Backported in 6.6.18" | ||
5350 | |||
5351 | CVE_STATUS[CVE-2024-26583] = "cpe-stable-backport: Backported in 6.6.18" | ||
5352 | |||
5353 | CVE_STATUS[CVE-2024-26584] = "cpe-stable-backport: Backported in 6.6.18" | ||
5354 | |||
5355 | CVE_STATUS[CVE-2024-26585] = "cpe-stable-backport: Backported in 6.6.18" | ||
5356 | |||
5357 | CVE_STATUS[CVE-2024-26586] = "cpe-stable-backport: Backported in 6.6.14" | ||
5358 | |||
5359 | CVE_STATUS[CVE-2024-26587] = "cpe-stable-backport: Backported in 6.6.14" | ||
5360 | |||
5361 | CVE_STATUS[CVE-2024-26588] = "cpe-stable-backport: Backported in 6.6.14" | ||
5362 | |||
5363 | CVE_STATUS[CVE-2024-26589] = "cpe-stable-backport: Backported in 6.6.14" | ||
5364 | |||
5365 | CVE_STATUS[CVE-2024-26590] = "cpe-stable-backport: Backported in 6.6.14" | ||
5366 | |||
5367 | CVE_STATUS[CVE-2024-26591] = "cpe-stable-backport: Backported in 6.6.14" | ||
5368 | |||
5369 | CVE_STATUS[CVE-2024-26592] = "cpe-stable-backport: Backported in 6.6.14" | ||
5370 | |||
5371 | CVE_STATUS[CVE-2024-26593] = "cpe-stable-backport: Backported in 6.6.18" | ||
5372 | |||
5373 | CVE_STATUS[CVE-2024-26594] = "cpe-stable-backport: Backported in 6.6.14" | ||
5374 | |||
5375 | CVE_STATUS[CVE-2024-26595] = "cpe-stable-backport: Backported in 6.6.14" | ||
5376 | |||
5377 | # CVE-2024-26596 needs backporting (fixed from 6.8rc1) | ||
5378 | |||
5379 | CVE_STATUS[CVE-2024-26597] = "cpe-stable-backport: Backported in 6.6.14" | ||
5380 | |||
5381 | CVE_STATUS[CVE-2024-26598] = "cpe-stable-backport: Backported in 6.6.14" | ||
5382 | |||
5383 | CVE_STATUS[CVE-2024-26599] = "cpe-stable-backport: Backported in 6.6.14" | ||
5384 | |||
diff --git a/meta/recipes-kernel/linux/generate-cve-exclusions.py b/meta/recipes-kernel/linux/generate-cve-exclusions.py new file mode 100755 index 0000000000..aa9195aab4 --- /dev/null +++ b/meta/recipes-kernel/linux/generate-cve-exclusions.py | |||
@@ -0,0 +1,98 @@ | |||
1 | #! /usr/bin/env python3 | ||
2 | |||
3 | # Generate granular CVE status metadata for a specific version of the kernel | ||
4 | # using data from linuxkernelcves.com. | ||
5 | # | ||
6 | # SPDX-License-Identifier: GPL-2.0-only | ||
7 | |||
8 | import argparse | ||
9 | import datetime | ||
10 | import json | ||
11 | import pathlib | ||
12 | import re | ||
13 | |||
14 | from packaging.version import Version | ||
15 | |||
16 | |||
17 | def parse_version(s): | ||
18 | """ | ||
19 | Parse the version string and either return a packaging.version.Version, or | ||
20 | None if the string was unset or "unk". | ||
21 | """ | ||
22 | if s and s != "unk": | ||
23 | # packaging.version.Version doesn't approve of versions like v5.12-rc1-dontuse | ||
24 | s = s.replace("-dontuse", "") | ||
25 | return Version(s) | ||
26 | return None | ||
27 | |||
28 | |||
29 | def main(argp=None): | ||
30 | parser = argparse.ArgumentParser() | ||
31 | parser.add_argument("datadir", type=pathlib.Path, help="Path to a clone of https://github.com/nluedtke/linux_kernel_cves") | ||
32 | parser.add_argument("version", type=Version, help="Kernel version number to generate data for, such as 6.1.38") | ||
33 | |||
34 | args = parser.parse_args(argp) | ||
35 | datadir = args.datadir | ||
36 | version = args.version | ||
37 | base_version = f"{version.major}.{version.minor}" | ||
38 | |||
39 | with open(datadir / "data" / "kernel_cves.json", "r") as f: | ||
40 | cve_data = json.load(f) | ||
41 | |||
42 | with open(datadir / "data" / "stream_fixes.json", "r") as f: | ||
43 | stream_data = json.load(f) | ||
44 | |||
45 | print(f""" | ||
46 | # Auto-generated CVE metadata, DO NOT EDIT BY HAND. | ||
47 | # Generated at {datetime.datetime.now(datetime.timezone.utc)} for version {version} | ||
48 | |||
49 | python check_kernel_cve_status_version() {{ | ||
50 | this_version = "{version}" | ||
51 | kernel_version = d.getVar("LINUX_VERSION") | ||
52 | if kernel_version != this_version: | ||
53 | bb.warn("Kernel CVE status needs updating: generated for %s but kernel is %s" % (this_version, kernel_version)) | ||
54 | }} | ||
55 | do_cve_check[prefuncs] += "check_kernel_cve_status_version" | ||
56 | """) | ||
57 | |||
58 | for cve, data in cve_data.items(): | ||
59 | if "affected_versions" not in data: | ||
60 | print(f"# Skipping {cve}, no affected_versions") | ||
61 | print() | ||
62 | continue | ||
63 | |||
64 | affected = data["affected_versions"] | ||
65 | first_affected, fixed = re.search(r"(.+) to (.+)", affected).groups() | ||
66 | first_affected = parse_version(first_affected) | ||
67 | fixed = parse_version(fixed) | ||
68 | |||
69 | if not fixed: | ||
70 | print(f"# {cve} has no known resolution") | ||
71 | elif first_affected and version < first_affected: | ||
72 | print(f'CVE_STATUS[{cve}] = "fixed-version: only affects {first_affected} onwards"') | ||
73 | elif fixed <= version: | ||
74 | print( | ||
75 | f'CVE_STATUS[{cve}] = "fixed-version: Fixed from version {fixed}"' | ||
76 | ) | ||
77 | else: | ||
78 | if cve in stream_data: | ||
79 | backport_data = stream_data[cve] | ||
80 | if base_version in backport_data: | ||
81 | backport_ver = Version(backport_data[base_version]["fixed_version"]) | ||
82 | if backport_ver <= version: | ||
83 | print( | ||
84 | f'CVE_STATUS[{cve}] = "cpe-stable-backport: Backported in {backport_ver}"' | ||
85 | ) | ||
86 | else: | ||
87 | # TODO print a note that the kernel needs bumping | ||
88 | print(f"# {cve} needs backporting (fixed from {backport_ver})") | ||
89 | else: | ||
90 | print(f"# {cve} needs backporting (fixed from {fixed})") | ||
91 | else: | ||
92 | print(f"# {cve} needs backporting (fixed from {fixed})") | ||
93 | |||
94 | print() | ||
95 | |||
96 | |||
97 | if __name__ == "__main__": | ||
98 | main() | ||
diff --git a/meta/recipes-kernel/linux/kernel-devsrc.bb b/meta/recipes-kernel/linux/kernel-devsrc.bb index dadeade3aa..fafab475f3 100644 --- a/meta/recipes-kernel/linux/kernel-devsrc.bb +++ b/meta/recipes-kernel/linux/kernel-devsrc.bb | |||
@@ -5,7 +5,7 @@ development or external module builds" | |||
5 | 5 | ||
6 | SECTION = "kernel" | 6 | SECTION = "kernel" |
7 | 7 | ||
8 | LICENSE = "GPLv2" | 8 | LICENSE = "GPL-2.0-only" |
9 | 9 | ||
10 | inherit linux-kernel-base | 10 | inherit linux-kernel-base |
11 | 11 | ||
@@ -47,21 +47,21 @@ do_install() { | |||
47 | # create a /usr/src/kernel symlink to /lib/modules/<version>/source | 47 | # create a /usr/src/kernel symlink to /lib/modules/<version>/source |
48 | mkdir -p ${D}/usr/src | 48 | mkdir -p ${D}/usr/src |
49 | ( | 49 | ( |
50 | cd ${D}/usr/src | 50 | cd ${D}/usr/src |
51 | lnr ${D}${KERNEL_BUILD_ROOT}${KERNEL_VERSION}/source kernel | 51 | ln -rs ${D}${KERNEL_BUILD_ROOT}${KERNEL_VERSION}/source kernel |
52 | ) | 52 | ) |
53 | 53 | ||
54 | # for on target purposes, we unify build and source | 54 | # for on target purposes, we unify build and source |
55 | ( | 55 | ( |
56 | cd $kerneldir | 56 | cd $kerneldir |
57 | ln -s build source | 57 | ln -s build source |
58 | ) | 58 | ) |
59 | 59 | ||
60 | # first copy everything | 60 | # first copy everything |
61 | ( | 61 | ( |
62 | cd ${S} | 62 | cd ${S} |
63 | cp --parents $(find -type f -name "Makefile*" -o -name "Kconfig*") $kerneldir/build | 63 | cp --parents $(find -type f -name "Makefile*" -o -name "Kconfig*") $kerneldir/build |
64 | cp --parents $(find -type f -name "Build" -o -name "Build.include") $kerneldir/build | 64 | cp --parents $(find -type f -name "Build" -o -name "Build.include") $kerneldir/build |
65 | ) | 65 | ) |
66 | 66 | ||
67 | # then drop all but the needed Makefiles/Kconfig files | 67 | # then drop all but the needed Makefiles/Kconfig files |
@@ -70,92 +70,113 @@ do_install() { | |||
70 | 70 | ||
71 | # now copy in parts from the build that we'll need later | 71 | # now copy in parts from the build that we'll need later |
72 | ( | 72 | ( |
73 | cd ${B} | 73 | cd ${B} |
74 | 74 | ||
75 | cp Module.symvers $kerneldir/build | 75 | if [ -s Module.symvers ]; then |
76 | cp System.map* $kerneldir/build | 76 | cp Module.symvers $kerneldir/build |
77 | if [ -s Module.markers ]; then | 77 | fi |
78 | cp Module.markers $kerneldir/build | 78 | cp System.map* $kerneldir/build |
79 | fi | 79 | if [ -s Module.markers ]; then |
80 | 80 | cp Module.markers $kerneldir/build | |
81 | cp -a .config $kerneldir/build | 81 | fi |
82 | 82 | ||
83 | # This scripts copy blow up QA, so for now, we require a more | 83 | cp -a .config $kerneldir/build |
84 | # complex 'make scripts' to restore these, versus copying them | 84 | |
85 | # here. Left as a reference to indicate that we know the scripts must | 85 | # This scripts copy blow up QA, so for now, we require a more |
86 | # be dealt with. | 86 | # complex 'make scripts' to restore these, versus copying them |
87 | # cp -a scripts $kerneldir/build | 87 | # here. Left as a reference to indicate that we know the scripts must |
88 | 88 | # be dealt with. | |
89 | # although module.lds can be regenerated on target via 'make modules_prepare' | 89 | # cp -a scripts $kerneldir/build |
90 | # there are several places where 'makes scripts prepare' is done, and that won't | 90 | |
91 | # regenerate the file. So we copy it onto the target as a migration to using | 91 | # although module.lds can be regenerated on target via 'make modules_prepare' |
92 | # modules_prepare | 92 | # there are several places where 'makes scripts prepare' is done, and that won't |
93 | cp -a --parents scripts/module.lds $kerneldir/build/ 2>/dev/null || : | 93 | # regenerate the file. So we copy it onto the target as a migration to using |
94 | # modules_prepare | ||
95 | cp -a --parents scripts/module.lds $kerneldir/build/ 2>/dev/null || : | ||
94 | 96 | ||
95 | if [ -d arch/${ARCH}/scripts ]; then | 97 | if [ -d arch/${ARCH}/scripts ]; then |
96 | cp -a arch/${ARCH}/scripts $kerneldir/build/arch/${ARCH} | 98 | cp -a arch/${ARCH}/scripts $kerneldir/build/arch/${ARCH} |
97 | fi | 99 | fi |
98 | if [ -f arch/${ARCH}/*lds ]; then | 100 | if [ -f arch/${ARCH}/*lds ]; then |
99 | cp -a arch/${ARCH}/*lds $kerneldir/build/arch/${ARCH} | 101 | cp -a arch/${ARCH}/*lds $kerneldir/build/arch/${ARCH} |
100 | fi | 102 | fi |
101 | 103 | ||
102 | rm -f $kerneldir/build/scripts/*.o | 104 | rm -f $kerneldir/build/scripts/*.o |
103 | rm -f $kerneldir/build/scripts/*/*.o | 105 | rm -f $kerneldir/build/scripts/*/*.o |
104 | 106 | ||
105 | if [ "${ARCH}" = "powerpc" ]; then | 107 | if [ "${ARCH}" = "powerpc" ]; then |
106 | if [ -e arch/powerpc/lib/crtsavres.S ] || | 108 | if [ -e arch/powerpc/lib/crtsavres.S ] || |
107 | [ -e arch/powerpc/lib/crtsavres.o ]; then | 109 | [ -e arch/powerpc/lib/crtsavres.o ]; then |
108 | cp -a --parents arch/powerpc/lib/crtsavres.[So] $kerneldir/build/ | 110 | cp -a --parents arch/powerpc/lib/crtsavres.[So] $kerneldir/build/ |
109 | fi | 111 | fi |
110 | fi | 112 | fi |
111 | 113 | ||
112 | if [ "${ARCH}" = "arm64" ]; then | 114 | if [ "${ARCH}" = "arm64" -o "${ARCH}" = "riscv" ]; then |
113 | cp -a --parents arch/arm64/kernel/vdso/vdso.lds $kerneldir/build/ | 115 | if [ -e arch/${ARCH}/kernel/vdso/vdso.lds ]; then |
114 | fi | 116 | cp -a --parents arch/${ARCH}/kernel/vdso/vdso.lds $kerneldir/build/ |
115 | 117 | fi | |
116 | cp -a include $kerneldir/build/include | 118 | fi |
117 | 119 | if [ "${ARCH}" = "powerpc" ]; then | |
118 | # we don't usually copy generated files, since they can be rebuilt on the target, | 120 | cp -a --parents arch/powerpc/kernel/vdso32/vdso32.lds $kerneldir/build 2>/dev/null || : |
119 | # but without this file, we get a forced syncconfig run in v5.8+, which prompts and | 121 | cp -a --parents arch/powerpc/kernel/vdso64/vdso64.lds $kerneldir/build 2>/dev/null || : |
120 | # breaks workflows. | 122 | # v5.19+ |
121 | cp -a --parents include/generated/autoconf.h $kerneldir/build 2>/dev/null || : | 123 | cp -a --parents arch/powerpc/kernel/vdso/vdso*.lds $kerneldir/build 2>/dev/null || : |
122 | 124 | fi | |
123 | if [ -e $kerneldir/include/generated/.vdso-offsets.h.cmd ]; then | 125 | |
124 | rm $kerneldir/include/generated/.vdso-offsets.h.cmd | 126 | cp -a include $kerneldir/build/include |
125 | fi | 127 | |
128 | # we don't usually copy generated files, since they can be rebuilt on the target, | ||
129 | # but without this file, we get a forced syncconfig run in v5.8+, which prompts and | ||
130 | # breaks workflows. | ||
131 | cp -a --parents include/generated/autoconf.h $kerneldir/build 2>/dev/null || : | ||
132 | |||
133 | rm -f $kerneldir/include/generated/.vdso-offsets.h.cmd | ||
134 | rm -f $kerneldir/build/include/generated/.vdso-offsets.h.cmd | ||
135 | rm -f $kerneldir/build/include/generated/.compat_vdso-offsets.h.cmd | ||
136 | rm -f $kerneldir/build/include/generated/.vdso32-offsets.h.cmd | ||
126 | ) | 137 | ) |
127 | 138 | ||
128 | # now grab the chunks from the source tree that we need | 139 | # now grab the chunks from the source tree that we need |
129 | ( | 140 | ( |
130 | cd ${S} | 141 | cd ${S} |
142 | |||
143 | cp -a scripts $kerneldir/build | ||
144 | |||
145 | # for v6.1+ (otherwise we are missing multiple default targets) | ||
146 | cp -a --parents Kbuild $kerneldir/build 2>/dev/null || : | ||
131 | 147 | ||
132 | cp -a scripts $kerneldir/build | 148 | # For v6.6+ the debian packing is moved out to seperate rules file |
149 | # Remove as we else would ned to RDEPEND on make | ||
150 | rm $kerneldir/build/scripts/package/debian/rules 2>/dev/null || : | ||
133 | 151 | ||
134 | # if our build dir had objtool, it will also be rebuilt on target, so | 152 | # if our build dir had objtool, it will also be rebuilt on target, so |
135 | # we copy what is required for that build | 153 | # we copy what is required for that build |
136 | if [ -f ${B}/tools/objtool/objtool ]; then | 154 | if [ -f ${B}/tools/objtool/objtool ]; then |
137 | # these are a few files associated with objtool, since we'll need to | 155 | # these are a few files associated with objtool, since we'll need to |
138 | # rebuild it | 156 | # rebuild it |
139 | cp -a --parents tools/build/Build.include $kerneldir/build/ | 157 | cp -a --parents tools/build/Build.include $kerneldir/build/ |
140 | cp -a --parents tools/build/Build $kerneldir/build/ | 158 | cp -a --parents tools/build/Build $kerneldir/build/ |
141 | cp -a --parents tools/build/fixdep.c $kerneldir/build/ | 159 | cp -a --parents tools/build/fixdep.c $kerneldir/build/ |
142 | cp -a --parents tools/scripts/utilities.mak $kerneldir/build/ | 160 | cp -a --parents tools/scripts/utilities.mak $kerneldir/build/ |
143 | 161 | ||
144 | # extra files, just in case | 162 | # extra files, just in case |
145 | cp -a --parents tools/objtool/* $kerneldir/build/ | 163 | cp -a --parents tools/objtool/* $kerneldir/build/ |
146 | cp -a --parents tools/lib/* $kerneldir/build/ | 164 | cp -a --parents tools/lib/* $kerneldir/build/ |
147 | cp -a --parents tools/lib/subcmd/* $kerneldir/build/ | 165 | cp -a --parents tools/lib/subcmd/* $kerneldir/build/ |
148 | 166 | ||
149 | cp -a --parents tools/include/* $kerneldir/build/ | 167 | cp -a --parents tools/include/* $kerneldir/build/ |
150 | 168 | ||
151 | cp -a --parents $(find tools/arch/${ARCH}/ -type f) $kerneldir/build/ | 169 | cp -a --parents $(find tools/arch/${ARCH}/ -type f) $kerneldir/build/ |
152 | fi | 170 | fi |
153 | 171 | ||
154 | if [ "${ARCH}" = "arm64" ]; then | 172 | if [ "${ARCH}" = "arm64" ]; then |
155 | # arch/arm64/include/asm/xen references arch/arm | 173 | # arch/arm64/include/asm/xen references arch/arm |
156 | cp -a --parents arch/arm/include/asm/xen $kerneldir/build/ | 174 | cp -a --parents arch/arm/include/asm/xen $kerneldir/build/ |
157 | # arch/arm64/include/asm/opcodes.h references arch/arm | 175 | # arch/arm64/include/asm/opcodes.h references arch/arm |
158 | cp -a --parents arch/arm/include/asm/opcodes.h $kerneldir/build/ | 176 | cp -a --parents arch/arm/include/asm/opcodes.h $kerneldir/build/ |
177 | |||
178 | # v6.1+ | ||
179 | cp -a --parents arch/arm64/kernel/asm-offsets.c $kerneldir/build/ | ||
159 | 180 | ||
160 | cp -a --parents arch/arm64/kernel/vdso/*gettimeofday.* $kerneldir/build/ | 181 | cp -a --parents arch/arm64/kernel/vdso/*gettimeofday.* $kerneldir/build/ |
161 | cp -a --parents arch/arm64/kernel/vdso/sigreturn.S $kerneldir/build/ | 182 | cp -a --parents arch/arm64/kernel/vdso/sigreturn.S $kerneldir/build/ |
@@ -163,106 +184,174 @@ do_install() { | |||
163 | cp -a --parents arch/arm64/kernel/vdso/gen_vdso_offsets.sh $kerneldir/build/ | 184 | cp -a --parents arch/arm64/kernel/vdso/gen_vdso_offsets.sh $kerneldir/build/ |
164 | 185 | ||
165 | cp -a --parents arch/arm64/kernel/module.lds $kerneldir/build/ 2>/dev/null || : | 186 | cp -a --parents arch/arm64/kernel/module.lds $kerneldir/build/ 2>/dev/null || : |
166 | fi | ||
167 | 187 | ||
168 | if [ "${ARCH}" = "powerpc" ]; then | 188 | # 5.13+ needs these tools |
169 | # 5.0 needs these files, but don't error if they aren't present in the source | 189 | cp -a --parents arch/arm64/tools/gen-cpucaps.awk $kerneldir/build/ 2>/dev/null || : |
170 | cp -a --parents arch/${ARCH}/kernel/syscalls/syscall.tbl $kerneldir/build/ 2>/dev/null || : | 190 | cp -a --parents arch/arm64/tools/cpucaps $kerneldir/build/ 2>/dev/null || : |
171 | cp -a --parents arch/${ARCH}/kernel/syscalls/syscalltbl.sh $kerneldir/build/ 2>/dev/null || : | 191 | |
172 | cp -a --parents arch/${ARCH}/kernel/syscalls/syscallhdr.sh $kerneldir/build/ 2>/dev/null || : | 192 | # 5.19+ |
173 | fi | 193 | cp -a --parents arch/arm64/tools/gen-sysreg.awk $kerneldir/build/ 2>/dev/null || : |
194 | cp -a --parents arch/arm64/tools/sysreg $kerneldir/build/ 2>/dev/null || : | ||
195 | |||
196 | if [ -e $kerneldir/build/arch/arm64/tools/gen-cpucaps.awk ]; then | ||
197 | sed -i -e "s,#!.*awk.*,#!${USRBINPATH}/env awk," $kerneldir/build/arch/arm64/tools/gen-cpucaps.awk | ||
198 | fi | ||
199 | if [ -e $kerneldir/build/arch/arm64/tools/gen-sysreg.awk ]; then | ||
200 | sed -i -e "s,#!.*awk.*,#!${USRBINPATH}/env awk," $kerneldir/build/arch/arm64/tools/gen-sysreg.awk | ||
201 | fi | ||
202 | fi | ||
203 | |||
204 | if [ "${ARCH}" = "powerpc" ]; then | ||
205 | # 5.0 needs these files, but don't error if they aren't present in the source | ||
206 | cp -a --parents arch/${ARCH}/kernel/syscalls/syscall.tbl $kerneldir/build/ 2>/dev/null || : | ||
207 | cp -a --parents arch/${ARCH}/kernel/syscalls/syscalltbl.sh $kerneldir/build/ 2>/dev/null || : | ||
208 | cp -a --parents arch/${ARCH}/kernel/syscalls/syscallhdr.sh $kerneldir/build/ 2>/dev/null || : | ||
209 | cp -a --parents arch/${ARCH}/kernel/vdso32/* $kerneldir/build/ 2>/dev/null || : | ||
210 | cp -a --parents arch/${ARCH}/kernel/vdso64/* $kerneldir/build/ 2>/dev/null || : | ||
211 | |||
212 | # v5.19+ | ||
213 | cp -a --parents arch/powerpc/kernel/vdso/*.S $kerneldir/build 2>/dev/null || : | ||
214 | cp -a --parents arch/powerpc/kernel/vdso/*gettimeofday.* $kerneldir/build 2>/dev/null || : | ||
215 | cp -a --parents arch/powerpc/kernel/vdso/gen_vdso*_offsets.sh $kerneldir/build/ 2>/dev/null || : | ||
216 | |||
217 | # v6,1+ | ||
218 | cp -a --parents arch/powerpc/kernel/asm-offsets.c $kerneldir/build/ 2>/dev/null || : | ||
219 | cp -a --parents arch/powerpc/kernel/head_booke.h $kerneldir/build/ 2>/dev/null || : | ||
220 | fi | ||
221 | if [ "${ARCH}" = "riscv" ]; then | ||
222 | cp -a --parents arch/riscv/kernel/vdso/*gettimeofday.* $kerneldir/build/ | ||
223 | cp -a --parents arch/riscv/kernel/vdso/note.S $kerneldir/build/ | ||
224 | # v6.1+ | ||
225 | cp -a --parents arch/riscv/kernel/asm-offsets.c $kerneldir/build/ | ||
226 | if [ -e arch/riscv/kernel/vdso/gen_vdso_offsets.sh ]; then | ||
227 | cp -a --parents arch/riscv/kernel/vdso/gen_vdso_offsets.sh $kerneldir/build/ | ||
228 | fi | ||
229 | cp -a --parents arch/riscv/kernel/vdso/* $kerneldir/build/ 2>/dev/null || : | ||
230 | if [ -e arch/riscv/kernel/compat_vdso/gen_compat_vdso_offsets.sh ]; then | ||
231 | cp -a --parents arch/riscv/kernel/compat_vdso/gen_compat_vdso_offsets.sh $kerneldir/build/ | ||
232 | fi | ||
233 | cp -a --parents arch/riscv/kernel/compat_vdso/* $kerneldir/build/ 2>/dev/null || : | ||
234 | fi | ||
235 | |||
236 | # include the machine specific headers for ARM variants, if available. | ||
237 | if [ "${ARCH}" = "arm" ]; then | ||
238 | cp -a --parents arch/${ARCH}/mach-*/include $kerneldir/build/ | ||
174 | 239 | ||
175 | # include the machine specific headers for ARM variants, if available. | 240 | # include a few files for 'make prepare' |
176 | if [ "${ARCH}" = "arm" ]; then | 241 | cp -a --parents arch/arm/tools/gen-mach-types $kerneldir/build/ |
177 | cp -a --parents arch/${ARCH}/mach-*/include $kerneldir/build/ | 242 | cp -a --parents arch/arm/tools/mach-types $kerneldir/build/ |
178 | 243 | ||
179 | # include a few files for 'make prepare' | 244 | # 5.19+ |
180 | cp -a --parents arch/arm/tools/gen-mach-types $kerneldir/build/ | 245 | cp -a --parents arch/arm/tools/gen-sysreg.awk $kerneldir/build/ 2>/dev/null || : |
181 | cp -a --parents arch/arm/tools/mach-types $kerneldir/build/ | ||
182 | 246 | ||
183 | # ARM syscall table tools only exist for kernels v4.10 or later | 247 | # ARM syscall table tools only exist for kernels v4.10 or later |
184 | SYSCALL_TOOLS=$(find arch/arm/tools -name "syscall*") | 248 | SYSCALL_TOOLS=$(find arch/arm/tools -name "syscall*") |
185 | if [ -n "$SYSCALL_TOOLS" ] ; then | 249 | if [ -n "$SYSCALL_TOOLS" ] ; then |
186 | cp -a --parents $SYSCALL_TOOLS $kerneldir/build/ | 250 | cp -a --parents $SYSCALL_TOOLS $kerneldir/build/ |
187 | fi | 251 | fi |
188 | 252 | ||
189 | cp -a --parents arch/arm/kernel/module.lds $kerneldir/build/ 2>/dev/null || : | 253 | cp -a --parents arch/arm/kernel/module.lds $kerneldir/build/ 2>/dev/null || : |
190 | fi | 254 | # v6.1+ |
191 | 255 | cp -a --parents arch/arm/kernel/asm-offsets.c $kerneldir/build/ 2>/dev/null || : | |
192 | if [ -d arch/${ARCH}/include ]; then | 256 | cp -a --parents arch/arm/kernel/signal.h $kerneldir/build/ 2>/dev/null || : |
193 | cp -a --parents arch/${ARCH}/include $kerneldir/build/ | 257 | fi |
194 | fi | 258 | |
195 | 259 | if [ -d arch/${ARCH}/include ]; then | |
196 | cp -a include $kerneldir/build | 260 | cp -a --parents arch/${ARCH}/include $kerneldir/build/ |
197 | 261 | fi | |
198 | cp -a --parents lib/vdso/* $kerneldir/build/ 2>/dev/null || : | 262 | |
199 | 263 | cp -a include $kerneldir/build | |
200 | cp -a --parents tools/include/tools/le_byteshift.h $kerneldir/build/ | 264 | |
201 | cp -a --parents tools/include/tools/be_byteshift.h $kerneldir/build/ | 265 | cp -a --parents lib/vdso/* $kerneldir/build/ 2>/dev/null || : |
202 | 266 | ||
203 | # required for generate missing syscalls prepare phase | 267 | cp -a --parents tools/include/tools/le_byteshift.h $kerneldir/build/ |
204 | cp -a --parents $(find arch/x86 -type f -name "syscall_32.tbl") $kerneldir/build | 268 | cp -a --parents tools/include/tools/be_byteshift.h $kerneldir/build/ |
205 | cp -a --parents $(find arch/arm -type f -name "*.tbl") $kerneldir/build 2>/dev/null || : | 269 | |
206 | 270 | # required for generate missing syscalls prepare phase | |
207 | if [ "${ARCH}" = "x86" ]; then | 271 | cp -a --parents $(find arch/x86 -type f -name "syscall_32.tbl") $kerneldir/build |
208 | # files for 'make prepare' to succeed with kernel-devel | 272 | cp -a --parents $(find arch/arm -type f -name "*.tbl") $kerneldir/build 2>/dev/null || : |
209 | cp -a --parents $(find arch/x86 -type f -name "syscall_32.tbl") $kerneldir/build/ | 273 | |
210 | cp -a --parents $(find arch/x86 -type f -name "syscalltbl.sh") $kerneldir/build/ | 274 | if [ "${ARCH}" = "x86" ]; then |
211 | cp -a --parents $(find arch/x86 -type f -name "syscallhdr.sh") $kerneldir/build/ | 275 | # files for 'make prepare' to succeed with kernel-devel |
212 | cp -a --parents $(find arch/x86 -type f -name "syscall_64.tbl") $kerneldir/build/ | 276 | cp -a --parents $(find arch/x86 -type f -name "syscall_32.tbl") $kerneldir/build/ 2>/dev/null || : |
213 | cp -a --parents arch/x86/tools/relocs_32.c $kerneldir/build/ | 277 | cp -a --parents $(find arch/x86 -type f -name "syscalltbl.sh") $kerneldir/build/ 2>/dev/null || : |
214 | cp -a --parents arch/x86/tools/relocs_64.c $kerneldir/build/ | 278 | cp -a --parents $(find arch/x86 -type f -name "syscallhdr.sh") $kerneldir/build/ 2>/dev/null || : |
215 | cp -a --parents arch/x86/tools/relocs.c $kerneldir/build/ | 279 | cp -a --parents $(find arch/x86 -type f -name "syscall_64.tbl") $kerneldir/build/ 2>/dev/null || : |
216 | cp -a --parents arch/x86/tools/relocs_common.c $kerneldir/build/ | 280 | cp -a --parents arch/x86/tools/relocs_32.c $kerneldir/build/ |
217 | cp -a --parents arch/x86/tools/relocs.h $kerneldir/build/ | 281 | cp -a --parents arch/x86/tools/relocs_64.c $kerneldir/build/ |
218 | cp -a --parents arch/x86/tools/gen-insn-attr-x86.awk $kerneldir/build/ 2>/dev/null || : | 282 | cp -a --parents arch/x86/tools/relocs.c $kerneldir/build/ |
219 | cp -a --parents arch/x86/purgatory/purgatory.c $kerneldir/build/ | 283 | cp -a --parents arch/x86/tools/relocs_common.c $kerneldir/build/ |
220 | 284 | cp -a --parents arch/x86/tools/relocs.h $kerneldir/build/ | |
221 | # 4.18 + have unified the purgatory files, so we ignore any errors if | 285 | cp -a --parents arch/x86/tools/gen-insn-attr-x86.awk $kerneldir/build/ 2>/dev/null || : |
222 | # these files are not present | 286 | cp -a --parents arch/x86/purgatory/purgatory.c $kerneldir/build/ |
223 | cp -a --parents arch/x86/purgatory/sha256.h $kerneldir/build/ 2>/dev/null || : | 287 | |
224 | cp -a --parents arch/x86/purgatory/sha256.c $kerneldir/build/ 2>/dev/null || : | 288 | # 4.18 + have unified the purgatory files, so we ignore any errors if |
225 | 289 | # these files are not present | |
226 | cp -a --parents arch/x86/purgatory/stack.S $kerneldir/build/ | 290 | cp -a --parents arch/x86/purgatory/sha256.h $kerneldir/build/ 2>/dev/null || : |
227 | cp -a --parents arch/x86/purgatory/string.c $kerneldir/build/ 2>/dev/null || : | 291 | cp -a --parents arch/x86/purgatory/sha256.c $kerneldir/build/ 2>/dev/null || : |
228 | cp -a --parents arch/x86/purgatory/setup-x86_64.S $kerneldir/build/ | 292 | |
229 | cp -a --parents arch/x86/purgatory/entry64.S $kerneldir/build/ | 293 | cp -a --parents arch/x86/purgatory/stack.S $kerneldir/build/ |
230 | cp -a --parents arch/x86/boot/string.h $kerneldir/build/ | 294 | cp -a --parents arch/x86/purgatory/string.c $kerneldir/build/ 2>/dev/null || : |
231 | cp -a --parents arch/x86/boot/string.c $kerneldir/build/ | 295 | cp -a --parents arch/x86/purgatory/setup-x86_64.S $kerneldir/build/ |
232 | cp -a --parents arch/x86/boot/compressed/string.c $kerneldir/build/ 2>/dev/null || : | 296 | cp -a --parents arch/x86/purgatory/entry64.S $kerneldir/build/ |
233 | cp -a --parents arch/x86/boot/ctype.h $kerneldir/build/ | 297 | cp -a --parents arch/x86/boot/string.h $kerneldir/build/ |
234 | 298 | cp -a --parents arch/x86/boot/string.c $kerneldir/build/ | |
235 | # objtool requires these files | 299 | cp -a --parents arch/x86/boot/compressed/string.c $kerneldir/build/ 2>/dev/null || : |
236 | cp -a --parents arch/x86/lib/inat.c $kerneldir/build/ 2>/dev/null || : | 300 | cp -a --parents arch/x86/boot/ctype.h $kerneldir/build/ |
237 | cp -a --parents arch/x86/lib/insn.c $kerneldir/build/ 2>/dev/null || : | 301 | |
238 | fi | 302 | # objtool requires these files |
239 | 303 | cp -a --parents arch/x86/lib/inat.c $kerneldir/build/ 2>/dev/null || : | |
240 | if [ "${ARCH}" = "mips" ]; then | 304 | cp -a --parents arch/x86/lib/insn.c $kerneldir/build/ 2>/dev/null || : |
241 | cp -a --parents arch/mips/Kbuild.platforms $kerneldir/build/ | 305 | |
242 | cp --parents $(find -type f -name "Platform") $kerneldir/build | 306 | # v6.1+ |
243 | cp --parents arch/mips/boot/tools/relocs* $kerneldir/build | 307 | cp -a --parents arch/x86/kernel/asm-offsets* $kerneldir/build || : |
244 | cp -a --parents arch/mips/kernel/asm-offsets.c $kerneldir/build | 308 | # for capabilities.h, vmx.h |
245 | cp -a --parents kernel/time/timeconst.bc $kerneldir/build | 309 | cp -a --parents arch/x86/kvm/vmx/*.h $kerneldir/build || : |
246 | cp -a --parents kernel/bounds.c $kerneldir/build | 310 | # for lapic.h, hyperv.h .... |
247 | cp -a --parents Kbuild $kerneldir/build | 311 | cp -a --parents arch/x86/kvm/*.h $kerneldir/build || : |
248 | cp -a --parents arch/mips/kernel/syscalls/*.sh $kerneldir/build 2>/dev/null || : | 312 | fi |
249 | cp -a --parents arch/mips/kernel/syscalls/*.tbl $kerneldir/build 2>/dev/null || : | 313 | |
250 | cp -a --parents arch/mips/tools/elf-entry.c $kerneldir/build 2>/dev/null || : | 314 | # moved from arch/mips to all arches for v6.1+ |
251 | fi | 315 | cp -a --parents kernel/time/timeconst.bc $kerneldir/build 2>/dev/null || : |
316 | cp -a --parents kernel/bounds.c $kerneldir/build 2>/dev/null || : | ||
317 | |||
318 | if [ "${ARCH}" = "mips" ]; then | ||
319 | cp -a --parents arch/mips/Kbuild.platforms $kerneldir/build/ | ||
320 | cp --parents $(find -type f -name "Platform") $kerneldir/build | ||
321 | cp --parents arch/mips/boot/tools/relocs* $kerneldir/build | ||
322 | cp -a --parents arch/mips/kernel/asm-offsets.c $kerneldir/build | ||
323 | cp -a --parents Kbuild $kerneldir/build | ||
324 | cp -a --parents arch/mips/kernel/syscalls/*.sh $kerneldir/build 2>/dev/null || : | ||
325 | cp -a --parents arch/mips/kernel/syscalls/*.tbl $kerneldir/build 2>/dev/null || : | ||
326 | cp -a --parents arch/mips/tools/elf-entry.c $kerneldir/build 2>/dev/null || : | ||
327 | fi | ||
328 | |||
329 | if [ "${ARCH}" = "loongarch" ]; then | ||
330 | cp -a --parents arch/loongarch/kernel/asm-offsets.c $kerneldir/build | ||
331 | cp -a --parents Kbuild $kerneldir/build | ||
332 | cp -a --parents arch/loongarch/vdso/*.S $kerneldir/build 2>/dev/null || : | ||
333 | cp -a --parents arch/loongarch/vdso/*gettimeofday.* $kerneldir/build 2>/dev/null || : | ||
334 | cp -a --parents arch/loongarch/vdso/*getcpu.* $kerneldir/build 2>/dev/null || : | ||
335 | cp -a --parents arch/loongarch/vdso/gen_vdso*_offsets.sh $kerneldir/build/ 2>/dev/null || : | ||
336 | fi | ||
252 | 337 | ||
253 | # required to build scripts/selinux/genheaders/genheaders | 338 | # required to build scripts/selinux/genheaders/genheaders |
254 | cp -a --parents security/selinux/include/* $kerneldir/build/ | 339 | cp -a --parents security/selinux/include/* $kerneldir/build/ |
255 | 340 | ||
256 | # copy any localversion files | 341 | # copy any localversion files |
257 | cp -a localversion* $kerneldir/build/ 2>/dev/null || : | 342 | cp -a localversion* $kerneldir/build/ 2>/dev/null || : |
258 | ) | 343 | ) |
259 | 344 | ||
260 | # Make sure the Makefile and version.h have a matching timestamp so that | 345 | # Make sure the Makefile and version.h have a matching timestamp so that |
261 | # external modules can be built | 346 | # external modules can be built |
262 | touch -r $kerneldir/build/Makefile $kerneldir/build/include/generated/uapi/linux/version.h | 347 | touch -r $kerneldir/build/Makefile $kerneldir/build/include/generated/uapi/linux/version.h |
263 | 348 | ||
264 | # Copy .config to include/config/auto.conf so "make prepare" is unnecessary. | 349 | # This fixes a warning that the compilers don't match when building a module |
265 | cp $kerneldir/build/.config $kerneldir/build/include/config/auto.conf | 350 | # Change: CONFIG_CC_VERSION_TEXT="x86_64-poky-linux-gcc (GCC) 12.2.0" to "gcc (GCC) 12.2.0" |
351 | # #define CONFIG_CC_VERSION_TEXT "x86_64-poky-linux-gcc (GCC) 12.2.0" to "gcc (GCC) 12.2.0" | ||
352 | sed -i 's/CONFIG_CC_VERSION_TEXT=".*\(gcc.*\)"/CONFIG_CC_VERSION_TEXT="\1"/' "$kerneldir/build/.config" | ||
353 | sed -i 's/#define CONFIG_CC_VERSION_TEXT ".*\(gcc.*\)"/#define CONFIG_CC_VERSION_TEXT "\1"/' $kerneldir/build/include/generated/autoconf.h | ||
354 | sed -i 's/CONFIG_CC_VERSION_TEXT=".*\(gcc.*\)"/CONFIG_CC_VERSION_TEXT="\1"/' $kerneldir/build/include/config/auto.conf | ||
266 | 355 | ||
267 | # make sure these are at least as old as the .config, or rebuilds will trigger | 356 | # make sure these are at least as old as the .config, or rebuilds will trigger |
268 | touch -r $kerneldir/build/.config $kerneldir/build/include/generated/autoconf.h 2>/dev/null || : | 357 | touch -r $kerneldir/build/.config $kerneldir/build/include/generated/autoconf.h 2>/dev/null || : |
@@ -271,6 +360,13 @@ do_install() { | |||
271 | if [ -e "$kerneldir/build/include/config/auto.conf.cmd" ]; then | 360 | if [ -e "$kerneldir/build/include/config/auto.conf.cmd" ]; then |
272 | sed -i 's/ifneq "$(CC)" ".*-linux-.*gcc.*$/ifneq "$(CC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd" | 361 | sed -i 's/ifneq "$(CC)" ".*-linux-.*gcc.*$/ifneq "$(CC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd" |
273 | sed -i 's/ifneq "$(LD)" ".*-linux-.*ld.bfd.*$/ifneq "$(LD)" "ld"/' "$kerneldir/build/include/config/auto.conf.cmd" | 362 | sed -i 's/ifneq "$(LD)" ".*-linux-.*ld.bfd.*$/ifneq "$(LD)" "ld"/' "$kerneldir/build/include/config/auto.conf.cmd" |
363 | sed -i 's/ifneq "$(AR)" ".*-linux-.*ar.*$/ifneq "$(AR)" "ar"/' "$kerneldir/build/include/config/auto.conf.cmd" | ||
364 | sed -i 's/ifneq "$(OBJCOPY)" ".*-linux-.*objcopy.*$/ifneq "$(OBJCOPY)" "objcopy"/' "$kerneldir/build/include/config/auto.conf.cmd" | ||
365 | if [ "${ARCH}" = "powerpc" ]; then | ||
366 | sed -i 's/ifneq "$(NM)" ".*-linux-.*nm.*$/ifneq "$(NM)" "nm --synthetic"/' "$kerneldir/build/include/config/auto.conf.cmd" | ||
367 | else | ||
368 | sed -i 's/ifneq "$(NM)" ".*-linux-.*nm.*$/ifneq "$(NM)" "nm"/' "$kerneldir/build/include/config/auto.conf.cmd" | ||
369 | fi | ||
274 | sed -i 's/ifneq "$(HOSTCXX)" ".*$/ifneq "$(HOSTCXX)" "g++"/' "$kerneldir/build/include/config/auto.conf.cmd" | 370 | sed -i 's/ifneq "$(HOSTCXX)" ".*$/ifneq "$(HOSTCXX)" "g++"/' "$kerneldir/build/include/config/auto.conf.cmd" |
275 | sed -i 's/ifneq "$(HOSTCC)" ".*$/ifneq "$(HOSTCC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd" | 371 | sed -i 's/ifneq "$(HOSTCC)" ".*$/ifneq "$(HOSTCC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd" |
276 | sed -i 's/ifneq "$(CC_VERSION_TEXT)".*\(gcc.*\)"/ifneq "$(CC_VERSION_TEXT)" "\1"/' "$kerneldir/build/include/config/auto.conf.cmd" | 372 | sed -i 's/ifneq "$(CC_VERSION_TEXT)".*\(gcc.*\)"/ifneq "$(CC_VERSION_TEXT)" "\1"/' "$kerneldir/build/include/config/auto.conf.cmd" |
@@ -283,9 +379,9 @@ do_install() { | |||
283 | # left as /usr/bin/python rootfs assembly will fail, since we only have python3 | 379 | # left as /usr/bin/python rootfs assembly will fail, since we only have python3 |
284 | # in the RDEPENDS (and the python3 package does not include /usr/bin/python) | 380 | # in the RDEPENDS (and the python3 package does not include /usr/bin/python) |
285 | for ss in $(find $kerneldir/build/scripts -type f -name '*'); do | 381 | for ss in $(find $kerneldir/build/scripts -type f -name '*'); do |
286 | sed -i 's,/usr/bin/python2,/usr/bin/env python3,' "$ss" | 382 | sed -i 's,/usr/bin/python2,/usr/bin/env python3,' "$ss" |
287 | sed -i 's,/usr/bin/env python2,/usr/bin/env python3,' "$ss" | 383 | sed -i 's,/usr/bin/env python2,/usr/bin/env python3,' "$ss" |
288 | sed -i 's,/usr/bin/python,/usr/bin/env python3,' "$ss" | 384 | sed -i 's,/usr/bin/python,/usr/bin/env python3,' "$ss" |
289 | done | 385 | done |
290 | 386 | ||
291 | chown -R root:root ${D} | 387 | chown -R root:root ${D} |
@@ -294,13 +390,17 @@ do_install() { | |||
294 | # Ensure we don't race against "make scripts" during cpio | 390 | # Ensure we don't race against "make scripts" during cpio |
295 | do_install[lockfiles] = "${TMPDIR}/kernel-scripts.lock" | 391 | do_install[lockfiles] = "${TMPDIR}/kernel-scripts.lock" |
296 | 392 | ||
297 | FILES_${PN} = "${KERNEL_BUILD_ROOT} ${KERNEL_SRC_PATH}" | 393 | FILES:${PN} = "${KERNEL_BUILD_ROOT} ${KERNEL_SRC_PATH}" |
298 | FILES_${PN}-dbg += "${KERNEL_BUILD_ROOT}*/build/scripts/*/.debug/*" | 394 | FILES:${PN}-dbg += "${KERNEL_BUILD_ROOT}*/build/scripts/*/.debug/*" |
299 | 395 | ||
300 | RDEPENDS_${PN} = "bc python3 flex bison ${TCLIBC}-utils" | 396 | RDEPENDS:${PN} = "bc python3-core flex bison ${TCLIBC}-utils gawk" |
301 | # 4.15+ needs these next two RDEPENDS | 397 | # 4.15+ needs these next two RDEPENDS |
302 | RDEPENDS_${PN} += "openssl-dev util-linux" | 398 | RDEPENDS:${PN} += "openssl-dev util-linux" |
303 | # and x86 needs a bit more for 4.15+ | 399 | # and x86 needs a bit more for 4.15+ |
304 | RDEPENDS_${PN} += "${@bb.utils.contains('ARCH', 'x86', 'elfutils', '', d)}" | 400 | RDEPENDS:${PN} += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-dev', '', d)}" |
401 | # powerpc needs elfutils on 6.3+ | ||
402 | RDEPENDS:${PN} += "${@bb.utils.contains('ARCH', 'powerpc', 'elfutils-dev', '', d)}" | ||
305 | # 5.8+ needs gcc-plugins libmpc-dev | 403 | # 5.8+ needs gcc-plugins libmpc-dev |
306 | RDEPENDS_${PN} += "gcc-plugins libmpc-dev" | 404 | RDEPENDS:${PN} += "gcc-plugins libmpc-dev" |
405 | # 5.13+ needs grep for powerpc | ||
406 | RDEPENDS:${PN}:append:powerpc = " grep" | ||
diff --git a/meta/recipes-kernel/linux/linux-dummy.bb b/meta/recipes-kernel/linux/linux-dummy.bb index 95dc85ff2f..2396f46202 100644 --- a/meta/recipes-kernel/linux/linux-dummy.bb +++ b/meta/recipes-kernel/linux/linux-dummy.bb | |||
@@ -4,31 +4,30 @@ provider for virtual/kernel to satisfy dependencies for situations \ | |||
4 | where you wish to build the kernel externally from the build system." | 4 | where you wish to build the kernel externally from the build system." |
5 | SECTION = "kernel" | 5 | SECTION = "kernel" |
6 | 6 | ||
7 | LICENSE = "GPLv2" | 7 | LICENSE = "GPL-2.0-only" |
8 | LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=751419260aa954499f7abaabaa882bbe" | 8 | LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=751419260aa954499f7abaabaa882bbe" |
9 | 9 | ||
10 | PROVIDES += "virtual/kernel" | 10 | PROVIDES += "virtual/kernel" |
11 | 11 | ||
12 | inherit deploy | 12 | inherit deploy linux-dummy |
13 | 13 | ||
14 | PACKAGES_DYNAMIC += "^kernel-module-.*" | 14 | PACKAGES_DYNAMIC += "^kernel-module-.*" |
15 | PACKAGES_DYNAMIC += "^kernel-image-.*" | 15 | PACKAGES_DYNAMIC += "^kernel-image-.*" |
16 | PACKAGES_DYNAMIC += "^kernel-firmware-.*" | 16 | PACKAGES_DYNAMIC += "^kernel-firmware-.*" |
17 | 17 | ||
18 | PACKAGES += "kernel-modules kernel-vmlinux" | 18 | PACKAGES += "kernel-modules kernel-vmlinux" |
19 | FILES_kernel-modules = "" | 19 | FILES:kernel-modules = "" |
20 | ALLOW_EMPTY_kernel-modules = "1" | 20 | ALLOW_EMPTY:kernel-modules = "1" |
21 | DESCRIPTION_kernel-modules = "Kernel modules meta package" | 21 | DESCRIPTION:kernel-modules = "Kernel modules meta package" |
22 | FILES_kernel-vmlinux = "" | 22 | FILES:kernel-vmlinux = "" |
23 | ALLOW_EMPTY_kernel-vmlinux = "1" | 23 | ALLOW_EMPTY:kernel-vmlinux = "1" |
24 | DESCRIPTION_kernel-vmlinux = "Kernel vmlinux meta package" | 24 | DESCRIPTION:kernel-vmlinux = "Kernel vmlinux meta package" |
25 | 25 | ||
26 | 26 | ||
27 | INHIBIT_DEFAULT_DEPS = "1" | 27 | INHIBIT_DEFAULT_DEPS = "1" |
28 | 28 | ||
29 | COMPATIBLE_HOST = ".*-linux" | 29 | COMPATIBLE_HOST = ".*-linux" |
30 | 30 | ||
31 | PR = "r1" | ||
32 | 31 | ||
33 | SRC_URI = "file://COPYING.GPL" | 32 | SRC_URI = "file://COPYING.GPL" |
34 | S = "${WORKDIR}" | 33 | S = "${WORKDIR}" |
diff --git a/meta/recipes-kernel/linux/linux-yocto-dev.bb b/meta/recipes-kernel/linux/linux-yocto-dev.bb index 2ccc0ee875..d5cba42a5c 100644 --- a/meta/recipes-kernel/linux/linux-yocto-dev.bb +++ b/meta/recipes-kernel/linux/linux-yocto-dev.bb | |||
@@ -10,17 +10,15 @@ | |||
10 | 10 | ||
11 | inherit kernel | 11 | inherit kernel |
12 | require recipes-kernel/linux/linux-yocto.inc | 12 | require recipes-kernel/linux/linux-yocto.inc |
13 | # for ncurses tests | ||
14 | inherit pkgconfig | ||
15 | 13 | ||
16 | # provide this .inc to set specific revisions | 14 | # provide this .inc to set specific revisions |
17 | include recipes-kernel/linux/linux-yocto-dev-revisions.inc | 15 | include recipes-kernel/linux/linux-yocto-dev-revisions.inc |
18 | 16 | ||
19 | KBRANCH = "standard/base" | 17 | KBRANCH = "v6.9/standard/base" |
20 | KMETA = "kernel-meta" | 18 | KMETA = "kernel-meta" |
21 | 19 | ||
22 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-dev.git;branch=${KBRANCH};name=machine \ | 20 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-dev.git;branch=${KBRANCH};name=machine;protocol=https \ |
23 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=master;destsuffix=${KMETA}" | 21 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=master;destsuffix=${KMETA};protocol=https" |
24 | 22 | ||
25 | # Set default SRCREVs. Both the machine and meta SRCREVs are statically set | 23 | # Set default SRCREVs. Both the machine and meta SRCREVs are statically set |
26 | # to the korg v3.7 tag, and hence prevent network access during parsing. If | 24 | # to the korg v3.7 tag, and hence prevent network access during parsing. If |
@@ -30,25 +28,34 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto-dev.git;branch=${KBRANCH};name | |||
30 | SRCREV_machine ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}' | 28 | SRCREV_machine ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}' |
31 | SRCREV_meta ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}' | 29 | SRCREV_meta ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}' |
32 | 30 | ||
33 | LINUX_VERSION ?= "5.11+" | 31 | LINUX_VERSION ?= "6.9" |
34 | LINUX_VERSION_EXTENSION ?= "-yoctodev-${LINUX_KERNEL_TYPE}" | 32 | LINUX_VERSION_EXTENSION ?= "-yoctodev-${LINUX_KERNEL_TYPE}" |
35 | PV = "${LINUX_VERSION}+git${SRCPV}" | 33 | PV = "${LINUX_VERSION}+git" |
36 | 34 | ||
37 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | 35 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" |
38 | 36 | ||
39 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | 37 | # yaml and dtschema are required for 5.16+ device tree validation, libyaml is checked |
40 | DEPENDS += "openssl-native util-linux-native" | 38 | # via pkgconfig, so must always be present, but we can wrap the others to make them |
39 | # conditional | ||
40 | DEPENDS += "libyaml-native" | ||
41 | 41 | ||
42 | COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv64)" | 42 | PACKAGECONFIG ??= "" |
43 | PACKAGECONFIG[dt-validation] = ",,python3-dtschema-native" | ||
44 | # we need the wrappers if validation isn't in the packageconfig | ||
45 | DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'dt-validation', '', 'python3-dtschema-wrapper-native', d)}" | ||
43 | 46 | ||
44 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | 47 | COMPATIBLE_MACHINE = "^(qemuarmv5|qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv32|qemuriscv64|qemuloongarch64)$" |
48 | |||
49 | KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb" | ||
45 | 50 | ||
46 | # Functionality flags | 51 | # Functionality flags |
47 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" | 52 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" |
48 | KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" | 53 | KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}" |
49 | KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" | 54 | KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" |
50 | KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" | 55 | KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" |
51 | KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" | 56 | KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" |
52 | KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}" | 57 | KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}" |
58 | KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" | ||
59 | KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc features/gpio/sim.scc", "", d)}" | ||
53 | 60 | ||
54 | KERNEL_VERSION_SANITY_SKIP = "1" | 61 | KERNEL_VERSION_SANITY_SKIP = "1" |
diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb b/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb deleted file mode 100644 index 2508b9ba07..0000000000 --- a/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb +++ /dev/null | |||
@@ -1,45 +0,0 @@ | |||
1 | KBRANCH ?= "v5.4/standard/preempt-rt/base" | ||
2 | |||
3 | require recipes-kernel/linux/linux-yocto.inc | ||
4 | |||
5 | # Skip processing of this recipe if it is not explicitly specified as the | ||
6 | # PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying | ||
7 | # to build multiple virtual/kernel providers, e.g. as dependency of | ||
8 | # core-image-rt-sdk, core-image-rt. | ||
9 | python () { | ||
10 | if d.getVar("KERNEL_PACKAGE_NAME") == "kernel" and d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-yocto-rt": | ||
11 | raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") | ||
12 | } | ||
13 | |||
14 | SRCREV_machine ?= "0406e600800a40015d02b16ee6a4a46c6673c66f" | ||
15 | SRCREV_meta ?= "4f6d6c23cc8ca5d9c39b1efc2619b1dfec1ef2bc" | ||
16 | |||
17 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ | ||
18 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" | ||
19 | |||
20 | LINUX_VERSION ?= "5.4.98" | ||
21 | |||
22 | LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" | ||
23 | |||
24 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | ||
25 | DEPENDS += "openssl-native util-linux-native" | ||
26 | |||
27 | PV = "${LINUX_VERSION}+git${SRCPV}" | ||
28 | |||
29 | KMETA = "kernel-meta" | ||
30 | KCONF_BSP_AUDIT_LEVEL = "2" | ||
31 | |||
32 | LINUX_KERNEL_TYPE = "preempt-rt" | ||
33 | |||
34 | COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)" | ||
35 | |||
36 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | ||
37 | |||
38 | # Functionality flags | ||
39 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" | ||
40 | KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" | ||
41 | KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" | ||
42 | KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
43 | KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
44 | KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" | ||
45 | KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}" | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb b/meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb index 54996a8aee..a44a08451a 100644 --- a/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb +++ b/meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb | |||
@@ -1,7 +1,10 @@ | |||
1 | KBRANCH ?= "v5.10/standard/preempt-rt/base" | 1 | KBRANCH ?= "v6.6/standard/preempt-rt/base" |
2 | 2 | ||
3 | require recipes-kernel/linux/linux-yocto.inc | 3 | require recipes-kernel/linux/linux-yocto.inc |
4 | 4 | ||
5 | # CVE exclusions | ||
6 | include recipes-kernel/linux/cve-exclusion_6.6.inc | ||
7 | |||
5 | # Skip processing of this recipe if it is not explicitly specified as the | 8 | # Skip processing of this recipe if it is not explicitly specified as the |
6 | # PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying | 9 | # PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying |
7 | # to build multiple virtual/kernel providers, e.g. as dependency of | 10 | # to build multiple virtual/kernel providers, e.g. as dependency of |
@@ -11,35 +14,35 @@ python () { | |||
11 | raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") | 14 | raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") |
12 | } | 15 | } |
13 | 16 | ||
14 | SRCREV_machine ?= "142456428adbf16db56572889232220afb201974" | 17 | SRCREV_machine ?= "19813826de57a6425518c7b3daf8dd6a04d2321f" |
15 | SRCREV_meta ?= "8f72218572b1d4a5f053ced2bbf0558d0557072d" | 18 | SRCREV_meta ?= "f7f00b22efcfcae6489e9ec7db7002685fbc078b" |
16 | 19 | ||
17 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ | 20 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine;protocol=https \ |
18 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}" | 21 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.6;destsuffix=${KMETA};protocol=https" |
19 | 22 | ||
20 | LINUX_VERSION ?= "5.10.16" | 23 | LINUX_VERSION ?= "6.6.23" |
21 | 24 | ||
22 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | 25 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" |
23 | 26 | ||
24 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | 27 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" |
25 | DEPENDS += "openssl-native util-linux-native" | 28 | DEPENDS += "openssl-native util-linux-native" |
26 | 29 | ||
27 | PV = "${LINUX_VERSION}+git${SRCPV}" | 30 | PV = "${LINUX_VERSION}+git" |
28 | 31 | ||
29 | KMETA = "kernel-meta" | 32 | KMETA = "kernel-meta" |
30 | KCONF_BSP_AUDIT_LEVEL = "1" | 33 | KCONF_BSP_AUDIT_LEVEL = "1" |
31 | 34 | ||
32 | LINUX_KERNEL_TYPE = "preempt-rt" | 35 | LINUX_KERNEL_TYPE = "preempt-rt" |
33 | 36 | ||
34 | COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)" | 37 | COMPATIBLE_MACHINE = "^(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)$" |
35 | 38 | ||
36 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | 39 | KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb" |
37 | 40 | ||
38 | # Functionality flags | 41 | # Functionality flags |
39 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" | 42 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" |
40 | KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" | 43 | KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}" |
41 | KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" | 44 | KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" |
42 | KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" | 45 | KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" |
43 | KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" | 46 | KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" |
44 | KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" | 47 | KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" |
45 | KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}" | 48 | KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc features/gpio/sim.scc", "", d)}" |
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb deleted file mode 100644 index 8ecd10716a..0000000000 --- a/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb +++ /dev/null | |||
@@ -1,32 +0,0 @@ | |||
1 | KBRANCH ?= "v5.10/standard/tiny/base" | ||
2 | KBRANCH_qemuarm ?= "v5.10/standard/tiny/arm-versatile-926ejs" | ||
3 | |||
4 | LINUX_KERNEL_TYPE = "tiny" | ||
5 | KCONFIG_MODE = "--allnoconfig" | ||
6 | |||
7 | require recipes-kernel/linux/linux-yocto.inc | ||
8 | |||
9 | LINUX_VERSION ?= "5.10.16" | ||
10 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | ||
11 | |||
12 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | ||
13 | DEPENDS += "openssl-native util-linux-native" | ||
14 | |||
15 | KMETA = "kernel-meta" | ||
16 | KCONF_BSP_AUDIT_LEVEL = "2" | ||
17 | |||
18 | SRCREV_machine_qemuarm ?= "be720c1ce6d1cba2bb3815ad04773355339380ab" | ||
19 | SRCREV_machine ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
20 | SRCREV_meta ?= "8f72218572b1d4a5f053ced2bbf0558d0557072d" | ||
21 | |||
22 | PV = "${LINUX_VERSION}+git${SRCPV}" | ||
23 | |||
24 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ | ||
25 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}" | ||
26 | |||
27 | COMPATIBLE_MACHINE = "qemux86|qemux86-64|qemuarm|qemuarmv5" | ||
28 | |||
29 | # Functionality flags | ||
30 | KERNEL_FEATURES = "" | ||
31 | |||
32 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb deleted file mode 100644 index ff03fd4197..0000000000 --- a/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb +++ /dev/null | |||
@@ -1,32 +0,0 @@ | |||
1 | KBRANCH ?= "v5.4/standard/tiny/base" | ||
2 | KBRANCH_qemuarm ?= "v5.4/standard/tiny/arm-versatile-926ejs" | ||
3 | |||
4 | LINUX_KERNEL_TYPE = "tiny" | ||
5 | KCONFIG_MODE = "--allnoconfig" | ||
6 | |||
7 | require recipes-kernel/linux/linux-yocto.inc | ||
8 | |||
9 | LINUX_VERSION ?= "5.4.98" | ||
10 | LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" | ||
11 | |||
12 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | ||
13 | DEPENDS += "openssl-native util-linux-native" | ||
14 | |||
15 | KMETA = "kernel-meta" | ||
16 | KCONF_BSP_AUDIT_LEVEL = "2" | ||
17 | |||
18 | SRCREV_machine_qemuarm ?= "fc95a485415d22eb772359b8d350c03b85c0cd1b" | ||
19 | SRCREV_machine ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
20 | SRCREV_meta ?= "4f6d6c23cc8ca5d9c39b1efc2619b1dfec1ef2bc" | ||
21 | |||
22 | PV = "${LINUX_VERSION}+git${SRCPV}" | ||
23 | |||
24 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ | ||
25 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" | ||
26 | |||
27 | COMPATIBLE_MACHINE = "qemux86|qemux86-64|qemuarm|qemuarmv5" | ||
28 | |||
29 | # Functionality flags | ||
30 | KERNEL_FEATURES = "" | ||
31 | |||
32 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb new file mode 100644 index 0000000000..db9e252572 --- /dev/null +++ b/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb | |||
@@ -0,0 +1,33 @@ | |||
1 | KBRANCH ?= "v6.6/standard/tiny/base" | ||
2 | |||
3 | LINUX_KERNEL_TYPE = "tiny" | ||
4 | KCONFIG_MODE = "--allnoconfig" | ||
5 | |||
6 | require recipes-kernel/linux/linux-yocto.inc | ||
7 | |||
8 | # CVE exclusions | ||
9 | include recipes-kernel/linux/cve-exclusion_6.6.inc | ||
10 | |||
11 | LINUX_VERSION ?= "6.6.23" | ||
12 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | ||
13 | |||
14 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | ||
15 | DEPENDS += "openssl-native util-linux-native" | ||
16 | |||
17 | KMETA = "kernel-meta" | ||
18 | KCONF_BSP_AUDIT_LEVEL = "2" | ||
19 | |||
20 | SRCREV_machine ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
21 | SRCREV_meta ?= "f7f00b22efcfcae6489e9ec7db7002685fbc078b" | ||
22 | |||
23 | PV = "${LINUX_VERSION}+git" | ||
24 | |||
25 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine;protocol=https \ | ||
26 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.6;destsuffix=${KMETA};protocol=https" | ||
27 | |||
28 | COMPATIBLE_MACHINE = "^(qemux86|qemux86-64|qemuarm64|qemuarm|qemuarmv5)$" | ||
29 | |||
30 | # Functionality flags | ||
31 | KERNEL_FEATURES = "" | ||
32 | |||
33 | KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb" | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto.inc b/meta/recipes-kernel/linux/linux-yocto.inc index a85280990b..0132fcffb3 100644 --- a/meta/recipes-kernel/linux/linux-yocto.inc +++ b/meta/recipes-kernel/linux/linux-yocto.inc | |||
@@ -1,6 +1,6 @@ | |||
1 | SUMMARY = "Linux kernel" | 1 | SUMMARY = "Linux kernel" |
2 | SECTION = "kernel" | 2 | SECTION = "kernel" |
3 | LICENSE = "GPLv2" | 3 | LICENSE = "GPL-2.0-only" |
4 | HOMEPAGE = "https://www.yoctoproject.org/" | 4 | HOMEPAGE = "https://www.yoctoproject.org/" |
5 | 5 | ||
6 | LIC_FILES_CHKSUM ?= "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7" | 6 | LIC_FILES_CHKSUM ?= "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7" |
@@ -19,21 +19,23 @@ python () { | |||
19 | } | 19 | } |
20 | 20 | ||
21 | DEPENDS += "xz-native bc-native" | 21 | DEPENDS += "xz-native bc-native" |
22 | DEPENDS_append_aarch64 = " libgcc" | 22 | DEPENDS:append:aarch64 = " libgcc" |
23 | KERNEL_CC_append_aarch64 = " ${TOOLCHAIN_OPTIONS}" | 23 | KERNEL_CC:append:aarch64 = " ${TOOLCHAIN_OPTIONS}" |
24 | KERNEL_LD_append_aarch64 = " ${TOOLCHAIN_OPTIONS}" | 24 | KERNEL_LD:append:aarch64 = " ${TOOLCHAIN_OPTIONS}" |
25 | 25 | ||
26 | DEPENDS_append_nios2 = " libgcc" | 26 | DEPENDS:append:nios2 = " libgcc" |
27 | KERNEL_CC_append_nios2 = " ${TOOLCHAIN_OPTIONS}" | 27 | KERNEL_CC:append:nios2 = " ${TOOLCHAIN_OPTIONS}" |
28 | KERNEL_LD_append_nios2 = " ${TOOLCHAIN_OPTIONS}" | 28 | KERNEL_LD:append:nios2 = " ${TOOLCHAIN_OPTIONS}" |
29 | 29 | ||
30 | DEPENDS_append_arc = " libgcc" | 30 | DEPENDS:append:arc = " libgcc" |
31 | KERNEL_CC_append_arc = " ${TOOLCHAIN_OPTIONS}" | 31 | KERNEL_CC:append:arc = " ${TOOLCHAIN_OPTIONS}" |
32 | KERNEL_LD_append_arc = " ${TOOLCHAIN_OPTIONS}" | 32 | KERNEL_LD:append:arc = " ${TOOLCHAIN_OPTIONS}" |
33 | 33 | ||
34 | KERNEL_FEATURES_append_qemuall=" features/debug/printk.scc" | 34 | KERNEL_FEATURES:append:qemuall=" features/debug/printk.scc features/taskstats/taskstats.scc" |
35 | 35 | ||
36 | KERNEL_FEATURES_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'numa', 'features/numa/numa.scc', '', d)}" | 36 | KERNEL_FEATURES:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'efi', 'cfg/efi.scc', '', d)}" |
37 | KERNEL_FEATURES:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'numa', 'features/numa/numa.scc', '', d)}" | ||
38 | KERNEL_FEATURES:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'vfat', 'cfg/fs/vfat.scc', '', d)}" | ||
37 | 39 | ||
38 | # A KMACHINE is the mapping of a yocto $MACHINE to what is built | 40 | # A KMACHINE is the mapping of a yocto $MACHINE to what is built |
39 | # by the kernel. This is typically the branch that should be built, | 41 | # by the kernel. This is typically the branch that should be built, |
@@ -48,11 +50,32 @@ inherit kernel-yocto | |||
48 | 50 | ||
49 | B = "${WORKDIR}/linux-${PACKAGE_ARCH}-${LINUX_KERNEL_TYPE}-build" | 51 | B = "${WORKDIR}/linux-${PACKAGE_ARCH}-${LINUX_KERNEL_TYPE}-build" |
50 | 52 | ||
51 | do_install_append(){ | 53 | do_install:append(){ |
52 | if [ -n "${KMETA}" ]; then | 54 | if [ -n "${KMETA}" ]; then |
53 | rm -rf ${STAGING_KERNEL_DIR}/${KMETA} | 55 | rm -rf ${STAGING_KERNEL_DIR}/${KMETA} |
54 | fi | 56 | fi |
55 | } | 57 | } |
56 | 58 | ||
57 | # enable kernel-sample for oeqa/runtime/cases's ksample.py test | 59 | # enable kernel-sample for oeqa/runtime/cases's ksample.py test |
58 | KERNEL_FEATURES_append_qemuall=" features/kernel-sample/kernel-sample.scc" | 60 | KERNEL_FEATURES:append:qemuall=" features/kernel-sample/kernel-sample.scc" |
61 | |||
62 | KERNEL_DEBUG ?= "" | ||
63 | # These used to be version specific, but are now common dependencies. New | ||
64 | # tools / dependencies will continue to be added in version specific recipes. | ||
65 | DEPENDS += '${@bb.utils.contains_any("ARCH", [ "x86", "arm64", "powerpc" ], "elfutils-native", "", d)}' | ||
66 | DEPENDS += "openssl-native util-linux-native" | ||
67 | DEPENDS += "gmp-native libmpc-native" | ||
68 | |||
69 | # Some options depend on CONFIG_PAHOLE_VERSION, so need to make pahole-native available before do_kernel_configme | ||
70 | do_kernel_configme[depends] += '${@bb.utils.contains("KERNEL_DEBUG", "True", "pahole-native:do_populate_sysroot", "", d)}' | ||
71 | |||
72 | EXTRA_OEMAKE += '${@bb.utils.contains("KERNEL_DEBUG", "True", "", "PAHOLE=false", d)}' | ||
73 | |||
74 | do_devshell:prepend() { | ||
75 | # setup native pkg-config variables (kconfig scripts call pkg-config directly, cannot generically be overriden to pkg-config-native) | ||
76 | d.setVar("PKG_CONFIG_DIR", "${STAGING_DIR_NATIVE}${libdir_native}/pkgconfig") | ||
77 | d.setVar("PKG_CONFIG_PATH", "${PKG_CONFIG_DIR}:${STAGING_DATADIR_NATIVE}/pkgconfig") | ||
78 | d.setVar("PKG_CONFIG_LIBDIR", "${PKG_CONFIG_DIR}") | ||
79 | d.setVarFlag("PKG_CONFIG_SYSROOT_DIR", "unexport", "1") | ||
80 | d.appendVar("OE_TERMINAL_EXPORTS", " PKG_CONFIG_DIR PKG_CONFIG_PATH PKG_CONFIG_LIBDIR PKG_CONFIG_SYSROOT_DIR") | ||
81 | } | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto_5.10.bb b/meta/recipes-kernel/linux/linux-yocto_5.10.bb deleted file mode 100644 index 38b56c17bf..0000000000 --- a/meta/recipes-kernel/linux/linux-yocto_5.10.bb +++ /dev/null | |||
@@ -1,56 +0,0 @@ | |||
1 | KBRANCH ?= "v5.10/standard/base" | ||
2 | |||
3 | require recipes-kernel/linux/linux-yocto.inc | ||
4 | |||
5 | # board specific branches | ||
6 | KBRANCH_qemuarm ?= "v5.10/standard/arm-versatile-926ejs" | ||
7 | KBRANCH_qemuarm64 ?= "v5.10/standard/qemuarm64" | ||
8 | KBRANCH_qemumips ?= "v5.10/standard/mti-malta32" | ||
9 | KBRANCH_qemuppc ?= "v5.10/standard/qemuppc" | ||
10 | KBRANCH_qemuriscv64 ?= "v5.10/standard/base" | ||
11 | KBRANCH_qemux86 ?= "v5.10/standard/base" | ||
12 | KBRANCH_qemux86-64 ?= "v5.10/standard/base" | ||
13 | KBRANCH_qemumips64 ?= "v5.10/standard/mti-malta64" | ||
14 | |||
15 | SRCREV_machine_qemuarm ?= "57a6fbd33df5c7f057f301387b03a70cdc582282" | ||
16 | SRCREV_machine_qemuarm64 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
17 | SRCREV_machine_qemumips ?= "79bd439bff3c9f95cac6fb81c76b559a404a32dc" | ||
18 | SRCREV_machine_qemuppc ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
19 | SRCREV_machine_qemuriscv64 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
20 | SRCREV_machine_qemux86 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
21 | SRCREV_machine_qemux86-64 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
22 | SRCREV_machine_qemumips64 ?= "07bda345fe202b1d2ce233ffc20b7570f78c9c7f" | ||
23 | SRCREV_machine ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953" | ||
24 | SRCREV_meta ?= "8f72218572b1d4a5f053ced2bbf0558d0557072d" | ||
25 | |||
26 | # remap qemuarm to qemuarma15 for the 5.8 kernel | ||
27 | # KMACHINE_qemuarm ?= "qemuarma15" | ||
28 | |||
29 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \ | ||
30 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}" | ||
31 | |||
32 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | ||
33 | LINUX_VERSION ?= "5.10.16" | ||
34 | |||
35 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | ||
36 | DEPENDS += "openssl-native util-linux-native" | ||
37 | DEPENDS += "gmp-native" | ||
38 | |||
39 | PV = "${LINUX_VERSION}+git${SRCPV}" | ||
40 | |||
41 | KMETA = "kernel-meta" | ||
42 | KCONF_BSP_AUDIT_LEVEL = "1" | ||
43 | |||
44 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | ||
45 | |||
46 | COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv64" | ||
47 | |||
48 | # Functionality flags | ||
49 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" | ||
50 | KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" | ||
51 | KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" | ||
52 | KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
53 | KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
54 | KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}" | ||
55 | KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" | ||
56 | KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}" | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto_5.4.bb b/meta/recipes-kernel/linux/linux-yocto_5.4.bb deleted file mode 100644 index 8d0f4b82c0..0000000000 --- a/meta/recipes-kernel/linux/linux-yocto_5.4.bb +++ /dev/null | |||
@@ -1,55 +0,0 @@ | |||
1 | KBRANCH ?= "v5.4/standard/base" | ||
2 | |||
3 | require recipes-kernel/linux/linux-yocto.inc | ||
4 | |||
5 | # board specific branches | ||
6 | KBRANCH_qemuarm ?= "v5.4/standard/arm-versatile-926ejs" | ||
7 | KBRANCH_qemuarm64 ?= "v5.4/standard/qemuarm64" | ||
8 | KBRANCH_qemumips ?= "v5.4/standard/mti-malta32" | ||
9 | KBRANCH_qemuppc ?= "v5.4/standard/qemuppc" | ||
10 | KBRANCH_qemuriscv64 ?= "v5.4/standard/base" | ||
11 | KBRANCH_qemux86 ?= "v5.4/standard/base" | ||
12 | KBRANCH_qemux86-64 ?= "v5.4/standard/base" | ||
13 | KBRANCH_qemumips64 ?= "v5.4/standard/mti-malta64" | ||
14 | |||
15 | SRCREV_machine_qemuarm ?= "28bc6b294bb1e49da671b2848234f9011efcad88" | ||
16 | SRCREV_machine_qemuarm64 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
17 | SRCREV_machine_qemumips ?= "105568d1696f86625cf7bc30d8c5c921732de2f4" | ||
18 | SRCREV_machine_qemuppc ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
19 | SRCREV_machine_qemuriscv64 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
20 | SRCREV_machine_qemux86 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
21 | SRCREV_machine_qemux86-64 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
22 | SRCREV_machine_qemumips64 ?= "c76ba20ee1b1de859736f85f0210459c2104b8df" | ||
23 | SRCREV_machine ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d" | ||
24 | SRCREV_meta ?= "4f6d6c23cc8ca5d9c39b1efc2619b1dfec1ef2bc" | ||
25 | |||
26 | # remap qemuarm to qemuarma15 for the 5.4 kernel | ||
27 | # KMACHINE_qemuarm ?= "qemuarma15" | ||
28 | |||
29 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \ | ||
30 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" | ||
31 | |||
32 | LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" | ||
33 | LINUX_VERSION ?= "5.4.98" | ||
34 | |||
35 | DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" | ||
36 | DEPENDS += "openssl-native util-linux-native" | ||
37 | |||
38 | PV = "${LINUX_VERSION}+git${SRCPV}" | ||
39 | |||
40 | KMETA = "kernel-meta" | ||
41 | KCONF_BSP_AUDIT_LEVEL = "1" | ||
42 | |||
43 | KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" | ||
44 | |||
45 | COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv64" | ||
46 | |||
47 | # Functionality flags | ||
48 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" | ||
49 | KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" | ||
50 | KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" | ||
51 | KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
52 | KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
53 | KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}" | ||
54 | KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" | ||
55 | KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}" | ||
diff --git a/meta/recipes-kernel/linux/linux-yocto_6.6.bb b/meta/recipes-kernel/linux/linux-yocto_6.6.bb new file mode 100644 index 0000000000..43696db59b --- /dev/null +++ b/meta/recipes-kernel/linux/linux-yocto_6.6.bb | |||
@@ -0,0 +1,72 @@ | |||
1 | KBRANCH ?= "v6.6/standard/base" | ||
2 | |||
3 | require recipes-kernel/linux/linux-yocto.inc | ||
4 | |||
5 | # CVE exclusions | ||
6 | include recipes-kernel/linux/cve-exclusion.inc | ||
7 | include recipes-kernel/linux/cve-exclusion_6.6.inc | ||
8 | |||
9 | # board specific branches | ||
10 | KBRANCH:qemuarm ?= "v6.6/standard/arm-versatile-926ejs" | ||
11 | KBRANCH:qemuarm64 ?= "v6.6/standard/qemuarm64" | ||
12 | KBRANCH:qemumips ?= "v6.6/standard/mti-malta32" | ||
13 | KBRANCH:qemuppc ?= "v6.6/standard/qemuppc" | ||
14 | KBRANCH:qemuriscv64 ?= "v6.6/standard/base" | ||
15 | KBRANCH:qemuriscv32 ?= "v6.6/standard/base" | ||
16 | KBRANCH:qemux86 ?= "v6.6/standard/base" | ||
17 | KBRANCH:qemux86-64 ?= "v6.6/standard/base" | ||
18 | KBRANCH:qemuloongarch64 ?= "v6.6/standard/base" | ||
19 | KBRANCH:qemumips64 ?= "v6.6/standard/mti-malta64" | ||
20 | |||
21 | SRCREV_machine:qemuarm ?= "ceb94a85299b59d8840ed7ed392b1d3e4c727678" | ||
22 | SRCREV_machine:qemuarm64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
23 | SRCREV_machine:qemuloongarch64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
24 | SRCREV_machine:qemumips ?= "c79ffc89f8909f60de52005ef258db9752634eda" | ||
25 | SRCREV_machine:qemuppc ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
26 | SRCREV_machine:qemuriscv64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
27 | SRCREV_machine:qemuriscv32 ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
28 | SRCREV_machine:qemux86 ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
29 | SRCREV_machine:qemux86-64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
30 | SRCREV_machine:qemumips64 ?= "b0a73fa83073c8d7d7bc917bcbeac88d296ebe38" | ||
31 | SRCREV_machine ?= "2d01bc1d4eeade12518371139dd24a21438f523c" | ||
32 | SRCREV_meta ?= "f7f00b22efcfcae6489e9ec7db7002685fbc078b" | ||
33 | |||
34 | # set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll | ||
35 | # get the <version>/base branch, which is pure upstream -stable, and the same | ||
36 | # meta SRCREV as the linux-yocto-standard builds. Select your version using the | ||
37 | # normal PREFERRED_VERSION settings. | ||
38 | BBCLASSEXTEND = "devupstream:target" | ||
39 | SRCREV_machine:class-devupstream ?= "5c7587f69194bc9fc714953ab4c7203e6e68885b" | ||
40 | PN:class-devupstream = "linux-yocto-upstream" | ||
41 | KBRANCH:class-devupstream = "v6.6/base" | ||
42 | |||
43 | SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH};protocol=https \ | ||
44 | git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.6;destsuffix=${KMETA};protocol=https" | ||
45 | |||
46 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | ||
47 | LINUX_VERSION ?= "6.6.23" | ||
48 | |||
49 | PV = "${LINUX_VERSION}+git" | ||
50 | |||
51 | KMETA = "kernel-meta" | ||
52 | KCONF_BSP_AUDIT_LEVEL = "1" | ||
53 | |||
54 | KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb" | ||
55 | |||
56 | COMPATIBLE_MACHINE = "^(qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32|qemuloongarch64)$" | ||
57 | |||
58 | # Functionality flags | ||
59 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" | ||
60 | KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}" | ||
61 | KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc cfg/net/mdio.scc" | ||
62 | KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
63 | KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" | ||
64 | KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}" | ||
65 | KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc features/nf_tables/nft_test.scc", "", d)}" | ||
66 | KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc features/gpio/sim.scc", "", d)}" | ||
67 | KERNEL_FEATURES:append:powerpc =" arch/powerpc/powerpc-debug.scc" | ||
68 | KERNEL_FEATURES:append:powerpc64 =" arch/powerpc/powerpc-debug.scc" | ||
69 | KERNEL_FEATURES:append:powerpc64le =" arch/powerpc/powerpc-debug.scc" | ||
70 | |||
71 | INSANE_SKIP:kernel-vmlinux:qemuppc64 = "textrel" | ||
72 | |||
diff --git a/meta/recipes-kernel/lttng/babeltrace2/run-ptest b/meta/recipes-kernel/lttng/babeltrace2/run-ptest index 72fe223436..71a9c81bfb 100755 --- a/meta/recipes-kernel/lttng/babeltrace2/run-ptest +++ b/meta/recipes-kernel/lttng/babeltrace2/run-ptest | |||
@@ -6,4 +6,14 @@ | |||
6 | # test plan to raise ERRORs; this is just noise. | 6 | # test plan to raise ERRORs; this is just noise. |
7 | makeargs="LOG_DRIVER_FLAGS=--ignore-exit abs_top_srcdir=$PWD abs_top_builddir=$PWD GREP=grep SED=sed PYTHON=python3" | 7 | makeargs="LOG_DRIVER_FLAGS=--ignore-exit abs_top_srcdir=$PWD abs_top_builddir=$PWD GREP=grep SED=sed PYTHON=python3" |
8 | 8 | ||
9 | exec make -C tests -k -s $makeargs $target 2>/dev/null | 9 | exec 2> error.log |
10 | make -C tests -k -s $makeargs $target | ||
11 | exitcode=$? | ||
12 | if [ -e error.log ]; then | ||
13 | cat error.log | ||
14 | fi | ||
15 | if [ -e tests/test-suite.log ]; then | ||
16 | cat tests/test-suite.log | ||
17 | fi | ||
18 | |||
19 | exit $exitcode \ No newline at end of file | ||
diff --git a/meta/recipes-kernel/lttng/babeltrace2_2.0.3.bb b/meta/recipes-kernel/lttng/babeltrace2_2.0.6.bb index 32ba75bf36..d6c75d7580 100644 --- a/meta/recipes-kernel/lttng/babeltrace2_2.0.3.bb +++ b/meta/recipes-kernel/lttng/babeltrace2_2.0.6.bb | |||
@@ -2,34 +2,36 @@ SUMMARY = "Babeltrace2 - Trace Format Babel Tower" | |||
2 | DESCRIPTION = "Babeltrace provides trace read and write libraries in host side, as well as a trace converter, which used to convert LTTng 2.0 traces into human-readable log." | 2 | DESCRIPTION = "Babeltrace provides trace read and write libraries in host side, as well as a trace converter, which used to convert LTTng 2.0 traces into human-readable log." |
3 | HOMEPAGE = "http://babeltrace.org/" | 3 | HOMEPAGE = "http://babeltrace.org/" |
4 | BUGTRACKER = "https://bugs.lttng.org/projects/babeltrace" | 4 | BUGTRACKER = "https://bugs.lttng.org/projects/babeltrace" |
5 | LICENSE = "MIT & GPLv2 & LGPLv2.1 & BSD-2-Clause" | 5 | LICENSE = "MIT & GPL-2.0-only & LGPL-2.1-only & BSD-2-Clause" |
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=a6a458c13f18385b7bc5069a6d7b176e" | 6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=a6a458c13f18385b7bc5069a6d7b176e" |
7 | 7 | ||
8 | DEPENDS = "glib-2.0 util-linux popt bison-native flex-native" | 8 | DEPENDS = "glib-2.0 util-linux popt bison-native flex-native" |
9 | 9 | ||
10 | SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-2.0 \ | 10 | SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-2.0;protocol=https \ |
11 | file://run-ptest \ | 11 | file://run-ptest \ |
12 | file://0001-tests-do-not-run-test-applications-from-.libs.patch \ | 12 | file://0001-tests-do-not-run-test-applications-from-.libs.patch \ |
13 | file://0001-Make-manpages-multilib-identical.patch \ | 13 | file://0001-Make-manpages-multilib-identical.patch \ |
14 | " | 14 | " |
15 | SRCREV = "91d154476e66735d705adda9ca5cbf5b5eea5940" | 15 | SRCREV = "0a6632f77801f3218a288604c646f8a39cb0d2c4" |
16 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>2(\.\d+)+)$" | 16 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>2(\.\d+)+)$" |
17 | 17 | ||
18 | S = "${WORKDIR}/git" | 18 | S = "${WORKDIR}/git" |
19 | 19 | ||
20 | inherit autotools pkgconfig ptest python3targetconfig | 20 | inherit autotools pkgconfig ptest python3targetconfig |
21 | 21 | ||
22 | EXTRA_OECONF = "--disable-debug-info" | 22 | EXTRA_OECONF = "--disable-debug-info --disable-Werror" |
23 | 23 | ||
24 | PACKAGECONFIG ??= "manpages" | 24 | PACKAGECONFIG ??= "manpages" |
25 | PACKAGECONFIG[manpages] = ", --disable-man-pages, asciidoc-native xmlto-native" | 25 | PACKAGECONFIG[manpages] = ", --disable-man-pages, asciidoc-native xmlto-native" |
26 | 26 | ||
27 | FILES_${PN}-staticdev += "${libdir}/babeltrace2/plugins/*.a" | 27 | FILES:${PN}-staticdev += "${libdir}/babeltrace2/plugins/*.a" |
28 | FILES_${PN} += "${libdir}/babeltrace2/plugins/*.so" | 28 | FILES:${PN} += "${libdir}/babeltrace2/plugins/*.so" |
29 | 29 | ||
30 | ASNEEDED = "" | 30 | ASNEEDED = "" |
31 | LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld ptest', ' -fuse-ld=bfd ', '', d)}" | ||
31 | 32 | ||
32 | RDEPENDS_${PN}-ptest += "bash gawk python3" | 33 | # coreutils since we need full mktemp |
34 | RDEPENDS:${PN}-ptest += "bash gawk python3 make grep coreutils findutils" | ||
33 | 35 | ||
34 | do_compile_ptest () { | 36 | do_compile_ptest () { |
35 | make -C tests all | 37 | make -C tests all |
diff --git a/meta/recipes-kernel/lttng/babeltrace_1.5.8.bb b/meta/recipes-kernel/lttng/babeltrace_1.5.11.bb index 9e5d3a7a97..f4d9b5e42a 100644 --- a/meta/recipes-kernel/lttng/babeltrace_1.5.8.bb +++ b/meta/recipes-kernel/lttng/babeltrace_1.5.11.bb | |||
@@ -2,15 +2,15 @@ SUMMARY = "Babeltrace - Trace Format Babel Tower" | |||
2 | DESCRIPTION = "Babeltrace provides trace read and write libraries in host side, as well as a trace converter, which used to convert LTTng 2.0 traces into human-readable log." | 2 | DESCRIPTION = "Babeltrace provides trace read and write libraries in host side, as well as a trace converter, which used to convert LTTng 2.0 traces into human-readable log." |
3 | HOMEPAGE = "http://babeltrace.org/" | 3 | HOMEPAGE = "http://babeltrace.org/" |
4 | BUGTRACKER = "https://bugs.lttng.org/projects/babeltrace" | 4 | BUGTRACKER = "https://bugs.lttng.org/projects/babeltrace" |
5 | LICENSE = "MIT & GPLv2 & LGPLv2.1" | 5 | LICENSE = "MIT & GPL-2.0-only & LGPL-2.1-only" |
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=76ba15dd76a248e1dd526bca0e2125fa" | 6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=76ba15dd76a248e1dd526bca0e2125fa" |
7 | 7 | ||
8 | DEPENDS = "glib-2.0 util-linux popt bison-native flex-native" | 8 | DEPENDS = "glib-2.0 util-linux popt bison-native flex-native" |
9 | 9 | ||
10 | SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-1.5 \ | 10 | SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-1.5;protocol=https \ |
11 | file://run-ptest \ | 11 | file://run-ptest \ |
12 | " | 12 | " |
13 | SRCREV = "054a54ae10b01a271afc4f19496c041b10fb414c" | 13 | SRCREV = "91c00f70884887ff5c4849a8e3d47e311a22ba9d" |
14 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>1(\.\d+)+)$" | 14 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>1(\.\d+)+)$" |
15 | 15 | ||
16 | S = "${WORKDIR}/git" | 16 | S = "${WORKDIR}/git" |
@@ -21,7 +21,7 @@ EXTRA_OECONF = "--disable-debug-info" | |||
21 | 21 | ||
22 | ASNEEDED = "" | 22 | ASNEEDED = "" |
23 | 23 | ||
24 | RDEPENDS_${PN}-ptest += "bash gawk" | 24 | RDEPENDS:${PN}-ptest += "bash gawk make" |
25 | 25 | ||
26 | addtask do_patch_ptest_path after do_patch before do_configure | 26 | addtask do_patch_ptest_path after do_patch before do_configure |
27 | do_patch_ptest_path () { | 27 | do_patch_ptest_path () { |
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch new file mode 100644 index 0000000000..9d5fd0de60 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch | |||
@@ -0,0 +1,93 @@ | |||
1 | From fec007d9630e010062cf5699a08460f71f46b527 Mon Sep 17 00:00:00 2001 | ||
2 | From: Kienan Stewart <kstewart@efficios.com> | ||
3 | Date: Mon, 25 Mar 2024 08:54:42 -0400 | ||
4 | Subject: [PATCH 1/4] Fix: ASoC snd_doc_dapm on linux 6.9-rc1 | ||
5 | |||
6 | See upstream commit: | ||
7 | |||
8 | commit 7df3eb4cdb6bbfa482f51548b9fd47c2723c68ba | ||
9 | Author: Luca Ceresoli <luca.ceresoli@bootlin.com> | ||
10 | Date: Wed Mar 6 10:30:01 2024 +0100 | ||
11 | |||
12 | ASoC: trace: add event to snd_soc_dapm trace events | ||
13 | |||
14 | Add the event value to the snd_soc_dapm_start and snd_soc_dapm_done trace | ||
15 | events to make them more informative. | ||
16 | |||
17 | Trace before: | ||
18 | |||
19 | aplay-229 [000] 250.140309: snd_soc_dapm_start: card=vscn-2046 | ||
20 | aplay-229 [000] 250.167531: snd_soc_dapm_done: card=vscn-2046 | ||
21 | aplay-229 [000] 251.169588: snd_soc_dapm_start: card=vscn-2046 | ||
22 | aplay-229 [000] 251.195245: snd_soc_dapm_done: card=vscn-2046 | ||
23 | |||
24 | Trace after: | ||
25 | |||
26 | aplay-214 [000] 693.290612: snd_soc_dapm_start: card=vscn-2046 event=1 | ||
27 | aplay-214 [000] 693.315508: snd_soc_dapm_done: card=vscn-2046 event=1 | ||
28 | aplay-214 [000] 694.537349: snd_soc_dapm_start: card=vscn-2046 event=2 | ||
29 | aplay-214 [000] 694.563241: snd_soc_dapm_done: card=vscn-2046 event=2 | ||
30 | |||
31 | Upstream-Status: Backport [88c4e0fe Fix: ASoC snd_doc_dapm on linux 6.9-rc1] | ||
32 | |||
33 | Change-Id: If0d33544b8dd1dfb3d12ca9390892190fc0444b0 | ||
34 | Signed-off-by: Kienan Stewart <kstewart@efficios.com> | ||
35 | Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | ||
36 | --- | ||
37 | include/instrumentation/events/asoc.h | 33 +++++++++++++++++++++++++++ | ||
38 | 1 file changed, 33 insertions(+) | ||
39 | |||
40 | diff --git a/include/instrumentation/events/asoc.h b/include/instrumentation/events/asoc.h | ||
41 | index 21d13a0f..5126d4c1 100644 | ||
42 | --- a/include/instrumentation/events/asoc.h | ||
43 | +++ b/include/instrumentation/events/asoc.h | ||
44 | @@ -51,6 +51,38 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_card, snd_soc_bias_level_done, | ||
45 | |||
46 | ) | ||
47 | |||
48 | +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) | ||
49 | +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic, | ||
50 | + | ||
51 | + TP_PROTO(struct snd_soc_card *card, int event), | ||
52 | + | ||
53 | + TP_ARGS(card, event), | ||
54 | + | ||
55 | + TP_FIELDS( | ||
56 | + ctf_string(name, card->name) | ||
57 | + ctf_integer(int, event, event) | ||
58 | + ) | ||
59 | +) | ||
60 | +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_start, | ||
61 | + | ||
62 | + asoc_snd_soc_dapm_start, | ||
63 | + | ||
64 | + TP_PROTO(struct snd_soc_card *card, int event), | ||
65 | + | ||
66 | + TP_ARGS(card, event) | ||
67 | + | ||
68 | +) | ||
69 | + | ||
70 | +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_done, | ||
71 | + | ||
72 | + asoc_snd_soc_dapm_done, | ||
73 | + | ||
74 | + TP_PROTO(struct snd_soc_card *card, int event), | ||
75 | + | ||
76 | + TP_ARGS(card, event) | ||
77 | + | ||
78 | +) | ||
79 | +#else | ||
80 | LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic, | ||
81 | |||
82 | TP_PROTO(struct snd_soc_card *card), | ||
83 | @@ -81,6 +113,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_done, | ||
84 | TP_ARGS(card) | ||
85 | |||
86 | ) | ||
87 | +#endif | ||
88 | |||
89 | LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_widget, | ||
90 | |||
91 | -- | ||
92 | 2.39.2 | ||
93 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch new file mode 100644 index 0000000000..120528bf9c --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch | |||
@@ -0,0 +1,46 @@ | |||
1 | From 878f89b6136ff7b870a19e04901cc6f316bbe10a Mon Sep 17 00:00:00 2001 | ||
2 | From: Bruce Ashfield <bruce.ashfield@gmail.com> | ||
3 | Date: Sat, 15 May 2021 10:26:38 -0400 | ||
4 | Subject: [PATCH] src/Kbuild: change missing CONFIG_TRACEPOINTS to warning | ||
5 | |||
6 | Taken from a previous patch to the main lttng-modules Makefile, by | ||
7 | Otavio Salvador: | ||
8 | |||
9 | The lttng-modules are being pulled by the tools-profile image feature, | ||
10 | however, not every kernel has the CONFIG_TRACEPOINTS feature enabled. | ||
11 | |||
12 | This change makes the build do not fail when CONFIG_TRACEPOINTS is not | ||
13 | available, allowing it to be kept being pulled by default. | ||
14 | |||
15 | Upstream-Status: Inappropriate [embedded specific] | ||
16 | |||
17 | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> | ||
18 | --- | ||
19 | src/Kbuild | 7 ++++++- | ||
20 | 1 file changed, 6 insertions(+), 1 deletion(-) | ||
21 | |||
22 | Index: lttng-modules-2.13.10/src/Kbuild | ||
23 | =================================================================== | ||
24 | --- lttng-modules-2.13.10.orig/src/Kbuild | ||
25 | +++ lttng-modules-2.13.10/src/Kbuild | ||
26 | @@ -2,10 +2,13 @@ | ||
27 | |||
28 | ifdef CONFIG_LOCALVERSION # Check if dot-config is included. | ||
29 | ifeq ($(CONFIG_TRACEPOINTS),) | ||
30 | - $(error The option CONFIG_TRACEPOINTS needs to be enabled in your kernel configuration) | ||
31 | + $(warning The option CONFIG_TRACEPOINTS needs to be enabled in your kernel configuration) | ||
32 | + DISABLE_MODULE = y | ||
33 | endif # CONFIG_TRACEPOINTS | ||
34 | endif # ifdef CONFIG_LOCALVERSION | ||
35 | |||
36 | +ifneq ($(DISABLE_MODULE),y) | ||
37 | + | ||
38 | TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/.. | ||
39 | |||
40 | lttng_check_linux_version = $(shell pwd)/include/linux/version.h | ||
41 | @@ -150,3 +153,5 @@ lttng-statedump-objs := lttng-statedump- | ||
42 | obj-$(CONFIG_LTTNG) += probes/ | ||
43 | obj-$(CONFIG_LTTNG) += lib/ | ||
44 | obj-$(CONFIG_LTTNG) += tests/ | ||
45 | + | ||
46 | +endif # DISABLE_MODULE | ||
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch new file mode 100644 index 0000000000..6ea10ffc91 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch | |||
@@ -0,0 +1,132 @@ | |||
1 | From d8379ec6365a925db33cae94fb6783cdbdb6a922 Mon Sep 17 00:00:00 2001 | ||
2 | From: Kienan Stewart <kstewart@efficios.com> | ||
3 | Date: Mon, 25 Mar 2024 09:40:29 -0400 | ||
4 | Subject: [PATCH 2/4] Fix: ASoC add component to set_bias_level events in linux | ||
5 | 6.9-rc1 | ||
6 | |||
7 | See upstream commit: | ||
8 | |||
9 | commit 6ef46a69ec32fe1cf56de67742fcd01af4bf48af | ||
10 | Author: Luca Ceresoli <luca.ceresoli@bootlin.com> | ||
11 | Date: Wed Mar 6 10:30:00 2024 +0100 | ||
12 | |||
13 | ASoC: trace: add component to set_bias_level trace events | ||
14 | |||
15 | The snd_soc_bias_level_start and snd_soc_bias_level_done trace events | ||
16 | currently look like: | ||
17 | |||
18 | aplay-229 [000] 1250.140778: snd_soc_bias_level_start: card=vscn-2046 val=1 | ||
19 | aplay-229 [000] 1250.140784: snd_soc_bias_level_done: card=vscn-2046 val=1 | ||
20 | aplay-229 [000] 1250.140786: snd_soc_bias_level_start: card=vscn-2046 val=2 | ||
21 | aplay-229 [000] 1250.140788: snd_soc_bias_level_done: card=vscn-2046 val=2 | ||
22 | kworker/u8:1-21 [000] 1250.140871: snd_soc_bias_level_start: card=vscn-2046 val=1 | ||
23 | kworker/u8:0-11 [000] 1250.140951: snd_soc_bias_level_start: card=vscn-2046 val=1 | ||
24 | kworker/u8:0-11 [000] 1250.140956: snd_soc_bias_level_done: card=vscn-2046 val=1 | ||
25 | kworker/u8:0-11 [000] 1250.140959: snd_soc_bias_level_start: card=vscn-2046 val=2 | ||
26 | kworker/u8:0-11 [000] 1250.140961: snd_soc_bias_level_done: card=vscn-2046 val=2 | ||
27 | kworker/u8:1-21 [000] 1250.167219: snd_soc_bias_level_done: card=vscn-2046 val=1 | ||
28 | kworker/u8:1-21 [000] 1250.167222: snd_soc_bias_level_start: card=vscn-2046 val=2 | ||
29 | kworker/u8:1-21 [000] 1250.167232: snd_soc_bias_level_done: card=vscn-2046 val=2 | ||
30 | kworker/u8:0-11 [000] 1250.167440: snd_soc_bias_level_start: card=vscn-2046 val=3 | ||
31 | kworker/u8:0-11 [000] 1250.167444: snd_soc_bias_level_done: card=vscn-2046 val=3 | ||
32 | kworker/u8:1-21 [000] 1250.167497: snd_soc_bias_level_start: card=vscn-2046 val=3 | ||
33 | kworker/u8:1-21 [000] 1250.167506: snd_soc_bias_level_done: card=vscn-2046 val=3 | ||
34 | |||
35 | There are clearly multiple calls, one per component, but they cannot be | ||
36 | discriminated from each other. | ||
37 | |||
38 | Change the ftrace events to also print the component name, to make it clear | ||
39 | which part of the code is involved. This requires changing the passed value | ||
40 | from a struct snd_soc_card, where the DAPM context is not kwown, to a | ||
41 | struct snd_soc_dapm_context where it is obviously known but the a card | ||
42 | pointer is also available. | ||
43 | |||
44 | With this change, the resulting trace becomes: | ||
45 | |||
46 | aplay-247 [000] 1436.357332: snd_soc_bias_level_start: card=vscn-2046 component=(none) val=1 | ||
47 | aplay-247 [000] 1436.357338: snd_soc_bias_level_done: card=vscn-2046 component=(none) val=1 | ||
48 | aplay-247 [000] 1436.357340: snd_soc_bias_level_start: card=vscn-2046 component=(none) val=2 | ||
49 | aplay-247 [000] 1436.357343: snd_soc_bias_level_done: card=vscn-2046 component=(none) val=2 | ||
50 | kworker/u8:4-215 [000] 1436.357437: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=1 | ||
51 | kworker/u8:5-231 [000] 1436.357518: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=1 | ||
52 | kworker/u8:5-231 [000] 1436.357523: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=1 | ||
53 | kworker/u8:5-231 [000] 1436.357526: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=2 | ||
54 | kworker/u8:5-231 [000] 1436.357528: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=2 | ||
55 | kworker/u8:4-215 [000] 1436.383217: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=1 | ||
56 | kworker/u8:4-215 [000] 1436.383221: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=2 | ||
57 | kworker/u8:4-215 [000] 1436.383231: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=2 | ||
58 | kworker/u8:5-231 [000] 1436.383468: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=3 | ||
59 | kworker/u8:5-231 [000] 1436.383472: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=3 | ||
60 | kworker/u8:4-215 [000] 1436.383503: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=3 | ||
61 | kworker/u8:4-215 [000] 1436.383513: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=3 | ||
62 | |||
63 | Upstream-Status: Backport [303434ab Fix: ASoC add component to set_bias_level events in linux 6.9-rc1] | ||
64 | |||
65 | Change-Id: I959f1680c002acdf29828b968d3975247f5433d8 | ||
66 | Signed-off-by: Kienan Stewart <kstewart@efficios.com> | ||
67 | Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | ||
68 | --- | ||
69 | include/instrumentation/events/asoc.h | 36 +++++++++++++++++++++++++++ | ||
70 | 1 file changed, 36 insertions(+) | ||
71 | |||
72 | Index: lttng-modules-2.13.12/include/instrumentation/events/asoc.h | ||
73 | =================================================================== | ||
74 | --- lttng-modules-2.13.12.orig/include/instrumentation/events/asoc.h | ||
75 | +++ lttng-modules-2.13.12/include/instrumentation/events/asoc.h | ||
76 | @@ -10,6 +10,7 @@ | ||
77 | #include <lttng/kernel-version.h> | ||
78 | |||
79 | #define DAPM_DIRECT "(direct)" | ||
80 | +#define DAPM_COMPONENT_NONE "(none)" | ||
81 | |||
82 | #ifndef _TRACE_ASOC_DEF | ||
83 | #define _TRACE_ASOC_DEF | ||
84 | @@ -119,6 +120,40 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc | ||
85 | ) | ||
86 | #endif | ||
87 | |||
88 | +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) | ||
89 | +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_context, | ||
90 | + | ||
91 | + TP_PROTO(struct snd_soc_dapm_context *dapm, int val), | ||
92 | + | ||
93 | + TP_ARGS(dapm, val), | ||
94 | + | ||
95 | + TP_FIELDS( | ||
96 | + ctf_string(name, dapm->card->name) | ||
97 | + ctf_string(component, dapm->component ? dapm->component->name : DAPM_COMPONENT_NONE) | ||
98 | + ctf_integer(int, val, val) | ||
99 | + ) | ||
100 | +) | ||
101 | + | ||
102 | +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_context, snd_soc_bias_level_start, | ||
103 | + | ||
104 | + asoc_snd_soc_bias_level_start, | ||
105 | + | ||
106 | + TP_PROTO(struct snd_soc_dapm_context *dapm, int val), | ||
107 | + | ||
108 | + TP_ARGS(dapm, val) | ||
109 | + | ||
110 | +) | ||
111 | + | ||
112 | +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_context, snd_soc_bias_level_done, | ||
113 | + | ||
114 | + asoc_snd_soc_bias_level_done, | ||
115 | + | ||
116 | + TP_PROTO(struct snd_soc_dapm_context *dapm, int val), | ||
117 | + | ||
118 | + TP_ARGS(dapm, val) | ||
119 | + | ||
120 | +) | ||
121 | +#else | ||
122 | LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_card, | ||
123 | |||
124 | TP_PROTO(struct snd_soc_card *card, int val), | ||
125 | @@ -150,6 +185,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc | ||
126 | TP_ARGS(card, val) | ||
127 | |||
128 | ) | ||
129 | +#endif | ||
130 | |||
131 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) | ||
132 | LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic, | ||
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch b/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch new file mode 100644 index 0000000000..66c48ebe8f --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch | |||
@@ -0,0 +1,81 @@ | |||
1 | From f4a6415f8d5fa447868d1fdc7119e0a328966379 Mon Sep 17 00:00:00 2001 | ||
2 | From: Kienan Stewart <kstewart@efficios.com> | ||
3 | Date: Mon, 25 Mar 2024 10:30:32 -0400 | ||
4 | Subject: [PATCH 3/4] Fix: mm_compaction_migratepages changed in linux 6.9-rc1 | ||
5 | |||
6 | See upstream commit: | ||
7 | |||
8 | commit ab755bf4249b992fc2140d615ab0a686d50765b4 | ||
9 | Author: Baolin Wang <baolin.wang@linux.alibaba.com> | ||
10 | Date: Tue Feb 20 14:16:31 2024 +0800 | ||
11 | |||
12 | mm: compaction: update the cc->nr_migratepages when allocating or freeing the freepages | ||
13 | |||
14 | Currently we will use 'cc->nr_freepages >= cc->nr_migratepages' comparison | ||
15 | to ensure that enough freepages are isolated in isolate_freepages(), | ||
16 | however it just decreases the cc->nr_freepages without updating | ||
17 | cc->nr_migratepages in compaction_alloc(), which will waste more CPU | ||
18 | cycles and cause too many freepages to be isolated. | ||
19 | |||
20 | So we should also update the cc->nr_migratepages when allocating or | ||
21 | freeing the freepages to avoid isolating excess freepages. And I can see | ||
22 | fewer free pages are scanned and isolated when running thpcompact on my | ||
23 | Arm64 server: | ||
24 | |||
25 | k6.7 k6.7_patched | ||
26 | Ops Compaction pages isolated 120692036.00 118160797.00 | ||
27 | Ops Compaction migrate scanned 131210329.00 154093268.00 | ||
28 | Ops Compaction free scanned 1090587971.00 1080632536.00 | ||
29 | Ops Compact scan efficiency 12.03 14.26 | ||
30 | |||
31 | Moreover, I did not see an obvious latency improvements, this is likely | ||
32 | because isolating freepages is not the bottleneck in the thpcompact test | ||
33 | case. | ||
34 | |||
35 | k6.7 k6.7_patched | ||
36 | Amean fault-both-1 1089.76 ( 0.00%) 1080.16 * 0.88%* | ||
37 | Amean fault-both-3 1616.48 ( 0.00%) 1636.65 * -1.25%* | ||
38 | Amean fault-both-5 2266.66 ( 0.00%) 2219.20 * 2.09%* | ||
39 | Amean fault-both-7 2909.84 ( 0.00%) 2801.90 * 3.71%* | ||
40 | Amean fault-both-12 4861.26 ( 0.00%) 4733.25 * 2.63%* | ||
41 | Amean fault-both-18 7351.11 ( 0.00%) 6950.51 * 5.45%* | ||
42 | Amean fault-both-24 9059.30 ( 0.00%) 9159.99 * -1.11%* | ||
43 | Amean fault-both-30 10685.68 ( 0.00%) 11399.02 * -6.68%* | ||
44 | |||
45 | Upstream-Status: Backport [175fe77c Fix: mm_compaction_migratepages changed in linux 6.9-rc1] | ||
46 | |||
47 | Change-Id: I103a43fd1b549360b3fc978fd409b7c17ef3e192 | ||
48 | Signed-off-by: Kienan Stewart <kstewart@efficios.com> | ||
49 | Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | ||
50 | --- | ||
51 | include/instrumentation/events/compaction.h | 17 ++++++++++++++++- | ||
52 | 1 file changed, 16 insertions(+), 1 deletion(-) | ||
53 | |||
54 | Index: lttng-modules-2.13.12/include/instrumentation/events/compaction.h | ||
55 | =================================================================== | ||
56 | --- lttng-modules-2.13.12.orig/include/instrumentation/events/compaction.h | ||
57 | +++ lttng-modules-2.13.12/include/instrumentation/events/compaction.h | ||
58 | @@ -97,7 +97,22 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(comp | ||
59 | |||
60 | #endif /* #else #if LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,0,0) */ | ||
61 | |||
62 | -#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,18,0) || \ | ||
63 | +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) | ||
64 | +LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages, | ||
65 | + | ||
66 | + compaction_migratepages, | ||
67 | + | ||
68 | + TP_PROTO(unsigned int nr_migratepages, | ||
69 | + unsigned int nr_succeeded), | ||
70 | + | ||
71 | + TP_ARGS(nr_migratepages, nr_succeeded), | ||
72 | + | ||
73 | + TP_FIELDS( | ||
74 | + ctf_integer(unsigned long, nr_migrated, nr_succeeded) | ||
75 | + ctf_integer(unsigned long, nr_failed, nr_migratepages - nr_succeeded) | ||
76 | + ) | ||
77 | +) | ||
78 | +#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,18,0) || \ | ||
79 | LTTNG_RHEL_KERNEL_RANGE(5,14,0,163,0,0, 5,15,0,0,0,0)) | ||
80 | LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages, | ||
81 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch b/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch new file mode 100644 index 0000000000..59ef4f9313 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch | |||
@@ -0,0 +1,57 @@ | |||
1 | From 217bc2e4685050dddce9bdd2557b64f6b8c16622 Mon Sep 17 00:00:00 2001 | ||
2 | From: Kienan Stewart <kstewart@efficios.com> | ||
3 | Date: Mon, 25 Mar 2024 10:53:46 -0400 | ||
4 | Subject: [PATCH 4/4] Fix: dev_base_lock removed in linux 6.9-rc1 | ||
5 | |||
6 | See upstream commit: | ||
7 | |||
8 | commit 1b3ef46cb7f2618cc0b507393220a69810f6da12 | ||
9 | Author: Eric Dumazet <edumazet@google.com> | ||
10 | Date: Tue Feb 13 06:32:45 2024 +0000 | ||
11 | |||
12 | net: remove dev_base_lock | ||
13 | |||
14 | dev_base_lock is not needed anymore, all remaining users also hold RTNL. | ||
15 | |||
16 | Upstream-Status: Backport [52eb2ee9 Fix: dev_base_lock removed in linux 6.9-rc1] | ||
17 | |||
18 | Change-Id: I6b07e6eed07fd398302ca14d23162ed24d74df15 | ||
19 | Signed-off-by: Kienan Stewart <kstewart@efficios.com> | ||
20 | Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | ||
21 | --- | ||
22 | src/lttng-statedump-impl.c | 15 +++++++++++++++ | ||
23 | 1 file changed, 15 insertions(+) | ||
24 | |||
25 | Index: lttng-modules-2.13.12/src/lttng-statedump-impl.c | ||
26 | =================================================================== | ||
27 | --- lttng-modules-2.13.12.orig/src/lttng-statedump-impl.c | ||
28 | +++ lttng-modules-2.13.12/src/lttng-statedump-impl.c | ||
29 | @@ -392,6 +392,20 @@ void lttng_enumerate_device(struct lttng | ||
30 | } | ||
31 | } | ||
32 | |||
33 | +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) | ||
34 | +static | ||
35 | +int lttng_enumerate_network_ip_interface(struct lttng_kernel_session *session) | ||
36 | +{ | ||
37 | + struct net_device *dev; | ||
38 | + | ||
39 | + rtnl_lock(); | ||
40 | + for_each_netdev(&init_net, dev) | ||
41 | + lttng_enumerate_device(session, dev); | ||
42 | + rtnl_unlock(); | ||
43 | + | ||
44 | + return 0; | ||
45 | +} | ||
46 | +#else | ||
47 | static | ||
48 | int lttng_enumerate_network_ip_interface(struct lttng_kernel_session *session) | ||
49 | { | ||
50 | @@ -404,6 +418,7 @@ int lttng_enumerate_network_ip_interface | ||
51 | |||
52 | return 0; | ||
53 | } | ||
54 | +#endif /* (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) */ | ||
55 | #else /* CONFIG_INET */ | ||
56 | static inline | ||
57 | int lttng_enumerate_network_ip_interface(struct lttng_kernel_session *session) | ||
diff --git a/meta/recipes-kernel/lttng/lttng-modules/Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch b/meta/recipes-kernel/lttng/lttng-modules/Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch deleted file mode 100644 index e411242272..0000000000 --- a/meta/recipes-kernel/lttng/lttng-modules/Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch +++ /dev/null | |||
@@ -1,49 +0,0 @@ | |||
1 | From 1b0e574d680101105a6c1e8931c78824f5a97a42 Mon Sep 17 00:00:00 2001 | ||
2 | From: Otavio Salvador <otavio@ossystems.com.br> | ||
3 | Date: Mon, 5 Sep 2016 17:08:56 +0000 | ||
4 | Subject: [PATCH] Makefile: Do not fail if CONFIG_TRACEPOINTS is not enabled | ||
5 | Organization: O.S. Systems Software LTDA. | ||
6 | |||
7 | The lttng-modules are being pulled by the tools-profile image feature, | ||
8 | however, not every kernel has the CONFIG_TRACEPOINTS feature enabled. | ||
9 | |||
10 | This change makes the build do not fail when CONFIG_TRACEPOINTS is not | ||
11 | available, allowing it to be kept being pulled by default. | ||
12 | |||
13 | Upstream-Status: Inappropriate [embedded specific] | ||
14 | |||
15 | Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> | ||
16 | --- | ||
17 | Makefile | 9 +++++---- | ||
18 | 1 file changed, 5 insertions(+), 4 deletions(-) | ||
19 | |||
20 | diff --git a/Makefile b/Makefile | ||
21 | index 8602649..75550cc 100644 | ||
22 | --- a/Makefile | ||
23 | +++ b/Makefile | ||
24 | @@ -8,10 +8,7 @@ ifneq ($(KERNELRELEASE),) | ||
25 | # and defines the modules to be built. | ||
26 | |||
27 | ifdef CONFIG_LOCALVERSION # Check if dot-config is included. | ||
28 | - ifeq ($(CONFIG_TRACEPOINTS),) | ||
29 | - $(error The option CONFIG_TRACEPOINTS needs to be enabled in your kernel configuration) | ||
30 | - endif # CONFIG_TRACEPOINTS | ||
31 | - endif # ifdef CONFIG_LOCALVERSION | ||
32 | + ifneq ($(CONFIG_TRACEPOINTS),) | ||
33 | |||
34 | TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST))) | ||
35 | |||
36 | @@ -94,6 +91,10 @@ ifneq ($(KERNELRELEASE),) | ||
37 | obj-$(CONFIG_LTTNG) += lib/ | ||
38 | obj-$(CONFIG_LTTNG) += tests/ | ||
39 | |||
40 | + else | ||
41 | + $(warning The option CONFIG_TRACEPOINTS needs to be enabled in your kernel configuration) | ||
42 | + endif # CONFIG_TRACEPOINTS | ||
43 | + endif # ifdef CONFIG_LOCALVERSION | ||
44 | else # KERNELRELEASE | ||
45 | |||
46 | # This part of the Makefile is used when the 'make' command is runned in the | ||
47 | -- | ||
48 | 2.1.4 | ||
49 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.12.4.bb b/meta/recipes-kernel/lttng/lttng-modules_2.12.4.bb deleted file mode 100644 index 3ca59f789a..0000000000 --- a/meta/recipes-kernel/lttng/lttng-modules_2.12.4.bb +++ /dev/null | |||
@@ -1,41 +0,0 @@ | |||
1 | SECTION = "devel" | ||
2 | SUMMARY = "Linux Trace Toolkit KERNEL MODULE" | ||
3 | DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" | ||
4 | HOMEPAGE = "https://lttng.org/" | ||
5 | LICENSE = "LGPLv2.1 & GPLv2 & MIT" | ||
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" | ||
7 | |||
8 | inherit module | ||
9 | |||
10 | include lttng-platforms.inc | ||
11 | |||
12 | SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ | ||
13 | file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ | ||
14 | " | ||
15 | |||
16 | SRC_URI[sha256sum] = "fe66400fa1b85bff1b9ae24419c74e3bb7d358d643eade0594d81b48bd190688" | ||
17 | |||
18 | export INSTALL_MOD_DIR="kernel/lttng-modules" | ||
19 | |||
20 | EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" | ||
21 | |||
22 | do_install_append() { | ||
23 | # Delete empty directories to avoid QA failures if no modules were built | ||
24 | find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; | ||
25 | } | ||
26 | |||
27 | python do_package_prepend() { | ||
28 | if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): | ||
29 | bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) | ||
30 | } | ||
31 | |||
32 | BBCLASSEXTEND = "devupstream:target" | ||
33 | LIC_FILES_CHKSUM_class-devupstream = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" | ||
34 | DEFAULT_PREFERENCE_class-devupstream = "-1" | ||
35 | SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.12 \ | ||
36 | file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ | ||
37 | " | ||
38 | SRCREV_class-devupstream = "be71b60a327d7ad2588abc5cad2861177119972b" | ||
39 | PV_class-devupstream = "2.12.3+git${SRCPV}" | ||
40 | S_class-devupstream = "${WORKDIR}/git" | ||
41 | SRCREV_FORMAT ?= "lttng_git" | ||
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.13.12.bb b/meta/recipes-kernel/lttng/lttng-modules_2.13.12.bb new file mode 100644 index 0000000000..95d5e2d615 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules_2.13.12.bb | |||
@@ -0,0 +1,45 @@ | |||
1 | SECTION = "devel" | ||
2 | SUMMARY = "Linux Trace Toolkit KERNEL MODULE" | ||
3 | DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" | ||
4 | HOMEPAGE = "https://lttng.org/" | ||
5 | LICENSE = "LGPL-2.1-only & GPL-2.0-only & MIT" | ||
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=0464cff101a009c403cd2ed65d01d4c4" | ||
7 | |||
8 | inherit module | ||
9 | |||
10 | include lttng-platforms.inc | ||
11 | |||
12 | SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ | ||
13 | file://0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch \ | ||
14 | file://0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch \ | ||
15 | file://0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch \ | ||
16 | file://0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch \ | ||
17 | " | ||
18 | |||
19 | # Use :append here so that the patch is applied also when using devupstream | ||
20 | SRC_URI:append = " file://0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch" | ||
21 | |||
22 | SRC_URI[sha256sum] = "d85fcb66c7bd31003ab8735e8c77700e5e4f417b4c22fe1f20112cf435abad79" | ||
23 | |||
24 | export INSTALL_MOD_DIR="kernel/lttng-modules" | ||
25 | |||
26 | EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" | ||
27 | |||
28 | MODULES_MODULE_SYMVERS_LOCATION = "src" | ||
29 | |||
30 | do_install:append() { | ||
31 | # Delete empty directories to avoid QA failures if no modules were built | ||
32 | if [ -d ${D}/${nonarch_base_libdir} ]; then | ||
33 | find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; | ||
34 | fi | ||
35 | } | ||
36 | |||
37 | python do_package:prepend() { | ||
38 | if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): | ||
39 | bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) | ||
40 | } | ||
41 | |||
42 | BBCLASSEXTEND = "devupstream:target" | ||
43 | SRC_URI:class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.13;protocol=https" | ||
44 | SRCREV:class-devupstream = "7584cfc04914cb0842a986e9808686858b9c8630" | ||
45 | SRCREV_FORMAT ?= "lttng_git" | ||
diff --git a/meta/recipes-kernel/lttng/lttng-platforms.inc b/meta/recipes-kernel/lttng/lttng-platforms.inc index aa8220bbb4..900e36df82 100644 --- a/meta/recipes-kernel/lttng/lttng-platforms.inc +++ b/meta/recipes-kernel/lttng/lttng-platforms.inc | |||
@@ -2,16 +2,20 @@ | |||
2 | # Whether the platform supports kernel tracing | 2 | # Whether the platform supports kernel tracing |
3 | # | 3 | # |
4 | LTTNGMODULES = "lttng-modules" | 4 | LTTNGMODULES = "lttng-modules" |
5 | LTTNGMODULES_arc = "" | 5 | LTTNGMODULES:arc = "" |
6 | LTTNGMODULES_riscv64 = "" | 6 | LTTNGMODULES:riscv64 = "" |
7 | 7 | ||
8 | COMPATIBLE_HOST_riscv64_pn-lttng-modules = "null" | 8 | COMPATIBLE_HOST:riscv64:pn-lttng-modules = "null" |
9 | COMPATIBLE_HOST_arc_pn-lttng-modules = "null" | 9 | COMPATIBLE_HOST:arc:pn-lttng-modules = "null" |
10 | 10 | ||
11 | # Whether the platform supports userspace tracing | 11 | # Whether the platform supports userspace tracing |
12 | # lttng-ust uses sched_getcpu() which is not there on for some platforms. | 12 | # lttng-ust uses sched_getcpu() which is not there on for some platforms. |
13 | LTTNGUST = "lttng-ust" | 13 | LTTNGUST = "lttng-ust" |
14 | LTTNGUST_arc = "" | 14 | LTTNGUST:arc = "" |
15 | 15 | ||
16 | COMPATIBLE_HOST_arc_pn-lttng-ust = "null" | 16 | COMPATIBLE_HOST:arc:pn-lttng-ust = "null" |
17 | 17 | ||
18 | # Whether the platform supports lttng-tools | ||
19 | # lttng-tools requires SYS_ppoll and SYS_pselect6 which are not supported on riscv32. | ||
20 | # It's also turned off for riscv32 in meta-riscv. See https://github.com/riscv/meta-riscv/blob/master/conf/layer.conf | ||
21 | COMPATIBLE_HOST:riscv32:pn-lttng-tools = "null" | ||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/0001-Fix-rotation-destroy-flush-fix-session-daemon-abort-.patch b/meta/recipes-kernel/lttng/lttng-tools/0001-Fix-rotation-destroy-flush-fix-session-daemon-abort-.patch new file mode 100644 index 0000000000..3286dfb5c1 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-tools/0001-Fix-rotation-destroy-flush-fix-session-daemon-abort-.patch | |||
@@ -0,0 +1,56 @@ | |||
1 | From 6b45c5f80d20e7bbf3d98c1fa17d2cf8716af3bb Mon Sep 17 00:00:00 2001 | ||
2 | From: Xiangyu Chen <xiangyu.chen@windriver.com> | ||
3 | Date: Mon, 25 Mar 2024 18:20:14 +0800 | ||
4 | Subject: [PATCH] Fix: rotation-destroy-flush: fix session daemon abort if no | ||
5 | kernel module present | ||
6 | |||
7 | Testing rotation-destroy-flush when no lttng kernel modules present, it would | ||
8 | be failed with error message: | ||
9 | |||
10 | Error: Unable to load required module lttng-ring-buffer-client-discard | ||
11 | not ok 1 - Start session daemon | ||
12 | Failed test 'Start session daemon' | ||
13 | not ok 2 - Create session rotation_destroy_flush in -o /tmp/tmp.test_rot ... | ||
14 | ... | ||
15 | |||
16 | This because test script that sets the LTTNG_ABORT_ON_ERROR environment | ||
17 | variable. It's this environment variable that causes the sessiond to handle the | ||
18 | kernel module loading failure as an abort rather than a warning. | ||
19 | |||
20 | Using "check_skip_kernel_test" to detect whether the kernel module fails to | ||
21 | load is expected or not. If the failure is expected, the script won't set that | ||
22 | environment variable any more. | ||
23 | |||
24 | Fixes: 3a174400 | ||
25 | ("tests:add check_skip_kernel_test to check root user and lttng kernel modules") | ||
26 | |||
27 | Upstream-Status: Submitted [https://review.lttng.org/c/lttng-tools/+/12155] | ||
28 | |||
29 | Change-Id: I371e9ba717613e2940186f710cf3cccd35baed6c | ||
30 | Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> | ||
31 | --- | ||
32 | .../ust/rotation-destroy-flush/test_rotation_destroy_flush | 6 +++--- | ||
33 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
34 | |||
35 | diff --git a/tests/regression/ust/rotation-destroy-flush/test_rotation_destroy_flush b/tests/regression/ust/rotation-destroy-flush/test_rotation_destroy_flush | ||
36 | index 669bcbc43..64161768f 100755 | ||
37 | --- a/tests/regression/ust/rotation-destroy-flush/test_rotation_destroy_flush | ||
38 | +++ b/tests/regression/ust/rotation-destroy-flush/test_rotation_destroy_flush | ||
39 | @@ -23,11 +23,11 @@ SIZE_LIMIT=$PAGE_SIZE | ||
40 | NR_ITER=10 | ||
41 | NUM_TESTS=$((15*$NR_ITER)) | ||
42 | |||
43 | -# Ensure the daemons invoke abort on error. | ||
44 | -export LTTNG_ABORT_ON_ERROR=1 | ||
45 | - | ||
46 | source $TESTDIR/utils/utils.sh | ||
47 | |||
48 | +# Ensure the daemons invoke abort on error. | ||
49 | +check_skip_kernel_test || export LTTNG_ABORT_ON_ERROR=1 | ||
50 | + | ||
51 | # MUST set TESTDIR before calling those functions | ||
52 | function run_app() | ||
53 | { | ||
54 | -- | ||
55 | 2.25.1 | ||
56 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/0001-compat-Define-off64_t-as-off_t-on-linux.patch b/meta/recipes-kernel/lttng/lttng-tools/0001-compat-Define-off64_t-as-off_t-on-linux.patch new file mode 100644 index 0000000000..4e21d1e9f1 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-tools/0001-compat-Define-off64_t-as-off_t-on-linux.patch | |||
@@ -0,0 +1,74 @@ | |||
1 | From 74b3844737b03492756b4f896c938b504b069f14 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jérémie Galarneau <jeremie.galarneau@efficios.com> | ||
3 | Date: Tue, 17 Jan 2023 16:57:35 -0500 | ||
4 | Subject: [PATCH] compat: off64_t is not defined by musl | ||
5 | |||
6 | This helps compile with latest musl, where off64_t is not defined unless | ||
7 | _LARGEFILE64_SOURCE is defined. On glibc, _LARGEFILE64_SOURCE is defined | ||
8 | if _GNU_SOURCE is defined, so the problem is only seen with musl. | ||
9 | |||
10 | Since the project uses AC_SYS_LARGEFILE, which from the autoconf doc: | ||
11 | "arrange for 64-bit file offsets, known as large-file support." | ||
12 | |||
13 | As such, it is safe to assume off_t is 64-bit wide. This is checked by a | ||
14 | static_assert to catch any platform where autoconf would let a 32-bit | ||
15 | off_t slip. | ||
16 | |||
17 | Upstream-Status: Submitted [https://review.lttng.org/c/lttng-tools/+/9268] | ||
18 | Reported-by: Khem Raj <raj.khem@gmail.com> | ||
19 | Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com> | ||
20 | Change-Id: If2c6007a8c85bc3f3065002af8a7538b882fb4a8 | ||
21 | --- | ||
22 | |||
23 | --- a/src/common/compat/compat-fcntl.c | ||
24 | +++ b/src/common/compat/compat-fcntl.c | ||
25 | @@ -8,14 +8,17 @@ | ||
26 | #define _LGPL_SOURCE | ||
27 | #include <common/compat/fcntl.h> | ||
28 | #include <common/macros.h> | ||
29 | +#include <common/bug.h> | ||
30 | +#include <stdint.h> | ||
31 | #include <unistd.h> | ||
32 | |||
33 | #ifdef __linux__ | ||
34 | |||
35 | LTTNG_HIDDEN | ||
36 | -int compat_sync_file_range(int fd, off64_t offset, off64_t nbytes, | ||
37 | +int compat_sync_file_range(int fd, off_t offset, off_t nbytes, | ||
38 | unsigned int flags) | ||
39 | { | ||
40 | + LTTNG_BUILD_BUG_ON(sizeof(off_t) != sizeof(int64_t)); | ||
41 | #ifdef HAVE_SYNC_FILE_RANGE | ||
42 | return sync_file_range(fd, offset, nbytes, flags); | ||
43 | #else | ||
44 | --- a/src/common/compat/fcntl.h | ||
45 | +++ b/src/common/compat/fcntl.h | ||
46 | @@ -13,16 +13,12 @@ | ||
47 | |||
48 | #include <common/compat/errno.h> | ||
49 | |||
50 | -#if (defined(__CYGWIN__)) | ||
51 | -typedef long long off64_t; | ||
52 | -#endif | ||
53 | - | ||
54 | #if (defined(__FreeBSD__) || defined(__sun__)) | ||
55 | typedef off64_t loff_t; | ||
56 | #endif | ||
57 | |||
58 | #ifdef __linux__ | ||
59 | -extern int compat_sync_file_range(int fd, off64_t offset, off64_t nbytes, | ||
60 | +extern int compat_sync_file_range(int fd, off_t offset, off_t nbytes, | ||
61 | unsigned int flags); | ||
62 | #define lttng_sync_file_range(fd, offset, nbytes, flags) \ | ||
63 | compat_sync_file_range(fd, offset, nbytes, flags) | ||
64 | @@ -37,8 +33,8 @@ extern int compat_sync_file_range(int fd | ||
65 | #define SYNC_FILE_RANGE_WAIT_BEFORE 0 | ||
66 | #define SYNC_FILE_RANGE_WRITE 0 | ||
67 | |||
68 | -static inline int lttng_sync_file_range(int fd, off64_t offset, | ||
69 | - off64_t nbytes, unsigned int flags) | ||
70 | +static inline int lttng_sync_file_range(int fd, off_t offset, | ||
71 | + off_t nbytes, unsigned int flags) | ||
72 | { | ||
73 | return -ENOSYS; | ||
74 | } | ||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/0001-tests-add-check_skip_kernel_test-to-check-root-user-.patch b/meta/recipes-kernel/lttng/lttng-tools/0001-tests-add-check_skip_kernel_test-to-check-root-user-.patch new file mode 100644 index 0000000000..2671a1908e --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-tools/0001-tests-add-check_skip_kernel_test-to-check-root-user-.patch | |||
@@ -0,0 +1,1246 @@ | |||
1 | From cf558f802b259a33605fe0ede4d74ae2ff6be699 Mon Sep 17 00:00:00 2001 | ||
2 | From: Xiangyu Chen <xiangyu.chen@windriver.com> | ||
3 | Date: Mon, 12 Feb 2024 09:23:54 -0500 | ||
4 | Subject: [PATCH] tests: add check_skip_kernel_test to check root user and | ||
5 | lttng kernel modules | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | |||
10 | The current tests will run both userspace and kernel testing. Some of | ||
11 | use cases only use lttng for one kind of tracing on an embedded | ||
12 | device (e.g. userspace), so in this scenario, the kernel modules might | ||
13 | not install to target rootfs, the test cases would be fail and exit. | ||
14 | |||
15 | Add LTTNG_TOOLS_DISABLE_KERNEL_TESTS to skip the lttng kernel features | ||
16 | test, this flag can be set via "make": | ||
17 | |||
18 | make check LTTNG_TOOLS_DISABLE_KERNEL_TESTS=1 | ||
19 | |||
20 | When this flag was set, all kernel related testcases would be marked as | ||
21 | SKIP in result. | ||
22 | |||
23 | Since the the LTTNG_TOOLS_DISABLE_KERNEL_TESTS was checked in function | ||
24 | check_skip_kernel_test, lots of testcases also need to check root | ||
25 | permission, so merging the root permission checking into | ||
26 | check_skip_kernel_test. | ||
27 | |||
28 | Upstream-Status: Backport from | ||
29 | [https://git.lttng.org/?p=lttng-tools.git;a=commit;h=3a1744008331a0604479d3d7461f77056fad3a64] | ||
30 | |||
31 | Change-Id: I49a1f642a9869c21a69e0186c296fd917bd7b525 | ||
32 | Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> | ||
33 | Signed-off-by: Michael Jeanson <mjeanson@efficios.com> | ||
34 | Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com> | ||
35 | --- | ||
36 | tests/destructive/metadata-regeneration | 8 +---- | ||
37 | tests/perf/test_perf_raw.in | 8 +---- | ||
38 | tests/regression/kernel/test_all_events | 8 +---- | ||
39 | tests/regression/kernel/test_callstack | 8 +---- | ||
40 | tests/regression/kernel/test_channel | 8 +---- | ||
41 | tests/regression/kernel/test_clock_override | 8 +---- | ||
42 | tests/regression/kernel/test_event_basic | 8 +---- | ||
43 | tests/regression/kernel/test_kernel_function | 8 +---- | ||
44 | tests/regression/kernel/test_lttng_logger | 8 +---- | ||
45 | tests/regression/kernel/test_ns_contexts | 8 +---- | ||
46 | .../regression/kernel/test_ns_contexts_change | 9 +---- | ||
47 | .../kernel/test_rotation_destroy_flush | 8 +---- | ||
48 | .../regression/kernel/test_select_poll_epoll | 8 +---- | ||
49 | tests/regression/kernel/test_syscall | 8 +---- | ||
50 | tests/regression/kernel/test_userspace_probe | 8 +---- | ||
51 | tests/regression/tools/clear/test_kernel | 8 +---- | ||
52 | .../tools/filtering/test_invalid_filter | 8 +---- | ||
53 | .../tools/filtering/test_unsupported_op | 8 +---- | ||
54 | .../tools/filtering/test_valid_filter | 8 +---- | ||
55 | tests/regression/tools/health/test_health.sh | 10 ++---- | ||
56 | tests/regression/tools/health/test_thread_ok | 9 +---- | ||
57 | tests/regression/tools/live/test_kernel | 10 +++--- | ||
58 | tests/regression/tools/live/test_lttng_kernel | 8 +---- | ||
59 | tests/regression/tools/metadata/test_kernel | 8 +---- | ||
60 | .../test_notification_kernel_buffer_usage | 36 +++++++++---------- | ||
61 | .../test_notification_kernel_capture | 23 ++++++------ | ||
62 | .../test_notification_kernel_error | 23 ++++++------ | ||
63 | .../test_notification_kernel_instrumentation | 23 ++++++------ | ||
64 | .../test_notification_kernel_syscall | 19 +++++----- | ||
65 | .../test_notification_kernel_userspace_probe | 20 +++++------ | ||
66 | .../notification/test_notification_multi_app | 14 +++----- | ||
67 | ...test_notification_notifier_discarded_count | 9 +++-- | ||
68 | .../tools/regen-metadata/test_kernel | 8 +---- | ||
69 | .../tools/regen-statedump/test_kernel | 8 +---- | ||
70 | tests/regression/tools/rotation/test_kernel | 8 +---- | ||
71 | tests/regression/tools/snapshots/test_kernel | 8 +---- | ||
72 | .../tools/snapshots/test_kernel_streaming | 8 +---- | ||
73 | .../streaming/test_high_throughput_limits | 8 +---- | ||
74 | tests/regression/tools/streaming/test_kernel | 8 +---- | ||
75 | .../tools/tracker/test_event_tracker | 8 +---- | ||
76 | .../tools/trigger/test_add_trigger_cli | 12 ++----- | ||
77 | .../tools/trigger/test_list_triggers_cli | 26 +++++--------- | ||
78 | .../tools/wildcard/test_event_wildcard | 8 +---- | ||
79 | .../test_relayd_working_directory | 4 +-- | ||
80 | .../ust/namespaces/test_ns_contexts_change | 7 +--- | ||
81 | tests/regression/ust/test_event_perf | 8 +---- | ||
82 | tests/utils/utils.sh | 35 ++++++++++++++++++ | ||
83 | 47 files changed, 166 insertions(+), 363 deletions(-) | ||
84 | |||
85 | diff --git a/tests/destructive/metadata-regeneration b/tests/destructive/metadata-regeneration | ||
86 | index b81e7af32..36b130d17 100755 | ||
87 | --- a/tests/destructive/metadata-regeneration | ||
88 | +++ b/tests/destructive/metadata-regeneration | ||
89 | @@ -185,19 +185,13 @@ function test_ust_streaming () | ||
90 | rm -f ${file_sync_before_last} | ||
91 | } | ||
92 | |||
93 | -if [ "$(id -u)" == "0" ]; then | ||
94 | - isroot=1 | ||
95 | -else | ||
96 | - isroot=0 | ||
97 | -fi | ||
98 | - | ||
99 | if ! destructive_tests_enabled ; then | ||
100 | echo 'You need to set the LTTNG_ENABLE_DESTRUCTIVE_TESTS to "will-break-my-system" as argument to run this test' | ||
101 | echo 'Moreover, please make sure that ntp is not running while executing this test' | ||
102 | exit 0 | ||
103 | fi | ||
104 | |||
105 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
106 | +check_skip_kernel_test $NUM_TESTS "Skipping all tests." || | ||
107 | { | ||
108 | start_lttng_relayd "-o $TRACE_PATH" | ||
109 | start_lttng_sessiond | ||
110 | diff --git a/tests/perf/test_perf_raw.in b/tests/perf/test_perf_raw.in | ||
111 | index f293ccd71..d35529a87 100644 | ||
112 | --- a/tests/perf/test_perf_raw.in | ||
113 | +++ b/tests/perf/test_perf_raw.in | ||
114 | @@ -137,12 +137,6 @@ function test_kernel_raw() | ||
115 | rm -rf $TRACE_PATH | ||
116 | } | ||
117 | |||
118 | -if [ "$(id -u)" == "0" ]; then | ||
119 | - isroot=1 | ||
120 | -else | ||
121 | - isroot=0 | ||
122 | -fi | ||
123 | - | ||
124 | # MUST set TESTDIR before calling those functions | ||
125 | plan_tests $NUM_TESTS | ||
126 | |||
127 | @@ -154,7 +148,7 @@ have_libpfm | ||
128 | |||
129 | test_ust_raw | ||
130 | |||
131 | -skip $isroot "Root access is needed for kernel testing, skipping." 9 || | ||
132 | +check_skip_kernel_test 9 || | ||
133 | { | ||
134 | modprobe lttng-test | ||
135 | test_kernel_raw | ||
136 | diff --git a/tests/regression/kernel/test_all_events b/tests/regression/kernel/test_all_events | ||
137 | index 2e20888df..044f9b65f 100755 | ||
138 | --- a/tests/regression/kernel/test_all_events | ||
139 | +++ b/tests/regression/kernel/test_all_events | ||
140 | @@ -43,13 +43,7 @@ plan_tests $NUM_TESTS | ||
141 | |||
142 | print_test_banner "$TEST_DESC" | ||
143 | |||
144 | -if [ "$(id -u)" == "0" ]; then | ||
145 | - isroot=1 | ||
146 | -else | ||
147 | - isroot=0 | ||
148 | -fi | ||
149 | - | ||
150 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
151 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
152 | { | ||
153 | validate_lttng_modules_present | ||
154 | start_lttng_sessiond | ||
155 | diff --git a/tests/regression/kernel/test_callstack b/tests/regression/kernel/test_callstack | ||
156 | index a4477fd7c..d8d6b5e0f 100755 | ||
157 | --- a/tests/regression/kernel/test_callstack | ||
158 | +++ b/tests/regression/kernel/test_callstack | ||
159 | @@ -134,13 +134,7 @@ plan_tests $NUM_TESTS | ||
160 | |||
161 | print_test_banner "$TEST_DESC" | ||
162 | |||
163 | -if [ "$(id -u)" == "0" ]; then | ||
164 | - isroot=1 | ||
165 | -else | ||
166 | - isroot=0 | ||
167 | -fi | ||
168 | - | ||
169 | -skip $isroot "Root access is needed. Skipping all tests." "$NUM_TESTS" || | ||
170 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
171 | { | ||
172 | validate_lttng_modules_present | ||
173 | start_lttng_sessiond | ||
174 | diff --git a/tests/regression/kernel/test_channel b/tests/regression/kernel/test_channel | ||
175 | index 9cc74c4e8..4c377bd2a 100755 | ||
176 | --- a/tests/regression/kernel/test_channel | ||
177 | +++ b/tests/regression/kernel/test_channel | ||
178 | @@ -47,13 +47,7 @@ function test_channel_buffer_too_large() | ||
179 | plan_tests $NUM_TESTS | ||
180 | print_test_banner "$TEST_DESC" | ||
181 | |||
182 | -if [ "$(id -u)" == "0" ]; then | ||
183 | - isroot=1 | ||
184 | -else | ||
185 | - isroot=0 | ||
186 | -fi | ||
187 | - | ||
188 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
189 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
190 | { | ||
191 | start_lttng_sessiond | ||
192 | |||
193 | diff --git a/tests/regression/kernel/test_clock_override b/tests/regression/kernel/test_clock_override | ||
194 | index 72892898b..48a3f926a 100755 | ||
195 | --- a/tests/regression/kernel/test_clock_override | ||
196 | +++ b/tests/regression/kernel/test_clock_override | ||
197 | @@ -172,13 +172,7 @@ TESTS=( | ||
198 | TEST_COUNT=${#TESTS[@]} | ||
199 | i=0 | ||
200 | |||
201 | -if [ "$(id -u)" == "0" ]; then | ||
202 | - isroot=1 | ||
203 | -else | ||
204 | - isroot=0 | ||
205 | -fi | ||
206 | - | ||
207 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
208 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
209 | { | ||
210 | validate_lttng_modules_present | ||
211 | trap signal_cleanup SIGTERM SIGINT | ||
212 | diff --git a/tests/regression/kernel/test_event_basic b/tests/regression/kernel/test_event_basic | ||
213 | index ac9ec0549..387e2f733 100755 | ||
214 | --- a/tests/regression/kernel/test_event_basic | ||
215 | +++ b/tests/regression/kernel/test_event_basic | ||
216 | @@ -73,13 +73,7 @@ plan_tests $NUM_TESTS | ||
217 | |||
218 | print_test_banner "$TEST_DESC" | ||
219 | |||
220 | -if [ "$(id -u)" == "0" ]; then | ||
221 | - isroot=1 | ||
222 | -else | ||
223 | - isroot=0 | ||
224 | -fi | ||
225 | - | ||
226 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
227 | +check_skip_kernel_test $NUM_TESTS "Skipping all tests." || | ||
228 | { | ||
229 | validate_lttng_modules_present | ||
230 | start_lttng_sessiond | ||
231 | diff --git a/tests/regression/kernel/test_kernel_function b/tests/regression/kernel/test_kernel_function | ||
232 | index b1d5491fc..ea16cdeef 100755 | ||
233 | --- a/tests/regression/kernel/test_kernel_function | ||
234 | +++ b/tests/regression/kernel/test_kernel_function | ||
235 | @@ -43,13 +43,7 @@ plan_tests $NUM_TESTS | ||
236 | |||
237 | print_test_banner "$TEST_DESC" | ||
238 | |||
239 | -if [ "$(id -u)" == "0" ]; then | ||
240 | - isroot=1 | ||
241 | -else | ||
242 | - isroot=0 | ||
243 | -fi | ||
244 | - | ||
245 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
246 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
247 | { | ||
248 | start_lttng_sessiond_notap | ||
249 | validate_lttng_modules_present | ||
250 | diff --git a/tests/regression/kernel/test_lttng_logger b/tests/regression/kernel/test_lttng_logger | ||
251 | index b8f7ded82..00eaae823 100755 | ||
252 | --- a/tests/regression/kernel/test_lttng_logger | ||
253 | +++ b/tests/regression/kernel/test_lttng_logger | ||
254 | @@ -110,13 +110,7 @@ plan_tests $NUM_TESTS | ||
255 | |||
256 | print_test_banner "$TEST_DESC" | ||
257 | |||
258 | -if [ "$(id -u)" == "0" ]; then | ||
259 | - isroot=1 | ||
260 | -else | ||
261 | - isroot=0 | ||
262 | -fi | ||
263 | - | ||
264 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
265 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
266 | { | ||
267 | validate_lttng_modules_present | ||
268 | start_lttng_sessiond | ||
269 | diff --git a/tests/regression/kernel/test_ns_contexts b/tests/regression/kernel/test_ns_contexts | ||
270 | index 0c8718d78..59e2568f6 100755 | ||
271 | --- a/tests/regression/kernel/test_ns_contexts | ||
272 | +++ b/tests/regression/kernel/test_ns_contexts | ||
273 | @@ -108,13 +108,7 @@ plan_tests $NUM_TESTS | ||
274 | print_test_banner "$TEST_DESC" | ||
275 | |||
276 | |||
277 | -isroot=0 | ||
278 | -if [ "$(id -u)" == "0" ]; then | ||
279 | - isroot=1 | ||
280 | -fi | ||
281 | - | ||
282 | -skip $isroot "Root access is needed. Skipping all tests." "$NUM_TESTS" && exit 0 | ||
283 | - | ||
284 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." && exit 0 | ||
285 | |||
286 | system_has_ns=0 | ||
287 | if [ -d "/proc/$$/ns" ]; then | ||
288 | diff --git a/tests/regression/kernel/test_ns_contexts_change b/tests/regression/kernel/test_ns_contexts_change | ||
289 | index 42a61276b..3f5e4eeab 100755 | ||
290 | --- a/tests/regression/kernel/test_ns_contexts_change | ||
291 | +++ b/tests/regression/kernel/test_ns_contexts_change | ||
292 | @@ -162,14 +162,7 @@ plan_tests $NUM_TESTS | ||
293 | |||
294 | print_test_banner "$TEST_DESC" | ||
295 | |||
296 | - | ||
297 | -isroot=0 | ||
298 | -if [ "$(id -u)" == "0" ]; then | ||
299 | - isroot=1 | ||
300 | -fi | ||
301 | - | ||
302 | -skip $isroot "Root access is needed. Skipping all tests." "$NUM_TESTS" && exit 0 | ||
303 | - | ||
304 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." && exit 0 | ||
305 | |||
306 | system_has_ns=0 | ||
307 | if [ -d "/proc/$$/ns" ]; then | ||
308 | diff --git a/tests/regression/kernel/test_rotation_destroy_flush b/tests/regression/kernel/test_rotation_destroy_flush | ||
309 | index cb773d7df..0af514b49 100755 | ||
310 | --- a/tests/regression/kernel/test_rotation_destroy_flush | ||
311 | +++ b/tests/regression/kernel/test_rotation_destroy_flush | ||
312 | @@ -120,13 +120,7 @@ TESTS=( | ||
313 | TEST_COUNT=${#TESTS[@]} | ||
314 | i=0 | ||
315 | |||
316 | -if [ "$(id -u)" == "0" ]; then | ||
317 | - isroot=1 | ||
318 | -else | ||
319 | - isroot=0 | ||
320 | -fi | ||
321 | - | ||
322 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
323 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
324 | { | ||
325 | validate_lttng_modules_present | ||
326 | trap signal_cleanup SIGTERM SIGINT | ||
327 | diff --git a/tests/regression/kernel/test_select_poll_epoll b/tests/regression/kernel/test_select_poll_epoll | ||
328 | index d8245a0e7..20f0ef0ae 100755 | ||
329 | --- a/tests/regression/kernel/test_select_poll_epoll | ||
330 | +++ b/tests/regression/kernel/test_select_poll_epoll | ||
331 | @@ -374,13 +374,7 @@ if test $? != 0; then | ||
332 | exit 0 | ||
333 | fi | ||
334 | |||
335 | -if [ "$(id -u)" == "0" ]; then | ||
336 | - isroot=1 | ||
337 | -else | ||
338 | - isroot=0 | ||
339 | -fi | ||
340 | - | ||
341 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
342 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
343 | { | ||
344 | validate_lttng_modules_present | ||
345 | |||
346 | diff --git a/tests/regression/kernel/test_syscall b/tests/regression/kernel/test_syscall | ||
347 | index 401a18a8d..219d94703 100755 | ||
348 | --- a/tests/regression/kernel/test_syscall | ||
349 | +++ b/tests/regression/kernel/test_syscall | ||
350 | @@ -664,13 +664,7 @@ plan_tests $NUM_TESTS | ||
351 | |||
352 | print_test_banner "$TEST_DESC" | ||
353 | |||
354 | -if [ "$(id -u)" == "0" ]; then | ||
355 | - isroot=1 | ||
356 | -else | ||
357 | - isroot=0 | ||
358 | -fi | ||
359 | - | ||
360 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
361 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
362 | { | ||
363 | validate_lttng_modules_present | ||
364 | start_lttng_sessiond | ||
365 | diff --git a/tests/regression/kernel/test_userspace_probe b/tests/regression/kernel/test_userspace_probe | ||
366 | index 1091ee65e..5d984d666 100755 | ||
367 | --- a/tests/regression/kernel/test_userspace_probe | ||
368 | +++ b/tests/regression/kernel/test_userspace_probe | ||
369 | @@ -815,13 +815,7 @@ fi | ||
370 | plan_tests $NUM_TESTS | ||
371 | print_test_banner "$TEST_DESC" | ||
372 | |||
373 | -if [ "$(id -u)" == "0" ]; then | ||
374 | - isroot=1 | ||
375 | -else | ||
376 | - isroot=0 | ||
377 | -fi | ||
378 | - | ||
379 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
380 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
381 | { | ||
382 | validate_lttng_modules_present | ||
383 | start_lttng_sessiond | ||
384 | diff --git a/tests/regression/tools/clear/test_kernel b/tests/regression/tools/clear/test_kernel | ||
385 | index 06fb1c368..48250a742 100755 | ||
386 | --- a/tests/regression/tools/clear/test_kernel | ||
387 | +++ b/tests/regression/tools/clear/test_kernel | ||
388 | @@ -536,12 +536,6 @@ plan_tests $NUM_TESTS | ||
389 | |||
390 | print_test_banner "$TEST_DESC" | ||
391 | |||
392 | -if [ "$(id -u)" == "0" ]; then | ||
393 | - isroot=1 | ||
394 | -else | ||
395 | - isroot=0 | ||
396 | -fi | ||
397 | - | ||
398 | streaming_tests=(test_kernel_streaming | ||
399 | test_kernel_streaming_rotate_clear | ||
400 | test_kernel_streaming_clear_rotate | ||
401 | @@ -563,7 +557,7 @@ snapshot_tests=(test_kernel_streaming_snapshot | ||
402 | test_kernel_local_snapshot | ||
403 | ) | ||
404 | |||
405 | -skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS || | ||
406 | +check_skip_kernel_test "$NUM_TESTS" "Skipping kernel streaming tests." || | ||
407 | { | ||
408 | trap signal_cleanup SIGTERM SIGINT | ||
409 | |||
410 | diff --git a/tests/regression/tools/filtering/test_invalid_filter b/tests/regression/tools/filtering/test_invalid_filter | ||
411 | index 7d9e524d9..8435e5546 100755 | ||
412 | --- a/tests/regression/tools/filtering/test_invalid_filter | ||
413 | +++ b/tests/regression/tools/filtering/test_invalid_filter | ||
414 | @@ -168,13 +168,7 @@ done | ||
415 | |||
416 | test_bytecode_limit -u | ||
417 | |||
418 | -if [ "$(id -u)" == "0" ]; then | ||
419 | - isroot=1 | ||
420 | -else | ||
421 | - isroot=0 | ||
422 | -fi | ||
423 | - | ||
424 | -skip $isroot "Root access is needed. Skipping all kernel invalid filter tests." $NUM_KERNEL_TESTS || | ||
425 | +check_skip_kernel_test "$NUM_KERNEL_TESTS" "Skipping kernel invalid filter tests." || | ||
426 | { | ||
427 | diag "Test kernel filters" | ||
428 | i=0 | ||
429 | diff --git a/tests/regression/tools/filtering/test_unsupported_op b/tests/regression/tools/filtering/test_unsupported_op | ||
430 | index 299247a3c..91eb86d21 100755 | ||
431 | --- a/tests/regression/tools/filtering/test_unsupported_op | ||
432 | +++ b/tests/regression/tools/filtering/test_unsupported_op | ||
433 | @@ -103,13 +103,7 @@ while [ "$i" -lt "$OP_COUNT" ]; do | ||
434 | let "i++" | ||
435 | done | ||
436 | |||
437 | -if [ "$(id -u)" == "0" ]; then | ||
438 | - isroot=1 | ||
439 | -else | ||
440 | - isroot=0 | ||
441 | -fi | ||
442 | - | ||
443 | -skip $isroot "Root access is needed. Skipping all kernel unsupported filter operations tests." $NUM_KERNEL_TESTS || | ||
444 | +check_skip_kernel_test $NUM_KERNEL_TESTS "Skipping kernel unsupported filter operations tests." || | ||
445 | { | ||
446 | diag "Test kernel unsupported filter operations" | ||
447 | |||
448 | diff --git a/tests/regression/tools/filtering/test_valid_filter b/tests/regression/tools/filtering/test_valid_filter | ||
449 | index e76ffa25f..1ba7c79bb 100755 | ||
450 | --- a/tests/regression/tools/filtering/test_valid_filter | ||
451 | +++ b/tests/regression/tools/filtering/test_valid_filter | ||
452 | @@ -1452,13 +1452,7 @@ KERNEL_FILTERS=( | ||
453 | |||
454 | IFS=$OLDIFS | ||
455 | |||
456 | -if [ "$(id -u)" == "0" ]; then | ||
457 | - isroot=1 | ||
458 | -else | ||
459 | - isroot=0 | ||
460 | -fi | ||
461 | - | ||
462 | -skip $isroot "Root access is needed. Skipping all kernel valid filter tests." $NUM_KERNEL_TESTS || | ||
463 | +check_skip_kernel_test "$NUM_KERNEL_TESTS" "Skipping kernel valid filter tests." || | ||
464 | { | ||
465 | diag "Test kernel valid filters" | ||
466 | |||
467 | diff --git a/tests/regression/tools/health/test_health.sh b/tests/regression/tools/health/test_health.sh | ||
468 | index b3d6419d2..68716e6b9 100644 | ||
469 | --- a/tests/regression/tools/health/test_health.sh | ||
470 | +++ b/tests/regression/tools/health/test_health.sh | ||
471 | @@ -82,7 +82,7 @@ function test_health | ||
472 | diag "With UST consumer daemons" | ||
473 | enable_ust_lttng_event_ok $SESSION_NAME $UST_EVENT_NAME $CHANNEL_NAME | ||
474 | |||
475 | - skip $isroot "Root access is needed. Skipping kernel consumer health check test." "1" || | ||
476 | + check_skip_kernel_test "1" "Skipping kernel consumer health check test." || | ||
477 | { | ||
478 | diag "With kernel consumer daemon" | ||
479 | lttng_enable_kernel_event $SESSION_NAME $KERNEL_EVENT_NAME $CHANNEL_NAME | ||
480 | @@ -113,7 +113,7 @@ function test_health | ||
481 | |||
482 | |||
483 | if [ ${test_needs_root} -eq 1 ]; then | ||
484 | - skip ${isroot} "Root access needed for test \"${test_thread_name}\"." "1" || | ||
485 | + check_skip_kernel_test "1" "Skipping \"${test_thread_name}\"." || | ||
486 | { | ||
487 | report_errors "${test_thread_error_string}" "${test_relayd}" | ||
488 | } | ||
489 | @@ -276,12 +276,6 @@ STDERR_PATH=$(mktemp --tmpdir tmp.test_health_stderr_path.XXXXXX) | ||
490 | TRACE_PATH=$(mktemp --tmpdir -d tmp.test_health_trace_path.XXXXXX) | ||
491 | HEALTH_PATH=$(mktemp --tmpdir -d tmp.test_health_trace_path.XXXXXX) | ||
492 | |||
493 | -if [ "$(id -u)" == "0" ]; then | ||
494 | - isroot=1 | ||
495 | -else | ||
496 | - isroot=0 | ||
497 | -fi | ||
498 | - | ||
499 | THREAD_COUNT=${#THREAD[@]} | ||
500 | i=0 | ||
501 | while [ "$i" -lt "$THREAD_COUNT" ]; do | ||
502 | diff --git a/tests/regression/tools/health/test_thread_ok b/tests/regression/tools/health/test_thread_ok | ||
503 | index e84adb611..e5e23543f 100755 | ||
504 | --- a/tests/regression/tools/health/test_thread_ok | ||
505 | +++ b/tests/regression/tools/health/test_thread_ok | ||
506 | @@ -67,7 +67,7 @@ function test_thread_ok | ||
507 | $CURDIR/$HEALTH_CHECK_BIN > ${STDOUT_PATH} 2> ${STDERR_PATH} | ||
508 | report_errors | ||
509 | |||
510 | - skip $isroot "Root access is needed. Skipping kernel consumer health check test." "5" || | ||
511 | + check_skip_kernel_test "5" "Skipping kernel consumer health check test." || | ||
512 | { | ||
513 | diag "With kernel consumer daemon" | ||
514 | create_lttng_session_no_output $SESSION_NAME | ||
515 | @@ -115,13 +115,6 @@ STDERR_PATH=$(mktemp --tmpdir tmp.test_thread_ok_stderr_path.XXXXXX) | ||
516 | TRACE_PATH=$(mktemp --tmpdir -d tmp.test_thread_ok_trace_path.XXXXXX) | ||
517 | HEALTH_PATH=$(mktemp --tmpdir -d tmp.test_thread_ok_trace_path.XXXXXX) | ||
518 | |||
519 | -# The manage kernel thread is only spawned if we are root | ||
520 | -if [ "$(id -u)" == "0" ]; then | ||
521 | - isroot=1 | ||
522 | -else | ||
523 | - isroot=0 | ||
524 | -fi | ||
525 | - | ||
526 | test_thread_ok | ||
527 | |||
528 | rm -rf ${HEALTH_PATH} | ||
529 | diff --git a/tests/regression/tools/live/test_kernel b/tests/regression/tools/live/test_kernel | ||
530 | index b622b5214..fdaa09f0d 100755 | ||
531 | --- a/tests/regression/tools/live/test_kernel | ||
532 | +++ b/tests/regression/tools/live/test_kernel | ||
533 | @@ -39,13 +39,11 @@ function clean_live_tracing() | ||
534 | rm -rf $TRACE_PATH | ||
535 | } | ||
536 | |||
537 | -# Need root access for kernel tracing. | ||
538 | -if [ "$(id -u)" == "0" ]; then | ||
539 | - isroot=1 | ||
540 | -else | ||
541 | - plan_skip_all "Root access is needed. Skipping all tests." | ||
542 | +check_skip_kernel_test && | ||
543 | +{ | ||
544 | + plan_skip_all "Skipping all tests." | ||
545 | exit 0 | ||
546 | -fi | ||
547 | +} | ||
548 | |||
549 | modprobe lttng-test | ||
550 | |||
551 | diff --git a/tests/regression/tools/live/test_lttng_kernel b/tests/regression/tools/live/test_lttng_kernel | ||
552 | index a23d9373a..1b933648f 100755 | ||
553 | --- a/tests/regression/tools/live/test_lttng_kernel | ||
554 | +++ b/tests/regression/tools/live/test_lttng_kernel | ||
555 | @@ -45,13 +45,7 @@ function clean_live_tracing() | ||
556 | } | ||
557 | |||
558 | # Need root access for kernel tracing. | ||
559 | -if [ "$(id -u)" == "0" ]; then | ||
560 | - isroot=1 | ||
561 | -else | ||
562 | - isroot=0 | ||
563 | -fi | ||
564 | - | ||
565 | -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || | ||
566 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
567 | { | ||
568 | modprobe lttng-test | ||
569 | |||
570 | diff --git a/tests/regression/tools/metadata/test_kernel b/tests/regression/tools/metadata/test_kernel | ||
571 | index 57cace6ea..26e95d93a 100755 | ||
572 | --- a/tests/regression/tools/metadata/test_kernel | ||
573 | +++ b/tests/regression/tools/metadata/test_kernel | ||
574 | @@ -91,13 +91,7 @@ plan_tests $NUM_TESTS | ||
575 | print_test_banner "$TEST_DESC" | ||
576 | |||
577 | |||
578 | -if [ "$(id -u)" == "0" ]; then | ||
579 | - isroot=1 | ||
580 | -else | ||
581 | - isroot=0 | ||
582 | -fi | ||
583 | - | ||
584 | -skip $isroot "Root access is needed. Skipping all kernel metadata tests." $NUM_TESTS || | ||
585 | +check_skip_kernel_test "$NUM_TESTS" "Skipping kernel metadata tests." || | ||
586 | { | ||
587 | validate_lttng_modules_present | ||
588 | modprobe lttng-test | ||
589 | diff --git a/tests/regression/tools/notification/test_notification_kernel_buffer_usage b/tests/regression/tools/notification/test_notification_kernel_buffer_usage | ||
590 | index 76e69a77e..8fdaabb3e 100755 | ||
591 | --- a/tests/regression/tools/notification/test_notification_kernel_buffer_usage | ||
592 | +++ b/tests/regression/tools/notification/test_notification_kernel_buffer_usage | ||
593 | @@ -60,29 +60,27 @@ function test_buffer_usage_notification | ||
594 | wait $APP_PID 2> /dev/null | ||
595 | } | ||
596 | |||
597 | -if [ "$(id -u)" == "0" ]; then | ||
598 | - | ||
599 | - validate_lttng_modules_present | ||
600 | - | ||
601 | +check_skip_kernel_test && | ||
602 | +{ | ||
603 | + plan_skip_all "Skipping all tests." | ||
604 | + rm -rf "$TEST_TMPDIR" | ||
605 | + exit 0 | ||
606 | +} | ||
607 | |||
608 | - modprobe lttng-test | ||
609 | +validate_lttng_modules_present | ||
610 | |||
611 | - # Used on sessiond launch. | ||
612 | - LTTNG_SESSIOND_ENV_VARS="LTTNG_TESTPOINT_ENABLE=1 \ | ||
613 | - CONSUMER_PAUSE_PIPE_PATH=${TESTPOINT_PIPE_PATH} \ | ||
614 | - LD_PRELOAD=${TESTPOINT}" | ||
615 | - start_lttng_sessiond_notap | ||
616 | +modprobe lttng-test | ||
617 | |||
618 | - test_buffer_usage_notification | ||
619 | +# Used on sessiond launch. | ||
620 | +LTTNG_SESSIOND_ENV_VARS="LTTNG_TESTPOINT_ENABLE=1 \ | ||
621 | + CONSUMER_PAUSE_PIPE_PATH=${TESTPOINT_PIPE_PATH} \ | ||
622 | + LD_PRELOAD=${TESTPOINT}" | ||
623 | +start_lttng_sessiond_notap | ||
624 | |||
625 | - stop_lttng_sessiond_notap | ||
626 | - rmmod lttng-test | ||
627 | +test_buffer_usage_notification | ||
628 | |||
629 | - rm -rf "${consumerd_pipe[@]}" 2> /dev/null | ||
630 | -else | ||
631 | - # Kernel tests are skipped. | ||
632 | - plan_tests $NUM_TESTS | ||
633 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $NUM_TESTS | ||
634 | -fi | ||
635 | +stop_lttng_sessiond_notap | ||
636 | +rmmod lttng-test | ||
637 | |||
638 | +rm -rf "${consumerd_pipe[@]}" 2> /dev/null | ||
639 | rm -rf "$TEST_TMPDIR" | ||
640 | diff --git a/tests/regression/tools/notification/test_notification_kernel_capture b/tests/regression/tools/notification/test_notification_kernel_capture | ||
641 | index 88f123d3d..0f8a2bc6f 100755 | ||
642 | --- a/tests/regression/tools/notification/test_notification_kernel_capture | ||
643 | +++ b/tests/regression/tools/notification/test_notification_kernel_capture | ||
644 | @@ -31,22 +31,21 @@ function test_basic_error_path | ||
645 | } | ||
646 | |||
647 | |||
648 | -if [ "$(id -u)" == "0" ]; then | ||
649 | - validate_lttng_modules_present | ||
650 | +check_skip_kernel_test && | ||
651 | +{ | ||
652 | + plan_skip_all "Skipping all tests." | ||
653 | + exit 0 | ||
654 | +} | ||
655 | |||
656 | - modprobe lttng-test | ||
657 | +validate_lttng_modules_present | ||
658 | |||
659 | - start_lttng_sessiond_notap | ||
660 | +modprobe lttng-test | ||
661 | |||
662 | - test_basic_error_path | ||
663 | +start_lttng_sessiond_notap | ||
664 | |||
665 | - stop_lttng_sessiond_notap | ||
666 | - rmmod lttng-test | ||
667 | +test_basic_error_path | ||
668 | |||
669 | -else | ||
670 | - # Kernel tests are skipped. | ||
671 | - plan_tests $NUM_TESTS | ||
672 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $NUM_TESTS | ||
673 | -fi | ||
674 | +stop_lttng_sessiond_notap | ||
675 | +rmmod lttng-test | ||
676 | |||
677 | rm -f "$TESTAPP_STATE_PATH" | ||
678 | diff --git a/tests/regression/tools/notification/test_notification_kernel_error b/tests/regression/tools/notification/test_notification_kernel_error | ||
679 | index 80fe6e5b5..b757ec2b4 100755 | ||
680 | --- a/tests/regression/tools/notification/test_notification_kernel_error | ||
681 | +++ b/tests/regression/tools/notification/test_notification_kernel_error | ||
682 | @@ -30,23 +30,22 @@ function test_basic_error_path | ||
683 | wait $APP_PID 2> /dev/null | ||
684 | } | ||
685 | |||
686 | +check_skip_kernel_test && | ||
687 | +{ | ||
688 | + plan_skip_all "Skipping all tests." | ||
689 | + exit 0 | ||
690 | +} | ||
691 | |||
692 | -if [ "$(id -u)" == "0" ]; then | ||
693 | - validate_lttng_modules_present | ||
694 | +validate_lttng_modules_present | ||
695 | |||
696 | - modprobe lttng-test | ||
697 | +modprobe lttng-test | ||
698 | |||
699 | - start_lttng_sessiond_notap | ||
700 | +start_lttng_sessiond_notap | ||
701 | |||
702 | - test_basic_error_path | ||
703 | +test_basic_error_path | ||
704 | |||
705 | - stop_lttng_sessiond_notap | ||
706 | - rmmod lttng-test | ||
707 | +stop_lttng_sessiond_notap | ||
708 | +rmmod lttng-test | ||
709 | |||
710 | -else | ||
711 | - # Kernel tests are skipped. | ||
712 | - plan_tests $NUM_TESTS | ||
713 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $NUM_TESTS | ||
714 | -fi | ||
715 | |||
716 | rm -f "$TESTAPP_STATE_PATH" | ||
717 | diff --git a/tests/regression/tools/notification/test_notification_kernel_instrumentation b/tests/regression/tools/notification/test_notification_kernel_instrumentation | ||
718 | index 90545a541..705f7703d 100755 | ||
719 | --- a/tests/regression/tools/notification/test_notification_kernel_instrumentation | ||
720 | +++ b/tests/regression/tools/notification/test_notification_kernel_instrumentation | ||
721 | @@ -28,22 +28,21 @@ function test_kernel_instrumentation_notification | ||
722 | wait $APP_PID 2> /dev/null | ||
723 | } | ||
724 | |||
725 | -if [ "$(id -u)" == "0" ]; then | ||
726 | - validate_lttng_modules_present | ||
727 | +check_skip_kernel_test && | ||
728 | +{ | ||
729 | + plan_skip_all "Skipping all tests." | ||
730 | + exit 0 | ||
731 | +} | ||
732 | |||
733 | - modprobe lttng-test | ||
734 | +validate_lttng_modules_present | ||
735 | |||
736 | - start_lttng_sessiond_notap | ||
737 | +modprobe lttng-test | ||
738 | |||
739 | - test_kernel_instrumentation_notification | ||
740 | +start_lttng_sessiond_notap | ||
741 | |||
742 | - stop_lttng_sessiond_notap | ||
743 | - rmmod lttng-test | ||
744 | +test_kernel_instrumentation_notification | ||
745 | |||
746 | -else | ||
747 | - # Kernel tests are skipped. | ||
748 | - plan_tests $NUM_TESTS | ||
749 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $NUM_TESTS | ||
750 | -fi | ||
751 | +stop_lttng_sessiond_notap | ||
752 | +rmmod lttng-test | ||
753 | |||
754 | rm -f "$TESTAPP_STATE_PATH" | ||
755 | diff --git a/tests/regression/tools/notification/test_notification_kernel_syscall b/tests/regression/tools/notification/test_notification_kernel_syscall | ||
756 | index d273cb55d..7fa235388 100755 | ||
757 | --- a/tests/regression/tools/notification/test_notification_kernel_syscall | ||
758 | +++ b/tests/regression/tools/notification/test_notification_kernel_syscall | ||
759 | @@ -31,19 +31,18 @@ function test_kernel_syscall_notification | ||
760 | wait $APP_PID 2> /dev/null | ||
761 | } | ||
762 | |||
763 | -if [ "$(id -u)" == "0" ]; then | ||
764 | - validate_lttng_modules_present | ||
765 | +check_skip_kernel_test && | ||
766 | +{ | ||
767 | + plan_skip_all "Skipping all tests." | ||
768 | + exit 0 | ||
769 | +} | ||
770 | |||
771 | - start_lttng_sessiond_notap | ||
772 | +validate_lttng_modules_present | ||
773 | |||
774 | - test_kernel_syscall_notification | ||
775 | +start_lttng_sessiond_notap | ||
776 | |||
777 | - stop_lttng_sessiond_notap | ||
778 | +test_kernel_syscall_notification | ||
779 | |||
780 | -else | ||
781 | - # Kernel tests are skipped. | ||
782 | - plan_tests $NUM_TESTS | ||
783 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $NUM_TESTS | ||
784 | -fi | ||
785 | +stop_lttng_sessiond_notap | ||
786 | |||
787 | rm -f "$TESTAPP_STATE_PATH" | ||
788 | diff --git a/tests/regression/tools/notification/test_notification_kernel_userspace_probe b/tests/regression/tools/notification/test_notification_kernel_userspace_probe | ||
789 | index 8ef8d708d..abddd9be7 100755 | ||
790 | --- a/tests/regression/tools/notification/test_notification_kernel_userspace_probe | ||
791 | +++ b/tests/regression/tools/notification/test_notification_kernel_userspace_probe | ||
792 | @@ -29,18 +29,18 @@ function test_kernel_userspace_probe_notification | ||
793 | wait $APP_PID 2> /dev/null | ||
794 | } | ||
795 | |||
796 | -if [ "$(id -u)" == "0" ]; then | ||
797 | - validate_lttng_modules_present | ||
798 | +check_skip_kernel_test && | ||
799 | +{ | ||
800 | + plan_skip_all "Skipping all tests." | ||
801 | + exit 0 | ||
802 | +} | ||
803 | + | ||
804 | +validate_lttng_modules_present | ||
805 | |||
806 | - start_lttng_sessiond_notap | ||
807 | +start_lttng_sessiond_notap | ||
808 | |||
809 | - test_kernel_userspace_probe_notification | ||
810 | +test_kernel_userspace_probe_notification | ||
811 | |||
812 | - stop_lttng_sessiond_notap | ||
813 | -else | ||
814 | - # Kernel tests are skipped. | ||
815 | - plan_tests $NUM_TESTS | ||
816 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $NUM_TESTS | ||
817 | -fi | ||
818 | +stop_lttng_sessiond_notap | ||
819 | |||
820 | rm -f "$TESTAPP_STATE_PATH" | ||
821 | diff --git a/tests/regression/tools/notification/test_notification_multi_app b/tests/regression/tools/notification/test_notification_multi_app | ||
822 | index d8b639225..61891b56f 100755 | ||
823 | --- a/tests/regression/tools/notification/test_notification_multi_app | ||
824 | +++ b/tests/regression/tools/notification/test_notification_multi_app | ||
825 | @@ -411,22 +411,18 @@ function test_on_register_evaluation () | ||
826 | rm -rf "$output_dir" | ||
827 | } | ||
828 | |||
829 | - | ||
830 | TESTS=( | ||
831 | test_multi_app_ust | ||
832 | test_on_register_evaluation_ust | ||
833 | ) | ||
834 | |||
835 | -if [ "$(id -u)" == "0" ]; then | ||
836 | +check_skip_kernel_test "$NUM_TEST_KERNEL" "Skipping kernel multi-app notification tests." || { | ||
837 | validate_lttng_modules_present | ||
838 | TESTS+=( | ||
839 | - test_multi_app_kernel | ||
840 | - test_on_register_evaluation_kernel | ||
841 | -) | ||
842 | -else | ||
843 | - skip 0 "Root access is needed. Skipping all kernel multi-app notification tests." $NUM_TEST_KERNEL | ||
844 | -fi | ||
845 | - | ||
846 | + test_multi_app_kernel | ||
847 | + test_on_register_evaluation_kernel | ||
848 | + ) | ||
849 | +} | ||
850 | |||
851 | for fct_test in ${TESTS[@]}; | ||
852 | do | ||
853 | diff --git a/tests/regression/tools/notification/test_notification_notifier_discarded_count b/tests/regression/tools/notification/test_notification_notifier_discarded_count | ||
854 | index c9235393e..a6c31a728 100755 | ||
855 | --- a/tests/regression/tools/notification/test_notification_notifier_discarded_count | ||
856 | +++ b/tests/regression/tools/notification/test_notification_notifier_discarded_count | ||
857 | @@ -391,7 +391,8 @@ function test_ust_notifier_discarded_regardless_trigger_owner | ||
858 | test_ust_notifier_discarded_count | ||
859 | test_ust_notifier_discarded_count_max_bucket | ||
860 | |||
861 | -if [ "$(id -u)" == "0" ]; then | ||
862 | +check_skip_kernel_test "$KERNEL_NUM_TESTS" "Skipping kernel notification tests." || | ||
863 | +{ | ||
864 | |||
865 | validate_lttng_modules_present | ||
866 | |||
867 | @@ -413,9 +414,7 @@ if [ "$(id -u)" == "0" ]; then | ||
868 | modprobe --remove lttng-test | ||
869 | |||
870 | rm -rf "${sessiond_pipe[@]}" 2> /dev/null | ||
871 | -else | ||
872 | - # Kernel tests are skipped. | ||
873 | - skip 0 "Root access is needed. Skipping all kernel notification tests." $KERNEL_NUM_TESTS | ||
874 | -fi | ||
875 | + | ||
876 | +} | ||
877 | |||
878 | rm -rf "$TEST_TMPDIR" | ||
879 | diff --git a/tests/regression/tools/regen-metadata/test_kernel b/tests/regression/tools/regen-metadata/test_kernel | ||
880 | index 49eea32a7..555a4e2ce 100755 | ||
881 | --- a/tests/regression/tools/regen-metadata/test_kernel | ||
882 | +++ b/tests/regression/tools/regen-metadata/test_kernel | ||
883 | @@ -99,13 +99,7 @@ plan_tests $NUM_TESTS | ||
884 | |||
885 | print_test_banner "$TEST_DESC" | ||
886 | |||
887 | -if [ "$(id -u)" == "0" ]; then | ||
888 | - isroot=1 | ||
889 | -else | ||
890 | - isroot=0 | ||
891 | -fi | ||
892 | - | ||
893 | -skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS || | ||
894 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
895 | { | ||
896 | validate_lttng_modules_present | ||
897 | |||
898 | diff --git a/tests/regression/tools/regen-statedump/test_kernel b/tests/regression/tools/regen-statedump/test_kernel | ||
899 | index 8a261355d..bbbac3942 100755 | ||
900 | --- a/tests/regression/tools/regen-statedump/test_kernel | ||
901 | +++ b/tests/regression/tools/regen-statedump/test_kernel | ||
902 | @@ -39,13 +39,7 @@ plan_tests $NUM_TESTS | ||
903 | |||
904 | print_test_banner "$TEST_DESC" | ||
905 | |||
906 | -if [ "$(id -u)" == "0" ]; then | ||
907 | - isroot=1 | ||
908 | -else | ||
909 | - isroot=0 | ||
910 | -fi | ||
911 | - | ||
912 | -skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS || | ||
913 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
914 | { | ||
915 | validate_lttng_modules_present | ||
916 | start_lttng_sessiond | ||
917 | diff --git a/tests/regression/tools/rotation/test_kernel b/tests/regression/tools/rotation/test_kernel | ||
918 | index f5f1f5553..efe3fd359 100755 | ||
919 | --- a/tests/regression/tools/rotation/test_kernel | ||
920 | +++ b/tests/regression/tools/rotation/test_kernel | ||
921 | @@ -82,13 +82,7 @@ plan_tests $NUM_TESTS | ||
922 | |||
923 | print_test_banner "$TEST_DESC" | ||
924 | |||
925 | -if [ "$(id -u)" == "0" ]; then | ||
926 | - isroot=1 | ||
927 | -else | ||
928 | - isroot=0 | ||
929 | -fi | ||
930 | - | ||
931 | -skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS || | ||
932 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
933 | { | ||
934 | validate_lttng_modules_present | ||
935 | |||
936 | diff --git a/tests/regression/tools/snapshots/test_kernel b/tests/regression/tools/snapshots/test_kernel | ||
937 | index abb243563..d91876867 100755 | ||
938 | --- a/tests/regression/tools/snapshots/test_kernel | ||
939 | +++ b/tests/regression/tools/snapshots/test_kernel | ||
940 | @@ -217,13 +217,7 @@ plan_tests $NUM_TESTS | ||
941 | |||
942 | print_test_banner "$TEST_DESC" | ||
943 | |||
944 | -if [ "$(id -u)" == "0" ]; then | ||
945 | - isroot=1 | ||
946 | -else | ||
947 | - isroot=0 | ||
948 | -fi | ||
949 | - | ||
950 | -skip $isroot "Root access is needed. Skipping all kernel snapshot tests" $NUM_TESTS || | ||
951 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
952 | { | ||
953 | |||
954 | validate_lttng_modules_present | ||
955 | diff --git a/tests/regression/tools/snapshots/test_kernel_streaming b/tests/regression/tools/snapshots/test_kernel_streaming | ||
956 | index 0c92dc710..dd965afee 100755 | ||
957 | --- a/tests/regression/tools/snapshots/test_kernel_streaming | ||
958 | +++ b/tests/regression/tools/snapshots/test_kernel_streaming | ||
959 | @@ -145,13 +145,7 @@ plan_tests $NUM_TESTS | ||
960 | |||
961 | print_test_banner "$TEST_DESC" | ||
962 | |||
963 | -if [ "$(id -u)" == "0" ]; then | ||
964 | - isroot=1 | ||
965 | -else | ||
966 | - isroot=0 | ||
967 | -fi | ||
968 | - | ||
969 | -skip $isroot "Root access is needed. Skipping all kernel streaming tests" $NUM_TESTS || | ||
970 | +check_skip_kernel_test $NUM_TESTS "Skipping all tests." || | ||
971 | { | ||
972 | validate_lttng_modules_present | ||
973 | |||
974 | diff --git a/tests/regression/tools/streaming/test_high_throughput_limits b/tests/regression/tools/streaming/test_high_throughput_limits | ||
975 | index 2b9e3ad39..c55d51098 100755 | ||
976 | --- a/tests/regression/tools/streaming/test_high_throughput_limits | ||
977 | +++ b/tests/regression/tools/streaming/test_high_throughput_limits | ||
978 | @@ -170,13 +170,7 @@ plan_tests $NUM_TESTS | ||
979 | |||
980 | print_test_banner "$TEST_DESC" | ||
981 | |||
982 | -if [ "$(id -u)" == "0" ]; then | ||
983 | - isroot=1 | ||
984 | -else | ||
985 | - isroot=0 | ||
986 | -fi | ||
987 | - | ||
988 | -skip $isroot "Root access is needed to set bandwith limits. Skipping all tests." $NUM_TESTS || | ||
989 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
990 | { | ||
991 | |||
992 | # Catch sigint and try to cleanup limits | ||
993 | diff --git a/tests/regression/tools/streaming/test_kernel b/tests/regression/tools/streaming/test_kernel | ||
994 | index 33334229f..113eea7bf 100755 | ||
995 | --- a/tests/regression/tools/streaming/test_kernel | ||
996 | +++ b/tests/regression/tools/streaming/test_kernel | ||
997 | @@ -47,13 +47,7 @@ plan_tests $NUM_TESTS | ||
998 | |||
999 | print_test_banner "$TEST_DESC" | ||
1000 | |||
1001 | -if [ "$(id -u)" == "0" ]; then | ||
1002 | - isroot=1 | ||
1003 | -else | ||
1004 | - isroot=0 | ||
1005 | -fi | ||
1006 | - | ||
1007 | -skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS || | ||
1008 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." || | ||
1009 | { | ||
1010 | validate_lttng_modules_present | ||
1011 | |||
1012 | diff --git a/tests/regression/tools/tracker/test_event_tracker b/tests/regression/tools/tracker/test_event_tracker | ||
1013 | index cc0f698d2..de0c79d36 100755 | ||
1014 | --- a/tests/regression/tools/tracker/test_event_tracker | ||
1015 | +++ b/tests/regression/tools/tracker/test_event_tracker | ||
1016 | @@ -466,13 +466,7 @@ test_event_track_untrack ust 0 "${EVENT_NAME}" "--pid --all" # backward compat | ||
1017 | test_event_tracker ust 1 "${EVENT_NAME}" "--pid --all" # backward compat | ||
1018 | test_event_pid_tracker ust 1 "${EVENT_NAME}" | ||
1019 | |||
1020 | -if [ "$(id -u)" == "0" ]; then | ||
1021 | - isroot=1 | ||
1022 | -else | ||
1023 | - isroot=0 | ||
1024 | -fi | ||
1025 | - | ||
1026 | -skip $isroot "Root access is needed. Skipping all kernel tracker tests." $NUM_KERNEL_TESTS || | ||
1027 | +check_skip_kernel_test "$NUM_KERNEL_TESTS" "Skipping kernel tracker tests." || | ||
1028 | { | ||
1029 | diag "Test kernel tracker" | ||
1030 | |||
1031 | diff --git a/tests/regression/tools/trigger/test_add_trigger_cli b/tests/regression/tools/trigger/test_add_trigger_cli | ||
1032 | index 98ecf6272..d1763aa2e 100755 | ||
1033 | --- a/tests/regression/tools/trigger/test_add_trigger_cli | ||
1034 | +++ b/tests/regression/tools/trigger/test_add_trigger_cli | ||
1035 | @@ -34,12 +34,6 @@ tmp_stdout=$(mktemp --tmpdir -t test_parse_cli_trigger_stdout.XXXXXX) | ||
1036 | tmp_stderr=$(mktemp --tmpdir -t test_parse_cli_trigger_stderr.XXXXXX) | ||
1037 | uprobe_elf_binary="${TESTDIR}/utils/testapp/userspace-probe-elf-binary/.libs/userspace-probe-elf-binary" | ||
1038 | |||
1039 | -if [ "$(id -u)" == "0" ]; then | ||
1040 | - ist_root=1 | ||
1041 | -else | ||
1042 | - ist_root=0 | ||
1043 | -fi | ||
1044 | - | ||
1045 | function test_success () | ||
1046 | { | ||
1047 | local test_name="$1" | ||
1048 | @@ -223,7 +217,7 @@ test_success "--exclude-name two" "trigger5" \ | ||
1049 | --condition event-rule-matches --type=user --name='jean-*' --exclude-name jean-chretien -x jean-charest \ | ||
1050 | --action notify | ||
1051 | |||
1052 | -skip $ist_root "non-root user: skipping kprobe tests" 18 || { | ||
1053 | +check_skip_kernel_test 18 "Skipping kprobe tests." || { | ||
1054 | i=0 | ||
1055 | |||
1056 | for type in kprobe kernel:kprobe; do | ||
1057 | @@ -262,7 +256,7 @@ skip $ist_root "non-root user: skipping kprobe tests" 18 || { | ||
1058 | done | ||
1059 | } | ||
1060 | |||
1061 | -skip $ist_root "non-root user: skipping uprobe tests" 6 || { | ||
1062 | +check_skip_kernel_test 6 "Skipping uprobe tests." || { | ||
1063 | test_success "--condition event-rule-matches uprobe" "uprobe-trigger-0" \ | ||
1064 | --name="uprobe-trigger-0" \ | ||
1065 | --condition event-rule-matches --type=kernel:uprobe --location=${uprobe_elf_binary}:test_function --event-name=ma-probe \ | ||
1066 | @@ -274,7 +268,7 @@ skip $ist_root "non-root user: skipping uprobe tests" 6 || { | ||
1067 | --action notify | ||
1068 | } | ||
1069 | |||
1070 | -skip $ist_root "non-root user: skipping syscall tests" 30 || { | ||
1071 | +check_skip_kernel_test 30 "Skipping syscall tests." || { | ||
1072 | test_success "--condition event-rule-matches one syscall" "syscall-trigger-0" \ | ||
1073 | --name="syscall-trigger-0" \ | ||
1074 | --condition event-rule-matches --type=syscall --name=open \ | ||
1075 | diff --git a/tests/regression/tools/trigger/test_list_triggers_cli b/tests/regression/tools/trigger/test_list_triggers_cli | ||
1076 | index a04018013..02c3de3e9 100755 | ||
1077 | --- a/tests/regression/tools/trigger/test_list_triggers_cli | ||
1078 | +++ b/tests/regression/tools/trigger/test_list_triggers_cli | ||
1079 | @@ -36,22 +36,12 @@ uprobe_sdt_binary=$(realpath "${TESTDIR}/utils/testapp/userspace-probe-sdt-binar | ||
1080 | register_some_triggers_bin=$(realpath "${CURDIR}/utils/register-some-triggers") | ||
1081 | |||
1082 | uid=$(id --user) | ||
1083 | -gid=$(id --group) | ||
1084 | |||
1085 | -if [ "$uid" == "0" ]; then | ||
1086 | - ist_root=1 | ||
1087 | - ls "$uprobe_sdt_binary" >/dev/null 2>&1 | ||
1088 | - if test $? == 0; then | ||
1089 | - hast_sdt_binary=1 | ||
1090 | - else | ||
1091 | - hast_sdt_binary=0 | ||
1092 | - fi | ||
1093 | -else | ||
1094 | - ist_root=0 | ||
1095 | - hast_sdt_binary=0 | ||
1096 | +sdt_binary_present=0 | ||
1097 | +if [ -f "$uprobe_sdt_binary" ]; then | ||
1098 | + sdt_binary_present=1 | ||
1099 | fi | ||
1100 | |||
1101 | - | ||
1102 | test_top_level_options () | ||
1103 | { | ||
1104 | diag "Listing top level options" | ||
1105 | @@ -2695,10 +2685,12 @@ start_lttng_sessiond_notap | ||
1106 | |||
1107 | test_top_level_options | ||
1108 | test_event_rule_matches_tracepoint | ||
1109 | -skip $ist_root "non-root user: skipping kprobe tests" 13 || test_event_rule_matches_probe | ||
1110 | -skip $ist_root "non-root user: skipping uprobe tests" 9 || test_event_rule_matches_userspace_probe_elf | ||
1111 | -skip $(($ist_root && $hast_sdt_binary)) "skipping userspace probe SDT tests" 9 || test_event_rule_matches_userspace_probe_sdt | ||
1112 | -skip $ist_root "non-root user: skipping syscall tests" 17 || test_event_rule_matches_syscall | ||
1113 | +check_skip_kernel_test 48 "Skipping kprobe, uprobe, SDT and syscall tests." || { | ||
1114 | + test_event_rule_matches_probe | ||
1115 | + test_event_rule_matches_userspace_probe_elf | ||
1116 | + skip $sdt_binary_present "No SDT binary. Skipping userspace probe SDT tests" 9 || test_event_rule_matches_userspace_probe_sdt | ||
1117 | + test_event_rule_matches_syscall | ||
1118 | +} | ||
1119 | test_session_consumed_size_condition | ||
1120 | test_buffer_usage_conditions | ||
1121 | test_session_rotation_conditions | ||
1122 | diff --git a/tests/regression/tools/wildcard/test_event_wildcard b/tests/regression/tools/wildcard/test_event_wildcard | ||
1123 | index f69baffc4..14d9bb88a 100755 | ||
1124 | --- a/tests/regression/tools/wildcard/test_event_wildcard | ||
1125 | +++ b/tests/regression/tools/wildcard/test_event_wildcard | ||
1126 | @@ -124,13 +124,7 @@ test_event_wildcard ust 1 'tp*tptest' | ||
1127 | test_event_wildcard ust 1 'tp**tptest' | ||
1128 | test_event_wildcard ust 1 'tp*test' | ||
1129 | |||
1130 | -if [ "$(id -u)" == "0" ]; then | ||
1131 | - isroot=1 | ||
1132 | -else | ||
1133 | - isroot=0 | ||
1134 | -fi | ||
1135 | - | ||
1136 | -skip $isroot "Root access is needed. Skipping all kernel wildcard tests." $NUM_KERNEL_TESTS || | ||
1137 | +check_skip_kernel_test "$NUM_KERNEL_TESTS" "Skipping kernel wildcard tests." || | ||
1138 | { | ||
1139 | diag "Test kernel wildcards" | ||
1140 | |||
1141 | diff --git a/tests/regression/tools/working-directory/test_relayd_working_directory b/tests/regression/tools/working-directory/test_relayd_working_directory | ||
1142 | index c7e784cca..6bd1e504a 100755 | ||
1143 | --- a/tests/regression/tools/working-directory/test_relayd_working_directory | ||
1144 | +++ b/tests/regression/tools/working-directory/test_relayd_working_directory | ||
1145 | @@ -145,9 +145,9 @@ function test_relayd_debug_permission() | ||
1146 | diag "Test lttng-relayd change working directory on non writable directory" | ||
1147 | |||
1148 | if [ "$(id -u)" == "0" ]; then | ||
1149 | - is_user=0 | ||
1150 | + is_user=0 | ||
1151 | else | ||
1152 | - is_user=1 | ||
1153 | + is_user=1 | ||
1154 | fi | ||
1155 | |||
1156 | skip $is_user "Skipping permission debug output test; operation can't fail as root" 6 || | ||
1157 | diff --git a/tests/regression/ust/namespaces/test_ns_contexts_change b/tests/regression/ust/namespaces/test_ns_contexts_change | ||
1158 | index 8a4b62ce3..622241f7b 100755 | ||
1159 | --- a/tests/regression/ust/namespaces/test_ns_contexts_change | ||
1160 | +++ b/tests/regression/ust/namespaces/test_ns_contexts_change | ||
1161 | @@ -101,12 +101,7 @@ plan_tests $NUM_TESTS | ||
1162 | |||
1163 | print_test_banner "$TEST_DESC" | ||
1164 | |||
1165 | -isroot=0 | ||
1166 | -if [ "$(id -u)" == "0" ]; then | ||
1167 | - isroot=1 | ||
1168 | -fi | ||
1169 | - | ||
1170 | -skip $isroot "Root access is needed. Skipping all tests." "$NUM_TESTS" && exit 0 | ||
1171 | +check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." && exit 0 | ||
1172 | |||
1173 | system_has_ns=0 | ||
1174 | if [ -d "/proc/$$/ns" ]; then | ||
1175 | diff --git a/tests/regression/ust/test_event_perf b/tests/regression/ust/test_event_perf | ||
1176 | index 33aab2981..178959a19 100755 | ||
1177 | --- a/tests/regression/ust/test_event_perf | ||
1178 | +++ b/tests/regression/ust/test_event_perf | ||
1179 | @@ -119,17 +119,11 @@ plan_tests $NUM_TESTS | ||
1180 | |||
1181 | print_test_banner "$TEST_DESC" | ||
1182 | |||
1183 | -if [ "$(id -u)" == "0" ]; then | ||
1184 | - isroot=1 | ||
1185 | -else | ||
1186 | - isroot=0 | ||
1187 | -fi | ||
1188 | - | ||
1189 | start_lttng_sessiond | ||
1190 | |||
1191 | test_parsing_raw | ||
1192 | |||
1193 | -skip $isroot "Root access is needed. Skipping UST perf tests." 8 || | ||
1194 | +check_skip_kernel_test 8 "Skipping UST perf tests." || | ||
1195 | { | ||
1196 | test_event_basic | ||
1197 | } | ||
1198 | diff --git a/tests/utils/utils.sh b/tests/utils/utils.sh | ||
1199 | index faa87e783..da0e0569d 100644 | ||
1200 | --- a/tests/utils/utils.sh | ||
1201 | +++ b/tests/utils/utils.sh | ||
1202 | @@ -318,6 +318,41 @@ function conf_proc_count() | ||
1203 | echo | ||
1204 | } | ||
1205 | |||
1206 | +# Usage: | ||
1207 | +# check_skip_kernel_test [NB_TESTS] [SKIP_MESSAGE] | ||
1208 | +# Return 0 if LTTNG_TOOLS_DISABLE_KERNEL_TESTS was set or the current user is not a root user | ||
1209 | +# If NB_TESTS is set, call skip() to skip number of tests. | ||
1210 | +# If NB_TESTS is empty, just output a reason with diag. | ||
1211 | +# An optional message can be added. | ||
1212 | + | ||
1213 | +function check_skip_kernel_test () | ||
1214 | +{ | ||
1215 | + local num_tests="$1" | ||
1216 | + local skip_message="$2" | ||
1217 | + | ||
1218 | + # Check for skip test kernel flag | ||
1219 | + if [ "$LTTNG_TOOLS_DISABLE_KERNEL_TESTS" == "1" ]; then | ||
1220 | + if ! test -z "$num_tests"; then | ||
1221 | + skip 0 "LTTNG_TOOLS_DISABLE_KERNEL_TESTS was set.${skip_message+ }${skip_message}" "$num_tests" | ||
1222 | + else | ||
1223 | + diag "LTTNG_TOOLS_DISABLE_KERNEL_TESTS was set.${skip_message+ }${skip_message}" | ||
1224 | + fi | ||
1225 | + return 0 | ||
1226 | + fi | ||
1227 | + | ||
1228 | + # Check if we are running as root | ||
1229 | + if [ "$(id -u)" != "0" ]; then | ||
1230 | + if ! test -z "$num_tests"; then | ||
1231 | + skip 0 "Root access is needed for kernel testing.${skip_message+ }${skip_message}" "$num_tests" | ||
1232 | + else | ||
1233 | + diag "Root access is needed for kernel testing.${skip_message+ }${skip_message}" | ||
1234 | + fi | ||
1235 | + return 0 | ||
1236 | + fi | ||
1237 | + | ||
1238 | + return 1 | ||
1239 | +} | ||
1240 | + | ||
1241 | # Check if base lttng-modules are present. | ||
1242 | # Bail out on failure | ||
1243 | function validate_lttng_modules_present () | ||
1244 | -- | ||
1245 | 2.25.1 | ||
1246 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/0001-tests-do-not-strip-a-helper-library.patch b/meta/recipes-kernel/lttng/lttng-tools/0001-tests-do-not-strip-a-helper-library.patch index 2d08b08879..2f95889c4b 100644 --- a/meta/recipes-kernel/lttng/lttng-tools/0001-tests-do-not-strip-a-helper-library.patch +++ b/meta/recipes-kernel/lttng/lttng-tools/0001-tests-do-not-strip-a-helper-library.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From ab238c213fac190972f55e73cf3e0bb1c7846eb8 Mon Sep 17 00:00:00 2001 | 1 | From 2237748af00467ad8250a7ccd944200f811db69a Mon Sep 17 00:00:00 2001 |
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | 2 | From: Alexander Kanavin <alex.kanavin@gmail.com> |
3 | Date: Thu, 12 Dec 2019 16:52:07 +0100 | 3 | Date: Thu, 12 Dec 2019 16:52:07 +0100 |
4 | Subject: [PATCH] tests: do not strip a helper library | 4 | Subject: [PATCH] tests: do not strip a helper library |
@@ -10,10 +10,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | |||
10 | 1 file changed, 1 insertion(+), 1 deletion(-) | 10 | 1 file changed, 1 insertion(+), 1 deletion(-) |
11 | 11 | ||
12 | diff --git a/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am b/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am | 12 | diff --git a/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am b/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am |
13 | index 03f5d5a..d12c343 100644 | 13 | index 836f13e..e19a554 100644 |
14 | --- a/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am | 14 | --- a/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am |
15 | +++ b/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am | 15 | +++ b/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am |
16 | @@ -12,7 +12,7 @@ userspace_probe_elf_binary_LDADD = libfoo.la | 16 | @@ -14,7 +14,7 @@ userspace_probe_elf_binary_LDADD = libfoo.la |
17 | libfoo.strip: libfoo.la | 17 | libfoo.strip: libfoo.la |
18 | $(OBJCOPY) --strip-all .libs/libfoo.so | 18 | $(OBJCOPY) --strip-all .libs/libfoo.so |
19 | 19 | ||
@@ -22,6 +22,3 @@ index 03f5d5a..d12c343 100644 | |||
22 | @if [ x"$(srcdir)" != x"$(builddir)" ]; then \ | 22 | @if [ x"$(srcdir)" != x"$(builddir)" ]; then \ |
23 | for script in $(EXTRA_DIST); do \ | 23 | for script in $(EXTRA_DIST); do \ |
24 | cp -f $(srcdir)/$$script $(builddir); \ | 24 | cp -f $(srcdir)/$$script $(builddir); \ |
25 | -- | ||
26 | 2.17.1 | ||
27 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/0001-tests-regression-disable-the-tools-live-tests.patch b/meta/recipes-kernel/lttng/lttng-tools/0001-tests-regression-disable-the-tools-live-tests.patch deleted file mode 100644 index 08c1423310..0000000000 --- a/meta/recipes-kernel/lttng/lttng-tools/0001-tests-regression-disable-the-tools-live-tests.patch +++ /dev/null | |||
@@ -1,55 +0,0 @@ | |||
1 | From de9fc501e775cae05f1f87534b4237cd78e8d9a8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Fri, 24 Jan 2020 18:03:25 +0100 | ||
4 | Subject: [PATCH] tests/regression: disable the tools/live tests | ||
5 | |||
6 | They have been found to sporadically fail; the issue has been | ||
7 | reported upstream and they will work to investigate and fix: | ||
8 | https://bugs.lttng.org/issues/1217 | ||
9 | |||
10 | Upstream-Status: Inappropriate [upstream is working on a real fix] | ||
11 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
12 | |||
13 | --- | ||
14 | tests/regression/Makefile.am | 10 +--------- | ||
15 | 1 file changed, 1 insertion(+), 9 deletions(-) | ||
16 | |||
17 | diff --git a/tests/regression/Makefile.am b/tests/regression/Makefile.am | ||
18 | index cbac90d..d467886 100644 | ||
19 | --- a/tests/regression/Makefile.am | ||
20 | +++ b/tests/regression/Makefile.am | ||
21 | @@ -11,16 +11,10 @@ TESTS = tools/filtering/test_invalid_filter \ | ||
22 | tools/filtering/test_valid_filter \ | ||
23 | tools/streaming/test_ust \ | ||
24 | tools/health/test_thread_ok \ | ||
25 | - tools/live/test_ust \ | ||
26 | - tools/live/test_ust_tracefile_count \ | ||
27 | - tools/live/test_lttng_ust \ | ||
28 | tools/tracefile-limits/test_tracefile_count \ | ||
29 | tools/tracefile-limits/test_tracefile_size \ | ||
30 | - tools/exclusion/test_exclusion \ | ||
31 | tools/snapshots/test_ust_fast \ | ||
32 | - tools/snapshots/test_ust_streaming \ | ||
33 | tools/save-load/test_save \ | ||
34 | - tools/save-load/test_load \ | ||
35 | tools/save-load/test_autoload \ | ||
36 | tools/mi/test_mi \ | ||
37 | tools/wildcard/test_event_wildcard \ | ||
38 | @@ -38,8 +32,7 @@ TESTS = tools/filtering/test_invalid_filter \ | ||
39 | tools/working-directory/test_relayd_working_directory \ | ||
40 | tools/notification/test_notification_multi_app \ | ||
41 | tools/clear/test_ust \ | ||
42 | - tools/clear/test_kernel \ | ||
43 | - tools/tracker/test_event_tracker | ||
44 | + tools/clear/test_kernel | ||
45 | |||
46 | if HAVE_LIBLTTNG_UST_CTL | ||
47 | SUBDIRS += ust | ||
48 | @@ -60,7 +53,6 @@ TESTS += ust/before-after/test_before_after \ | ||
49 | ust/multi-lib/test_multi_lib \ | ||
50 | ust/rotation-destroy-flush/test_rotation_destroy_flush \ | ||
51 | ust/namespaces/test_ns_contexts \ | ||
52 | - ust/namespaces/test_ns_contexts_change \ | ||
53 | tools/metadata/test_ust \ | ||
54 | tools/relayd-grouping/test_ust | ||
55 | endif # HAVE_LIBLTTNG_UST_CTL | ||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/determinism.patch b/meta/recipes-kernel/lttng/lttng-tools/determinism.patch deleted file mode 100644 index b2ab880bd6..0000000000 --- a/meta/recipes-kernel/lttng/lttng-tools/determinism.patch +++ /dev/null | |||
@@ -1,64 +0,0 @@ | |||
1 | This is a bit ugly. Specifing abs_builddir as an RPATH is plain wrong when | ||
2 | cross compiling. Sadly, removing the rpath makes libtool/automake do | ||
3 | weird things and breaks the build as shared libs are no longer generated. | ||
4 | |||
5 | We already try and delete the RPATH at do_install with chrpath however | ||
6 | that does leave the path in the string table so it doesn't help us | ||
7 | with reproducibility. | ||
8 | |||
9 | Instead, hack in a bogus but harmless path, then delete it later in | ||
10 | our do_install. Ultimately we may want to pass a specific path to use | ||
11 | to configure if we really do need to set an RPATH at all. It is unclear | ||
12 | to me whether the tests need that or not. | ||
13 | |||
14 | Fixes reproducibility issues for lttng-tools. | ||
15 | |||
16 | Upstream-Status: Pending [needs discussion with upstream about the correct solution] | ||
17 | RP 2021/3/1 | ||
18 | |||
19 | Index: lttng-tools-2.12.2/tests/regression/ust/ust-dl/Makefile.am | ||
20 | =================================================================== | ||
21 | --- lttng-tools-2.12.2.orig/tests/regression/ust/ust-dl/Makefile.am | ||
22 | +++ lttng-tools-2.12.2/tests/regression/ust/ust-dl/Makefile.am | ||
23 | @@ -27,16 +27,16 @@ noinst_LTLIBRARIES = libzzz.la libbar.la | ||
24 | |||
25 | libzzz_la_SOURCES = libzzz.c libzzz.h | ||
26 | libzzz_la_LDFLAGS = -module -shared -avoid-version \ | ||
27 | - -rpath $(abs_builddir) | ||
28 | + -rpath /usr/lib | ||
29 | |||
30 | libbar_la_SOURCES = libbar.c libbar.h | ||
31 | libbar_la_LDFLAGS = -module -shared -avoid-version \ | ||
32 | - -rpath $(abs_builddir) | ||
33 | + -rpath /usr/lib | ||
34 | libbar_la_LIBADD = libzzz.la | ||
35 | |||
36 | libfoo_la_SOURCES = libfoo.c libfoo.h | ||
37 | libfoo_la_LDFLAGS = -module -shared -avoid-version \ | ||
38 | - -rpath $(abs_builddir) | ||
39 | + -rpath /usr/lib | ||
40 | libfoo_la_LIBADD = libbar.la | ||
41 | |||
42 | CLEANFILES = libfoo.so libfoo.so.debug libbar.so libbar.so.debug \ | ||
43 | @@ -44,7 +44,7 @@ CLEANFILES = libfoo.so libfoo.so.debug l | ||
44 | |||
45 | libtp_la_SOURCES = libbar-tp.h libbar-tp.c libfoo-tp.h libfoo-tp.c \ | ||
46 | libzzz-tp.h libzzz-tp.c | ||
47 | -libtp_la_LDFLAGS = -module -shared -rpath $(abs_builddir) | ||
48 | +libtp_la_LDFLAGS = -module -shared -rpath /usr/lib | ||
49 | |||
50 | # Extract debug symbols | ||
51 | libfoo.so.debug: libfoo.la | ||
52 | Index: lttng-tools-2.12.2/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am | ||
53 | =================================================================== | ||
54 | --- lttng-tools-2.12.2.orig/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am | ||
55 | +++ lttng-tools-2.12.2/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am | ||
56 | @@ -5,7 +5,7 @@ AM_CFLAGS += -O0 | ||
57 | noinst_LTLIBRARIES = libfoo.la | ||
58 | |||
59 | libfoo_la_SOURCES = foo.c foo.h | ||
60 | -libfoo_la_LDFLAGS = -shared -module -avoid-version -rpath $(abs_builddir)/.libs/ | ||
61 | +libfoo_la_LDFLAGS = -shared -module -avoid-version -rpath /usr/lib | ||
62 | |||
63 | noinst_PROGRAMS = userspace-probe-elf-binary | ||
64 | userspace_probe_elf_binary_SOURCES = userspace-probe-elf-binary.c | ||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/disable-tests.patch b/meta/recipes-kernel/lttng/lttng-tools/disable-tests.patch new file mode 100644 index 0000000000..3a77ea2e43 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-tools/disable-tests.patch | |||
@@ -0,0 +1,34 @@ | |||
1 | Upstream-Status: Inappropriate [need to root cause the test hangs] | ||
2 | |||
3 | We keep seeing hangs in the tools/notifications tests on x86 and arm for | ||
4 | a variety of distros. Exclude them for now to work out if this is the | ||
5 | only place we see them and give SWAT/triage a break from the stream | ||
6 | of them. | ||
7 | |||
8 | https://bugzilla.yoctoproject.org/show_bug.cgi?id=14263 | ||
9 | |||
10 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
11 | |||
12 | Index: lttng-tools-2.13.1/tests/regression/Makefile.am | ||
13 | =================================================================== | ||
14 | --- lttng-tools-2.13.1.orig/tests/regression/Makefile.am | ||
15 | +++ lttng-tools-2.13.1/tests/regression/Makefile.am | ||
16 | @@ -29,18 +29,6 @@ TESTS = tools/base-path/test_ust \ | ||
17 | tools/crash/test_crash \ | ||
18 | tools/regen-metadata/test_ust \ | ||
19 | tools/regen-statedump/test_ust \ | ||
20 | - tools/notification/test_notification_ust_error \ | ||
21 | - tools/notification/test_notification_ust_buffer_usage \ | ||
22 | - tools/notification/test_notification_ust_capture \ | ||
23 | - tools/notification/test_notification_ust_event_rule_condition_exclusion \ | ||
24 | - tools/notification/test_notification_kernel_error \ | ||
25 | - tools/notification/test_notification_kernel_buffer_usage \ | ||
26 | - tools/notification/test_notification_kernel_capture \ | ||
27 | - tools/notification/test_notification_kernel_instrumentation \ | ||
28 | - tools/notification/test_notification_kernel_syscall \ | ||
29 | - tools/notification/test_notification_notifier_discarded_count \ | ||
30 | - tools/notification/test_notification_kernel_userspace_probe \ | ||
31 | - tools/notification/test_notification_multi_app \ | ||
32 | tools/rotation/test_ust \ | ||
33 | tools/rotation/test_kernel \ | ||
34 | tools/rotation/test_save_load_mi \ | ||
diff --git a/meta/recipes-kernel/lttng/lttng-tools/run-ptest b/meta/recipes-kernel/lttng/lttng-tools/run-ptest index eaa2e7b29d..39d93e2bbf 100755 --- a/meta/recipes-kernel/lttng/lttng-tools/run-ptest +++ b/meta/recipes-kernel/lttng/lttng-tools/run-ptest | |||
@@ -1,6 +1,45 @@ | |||
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | # Without --ignore-exit, the tap harness causes any FAILs within a | 2 | # Without --ignore-exit, the tap harness causes any FAILs within a |
3 | # test plan to raise ERRORs; this is just noise. | 3 | # test plan to raise ERRORs; this is just noise. |
4 | makeargs="LOG_DRIVER_FLAGS=--ignore-exit top_srcdir=$PWD top_builddir=$PWD" | 4 | |
5 | make -k -t all >/dev/null 2>&1 | 5 | #Detecting whether current system has lttng kernel modules |
6 | exec make -k -s $makeargs check 2>/dev/null | sed -e 's#/tmp/tmp\...........#/tmp/tmp.XXXXXXXXXX#g' | 6 | LTTNG_KMOD_PATH=/lib/modules/$(uname -r)/kernel/lttng-modules/lttng-tracer.ko |
7 | function validate_lttng_modules_present() | ||
8 | { | ||
9 | # Check for loadable modules. | ||
10 | if [ -f "$LTTNG_KMOD_PATH" ]; then | ||
11 | return 0 | ||
12 | fi | ||
13 | |||
14 | # Check for builtin modules. | ||
15 | ls /proc/lttng > /dev/null 2>&1 | ||
16 | if [ $? -eq 0 ]; then | ||
17 | return 0 | ||
18 | fi | ||
19 | |||
20 | return 1 | ||
21 | } | ||
22 | |||
23 | export LD_LIBRARY_PATH=FIXMEPTESTPATH/tests/utils/testapp/userspace-probe-elf-binary/.libs | ||
24 | makeargs="LOG_DRIVER_FLAGS=--ignore-exit top_srcdir=FIXMEPTESTPATH top_builddir=FIXMEPTESTPATH" | ||
25 | |||
26 | #If current system doesn't have lttng kernel modules, disable lttng kernel related tests. | ||
27 | validate_lttng_modules_present || { | ||
28 | makeargs="$makeargs LTTNG_TOOLS_DISABLE_KERNEL_TESTS=1" | ||
29 | } | ||
30 | |||
31 | make -k -t all >error.log 2>&1 | ||
32 | # Can specify a test e.g.: | ||
33 | # -C tests/regression/ check TESTS='kernel/test_callstack' | ||
34 | make -k -s $makeargs check 2>error.log | sed -e 's#/tmp/tmp\...........#/tmp/tmp.XXXXXXXXXX#g' | ||
35 | exitcode=$? | ||
36 | if [ -e error.log ]; then | ||
37 | cat error.log | ||
38 | fi | ||
39 | if [ -e tests/unit/test-suite.log ]; then | ||
40 | cat tests/unit/test-suite.log | ||
41 | fi | ||
42 | if [ -e tests/regression/test-suite.log ]; then | ||
43 | cat tests/regression/test-suite.log | ||
44 | fi | ||
45 | exit $exitcode | ||
diff --git a/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb b/meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb index 52bfd36370..174dec036e 100644 --- a/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb +++ b/meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb | |||
@@ -5,27 +5,27 @@ to extract program execution details from the Linux operating system \ | |||
5 | and interpret them." | 5 | and interpret them." |
6 | HOMEPAGE = "https://github.com/lttng/lttng-tools" | 6 | HOMEPAGE = "https://github.com/lttng/lttng-tools" |
7 | 7 | ||
8 | LICENSE = "GPLv2 & LGPLv2.1" | 8 | LICENSE = "GPL-2.0-only & LGPL-2.1-only" |
9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=40ef17463fbd6f377db3c47b1cbaded8 \ | 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=40ef17463fbd6f377db3c47b1cbaded8 \ |
10 | file://LICENSES/GPL-2.0;md5=e68f69a54b44ba526ad7cb963e18fbce \ | 10 | file://LICENSES/GPL-2.0;md5=e68f69a54b44ba526ad7cb963e18fbce \ |
11 | file://LICENSES/LGPL-2.1;md5=9920968d0f2ff585ce61fae30344dd95" | 11 | file://LICENSES/LGPL-2.1;md5=9920968d0f2ff585ce61fae30344dd95" |
12 | 12 | ||
13 | include lttng-platforms.inc | 13 | include lttng-platforms.inc |
14 | 14 | ||
15 | DEPENDS = "liburcu popt libxml2 util-linux" | 15 | DEPENDS = "liburcu popt libxml2 util-linux bison-native" |
16 | RDEPENDS_${PN} = "libgcc" | 16 | RDEPENDS:${PN} = "libgcc" |
17 | RRECOMMENDS_${PN} += "${LTTNGMODULES}" | 17 | RRECOMMENDS:${PN} += "${LTTNGMODULES}" |
18 | RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod ${LTTNGMODULES} sed python3-core" | 18 | RDEPENDS:${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod ${LTTNGMODULES} sed python3-core grep binutils" |
19 | RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" | 19 | RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils" |
20 | RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" | 20 | RDEPENDS:${PN}-ptest:append:libc-musl = " musl-utils" |
21 | # babelstats.pl wants getopt-long | 21 | # babelstats.pl wants getopt-long |
22 | RDEPENDS_${PN}-ptest += "perl-module-getopt-long" | 22 | RDEPENDS:${PN}-ptest += "perl-module-getopt-long" |
23 | 23 | ||
24 | PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ | 24 | PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ |
25 | am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ | 25 | am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ |
26 | PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ | 26 | PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ |
27 | " | 27 | " |
28 | PACKAGECONFIG ??= "${LTTNGUST}" | 28 | PACKAGECONFIG ??= "${LTTNGUST} kmod" |
29 | PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" | 29 | PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" |
30 | PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" | 30 | PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" |
31 | PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" | 31 | PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" |
@@ -35,48 +35,59 @@ SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ | |||
35 | file://0001-tests-do-not-strip-a-helper-library.patch \ | 35 | file://0001-tests-do-not-strip-a-helper-library.patch \ |
36 | file://run-ptest \ | 36 | file://run-ptest \ |
37 | file://lttng-sessiond.service \ | 37 | file://lttng-sessiond.service \ |
38 | file://0001-tests-regression-disable-the-tools-live-tests.patch \ | 38 | file://disable-tests.patch \ |
39 | file://determinism.patch \ | 39 | file://0001-compat-Define-off64_t-as-off_t-on-linux.patch \ |
40 | file://0001-tests-add-check_skip_kernel_test-to-check-root-user-.patch \ | ||
41 | file://0001-Fix-rotation-destroy-flush-fix-session-daemon-abort-.patch \ | ||
40 | " | 42 | " |
41 | 43 | ||
42 | SRC_URI[sha256sum] = "9ed9161795ff023b076f9f95afaa4f1f822ec42495c0fa04c586ab8fa74e84f1" | 44 | SRC_URI[sha256sum] = "ff5f4f00b081dac66092afe8e72b7c790670931cf1c1ee0deaa7f80fbc53883e" |
43 | 45 | ||
44 | inherit autotools ptest pkgconfig useradd python3-dir manpages systemd | 46 | inherit autotools ptest pkgconfig useradd python3-dir manpages systemd |
45 | 47 | ||
46 | SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service" | 48 | CACHED_CONFIGUREVARS = "PGREP=/usr/bin/pgrep" |
49 | |||
50 | SYSTEMD_SERVICE:${PN} = "lttng-sessiond.service" | ||
47 | SYSTEMD_AUTO_ENABLE = "disable" | 51 | SYSTEMD_AUTO_ENABLE = "disable" |
48 | 52 | ||
49 | USERADD_PACKAGES = "${PN}" | 53 | USERADD_PACKAGES = "${PN}" |
50 | GROUPADD_PARAM_${PN} = "tracing" | 54 | GROUPADD_PARAM:${PN} = "tracing" |
51 | 55 | ||
52 | FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ | 56 | FILES:${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ |
53 | ${PYTHON_SITEPACKAGES_DIR}/*" | 57 | ${PYTHON_SITEPACKAGES_DIR}/*" |
54 | FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" | 58 | FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" |
55 | FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" | 59 | FILES:${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" |
56 | 60 | ||
57 | # Since files are installed into ${libdir}/lttng/libexec we match | 61 | # Since files are installed into ${libdir}/lttng/libexec we match |
58 | # the libexec insane test so skip it. | 62 | # the libexec insane test so skip it. |
59 | # Python module needs to keep _lttng.so | 63 | # Python module needs to keep _lttng.so |
60 | INSANE_SKIP_${PN} = "libexec dev-so" | 64 | INSANE_SKIP:${PN} = "libexec dev-so" |
61 | INSANE_SKIP_${PN}-dbg = "libexec" | 65 | INSANE_SKIP:${PN}-dbg = "libexec" |
62 | 66 | ||
63 | PRIVATE_LIBS_${PN}-ptest = "libfoo.so" | 67 | PRIVATE_LIBS:${PN}-ptest = "libfoo.so" |
64 | 68 | ||
65 | do_install_append () { | 69 | do_install:append () { |
66 | # install systemd unit file | 70 | # install systemd unit file |
67 | install -d ${D}${systemd_unitdir}/system | 71 | install -d ${D}${systemd_system_unitdir} |
68 | install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system | 72 | install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_system_unitdir} |
69 | } | 73 | } |
70 | 74 | ||
71 | do_install_ptest () { | 75 | do_install_ptest () { |
72 | for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/load-42*.lttng tests/regression/tools/save-load/configuration/load-42*.lttng tests/regression/tools/health/test_health.sh tests/regression/tools/metadata/utils.sh tests/regression/tools/rotation/rotate_utils.sh; do | 76 | for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/*.lttng \ |
77 | tests/regression/tools/save-load/configuration/load-42*.lttng tests/regression/tools/health/test_health.sh \ | ||
78 | tests/regression/tools/metadata/utils.sh tests/regression/tools/rotation/rotate_utils.sh \ | ||
79 | tests/regression/tools/notification/util_event_generator.sh \ | ||
80 | tests/regression/tools/base-path/*.lttng; do | ||
73 | install -D "${B}/$f" "${D}${PTEST_PATH}/$f" | 81 | install -D "${B}/$f" "${D}${PTEST_PATH}/$f" |
74 | done | 82 | done |
75 | 83 | ||
76 | for f in config/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-4.0.xsd; do | 84 | for f in tests/utils/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-4.1.xsd; do |
77 | install -D "${S}/$f" "${D}${PTEST_PATH}/$f" | 85 | install -D "${S}/$f" "${D}${PTEST_PATH}/$f" |
78 | done | 86 | done |
79 | 87 | ||
88 | # Patch in the correct path for the custom libraries a helper executable needs | ||
89 | sed -i -e 's!FIXMEPTESTPATH!${PTEST_PATH}!g' "${D}${PTEST_PATH}/run-ptest" | ||
90 | |||
80 | # Prevent 'make check' from recursing into non-test subdirectories. | 91 | # Prevent 'make check' from recursing into non-test subdirectories. |
81 | sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" | 92 | sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" |
82 | 93 | ||
@@ -104,7 +115,7 @@ do_install_ptest () { | |||
104 | for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do | 115 | for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do |
105 | cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f | 116 | cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f |
106 | case $f in | 117 | case $f in |
107 | *.so) | 118 | *.so|userspace-probe-elf-*) |
108 | install -d ${D}${PTEST_PATH}/tests/$d/ | 119 | install -d ${D}${PTEST_PATH}/tests/$d/ |
109 | ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f | 120 | ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f |
110 | # Remove any rpath/runpath to pass QA check. | 121 | # Remove any rpath/runpath to pass QA check. |
@@ -115,6 +126,7 @@ do_install_ptest () { | |||
115 | done | 126 | done |
116 | 127 | ||
117 | chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary | 128 | chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary |
129 | chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-cxx-binary/userspace-probe-elf-cxx-binary | ||
118 | chrpath --delete ${D}${PTEST_PATH}/tests/regression/ust/ust-dl/libbar.so | 130 | chrpath --delete ${D}${PTEST_PATH}/tests/regression/ust/ust-dl/libbar.so |
119 | chrpath --delete ${D}${PTEST_PATH}/tests/regression/ust/ust-dl/libfoo.so | 131 | chrpath --delete ${D}${PTEST_PATH}/tests/regression/ust/ust-dl/libfoo.so |
120 | 132 | ||
@@ -155,7 +167,7 @@ do_install_ptest () { | |||
155 | -i ${D}${PTEST_PATH}/tests/unit/Makefile | 167 | -i ${D}${PTEST_PATH}/tests/unit/Makefile |
156 | 168 | ||
157 | # Fix hardcoded build path | 169 | # Fix hardcoded build path |
158 | sed -e 's#TESTAPP_PATH=.*/tests/regression/#TESTAPP_PATH=${PTEST_PATH}/tests/regression/#' \ | 170 | sed -e 's#TESTAPP_PATH=.*/tests/regression/#TESTAPP_PATH="${PTEST_PATH}/tests/regression/#' \ |
159 | -i ${D}${PTEST_PATH}/tests/regression/ust/python-logging/test_python_logging | 171 | -i ${D}${PTEST_PATH}/tests/regression/ust/python-logging/test_python_logging |
160 | 172 | ||
161 | # Substitute links to installed binaries. | 173 | # Substitute links to installed binaries. |
@@ -172,3 +184,14 @@ do_install_ptest () { | |||
172 | esac | 184 | esac |
173 | done | 185 | done |
174 | } | 186 | } |
187 | |||
188 | INHIBIT_PACKAGE_STRIP_FILES = "\ | ||
189 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary \ | ||
190 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/.libs/userspace-probe-elf-binary \ | ||
191 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-cxx-binary/userspace-probe-elf-cxx-binary \ | ||
192 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-cxx-binary/.libs/userspace-probe-elf-cxx-binary \ | ||
193 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events/gen-syscall-events \ | ||
194 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events/.libs/gen-syscall-events \ | ||
195 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events-callstack/gen-syscall-events-callstack \ | ||
196 | ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events-callstack/.libs/gen-syscall-events-callstack \ | ||
197 | " | ||
diff --git a/meta/recipes-kernel/lttng/lttng-ust/0001-Makefile.am-update-rpath-link.patch b/meta/recipes-kernel/lttng/lttng-ust/0001-Makefile.am-update-rpath-link.patch new file mode 100644 index 0000000000..6aca8f85fa --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-ust/0001-Makefile.am-update-rpath-link.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From 7d053804ab3823d40ae10d90f4efc49dbfb4cb66 Mon Sep 17 00:00:00 2001 | ||
2 | From: Changqing Li <changqing.li@windriver.com> | ||
3 | Date: Wed, 22 Sep 2021 16:33:10 +0800 | ||
4 | Subject: [PATCH] Makefile.am: update rpath link | ||
5 | |||
6 | since commit 6339062 Move liblttng-ust to 'src/lib/', | ||
7 | liblttng-ust.so/liblttng-ust-common.so/liblttng-ust-tracepoint.so | ||
8 | 's location changed from one dir to multiple dirs. which make below | ||
9 | error: | ||
10 | ld: warning: liblttng-ust-common.so.1, needed by ../../../src/lib/lttng-ust/.libs/liblttng-ust.so, not found (try using -rpath or -rpath-link) | ||
11 | ld: warning: liblttng-ust-tracepoint.so.1, needed by ../../../src/lib/lttng-ust/.libs/liblttng-ust.so, not found (try using -rpath or -rpath-link) | ||
12 | |||
13 | Upstream-Status: Submitted [https://github.com/lttng/lttng-ust/pull/61] | ||
14 | |||
15 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
16 | |||
17 | --- | ||
18 | doc/examples/Makefile.am | 2 +- | ||
19 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
20 | |||
21 | diff --git a/doc/examples/Makefile.am b/doc/examples/Makefile.am | ||
22 | index 57782cc..d46caa6 100644 | ||
23 | --- a/doc/examples/Makefile.am | ||
24 | +++ b/doc/examples/Makefile.am | ||
25 | @@ -167,7 +167,7 @@ all-local: | ||
26 | CFLAGS='$(CFLAGS)' \ | ||
27 | AM_CFLAGS='$(AM_CFLAGS)' \ | ||
28 | LDFLAGS="$(LDFLAGS)" \ | ||
29 | - AM_LDFLAGS='$(AM_LDFLAGS) -L../../../src/lib/lttng-ust/.libs -Wl,-rpath="$(PWD)/../../src/lib/lttng-ust/.libs/" -Wl,-rpath-link="$(PWD)/../../src/lib/lttng-ust/.libs/"' \ | ||
30 | + AM_LDFLAGS='$(AM_LDFLAGS) -L../../../src/lib/lttng-ust/.libs -Wl,-rpath="$(PWD)/../../src/lib/lttng-ust/.libs/" -Wl,-rpath-link="$(PWD)/../../src/lib/lttng-ust/.libs/:$(PWD)/../../src/lib/lttng-ust-tracepoint/.libs:$(PWD)/../../src/lib/lttng-ust-common/.libs/"' \ | ||
31 | LTTNG_GEN_TP_PATH="$$rel_src_subdir$(top_srcdir)/tools/" \ | ||
32 | AM_V_P="$(AM_V_P)" \ | ||
33 | AM_V_at="$(AM_V_at)" \ | ||
diff --git a/meta/recipes-kernel/lttng/lttng-ust/0001-lttng-ust-common-link-with-liburcu-explicitly.patch b/meta/recipes-kernel/lttng/lttng-ust/0001-lttng-ust-common-link-with-liburcu-explicitly.patch new file mode 100644 index 0000000000..e85dbdb439 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-ust/0001-lttng-ust-common-link-with-liburcu-explicitly.patch | |||
@@ -0,0 +1,26 @@ | |||
1 | From 27402453f25fbdb5a9fb1a1b88d1c4d9852187d2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex@linutronix.de> | ||
3 | Date: Sun, 5 Sep 2021 10:44:19 +0200 | ||
4 | Subject: [PATCH] lttng-ust-common: link with liburcu explicitly | ||
5 | |||
6 | Otherwise linking errors are seen on x86-32. | ||
7 | |||
8 | Upstream-Status: Submitted [by email to lttng-dev, Francis, Jonathan] | ||
9 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
10 | |||
11 | --- | ||
12 | src/lib/lttng-ust-common/Makefile.am | 1 + | ||
13 | 1 file changed, 1 insertion(+) | ||
14 | |||
15 | diff --git a/src/lib/lttng-ust-common/Makefile.am b/src/lib/lttng-ust-common/Makefile.am | ||
16 | index 1ccc290..6531fa0 100644 | ||
17 | --- a/src/lib/lttng-ust-common/Makefile.am | ||
18 | +++ b/src/lib/lttng-ust-common/Makefile.am | ||
19 | @@ -16,6 +16,7 @@ liblttng_ust_common_la_SOURCES = \ | ||
20 | |||
21 | liblttng_ust_common_la_LIBADD = \ | ||
22 | $(top_builddir)/src/common/libcommon.la \ | ||
23 | + $(URCU_LIBS) \ | ||
24 | $(DL_LIBS) | ||
25 | |||
26 | liblttng_ust_common_la_LDFLAGS = -no-undefined -version-info $(LTTNG_UST_LIBRARY_VERSION) | ||
diff --git a/meta/recipes-kernel/lttng/lttng-ust/0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch b/meta/recipes-kernel/lttng/lttng-ust/0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch index c2028d0e1a..7c49583e0d 100644 --- a/meta/recipes-kernel/lttng/lttng-ust/0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch +++ b/meta/recipes-kernel/lttng/lttng-ust/0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch | |||
@@ -1,6 +1,6 @@ | |||
1 | From f79dac30af9adda12996da7f6aa6667d3b580537 Mon Sep 17 00:00:00 2001 | 1 | From f65efd963e52de51d35e2e03fb773f33dd64f565 Mon Sep 17 00:00:00 2001 |
2 | From: Robert Yang <liezhi.yang@windriver.com> | 2 | From: Richard Purdie <richard.purdie@linuxfoundation.org> |
3 | Date: Thu, 26 Sep 2019 17:54:00 +0800 | 3 | Date: Tue, 20 Feb 2024 12:19:06 +0000 |
4 | Subject: [PATCH] python-lttngust/Makefile.am: Add --install-lib to setup.py | 4 | Subject: [PATCH] python-lttngust/Makefile.am: Add --install-lib to setup.py |
5 | 5 | ||
6 | Otherwise it may install to /usr/lib, but should be /usr/lib64 when cross | 6 | Otherwise it may install to /usr/lib, but should be /usr/lib64 when cross |
@@ -9,23 +9,21 @@ building. | |||
9 | Upstream-Status: Submitted [https://github.com/lttng/lttng-ust/pull/59] | 9 | Upstream-Status: Submitted [https://github.com/lttng/lttng-ust/pull/59] |
10 | 10 | ||
11 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | 11 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> |
12 | |||
12 | --- | 13 | --- |
13 | python-lttngust/Makefile.am | 2 +- | 14 | src/python-lttngust/Makefile.am | 2 +- |
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | 15 | 1 file changed, 1 insertion(+), 1 deletion(-) |
15 | 16 | ||
16 | diff --git a/python-lttngust/Makefile.am b/python-lttngust/Makefile.am | 17 | diff --git a/src/python-lttngust/Makefile.am b/src/python-lttngust/Makefile.am |
17 | index 6c0d20d..38b51b8 100644 | 18 | index d53e21d..283901e 100644 |
18 | --- a/python-lttngust/Makefile.am | 19 | --- a/src/python-lttngust/Makefile.am |
19 | +++ b/python-lttngust/Makefile.am | 20 | +++ b/src/python-lttngust/Makefile.am |
20 | @@ -9,7 +9,7 @@ install-exec-local: | 21 | @@ -45,7 +45,7 @@ install-exec-local: build-python-bindings.stamp |
21 | if [ "$(DESTDIR)" != "" ]; then \ | 22 | if [ "$(DESTDIR)" != "" ]; then \ |
22 | opts="$$opts --root=$(DESTDIR)"; \ | 23 | opts="$$opts --root=$(DESTDIR)"; \ |
23 | fi; \ | 24 | fi; \ |
24 | - $(PYTHON) setup.py install $$opts; | 25 | - $(PYTHON) $(builddir)/setup.py install $(PY_INSTALL_OPTS) $$opts; |
25 | + $(PYTHON) setup.py install $$opts --install-lib=$(pythondir); | 26 | + $(PYTHON) $(builddir)/setup.py install $(PY_INSTALL_OPTS) $$opts --install-lib=$(pythondir); |
26 | 27 | ||
27 | clean-local: | 28 | clean-local: |
28 | rm -rf $(builddir)/build | 29 | rm -rf $(builddir)/build |
29 | -- | ||
30 | 2.7.4 | ||
31 | |||
diff --git a/meta/recipes-kernel/lttng/lttng-ust_2.12.1.bb b/meta/recipes-kernel/lttng/lttng-ust_2.13.8.bb index 67b53cbbba..dddd3a5004 100644 --- a/meta/recipes-kernel/lttng/lttng-ust_2.12.1.bb +++ b/meta/recipes-kernel/lttng/lttng-ust_2.13.8.bb | |||
@@ -3,38 +3,38 @@ DESCRIPTION = "The LTTng UST 2.x package contains the userspace tracer library t | |||
3 | HOMEPAGE = "http://lttng.org/ust" | 3 | HOMEPAGE = "http://lttng.org/ust" |
4 | BUGTRACKER = "https://bugs.lttng.org/projects/lttng-ust" | 4 | BUGTRACKER = "https://bugs.lttng.org/projects/lttng-ust" |
5 | 5 | ||
6 | LICENSE = "LGPLv2.1+ & MIT & GPLv2" | 6 | LICENSE = "LGPL-2.1-or-later & MIT & GPL-2.0-only" |
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=c963eb366b781252b0bf0fdf1624d9e9 \ | 7 | LIC_FILES_CHKSUM = "file://LICENSE;md5=a46577a38ad0c36ff6ff43ccf40c480f" |
8 | file://snprintf/snprintf.c;endline=32;md5=d3d544959d8a3782b2e07451be0a903c \ | ||
9 | file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44" | ||
10 | 8 | ||
11 | PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ | 9 | PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ |
12 | am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ | 10 | am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ |
13 | PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ | 11 | PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ |
14 | " | 12 | " |
15 | 13 | ||
16 | inherit autotools lib_package manpages python3native | 14 | inherit autotools lib_package manpages python3native pkgconfig |
17 | 15 | ||
18 | include lttng-platforms.inc | 16 | include lttng-platforms.inc |
19 | 17 | ||
20 | EXTRA_OECONF = "--disable-numa" | 18 | EXTRA_OECONF = "--disable-numa" |
19 | CPPFLAGS:append:arm = "${@oe.utils.vartrue('DEBUG_BUILD', '-DUATOMIC_NO_LINK_ERROR', '', d)}" | ||
21 | 20 | ||
22 | DEPENDS = "liburcu util-linux" | 21 | DEPENDS = "liburcu util-linux" |
23 | RDEPENDS_${PN}-bin = "python3-core" | 22 | RDEPENDS:${PN}-bin = "python3-core" |
24 | 23 | ||
25 | # For backwards compatibility after rename | 24 | # For backwards compatibility after rename |
26 | RPROVIDES_${PN} = "lttng2-ust" | 25 | RPROVIDES:${PN} = "lttng2-ust" |
27 | RREPLACES_${PN} = "lttng2-ust" | 26 | RREPLACES:${PN} = "lttng2-ust" |
28 | RCONFLICTS_${PN} = "lttng2-ust" | 27 | RCONFLICTS:${PN} = "lttng2-ust" |
29 | 28 | ||
30 | PE = "2" | 29 | PE = "2" |
31 | 30 | ||
32 | SRC_URI = "https://lttng.org/files/lttng-ust/lttng-ust-${PV}.tar.bz2 \ | 31 | SRC_URI = "https://lttng.org/files/lttng-ust/lttng-ust-${PV}.tar.bz2 \ |
33 | file://0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch \ | 32 | file://0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch \ |
33 | file://0001-lttng-ust-common-link-with-liburcu-explicitly.patch \ | ||
34 | file://0001-Makefile.am-update-rpath-link.patch \ | ||
34 | " | 35 | " |
35 | 36 | ||
36 | SRC_URI[md5sum] = "11787d1df69b04dd7431614ab43b2e12" | 37 | SRC_URI[sha256sum] = "d4ef98dab9a37ad4f524ccafdfd50af4f266039b528dd5afabce78e49024d937" |
37 | SRC_URI[sha256sum] = "48a3948b168195123a749d22818809bd25127bb5f1a66458c3c012b210d2a051" | ||
38 | 38 | ||
39 | CVE_PRODUCT = "ust" | 39 | CVE_PRODUCT = "ust" |
40 | 40 | ||
@@ -42,11 +42,11 @@ PACKAGECONFIG[examples] = "--enable-examples, --disable-examples," | |||
42 | PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" | 42 | PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" |
43 | PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3" | 43 | PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3" |
44 | 44 | ||
45 | FILES_${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*" | 45 | FILES:${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*" |
46 | FILES_${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a" | 46 | FILES:${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a" |
47 | FILES_${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la" | 47 | FILES:${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la" |
48 | 48 | ||
49 | do_install_append() { | 49 | do_install:append() { |
50 | # Patch python tools to use Python 3; they should be source compatible, but | 50 | # Patch python tools to use Python 3; they should be source compatible, but |
51 | # still refer to Python 2 in the shebang | 51 | # still refer to Python 2 in the shebang |
52 | sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp | 52 | sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp |
diff --git a/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb b/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb index 92ffa4720e..a91680d497 100644 --- a/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb +++ b/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb | |||
@@ -1,9 +1,9 @@ | |||
1 | SUMMARY = "Build tools needed by external modules" | 1 | SUMMARY = "Build tools needed by external modules" |
2 | HOMEPAGE = "https://www.yoctoproject.org/" | 2 | HOMEPAGE = "https://www.yoctoproject.org/" |
3 | LICENSE = "GPLv2" | 3 | LICENSE = "GPL-2.0-only" |
4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" | 4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" |
5 | 5 | ||
6 | inherit kernel-arch | 6 | inherit kernel-arch linux-kernel-base |
7 | inherit pkgconfig | 7 | inherit pkgconfig |
8 | 8 | ||
9 | PACKAGE_ARCH = "${MACHINE_ARCH}" | 9 | PACKAGE_ARCH = "${MACHINE_ARCH}" |
@@ -13,13 +13,16 @@ S = "${WORKDIR}" | |||
13 | do_configure[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot" | 13 | do_configure[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot" |
14 | do_compile[depends] += "virtual/kernel:do_compile_kernelmodules" | 14 | do_compile[depends] += "virtual/kernel:do_compile_kernelmodules" |
15 | 15 | ||
16 | RDEPENDS_${PN}-dev = "" | 16 | DEV_PKG_DEPENDENCY = "" |
17 | 17 | ||
18 | DEPENDS += "bc-native bison-native" | 18 | DEPENDS += "bc-native bison-native" |
19 | DEPENDS += "gmp-native" | 19 | DEPENDS += "gmp-native" |
20 | 20 | ||
21 | EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}"" | 21 | EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}"" |
22 | EXTRA_OEMAKE += " HOSTCXX="${BUILD_CXX} ${BUILD_CXXFLAGS} ${BUILD_LDFLAGS}"" | 22 | EXTRA_OEMAKE += " HOSTCXX="${BUILD_CXX} ${BUILD_CXXFLAGS} ${BUILD_LDFLAGS}" CROSS_COMPILE=${TARGET_PREFIX}" |
23 | |||
24 | KERNEL_LOCALVERSION = "${@get_kernellocalversion_file("${STAGING_KERNEL_BUILDDIR}")}" | ||
25 | export LOCALVERSION="${KERNEL_LOCALVERSION}" | ||
23 | 26 | ||
24 | # Build some host tools under work-shared. CC, LD, and AR are probably | 27 | # Build some host tools under work-shared. CC, LD, and AR are probably |
25 | # not used, but this is the historical way of invoking "make scripts". | 28 | # not used, but this is the historical way of invoking "make scripts". |
@@ -27,7 +30,9 @@ EXTRA_OEMAKE += " HOSTCXX="${BUILD_CXX} ${BUILD_CXXFLAGS} ${BUILD_LDFLAGS}"" | |||
27 | do_configure() { | 30 | do_configure() { |
28 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS | 31 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS |
29 | for t in prepare scripts_basic scripts; do | 32 | for t in prepare scripts_basic scripts; do |
30 | oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \ | 33 | oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ |
34 | AR="${KERNEL_AR}" OBJCOPY="${KERNEL_OBJCOPY}" \ | ||
35 | STRIP="${KERNEL_STRIP}" \ | ||
31 | -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} $t | 36 | -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} $t |
32 | done | 37 | done |
33 | } | 38 | } |
diff --git a/meta/recipes-kernel/modutils-initscripts/files/PD.patch b/meta/recipes-kernel/modutils-initscripts/files/PD.patch deleted file mode 100644 index 21ac49cbd8..0000000000 --- a/meta/recipes-kernel/modutils-initscripts/files/PD.patch +++ /dev/null | |||
@@ -1,8 +0,0 @@ | |||
1 | Upstream-Status: Inappropriate [licensing] | ||
2 | |||
3 | Index: modutils-initscripts-1.0/LICENSE | ||
4 | =================================================================== | ||
5 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
6 | +++ modutils-initscripts-1.0/LICENSE 2010-12-06 14:26:03.570339002 -0800 | ||
7 | @@ -0,0 +1 @@ | ||
8 | +Public Domain | ||
diff --git a/meta/recipes-kernel/modutils-initscripts/files/modutils.sh b/meta/recipes-kernel/modutils-initscripts/files/modutils.sh index 28fe6f92d7..e9aaa66cb7 100755 --- a/meta/recipes-kernel/modutils-initscripts/files/modutils.sh +++ b/meta/recipes-kernel/modutils-initscripts/files/modutils.sh | |||
@@ -1,4 +1,8 @@ | |||
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | # | ||
3 | # SPDX-License-Identifier: MIT | ||
4 | # | ||
5 | |||
2 | ### BEGIN INIT INFO | 6 | ### BEGIN INIT INFO |
3 | # Provides: module-init-tools | 7 | # Provides: module-init-tools |
4 | # Required-Start: | 8 | # Required-Start: |
@@ -13,6 +17,7 @@ | |||
13 | 17 | ||
14 | LOAD_MODULE=modprobe | 18 | LOAD_MODULE=modprobe |
15 | [ -f /proc/modules ] || exit 0 | 19 | [ -f /proc/modules ] || exit 0 |
20 | [ -d /lib/modules/`uname -r` ] || exit 0 | ||
16 | 21 | ||
17 | # Test if modules.dep exists and has a size greater than zero | 22 | # Test if modules.dep exists and has a size greater than zero |
18 | if [ ! -s /lib/modules/`uname -r`/modules.dep ]; then | 23 | if [ ! -s /lib/modules/`uname -r`/modules.dep ]; then |
diff --git a/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb b/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb index 97b4ddb88b..b630a402ff 100644 --- a/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb +++ b/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb | |||
@@ -1,11 +1,9 @@ | |||
1 | SUMMARY = "Initscript for auto-loading kernel modules on boot" | 1 | SUMMARY = "Initscript for auto-loading kernel modules on boot" |
2 | SECTION = "base" | 2 | SECTION = "base" |
3 | LICENSE = "PD" | 3 | LICENSE = "MIT" |
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=7bf87fc37976e93ec66ad84fac58c098" | 4 | LIC_FILES_CHKSUM = "file://modutils.sh;beginline=3;endline=3;md5=b2dccaa94b3629a08bfb4f983cad6f89" |
5 | SRC_URI = "file://modutils.sh \ | 5 | SRC_URI = "file://modutils.sh" |
6 | file://PD.patch" | ||
7 | 6 | ||
8 | PR = "r7" | ||
9 | 7 | ||
10 | S = "${WORKDIR}" | 8 | S = "${WORKDIR}" |
11 | 9 | ||
@@ -22,8 +20,8 @@ do_install () { | |||
22 | install -m 0755 ${WORKDIR}/modutils.sh ${D}${sysconfdir}/init.d/ | 20 | install -m 0755 ${WORKDIR}/modutils.sh ${D}${sysconfdir}/init.d/ |
23 | } | 21 | } |
24 | 22 | ||
25 | PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}" | 23 | PACKAGE_WRITE_DEPS:append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}" |
26 | pkg_postinst_${PN} () { | 24 | pkg_postinst:${PN} () { |
27 | if type systemctl >/dev/null 2>/dev/null; then | 25 | if type systemctl >/dev/null 2>/dev/null; then |
28 | if [ -n "$D" ]; then | 26 | if [ -n "$D" ]; then |
29 | OPTS="--root=$D" | 27 | OPTS="--root=$D" |
diff --git a/meta/recipes-kernel/perf/perf-perl.inc b/meta/recipes-kernel/perf/perf-perl.inc index ae77319b20..491f54c328 100644 --- a/meta/recipes-kernel/perf/perf-perl.inc +++ b/meta/recipes-kernel/perf/perf-perl.inc | |||
@@ -2,6 +2,10 @@ inherit perlnative cpan-base | |||
2 | 2 | ||
3 | # Env var which tells perl if it should use host (no) or target (yes) settings | 3 | # Env var which tells perl if it should use host (no) or target (yes) settings |
4 | export PERLCONFIGTARGET = "${@is_target(d)}" | 4 | export PERLCONFIGTARGET = "${@is_target(d)}" |
5 | export PERL_INC = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}/CORE" | 5 | export PERL_INC = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}/${@get_perl_arch(d)}/CORE" |
6 | export PERL_LIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}" | 6 | export PERL_LIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}" |
7 | export PERL_ARCHLIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}" | 7 | export PERL_ARCHLIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}/${@get_perl_arch(d)}" |
8 | |||
9 | # The perl symbols CPPSTDIN and CPPRUN embed the sysroot into the | ||
10 | # binaries, work needed to remove this | ||
11 | INSANE_SKIP:${PN}-dbg += "buildpaths" | ||
diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb index 868cde7353..11fa917649 100644 --- a/meta/recipes-kernel/perf/perf.bb +++ b/meta/recipes-kernel/perf/perf.bb | |||
@@ -7,31 +7,38 @@ and software features (software counters, tracepoints) \ | |||
7 | as well." | 7 | as well." |
8 | HOMEPAGE = "https://perf.wiki.kernel.org/index.php/Main_Page" | 8 | HOMEPAGE = "https://perf.wiki.kernel.org/index.php/Main_Page" |
9 | 9 | ||
10 | LICENSE = "GPLv2" | 10 | LICENSE = "GPL-2.0-only" |
11 | 11 | ||
12 | PR = "r9" | ||
13 | 12 | ||
14 | PACKAGECONFIG ??= "scripting tui libunwind" | 13 | PACKAGECONFIG ??= "python tui libunwind libtraceevent" |
15 | PACKAGECONFIG[dwarf] = ",NO_DWARF=1" | 14 | PACKAGECONFIG[dwarf] = ",NO_DWARF=1" |
16 | PACKAGECONFIG[scripting] = ",NO_LIBPERL=1 NO_LIBPYTHON=1,perl python3" | 15 | PACKAGECONFIG[perl] = ",NO_LIBPERL=1,perl" |
16 | PACKAGECONFIG[python] = ",NO_LIBPYTHON=1,python3 python3-setuptools-native" | ||
17 | # gui support was added with kernel 3.6.35 | 17 | # gui support was added with kernel 3.6.35 |
18 | # since 3.10 libnewt was replaced by slang | 18 | # since 3.10 libnewt was replaced by slang |
19 | # to cover a wide range of kernel we add both dependencies | 19 | # to cover a wide range of kernel we add both dependencies |
20 | PACKAGECONFIG[tui] = ",NO_NEWT=1,libnewt slang" | 20 | PACKAGECONFIG[tui] = ",NO_NEWT=1,libnewt slang" |
21 | PACKAGECONFIG[libunwind] = ",NO_LIBUNWIND=1 NO_LIBDW_DWARF_UNWIND=1,libunwind" | 21 | PACKAGECONFIG[libunwind] = ",NO_LIBUNWIND=1 NO_LIBDW_DWARF_UNWIND=1,libunwind" |
22 | PACKAGECONFIG[libnuma] = ",NO_LIBNUMA=1" | 22 | PACKAGECONFIG[libnuma] = ",NO_LIBNUMA=1" |
23 | PACKAGECONFIG[bfd] = ",NO_LIBBFD=1" | ||
23 | PACKAGECONFIG[systemtap] = ",NO_SDT=1,systemtap" | 24 | PACKAGECONFIG[systemtap] = ",NO_SDT=1,systemtap" |
24 | PACKAGECONFIG[jvmti] = ",NO_JVMTI=1" | 25 | PACKAGECONFIG[jvmti] = ",NO_JVMTI=1" |
25 | # libaudit support would need scripting to be enabled | 26 | # libaudit support would need scripting to be enabled |
26 | PACKAGECONFIG[audit] = ",NO_LIBAUDIT=1,audit" | 27 | PACKAGECONFIG[audit] = ",NO_LIBAUDIT=1,audit" |
27 | PACKAGECONFIG[manpages] = ",,xmlto-native asciidoc-native" | 28 | PACKAGECONFIG[manpages] = ",,xmlto-native asciidoc-native" |
28 | PACKAGECONFIG[cap] = ",,libcap" | 29 | PACKAGECONFIG[cap] = ",,libcap" |
30 | PACKAGECONFIG[libtraceevent] = ",NO_LIBTRACEEVENT=1,libtraceevent" | ||
31 | # jevents requires host python for generating a .c file, but is | ||
32 | # unrelated to the python item. | ||
33 | PACKAGECONFIG[jevents] = ",NO_JEVENTS=1,python3-native" | ||
29 | # Arm CoreSight | 34 | # Arm CoreSight |
30 | PACKAGECONFIG[coresight] = "CORESIGHT=1,,opencsd" | 35 | PACKAGECONFIG[coresight] = "CORESIGHT=1,,opencsd" |
36 | PACKAGECONFIG[pfm4] = ",NO_LIBPFM4=1,libpfm4" | ||
37 | PACKAGECONFIG[babeltrace] = ",NO_LIBBABELTRACE=1,babeltrace" | ||
31 | 38 | ||
32 | # libunwind is not yet ported for some architectures | 39 | # libunwind is not yet ported for some architectures |
33 | PACKAGECONFIG_remove_arc = "libunwind" | 40 | PACKAGECONFIG:remove:arc = "libunwind" |
34 | PACKAGECONFIG_remove_riscv64 = "libunwind" | 41 | PACKAGECONFIG:remove:riscv32 = "libunwind" |
35 | 42 | ||
36 | DEPENDS = " \ | 43 | DEPENDS = " \ |
37 | virtual/${MLPREFIX}libc \ | 44 | virtual/${MLPREFIX}libc \ |
@@ -47,7 +54,7 @@ PROVIDES = "virtual/perf" | |||
47 | inherit linux-kernel-base kernel-arch manpages | 54 | inherit linux-kernel-base kernel-arch manpages |
48 | 55 | ||
49 | # needed for building the tools/perf Python bindings | 56 | # needed for building the tools/perf Python bindings |
50 | inherit ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'python3native', '', d)} | 57 | inherit_defer ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3targetconfig', '', d)} |
51 | inherit python3-dir | 58 | inherit python3-dir |
52 | export PYTHON_SITEPACKAGES_DIR | 59 | export PYTHON_SITEPACKAGES_DIR |
53 | 60 | ||
@@ -57,7 +64,7 @@ export WERROR = "0" | |||
57 | do_populate_lic[depends] += "virtual/kernel:do_shared_workdir" | 64 | do_populate_lic[depends] += "virtual/kernel:do_shared_workdir" |
58 | 65 | ||
59 | # needed for building the tools/perf Perl binding | 66 | # needed for building the tools/perf Perl binding |
60 | include ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'perf-perl.inc', '', d)} | 67 | include ${@bb.utils.contains('PACKAGECONFIG', 'perl', 'perf-perl.inc', '', d)} |
61 | 68 | ||
62 | inherit kernelsrc | 69 | inherit kernelsrc |
63 | 70 | ||
@@ -69,8 +76,18 @@ SPDX_S = "${S}/tools/perf" | |||
69 | # supported kernel. | 76 | # supported kernel. |
70 | LDFLAGS="-ldl -lutil" | 77 | LDFLAGS="-ldl -lutil" |
71 | 78 | ||
79 | # Perf's build system adds its own optimization flags for most TUs, | ||
80 | # overriding the flags included here. But for some, perf does not add | ||
81 | # any -O option, so ensure the distro's chosen optimization gets used | ||
82 | # for those. Since ${SELECTED_OPTIMIZATION} always includes | ||
83 | # ${DEBUG_FLAGS} which in turn includes ${DEBUG_PREFIX_MAP}, this also | ||
84 | # ensures perf is built with appropriate -f*-prefix-map options, | ||
85 | # avoiding the 'buildpaths' QA warning. | ||
86 | TARGET_CC_ARCH += "${SELECTED_OPTIMIZATION}" | ||
87 | |||
72 | EXTRA_OEMAKE = '\ | 88 | EXTRA_OEMAKE = '\ |
73 | V=1 \ | 89 | V=1 \ |
90 | VF=1 \ | ||
74 | -C ${S}/tools/perf \ | 91 | -C ${S}/tools/perf \ |
75 | O=${B} \ | 92 | O=${B} \ |
76 | CROSS_COMPILE=${TARGET_PREFIX} \ | 93 | CROSS_COMPILE=${TARGET_PREFIX} \ |
@@ -80,11 +97,13 @@ EXTRA_OEMAKE = '\ | |||
80 | LDSHARED="${CC} -shared" \ | 97 | LDSHARED="${CC} -shared" \ |
81 | AR="${AR}" \ | 98 | AR="${AR}" \ |
82 | LD="${LD}" \ | 99 | LD="${LD}" \ |
83 | EXTRA_CFLAGS="-ldw" \ | 100 | EXTRA_CFLAGS="-ldw -I${S}" \ |
101 | YFLAGS='-y --file-prefix-map=${WORKDIR}=${TARGET_DBGSRC_DIR}' \ | ||
84 | EXTRA_LDFLAGS="${PERF_EXTRA_LDFLAGS}" \ | 102 | EXTRA_LDFLAGS="${PERF_EXTRA_LDFLAGS}" \ |
85 | perfexecdir=${libexecdir} \ | 103 | perfexecdir=${libexecdir} \ |
86 | NO_GTK2=1 \ | 104 | NO_GTK2=1 \ |
87 | ${PACKAGECONFIG_CONFARGS} \ | 105 | ${PACKAGECONFIG_CONFARGS} \ |
106 | PKG_CONFIG=pkg-config \ | ||
88 | TMPDIR="${B}" \ | 107 | TMPDIR="${B}" \ |
89 | LIBUNWIND_DIR=${STAGING_EXECPREFIXDIR} \ | 108 | LIBUNWIND_DIR=${STAGING_EXECPREFIXDIR} \ |
90 | ' | 109 | ' |
@@ -100,7 +119,7 @@ EXTRA_OEMAKE += "\ | |||
100 | 'sharedir=${@os.path.relpath(datadir, prefix)}' \ | 119 | 'sharedir=${@os.path.relpath(datadir, prefix)}' \ |
101 | 'mandir=${@os.path.relpath(mandir, prefix)}' \ | 120 | 'mandir=${@os.path.relpath(mandir, prefix)}' \ |
102 | 'infodir=${@os.path.relpath(infodir, prefix)}' \ | 121 | 'infodir=${@os.path.relpath(infodir, prefix)}' \ |
103 | ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'PYTHON=python3 PYTHON_CONFIG=python3-config', '', d)} \ | 122 | ${@bb.utils.contains('PACKAGECONFIG', 'python', 'PYTHON=python3 PYTHON_CONFIG=python3-config', '', d)} \ |
104 | " | 123 | " |
105 | 124 | ||
106 | # During do_configure, we might run a 'make clean'. That often breaks | 125 | # During do_configure, we might run a 'make clean'. That often breaks |
@@ -108,8 +127,12 @@ EXTRA_OEMAKE += "\ | |||
108 | # that it has to be done this way rather than by passing -j1, since | 127 | # that it has to be done this way rather than by passing -j1, since |
109 | # perf's build system by default ignores any -j argument, but does | 128 | # perf's build system by default ignores any -j argument, but does |
110 | # honour a JOBS variable. | 129 | # honour a JOBS variable. |
111 | EXTRA_OEMAKE_append_task-configure = " JOBS=1" | 130 | EXTRA_OEMAKE:append:task-configure = " JOBS=1" |
112 | 131 | ||
132 | # the architectures that need this file can be found in | ||
133 | # tools/include/uapi/asm/bpf_perf_event.h | ||
134 | # We are only listing supported arches at the moment | ||
135 | PERF_BPF_EVENT_SRC ?= '${@bb.utils.contains_any("ARCH", [ "riscv", "arm64" ], "arch/${ARCH}/include/uapi/asm/bpf_perf_event.h", "", d)}' | ||
113 | PERF_SRC ?= "Makefile \ | 136 | PERF_SRC ?= "Makefile \ |
114 | tools/arch \ | 137 | tools/arch \ |
115 | tools/build \ | 138 | tools/build \ |
@@ -119,18 +142,26 @@ PERF_SRC ?= "Makefile \ | |||
119 | tools/perf \ | 142 | tools/perf \ |
120 | tools/scripts \ | 143 | tools/scripts \ |
121 | scripts/ \ | 144 | scripts/ \ |
145 | arch/arm64/tools \ | ||
146 | ${PERF_BPF_EVENT_SRC} \ | ||
122 | arch/${ARCH}/Makefile \ | 147 | arch/${ARCH}/Makefile \ |
123 | " | 148 | " |
124 | 149 | ||
125 | PERF_EXTRA_LDFLAGS = "" | 150 | PERF_EXTRA_LDFLAGS = "" |
126 | 151 | ||
127 | # MIPS N32 | 152 | # MIPS N32/N64 |
128 | PERF_EXTRA_LDFLAGS_mipsarchn32eb = "-m elf32btsmipn32" | 153 | PERF_EXTRA_LDFLAGS:mipsarchn32eb = "-m elf32btsmipn32" |
129 | PERF_EXTRA_LDFLAGS_mipsarchn32el = "-m elf32ltsmipn32" | 154 | PERF_EXTRA_LDFLAGS:mipsarchn32el = "-m elf32ltsmipn32" |
155 | PERF_EXTRA_LDFLAGS:mipsarchn64eb = "-m elf64btsmip" | ||
156 | PERF_EXTRA_LDFLAGS:mipsarchn64el = "-m elf64ltsmip" | ||
130 | 157 | ||
131 | do_compile() { | 158 | do_compile() { |
132 | # Linux kernel build system is expected to do the right thing | 159 | # Linux kernel build system is expected to do the right thing |
133 | unset CFLAGS | 160 | unset CFLAGS |
161 | test -e ${S}/tools/lib/traceevent/plugins/Makefile && \ | ||
162 | sed -i -e 's|\$(libdir)/traceevent/plugins|\$(libdir)/traceevent_${KERNEL_VERSION}/plugins|g' ${S}/tools/lib/traceevent/plugins/Makefile | ||
163 | test -e ${S}/tools/perf/Makefile.config && \ | ||
164 | sed -i -e 's|\$(libdir)/traceevent/plugins|\$(libdir)/traceevent_${KERNEL_VERSION}/plugins|g' ${S}/tools/perf/Makefile.config | ||
134 | oe_runmake all | 165 | oe_runmake all |
135 | } | 166 | } |
136 | 167 | ||
@@ -139,8 +170,11 @@ do_install() { | |||
139 | unset CFLAGS | 170 | unset CFLAGS |
140 | oe_runmake install | 171 | oe_runmake install |
141 | # we are checking for this make target to be compatible with older perf versions | 172 | # we are checking for this make target to be compatible with older perf versions |
142 | if ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'true', 'false', d)} && grep -q install-python_ext ${S}/tools/perf/Makefile*; then | 173 | if ${@bb.utils.contains('PACKAGECONFIG', 'python', 'true', 'false', d)} && grep -q install-python_ext ${S}/tools/perf/Makefile*; then |
143 | oe_runmake DESTDIR=${D} install-python_ext | 174 | oe_runmake DESTDIR=${D} install-python_ext |
175 | if [ -e ${D}${libdir}/python*/site-packages/perf-*/SOURCES.txt ]; then | ||
176 | sed -i -e 's#${WORKDIR}##g' ${D}${libdir}/python*/site-packages/perf-*/SOURCES.txt | ||
177 | fi | ||
144 | fi | 178 | fi |
145 | } | 179 | } |
146 | 180 | ||
@@ -155,7 +189,8 @@ python copy_perf_source_from_kernel() { | |||
155 | src = oe.path.join(src_dir, s) | 189 | src = oe.path.join(src_dir, s) |
156 | dest = oe.path.join(dest_dir, s) | 190 | dest = oe.path.join(dest_dir, s) |
157 | if not os.path.exists(src): | 191 | if not os.path.exists(src): |
158 | bb.fatal("Path does not exist: %s. Maybe PERF_SRC does not match the kernel version." % src) | 192 | bb.warn("Path does not exist: %s. Maybe PERF_SRC lists more files than what your kernel version provides and needs." % src) |
193 | continue | ||
159 | if os.path.isdir(src): | 194 | if os.path.isdir(src): |
160 | oe.path.copyhardlinktree(src, dest) | 195 | oe.path.copyhardlinktree(src, dest) |
161 | else: | 196 | else: |
@@ -164,7 +199,7 @@ python copy_perf_source_from_kernel() { | |||
164 | bb.utils.copyfile(src, dest) | 199 | bb.utils.copyfile(src, dest) |
165 | } | 200 | } |
166 | 201 | ||
167 | do_configure_prepend () { | 202 | do_configure:prepend () { |
168 | # If building a multlib based perf, the incorrect library path will be | 203 | # If building a multlib based perf, the incorrect library path will be |
169 | # detected by perf, since it triggers via: ifeq ($(ARCH),x86_64). In a 32 bit | 204 | # detected by perf, since it triggers via: ifeq ($(ARCH),x86_64). In a 32 bit |
170 | # build, with a 64 bit multilib, the arch won't match and the detection of a | 205 | # build, with a 64 bit multilib, the arch won't match and the detection of a |
@@ -200,25 +235,101 @@ do_configure_prepend () { | |||
200 | if [ -e "${S}/tools/perf/Makefile.perf" ]; then | 235 | if [ -e "${S}/tools/perf/Makefile.perf" ]; then |
201 | sed -i -e 's,\ .config-detected, $(OUTPUT)/config-detected,g' \ | 236 | sed -i -e 's,\ .config-detected, $(OUTPUT)/config-detected,g' \ |
202 | ${S}/tools/perf/Makefile.perf | 237 | ${S}/tools/perf/Makefile.perf |
203 | sed -i -e "s,prefix='\$(DESTDIR_SQ)/usr'$,prefix='\$(DESTDIR_SQ)/usr' --install-lib='\$(DESTDIR)\$(PYTHON_SITEPACKAGES_DIR)',g" \ | 238 | # Variant with linux-yocto-specific patch |
239 | sed -i -e "s,prefix='\$(DESTDIR_SQ)/usr'$,prefix='\$(DESTDIR_SQ)/usr' --install-lib='\$(PYTHON_SITEPACKAGES_DIR)' --root='\$(DESTDIR)',g" \ | ||
240 | ${S}/tools/perf/Makefile.perf | ||
241 | # Variant for mainline Linux | ||
242 | sed -i -e "s,root='/\$(DESTDIR_SQ)',prefix='\$(DESTDIR_SQ)/usr' --install-lib='\$(PYTHON_SITEPACKAGES_DIR)' --root='/\$(DESTDIR_SQ)',g" \ | ||
204 | ${S}/tools/perf/Makefile.perf | 243 | ${S}/tools/perf/Makefile.perf |
205 | # backport https://github.com/torvalds/linux/commit/e4ffd066ff440a57097e9140fa9e16ceef905de8 | 244 | # backport https://github.com/torvalds/linux/commit/e4ffd066ff440a57097e9140fa9e16ceef905de8 |
206 | sed -i -e 's,\($(Q)$(SHELL) .$(arch_errno_tbl).\) $(CC) $(arch_errno_hdr_dir),\1 $(firstword $(CC)) $(arch_errno_hdr_dir),g' \ | 245 | sed -i -e 's,\($(Q)$(SHELL) .$(arch_errno_tbl).\) $(CC) $(arch_errno_hdr_dir),\1 $(firstword $(CC)) $(arch_errno_hdr_dir),g' \ |
207 | ${S}/tools/perf/Makefile.perf | 246 | ${S}/tools/perf/Makefile.perf |
208 | fi | 247 | fi |
209 | sed -i -e "s,--root='/\$(DESTDIR_SQ)',--prefix='\$(DESTDIR_SQ)/usr' --install-lib='\$(DESTDIR)\$(PYTHON_SITEPACKAGES_DIR)',g" \ | 248 | sed -i -e "s,--root='/\$(DESTDIR_SQ)',--prefix='\$(DESTDIR_SQ)/usr' --install-lib='\$(DESTDIR)\$(PYTHON_SITEPACKAGES_DIR)',g" \ |
210 | ${S}/tools/perf/Makefile* | 249 | ${S}/tools/perf/Makefile |
211 | 250 | ||
212 | if [ -e "${S}/tools/build/Makefile.build" ]; then | 251 | if [ -e "${S}/tools/build/Makefile.build" ]; then |
213 | sed -i -e 's,\ .config-detected, $(OUTPUT)/config-detected,g' \ | 252 | sed -i -e 's,\ .config-detected, $(OUTPUT)/config-detected,g' \ |
214 | ${S}/tools/build/Makefile.build | 253 | ${S}/tools/build/Makefile.build |
215 | fi | 254 | fi |
216 | 255 | ||
256 | # start reproducibility substitutions | ||
257 | if [ -e "${S}/tools/perf/Makefile.config" ]; then | ||
258 | # The following line in the Makefle: | ||
259 | # override PYTHON := $(call get-executable-or-default,PYTHON,$(PYTHON_AUTO)) | ||
260 | # "PYTHON" / "PYTHON_AUTO" have the full path as part of the variable. We've | ||
261 | # ensure that the environment is setup and we do not need the full path to be | ||
262 | # captured, since the symbol gets built into the executable, making it not | ||
263 | # reproducible. | ||
264 | sed -i -e 's,$(call get-executable-or-default\,PYTHON\,$(PYTHON_AUTO)),$(notdir $(call get-executable-or-default\,PYTHON\,$(PYTHON_AUTO))),g' \ | ||
265 | ${S}/tools/perf/Makefile.config | ||
266 | # The same line is in older releases, but looking explicitly for Python 2 | ||
267 | sed -i -e 's,$(call get-executable-or-default\,PYTHON\,$(PYTHON2)),$(notdir $(call get-executable-or-default\,PYTHON\,$(PYTHON2))),g' \ | ||
268 | ${S}/tools/perf/Makefile.config | ||
269 | |||
270 | # likewise with this substitution. Kernels with commit 18f2967418d031a39 | ||
271 | # [perf tools: Use Python devtools for version autodetection rather than runtime] | ||
272 | # need this substitution for reproducibility. | ||
273 | sed -i -e 's,$(call get-executable-or-default\,PYTHON\,$(subst -config\,\,$(PYTHON_AUTO))),$(notdir $(call get-executable-or-default\,PYTHON\,$(subst -config\,\,$(PYTHON_AUTO)))),g' \ | ||
274 | ${S}/tools/perf/Makefile.config | ||
275 | |||
276 | # The following line: | ||
277 | # srcdir_SQ = $(patsubst %tools/perf,tools/perf,$(subst ','\'',$(srcdir))), | ||
278 | # Captures the full src path of perf, which of course makes it not | ||
279 | # reproducible. We really only need the relative location 'tools/perf', so we | ||
280 | # change the Makefile line to remove everything before 'tools/perf' | ||
281 | sed -i -e "s%srcdir_SQ = \$(subst ','\\\'',\$(srcdir))%srcdir_SQ = \$(patsubst \%tools/perf,tools/perf,\$(subst ','\\\'',\$(srcdir)))%g" \ | ||
282 | ${S}/tools/perf/Makefile.config | ||
283 | # Avoid hardcoded path to python-native | ||
284 | sed -i -e 's#\(PYTHON_WORD := \)$(call shell-wordify,$(PYTHON))#\1 python3#g' \ | ||
285 | ${S}/tools/perf/Makefile.config | ||
286 | fi | ||
287 | if [ -e "${S}/tools/perf/tests/Build" ]; then | ||
288 | # OUTPUT is the full path, we have python on the path so we remove it from the | ||
289 | # definition. This is captured in the perf binary, so breaks reproducibility | ||
290 | sed -i -e 's,PYTHONPATH="BUILD_STR($(OUTPUT)python)",PYTHONPATH="BUILD_STR(python)",g' \ | ||
291 | ${S}/tools/perf/tests/Build | ||
292 | fi | ||
293 | if [ -e "${S}/tools/perf/util/Build" ]; then | ||
294 | # To avoid bison generating #ifdefs that have captured paths, we make sure | ||
295 | # all the calls have YFLAGS, which contains prefix mapping information. | ||
296 | sed -i -e 's,$(BISON),$(BISON) $(YFLAGS),g' ${S}/tools/perf/util/Build | ||
297 | fi | ||
298 | if [ -e "${S}/scripts/Makefile.host" ]; then | ||
299 | # To avoid yacc (bison) generating #ifdefs that have captured paths, we make sure | ||
300 | # all the calls have YFLAGS, which contains prefix mapping information. | ||
301 | sed -i -e 's,$(YACC),$(YACC) $(YFLAGS),g' ${S}/scripts/Makefile.host | ||
302 | fi | ||
303 | if [ -e "${S}/tools/perf/pmu-events/Build" ]; then | ||
304 | target='$(OUTPUT)pmu-events/pmu-events.c $(V)' | ||
305 | replacement1='$(OUTPUT)pmu-events/pmu-events.c $(V)\n' | ||
306 | replacement2='\t$(srctree)/sort-pmuevents.py $(OUTPUT)pmu-events/pmu-events.c $(OUTPUT)pmu-events/pmu-events.c.new\n' | ||
307 | replacement3='\tcp $(OUTPUT)pmu-events/pmu-events.c.new $(OUTPUT)pmu-events/pmu-events.c' | ||
308 | sed -i -e "s,$target,$replacement1$replacement2$replacement3,g" \ | ||
309 | "${S}/tools/perf/pmu-events/Build" | ||
310 | fi | ||
311 | if [ -e "${S}/tools/perf/pmu-events/jevents.py" ]; then | ||
312 | sed -i -e "s#os.scandir(path)#sorted(os.scandir(path), key=lambda e: e.name)#g" \ | ||
313 | "${S}/tools/perf/pmu-events/jevents.py" | ||
314 | fi | ||
315 | if [ -e "${S}/tools/perf/arch/arm64/Makefile" ]; then | ||
316 | sed -i 's,sysdef := $(srctree)/,sysdef := ,' ${S}/tools/perf/arch/arm64/Makefile | ||
317 | sed -i 's,$(incpath) $(sysdef),$(incpath) $(srctree)/$(sysdef) $(sysdef),' ${S}/tools/perf/arch/arm64/Makefile | ||
318 | fi | ||
319 | if [ -e "${S}/tools/perf/arch/arm64/entry/syscalls/mksyscalltbl" ]; then | ||
320 | if ! grep -q input_rel ${S}/tools/perf/arch/arm64/entry/syscalls/mksyscalltbl; then | ||
321 | sed -i 's,input=$4,input=$4\ninput_rel=$5,' ${S}/tools/perf/arch/arm64/entry/syscalls/mksyscalltbl | ||
322 | fi | ||
323 | sed -i 's,#include \\"\$input\\",#include \\"\$input_rel\\",' ${S}/tools/perf/arch/arm64/entry/syscalls/mksyscalltbl | ||
324 | fi | ||
325 | # end reproducibility substitutions | ||
326 | |||
217 | # We need to ensure the --sysroot option in CC is preserved | 327 | # We need to ensure the --sysroot option in CC is preserved |
218 | if [ -e "${S}/tools/perf/Makefile.perf" ]; then | 328 | if [ -e "${S}/tools/perf/Makefile.perf" ]; then |
219 | sed -i 's,CC = $(CROSS_COMPILE)gcc,#CC,' ${S}/tools/perf/Makefile.perf | 329 | sed -i 's,CC = $(CROSS_COMPILE)gcc,#CC,' ${S}/tools/perf/Makefile.perf |
220 | sed -i 's,AR = $(CROSS_COMPILE)ar,#AR,' ${S}/tools/perf/Makefile.perf | 330 | sed -i 's,AR = $(CROSS_COMPILE)ar,#AR,' ${S}/tools/perf/Makefile.perf |
221 | sed -i 's,LD = $(CROSS_COMPILE)ld,#LD,' ${S}/tools/perf/Makefile.perf | 331 | sed -i 's,LD = $(CROSS_COMPILE)ld,#LD,' ${S}/tools/perf/Makefile.perf |
332 | sed -i 's,PKG_CONFIG = $(CROSS_COMPILE)pkg-config,#PKG_CONFIG,' ${S}/tools/perf/Makefile.perf | ||
222 | fi | 333 | fi |
223 | if [ -e "${S}/tools/lib/api/Makefile" ]; then | 334 | if [ -e "${S}/tools/lib/api/Makefile" ]; then |
224 | sed -i 's,CC = $(CROSS_COMPILE)gcc,#CC,' ${S}/tools/lib/api/Makefile | 335 | sed -i 's,CC = $(CROSS_COMPILE)gcc,#CC,' ${S}/tools/lib/api/Makefile |
@@ -235,6 +346,9 @@ do_configure_prepend () { | |||
235 | if [ -e "${S}/tools/build/Makefile.feature" ]; then | 346 | if [ -e "${S}/tools/build/Makefile.feature" ]; then |
236 | sed -i 's,CFLAGS=,CC="\$(CC)" CFLAGS=,' ${S}/tools/build/Makefile.feature | 347 | sed -i 's,CFLAGS=,CC="\$(CC)" CFLAGS=,' ${S}/tools/build/Makefile.feature |
237 | fi | 348 | fi |
349 | # The libperl feature check produces fatal warnings due to -Werror being | ||
350 | # used, silence enough errors that the check passes. | ||
351 | sed -i 's/\(FLAGS_PERL_EMBED=.*\)/\1 -Wno-error=unused-function -Wno-error=attributes/' ${S}/tools/build/feature/Makefile | ||
238 | 352 | ||
239 | # 3.17-rc1+ has a include issue for arm/powerpc. Temporarily sed in the appropriate include | 353 | # 3.17-rc1+ has a include issue for arm/powerpc. Temporarily sed in the appropriate include |
240 | if [ -e "${S}/tools/perf/arch/$ARCH/util/skip-callchain-idx.c" ]; then | 354 | if [ -e "${S}/tools/perf/arch/$ARCH/util/skip-callchain-idx.c" ]; then |
@@ -254,9 +368,17 @@ do_configure_prepend () { | |||
254 | # so we copy it from the sysroot unistd.h to the perf unistd.h | 368 | # so we copy it from the sysroot unistd.h to the perf unistd.h |
255 | install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/tools/include/uapi/asm-generic/unistd.h | 369 | install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/tools/include/uapi/asm-generic/unistd.h |
256 | install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/include/uapi/asm-generic/unistd.h | 370 | install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/include/uapi/asm-generic/unistd.h |
371 | |||
372 | # the fetcher is inhibited by the 'inherit kernelsrc', so we do a quick check and | ||
373 | # copy for a helper script we need | ||
374 | for p in $(echo ${FILESPATH} | tr ':' '\n'); do | ||
375 | if [ -e $p/sort-pmuevents.py ]; then | ||
376 | cp $p/sort-pmuevents.py ${S} | ||
377 | fi | ||
378 | done | ||
257 | } | 379 | } |
258 | 380 | ||
259 | python do_package_prepend() { | 381 | python do_package:prepend() { |
260 | d.setVar('PKGV', d.getVar("KERNEL_VERSION").split("-")[0]) | 382 | d.setVar('PKGV', d.getVar("KERNEL_VERSION").split("-")[0]) |
261 | } | 383 | } |
262 | 384 | ||
@@ -265,25 +387,36 @@ PACKAGE_ARCH = "${MACHINE_ARCH}" | |||
265 | 387 | ||
266 | PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python" | 388 | PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python" |
267 | 389 | ||
268 | RDEPENDS_${PN} += "elfutils bash" | 390 | RDEPENDS:${PN} += "elfutils bash" |
269 | RDEPENDS_${PN}-archive =+ "bash" | 391 | RDEPENDS:${PN}-archive =+ "bash" |
270 | RDEPENDS_${PN}-python =+ "bash python3 python3-modules ${@bb.utils.contains('PACKAGECONFIG', 'audit', 'audit-python3', '', d)}" | 392 | RDEPENDS:${PN}-python =+ "bash python3 python3-modules ${@bb.utils.contains('PACKAGECONFIG', 'audit', 'audit-python', '', d)}" |
271 | RDEPENDS_${PN}-perl =+ "bash perl perl-modules" | 393 | RDEPENDS:${PN}-perl =+ "bash perl perl-modules" |
272 | RDEPENDS_${PN}-tests =+ "python3" | 394 | RDEPENDS:${PN}-tests =+ "python3 bash perl" |
273 | |||
274 | RSUGGESTS_SCRIPTING = "${@bb.utils.contains('PACKAGECONFIG', 'scripting', '${PN}-perl ${PN}-python', '',d)}" | ||
275 | RSUGGESTS_${PN} += "${PN}-archive ${PN}-tests ${RSUGGESTS_SCRIPTING}" | ||
276 | 395 | ||
396 | RSUGGESTS:${PN} += "${PN}-archive ${PN}-tests \ | ||
397 | ${@bb.utils.contains('PACKAGECONFIG', 'perl', '${PN}-perl', '', d)} \ | ||
398 | ${@bb.utils.contains('PACKAGECONFIG', 'python', '${PN}-python', '', d)} \ | ||
399 | " | ||
277 | FILES_SOLIBSDEV = "" | 400 | FILES_SOLIBSDEV = "" |
278 | FILES_${PN} += "${libexecdir}/perf-core ${exec_prefix}/libexec/perf-core ${libdir}/traceevent ${libdir}/libperf-jvmti.so" | 401 | FILES:${PN} += "${libexecdir}/perf-core ${exec_prefix}/libexec/perf-core ${libdir}/traceevent* ${libdir}/libperf-jvmti.so" |
279 | FILES_${PN}-archive = "${libdir}/perf/perf-core/perf-archive" | 402 | FILES:${PN}-archive = "${libdir}/perf/perf-core/perf-archive" |
280 | FILES_${PN}-tests = "${libdir}/perf/perf-core/tests ${libexecdir}/perf-core/tests" | 403 | FILES:${PN}-tests = "${libdir}/perf/perf-core/tests ${libexecdir}/perf-core/tests" |
281 | FILES_${PN}-python = " \ | 404 | FILES:${PN}-python = " \ |
282 | ${PYTHON_SITEPACKAGES_DIR} \ | 405 | ${PYTHON_SITEPACKAGES_DIR} \ |
283 | ${libexecdir}/perf-core/scripts/python \ | 406 | ${libexecdir}/perf-core/scripts/python \ |
284 | " | 407 | " |
285 | FILES_${PN}-perl = "${libexecdir}/perf-core/scripts/perl" | 408 | FILES:${PN}-perl = "${libexecdir}/perf-core/scripts/perl" |
286 | 409 | ||
410 | DEBUG_OPTIMIZATION:append = " -Wno-error=maybe-uninitialized" | ||
287 | 411 | ||
288 | INHIBIT_PACKAGE_DEBUG_SPLIT="1" | 412 | PACKAGESPLITFUNCS =+ "perf_fix_sources" |
289 | DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized" | 413 | |
414 | perf_fix_sources () { | ||
415 | for f in util/parse-events-flex.h util/parse-events-flex.c util/pmu-flex.c \ | ||
416 | util/pmu-flex.h util/expr-flex.h util/expr-flex.c; do | ||
417 | f=${PKGD}${TARGET_DBGSRC_DIR}/$f | ||
418 | if [ -e $f ]; then | ||
419 | sed -i -e 's#${S}/##g' $f | ||
420 | fi | ||
421 | done | ||
422 | } | ||
diff --git a/meta/recipes-kernel/perf/perf/sort-pmuevents.py b/meta/recipes-kernel/perf/perf/sort-pmuevents.py new file mode 100755 index 0000000000..0a87e553ab --- /dev/null +++ b/meta/recipes-kernel/perf/perf/sort-pmuevents.py | |||
@@ -0,0 +1,100 @@ | |||
1 | #!/usr/bin/env python3 | ||
2 | |||
3 | # perf pmu-events sorting tool | ||
4 | # | ||
5 | # Copyright (C) 2021 Bruce Ashfield | ||
6 | # | ||
7 | # SPDX-License-Identifier: MIT | ||
8 | # | ||
9 | |||
10 | import sys | ||
11 | import os | ||
12 | import re | ||
13 | from collections import OrderedDict | ||
14 | |||
15 | if len(sys.argv) < 2: | ||
16 | print( "[ERROR]: input and output pmu files missing" ) | ||
17 | sys.exit(1) | ||
18 | |||
19 | if len(sys.argv) < 3: | ||
20 | print( "[ERROR]: output pmu file missing" ) | ||
21 | sys.exit(1) | ||
22 | |||
23 | infile = sys.argv[1] | ||
24 | outfile = sys.argv[2] | ||
25 | |||
26 | if not os.path.exists(infile): | ||
27 | print( "ERROR. input file does not exist: %s" % infile ) | ||
28 | sys.exit(1) | ||
29 | |||
30 | if os.path.exists(outfile): | ||
31 | print( "WARNING. output file will be overwritten: %s" % infile ) | ||
32 | |||
33 | with open(infile, 'r') as file: | ||
34 | data = file.read() | ||
35 | |||
36 | preamble_regex = re.compile( '^(.*?)^(struct|const struct|static struct|static const struct)', re.MULTILINE | re.DOTALL ) | ||
37 | |||
38 | preamble = re.search( preamble_regex, data ) | ||
39 | struct_block_regex = re.compile(r'^(struct|const struct|static struct|static const struct).*?(\w+) (.*?)\[\] = {(.*?)^};', re.MULTILINE | re.DOTALL ) | ||
40 | field_regex = re.compile(r'{.*?},', re.MULTILINE | re.DOTALL ) | ||
41 | cpuid_regex = re.compile(r'\.cpuid = (.*?),', re.MULTILINE | re.DOTALL ) | ||
42 | name_regex = re.compile(r'\.name = (.*?),', re.MULTILINE | re.DOTALL ) | ||
43 | |||
44 | # create a dictionary structure to store all the structs, their | ||
45 | # types and then their fields. | ||
46 | entry_dict = {} | ||
47 | for struct in re.findall( struct_block_regex, data ): | ||
48 | # print( "struct: %s %s %s" % (struct[0],struct[1],struct[2]) ) | ||
49 | entry_dict[struct[2]] = {} | ||
50 | entry_dict[struct[2]]['type_prefix'] = struct[0] | ||
51 | entry_dict[struct[2]]['type'] = struct[1] | ||
52 | entry_dict[struct[2]]['fields'] = {} | ||
53 | for entry in re.findall( field_regex, struct[3] ): | ||
54 | #print( " entry: %s" % entry ) | ||
55 | cpuid = re.search( cpuid_regex, entry ) | ||
56 | if cpuid: | ||
57 | #print( " cpuid found: %s" % cpuid.group(1) ) | ||
58 | entry_dict[struct[2]]['fields'][cpuid.group(1)] = entry | ||
59 | |||
60 | name = re.search( name_regex, entry ) | ||
61 | if name: | ||
62 | #print( " name found: %s" % name.group(1) ) | ||
63 | entry_dict[struct[2]]['fields'][name.group(1)] = entry | ||
64 | |||
65 | # unmatched entries are most likely array terminators and | ||
66 | # should end up as the last element in the sorted list, which | ||
67 | # is achieved by using '0' as the key | ||
68 | if not cpuid and not name: | ||
69 | entry_dict[struct[2]]['fields']['0'] = entry | ||
70 | |||
71 | # created ordered dictionaries from the captured values. These are ordered by | ||
72 | # a sorted() iteration of the keys. We don't care about the order we read | ||
73 | # things, just the sorted order. Hency why we couldn't create these during | ||
74 | # reading. | ||
75 | # | ||
76 | # yes, there's a more concise way to do this, but our nested dictionaries of | ||
77 | # fields make it complex enough that it becomes unreadable. | ||
78 | entry_dict_sorted = OrderedDict() | ||
79 | for i in sorted(entry_dict.keys()): | ||
80 | entry_dict_sorted[i] = {} | ||
81 | entry_dict_sorted[i]['type_prefix'] = entry_dict[i]['type_prefix'] | ||
82 | entry_dict_sorted[i]['type'] = entry_dict[i]['type'] | ||
83 | entry_dict_sorted[i]['fields'] = {} | ||
84 | for f in sorted(entry_dict[i]['fields'].keys()): | ||
85 | entry_dict_sorted[i]['fields'][f] = entry_dict[i]['fields'][f] | ||
86 | |||
87 | # dump the sorted elements to the outfile | ||
88 | outf = open( outfile, 'w' ) | ||
89 | |||
90 | print( preamble.group(1) ) | ||
91 | outf.write( preamble.group(1) ) | ||
92 | for d in entry_dict_sorted: | ||
93 | outf.write( "%s %s %s[] = {\n" % (entry_dict_sorted[d]['type_prefix'], entry_dict_sorted[d]['type'],d) ) | ||
94 | for f in entry_dict_sorted[d]['fields']: | ||
95 | outf.write( entry_dict_sorted[d]['fields'][f] + '\n' ) | ||
96 | |||
97 | outf.write( "};\n" ) | ||
98 | |||
99 | outf.close() | ||
100 | |||
diff --git a/meta/recipes-kernel/powertop/powertop_2.13.bb b/meta/recipes-kernel/powertop/powertop_2.13.bb deleted file mode 100644 index 8c7e78fd94..0000000000 --- a/meta/recipes-kernel/powertop/powertop_2.13.bb +++ /dev/null | |||
@@ -1,32 +0,0 @@ | |||
1 | SUMMARY = "Power usage tool" | ||
2 | DESCRIPTION = "Linux tool to diagnose issues with power consumption and power management." | ||
3 | HOMEPAGE = "https://01.org/powertop/" | ||
4 | BUGTRACKER = "https://app.devzing.com/powertopbugs/bugzilla" | ||
5 | DEPENDS = "ncurses libnl pciutils autoconf-archive" | ||
6 | LICENSE = "GPLv2" | ||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" | ||
8 | |||
9 | SRC_URI = "git://github.com/fenrus75/powertop;protocol=https \ | ||
10 | file://0001-wakeup_xxx.h-include-limits.h.patch \ | ||
11 | " | ||
12 | SRCREV = "184cee06b2d64679bae5f806fe0a218827fdde99" | ||
13 | |||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | inherit autotools gettext pkgconfig bash-completion | ||
17 | |||
18 | # we do not want libncursesw if we can | ||
19 | do_configure_prepend() { | ||
20 | # configure.ac checks for delwin() in "ncursesw ncurses" so let's drop first one | ||
21 | sed -i -e "s/ncursesw//g" ${S}/configure.ac | ||
22 | mkdir -p ${B}/src/tuning/ | ||
23 | echo "${PV}" > ${S}/version-long | ||
24 | echo "${PV}" > ${S}/version-short | ||
25 | cp ${STAGING_DATADIR}/aclocal/ax_require_defined.m4 ${S}/m4/ | ||
26 | } | ||
27 | |||
28 | inherit update-alternatives | ||
29 | ALTERNATIVE_${PN} = "powertop" | ||
30 | ALTERNATIVE_TARGET[powertop] = "${sbindir}/powertop" | ||
31 | ALTERNATIVE_LINK_NAME[powertop] = "${sbindir}/powertop" | ||
32 | ALTERNATIVE_PRIORITY = "100" | ||
diff --git a/meta/recipes-kernel/powertop/powertop_2.15.bb b/meta/recipes-kernel/powertop/powertop_2.15.bb new file mode 100644 index 0000000000..65c6d0fcd3 --- /dev/null +++ b/meta/recipes-kernel/powertop/powertop_2.15.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "Power usage tool" | ||
2 | DESCRIPTION = "Linux tool to diagnose issues with power consumption and power management." | ||
3 | HOMEPAGE = "https://01.org/powertop/" | ||
4 | BUGTRACKER = "https://app.devzing.com/powertopbugs/bugzilla" | ||
5 | DEPENDS = "ncurses libnl pciutils autoconf-archive-native" | ||
6 | LICENSE = "GPL-2.0-only" | ||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" | ||
8 | |||
9 | SRC_URI = "git://github.com/fenrus75/powertop;protocol=https;branch=master \ | ||
10 | file://0001-wakeup_xxx.h-include-limits.h.patch \ | ||
11 | " | ||
12 | SRCREV = "d51ad395436d4d1dcc3ca46e1519ffeb475bf651" | ||
13 | |||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | LDFLAGS:append = " -pthread" | ||
17 | |||
18 | inherit autotools gettext pkgconfig bash-completion | ||
19 | |||
20 | inherit update-alternatives | ||
21 | ALTERNATIVE:${PN} = "powertop" | ||
22 | ALTERNATIVE_TARGET[powertop] = "${sbindir}/powertop" | ||
23 | ALTERNATIVE_LINK_NAME[powertop] = "${sbindir}/powertop" | ||
24 | ALTERNATIVE_PRIORITY = "100" | ||
diff --git a/meta/recipes-kernel/systemtap/systemtap-native_git.bb b/meta/recipes-kernel/systemtap/systemtap-native_git.bb index 19cc1cf0f0..2690b259c8 100644 --- a/meta/recipes-kernel/systemtap/systemtap-native_git.bb +++ b/meta/recipes-kernel/systemtap/systemtap-native_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | 1 | ||
2 | require systemtap_git.bb | 2 | require systemtap_git.bb |
3 | 3 | ||
4 | inherit native | 4 | inherit_defer native |
5 | 5 | ||
6 | addtask addto_recipe_sysroot after do_populate_sysroot before do_build | 6 | addtask addto_recipe_sysroot after do_populate_sysroot before do_build |
diff --git a/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb b/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb deleted file mode 100644 index 46820ef489..0000000000 --- a/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +++ /dev/null | |||
@@ -1,40 +0,0 @@ | |||
1 | SUMMARY = "UProbes kernel module for SystemTap" | ||
2 | |||
3 | require systemtap_git.inc | ||
4 | |||
5 | DEPENDS = "systemtap virtual/kernel" | ||
6 | |||
7 | # On systems without CONFIG_UTRACE, this package is empty. | ||
8 | ALLOW_EMPTY_${PN} = "1" | ||
9 | |||
10 | inherit module-base gettext | ||
11 | |||
12 | FILESEXTRAPATHS =. "${FILE_DIRNAME}/systemtap:" | ||
13 | |||
14 | FILES_${PN} += "${datadir}/systemtap/runtime/uprobes" | ||
15 | |||
16 | # Compile and install the uprobes kernel module on machines with utrace | ||
17 | # support. Note that staprun expects it in the systemtap/runtime directory, | ||
18 | # not in /lib/modules. | ||
19 | do_compile() { | ||
20 | if grep -q "CONFIG_UTRACE=y" ${STAGING_KERNEL_BUILDDIR}/.config | ||
21 | then | ||
22 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC LD CPP | ||
23 | oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ | ||
24 | AR="${KERNEL_AR}" \ | ||
25 | -C ${STAGING_KERNEL_DIR} scripts | ||
26 | oe_runmake KDIR=${STAGING_KERNEL_DIR} \ | ||
27 | M="${S}/runtime/uprobes/" \ | ||
28 | CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ | ||
29 | AR="${KERNEL_AR}" \ | ||
30 | -C "${S}/runtime/uprobes/" | ||
31 | fi | ||
32 | } | ||
33 | |||
34 | do_install() { | ||
35 | if [ -e "${S}/runtime/uprobes/uprobes.ko" ] | ||
36 | then | ||
37 | install -d ${D}${datadir}/systemtap/runtime/uprobes/ | ||
38 | install -m 0644 ${S}/runtime/uprobes/uprobes.ko ${D}${datadir}/systemtap/runtime/uprobes/ | ||
39 | fi | ||
40 | } | ||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch b/meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch new file mode 100644 index 0000000000..2d46a3962d --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch | |||
@@ -0,0 +1,40 @@ | |||
1 | From 5a01e28bd806326b2143e3e6bb28d4780c5d879d Mon Sep 17 00:00:00 2001 | ||
2 | From: Victor Kamensky <victor.kamensky7@gmail.com> | ||
3 | Date: Sun, 3 Dec 2023 18:40:05 -0800 | ||
4 | Subject: [PATCH] Makefile.am: remove runtime/linux/uprobes and | ||
5 | runtime/linux/uprobes2 install | ||
6 | |||
7 | "PR30434 continuation: Removed old uprobes, uprobes2 implementation, | ||
8 | uprobes-inc.h & any mentions of CONFIG_UTRACE." commit removed uprobes, | ||
9 | and uprobes2 sources and directories, but Makefile.am still tries to | ||
10 | install them. In fact after failing to 'cd' into runtime/linux/uprobes | ||
11 | directory it copies top level *.[ch] files into | ||
12 | ${prefix}/share/systemtap/runtime/linux/uprobes directory. | ||
13 | |||
14 | The issue was caught by OpenEmbedded project do_package_qa checks. | ||
15 | |||
16 | Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com> | ||
17 | |||
18 | Upstream-Status: Submitted [https://sourceware.org/pipermail/systemtap/2023q4/027880.html] | ||
19 | --- | ||
20 | Makefile.am | 4 ---- | ||
21 | 1 file changed, 4 deletions(-) | ||
22 | |||
23 | diff --git a/Makefile.am b/Makefile.am | ||
24 | index 5737c6b20..2ba896088 100644 | ||
25 | --- a/Makefile.am | ||
26 | +++ b/Makefile.am | ||
27 | @@ -277,10 +277,6 @@ endif | ||
28 | do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/softfloat/$$f; done) | ||
29 | (cd $(srcdir)/runtime/linux; for f in *.[ch]; \ | ||
30 | do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/linux/$$f; done) | ||
31 | - (cd $(srcdir)/runtime/linux/uprobes; for f in Makefile *.[ch]; \ | ||
32 | - do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/linux/uprobes/$$f; done) | ||
33 | - (cd $(srcdir)/runtime/linux/uprobes2; for f in *.[ch]; \ | ||
34 | - do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/linux/uprobes2/$$f; done) | ||
35 | (cd $(srcdir)/tapset; find . \( -name '*.stp' -o -name '*.stpm' -o -name README \) -print \ | ||
36 | | while read f; do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/tapset/$$f; done) | ||
37 | (cd $(srcdir)/testsuite/systemtap.examples; find . -type f -print \ | ||
38 | -- | ||
39 | 2.31.1 | ||
40 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch b/meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch new file mode 100644 index 0000000000..e3d94d9312 --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch | |||
@@ -0,0 +1,40 @@ | |||
1 | From d42139cf9cd26d0c0363fcfe007716baeb8de517 Mon Sep 17 00:00:00 2001 | ||
2 | From: Sergei Trofimovich <slyich@gmail.com> | ||
3 | Date: Fri, 22 Dec 2023 19:42:38 +0000 | ||
4 | Subject: [PATCH] bpf-translate.cxx: fix build against upcoming `gcc-14` | ||
5 | (`-Werror=calloc-transposed-args`) | ||
6 | |||
7 | `gcc-14` added a new `-Wcalloc-transposed-args` warning recently. It | ||
8 | detected minor infelicity in `calloc()` API usage in `systemtap`: | ||
9 | |||
10 | bpf-translate.cxx: In function 'bpf::BPF_Section* bpf::output_probe(BPF_Output&, program&, const std::string&, unsigned int)': | ||
11 | bpf-translate.cxx:5044:39: error: 'void* calloc(size_t, size_t)' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args] | ||
12 | 5044 | bpf_insn *buf = (bpf_insn*) calloc (sizeof(bpf_insn), ninsns); | ||
13 | | ^~~~~~~~~~~~~~~~ | ||
14 | bpf-translate.cxx:5044:39: note: earlier argument should specify number of elements, later size of each element | ||
15 | |||
16 | Upstream-Status: Backport [https://sourceware.org/git/?p=systemtap.git;a=commit;h=d42139cf9cd26d0c0363fcfe007716baeb8de517] | ||
17 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
18 | --- | ||
19 | bpf-translate.cxx | 4 ++-- | ||
20 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
21 | |||
22 | diff --git a/bpf-translate.cxx b/bpf-translate.cxx | ||
23 | index 1a9302463..aa8ef65ce 100644 | ||
24 | --- a/bpf-translate.cxx | ||
25 | +++ b/bpf-translate.cxx | ||
26 | @@ -5041,9 +5041,9 @@ output_probe(BPF_Output &eo, program &prog, | ||
27 | } | ||
28 | } | ||
29 | |||
30 | - bpf_insn *buf = (bpf_insn*) calloc (sizeof(bpf_insn), ninsns); | ||
31 | + bpf_insn *buf = (bpf_insn*) calloc (ninsns, sizeof(bpf_insn)); | ||
32 | assert (buf); | ||
33 | - Elf64_Rel *rel = (Elf64_Rel*) calloc (sizeof(Elf64_Rel), nreloc); | ||
34 | + Elf64_Rel *rel = (Elf64_Rel*) calloc (nreloc, sizeof(Elf64_Rel)); | ||
35 | assert (rel); | ||
36 | |||
37 | unsigned i = 0, r = 0; | ||
38 | -- | ||
39 | 2.43.0 | ||
40 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch b/meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch new file mode 100644 index 0000000000..98641826f6 --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch | |||
@@ -0,0 +1,51 @@ | |||
1 | From 3913ad3e28a19811e1b52338112344a487057e4f Mon Sep 17 00:00:00 2001 | ||
2 | From: Victor Kamensky <victor.kamensky7@gmail.com> | ||
3 | Date: Mon, 18 Dec 2023 03:13:38 +0000 | ||
4 | Subject: [PATCH 1/2] configure.ac: fix broken libdebuginfod library auto | ||
5 | detection | ||
6 | |||
7 | After 2e67b053e3796ee7cf29a39f9698729b52078406 "configury: rework debuginfod searches" | ||
8 | commit, libdebuginfod.so library auto detection is broken. It was reported by Martin Jansa | ||
9 | on openembedded-core mailing list [1]. | ||
10 | |||
11 | Currently configure.ac does "AC_DEFINE([HAVE_LIBDEBUGINFOD], [1] ..." as long as | ||
12 | no --without-debuginfod option is passed, regardless PKG_CHECK_MODULES check result. | ||
13 | It seems to be bad copy/paste. Address the issue by moving the AC_DEFINE back to | ||
14 | PKG_CHECK_MODULES action-if-found block. | ||
15 | |||
16 | To reproduce the issue on FC system, one can do the following | ||
17 | "sudo dnf remove elfutils-debuginfod-client-devel" and then try to build SystemTap | ||
18 | util.cxx will fail to compile because of missing elfutils/debuginfod.h because | ||
19 | config.h will have "#define HAVE_LIBDEBUGINFOD 1", while config.log and configure | ||
20 | output indicates that check for libdebuginfod library failed. | ||
21 | |||
22 | [1] https://lists.openembedded.org/g/openembedded-core/message/192109?p=%2C%2C%2C20%2C0%2C0%2C0%3A%3Acreated%2C0%2Csystemtap%2C20%2C2%2C0%2C102987514 | ||
23 | |||
24 | Upstream-Status: Submitted [https://sourceware.org/pipermail/systemtap/2023q4/027914.html] | ||
25 | Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com> | ||
26 | --- | ||
27 | configure.ac | 5 ++--- | ||
28 | 1 file changed, 2 insertions(+), 3 deletions(-) | ||
29 | |||
30 | diff --git a/configure.ac b/configure.ac | ||
31 | index d9559c5c3..18cd7f84a 100644 | ||
32 | --- a/configure.ac | ||
33 | +++ b/configure.ac | ||
34 | @@ -219,12 +219,11 @@ dnl take the user at his or her word | ||
35 | elif test "x$with_debuginfod" != xno; then | ||
36 | dnl check in the system pkgconfig | ||
37 | PKG_CHECK_MODULES([debuginfod], [libdebuginfod >= 0.179], | ||
38 | - [have_debuginfod=1], | ||
39 | + [have_debuginfod=1 | ||
40 | + AC_DEFINE([HAVE_LIBDEBUGINFOD], [1], [Define to 1 if debuginfod is enabled.])], | ||
41 | [if test "x$with_debuginfod" = xyes; then | ||
42 | AC_MSG_ERROR(["--with-debuginfod was given, but libdebuginfod is missing or unusable."]) | ||
43 | fi]) | ||
44 | - AC_DEFINE([HAVE_LIBDEBUGINFOD], [1], [Define to 1 if debuginfod is enabled.]) | ||
45 | - AC_MSG_RESULT([yes]) | ||
46 | else | ||
47 | AC_MSG_RESULT([no]) | ||
48 | fi | ||
49 | -- | ||
50 | 2.31.1 | ||
51 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch b/meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch new file mode 100644 index 0000000000..afdc10a3fe --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | From cfc2c1d53924face11e3fab78ded61c359778eb9 Mon Sep 17 00:00:00 2001 | ||
2 | From: "Frank Ch. Eigler" <fche@redhat.com> | ||
3 | Date: Sat, 4 Nov 2023 12:19:59 -0400 | ||
4 | Subject: [PATCH] prerelease datestamp fixes | ||
5 | |||
6 | Upstream-Status: Backport | ||
7 | --- | ||
8 | NEWS | 2 +- | ||
9 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
10 | |||
11 | diff --git a/NEWS b/NEWS | ||
12 | index c7f31e8b7..f0f9056c4 100644 | ||
13 | --- a/NEWS | ||
14 | +++ b/NEWS | ||
15 | @@ -1,4 +1,4 @@ | ||
16 | -* What's new in version 5.0, 2023-11-03 | ||
17 | +* What's new in version 5.0, 2023-11-04 | ||
18 | |||
19 | - Performance improvements in uprobe registration and module startup. | ||
20 | |||
21 | -- | ||
22 | 2.31.1 | ||
23 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-staprun-address-ncurses-6.3-failures.patch b/meta/recipes-kernel/systemtap/systemtap/0001-staprun-address-ncurses-6.3-failures.patch new file mode 100644 index 0000000000..1decf21593 --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/0001-staprun-address-ncurses-6.3-failures.patch | |||
@@ -0,0 +1,61 @@ | |||
1 | From 191f528da19193d713d94ee252e2485efd9af4d3 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex@linutronix.de> | ||
3 | Date: Mon, 25 Oct 2021 17:59:24 +0200 | ||
4 | Subject: [PATCH] staprun: address ncurses 6.3 failures | ||
5 | |||
6 | Upstream-Status: Submitted [by email to smakarov@redhat.com,systemtap@sourceware.org] | ||
7 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
8 | --- | ||
9 | staprun/monitor.c | 24 ++++++++++++------------ | ||
10 | 1 file changed, 12 insertions(+), 12 deletions(-) | ||
11 | |||
12 | diff --git a/staprun/monitor.c b/staprun/monitor.c | ||
13 | index 478634c09..f4fbfd686 100644 | ||
14 | --- a/staprun/monitor.c | ||
15 | +++ b/staprun/monitor.c | ||
16 | @@ -448,12 +448,12 @@ void monitor_render(void) | ||
17 | if (active_window == 0) | ||
18 | wattron(status, A_BOLD); | ||
19 | wprintw(status, "\n%*s\t%*s\t%*s\t%*s\t%*s\t%*s\t%s\n", | ||
20 | - width[p_index], HIGHLIGHT("index", p_index, comp_fn_index), | ||
21 | - width[p_state], HIGHLIGHT("state", p_state, comp_fn_index), | ||
22 | - width[p_hits], HIGHLIGHT("hits", p_hits, comp_fn_index), | ||
23 | - width[p_min], HIGHLIGHT("min", p_min, comp_fn_index), | ||
24 | - width[p_avg], HIGHLIGHT("avg", p_avg, comp_fn_index), | ||
25 | - width[p_max], HIGHLIGHT("max", p_max, comp_fn_index), | ||
26 | + (int)width[p_index], HIGHLIGHT("index", p_index, comp_fn_index), | ||
27 | + (int)width[p_state], HIGHLIGHT("state", p_state, comp_fn_index), | ||
28 | + (int)width[p_hits], HIGHLIGHT("hits", p_hits, comp_fn_index), | ||
29 | + (int)width[p_min], HIGHLIGHT("min", p_min, comp_fn_index), | ||
30 | + (int)width[p_avg], HIGHLIGHT("avg", p_avg, comp_fn_index), | ||
31 | + (int)width[p_max], HIGHLIGHT("max", p_max, comp_fn_index), | ||
32 | HIGHLIGHT("name", p_name, comp_fn_index)); | ||
33 | if (active_window == 0) | ||
34 | wattroff(status, A_BOLD); | ||
35 | @@ -466,17 +466,17 @@ void monitor_render(void) | ||
36 | json_object *probe, *field; | ||
37 | probe = json_object_array_get_idx(jso_probe_list, i); | ||
38 | json_object_object_get_ex(probe, "index", &field); | ||
39 | - wprintw(status, "%*s\t", width[p_index], json_object_get_string(field)); | ||
40 | + wprintw(status, "%*s\t", (int)width[p_index], json_object_get_string(field)); | ||
41 | json_object_object_get_ex(probe, "state", &field); | ||
42 | - wprintw(status, "%*s\t", width[p_state], json_object_get_string(field)); | ||
43 | + wprintw(status, "%*s\t", (int)width[p_state], json_object_get_string(field)); | ||
44 | json_object_object_get_ex(probe, "hits", &field); | ||
45 | - wprintw(status, "%*s\t", width[p_hits], json_object_get_string(field)); | ||
46 | + wprintw(status, "%*s\t", (int)width[p_hits], json_object_get_string(field)); | ||
47 | json_object_object_get_ex(probe, "min", &field); | ||
48 | - wprintw(status, "%*s\t", width[p_min], json_object_get_string(field)); | ||
49 | + wprintw(status, "%*s\t", (int)width[p_min], json_object_get_string(field)); | ||
50 | json_object_object_get_ex(probe, "avg", &field); | ||
51 | - wprintw(status, "%*s\t", width[p_avg], json_object_get_string(field)); | ||
52 | + wprintw(status, "%*s\t", (int)width[p_avg], json_object_get_string(field)); | ||
53 | json_object_object_get_ex(probe, "max", &field); | ||
54 | - wprintw(status, "%*s\t", width[p_max], json_object_get_string(field)); | ||
55 | + wprintw(status, "%*s\t", (int)width[p_max], json_object_get_string(field)); | ||
56 | getyx(status, discard, cur_x); | ||
57 | json_object_object_get_ex(probe, "name", &field); | ||
58 | wprintw(status, "%.*s", max_cols-cur_x-1, json_object_get_string(field)); | ||
59 | -- | ||
60 | 2.20.1 | ||
61 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch b/meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch new file mode 100644 index 0000000000..22578fb3f6 --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch | |||
@@ -0,0 +1,36 @@ | |||
1 | From 52596f023652114642faba5726c99488529029ce Mon Sep 17 00:00:00 2001 | ||
2 | From: Sergei Trofimovich <slyich@gmail.com> | ||
3 | Date: Thu, 21 Dec 2023 10:00:06 +0000 | ||
4 | Subject: [PATCH] staprun: fix build against upcoming `gcc-14` | ||
5 | (`-Werror=calloc-transposed-args`) | ||
6 | |||
7 | `gcc-14` added a new `-Wcalloc-transposed-args` warning recently. It | ||
8 | detected minor infelicity in `calloc()` API usage in `systemtap`: | ||
9 | |||
10 | staprun.c: In function 'main': | ||
11 | staprun.c:550:50: error: 'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args] | ||
12 | 550 | char ** new_argv = calloc(sizeof(char *),argc+2); | ||
13 | | ^~~~ | ||
14 | |||
15 | Upstream-Status: Backport [https://sourceware.org/git/?p=systemtap.git;a=commit;h=52596f023652114642faba5726c99488529029ce] | ||
16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
17 | --- | ||
18 | staprun/staprun.c | 2 +- | ||
19 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
20 | |||
21 | diff --git a/staprun/staprun.c b/staprun/staprun.c | ||
22 | index 8437f3af6..d1b0b221b 100644 | ||
23 | --- a/staprun/staprun.c | ||
24 | +++ b/staprun/staprun.c | ||
25 | @@ -547,7 +547,7 @@ int main(int argc, char **argv) | ||
26 | us to extend argv[], with all the C fun that entails. */ | ||
27 | #ifdef HAVE_OPENAT | ||
28 | if (relay_basedir_fd >= 0) { | ||
29 | - char ** new_argv = calloc(sizeof(char *),argc+2); | ||
30 | + char ** new_argv = calloc(argc+2, sizeof(char *)); | ||
31 | const int new_Foption_size = 10; /* -FNNNNN */ | ||
32 | char * new_Foption = malloc(new_Foption_size); | ||
33 | int i; | ||
34 | -- | ||
35 | 2.43.0 | ||
36 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-transport-protect-include-and-callsite-with-same-con.patch b/meta/recipes-kernel/systemtap/systemtap/0001-transport-protect-include-and-callsite-with-same-con.patch deleted file mode 100644 index efc79f6c0f..0000000000 --- a/meta/recipes-kernel/systemtap/systemtap/0001-transport-protect-include-and-callsite-with-same-con.patch +++ /dev/null | |||
@@ -1,44 +0,0 @@ | |||
1 | From cbf27cd54071f788231e69d96dbaad563f1010d4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Bruce Ashfield <bruce.ashfield@gmail.com> | ||
3 | Date: Fri, 18 Dec 2020 13:15:08 -0500 | ||
4 | Subject: [PATCH] transport: protect include and callsite with same conditional | ||
5 | |||
6 | transport.c has the following code block: | ||
7 | |||
8 | if (!debugfs_p && security_locked_down (LOCKDOWN_DEBUGFS)) | ||
9 | |||
10 | Which is protected by the conditional STAPCONF_LOCKDOWN_DEBUGFS. | ||
11 | |||
12 | linux/security.h provides the definition of LOCKDOWN_DEBUGFS, and | ||
13 | must be included or we have a compilation issue. | ||
14 | |||
15 | The include of security.h is protected by #ifdef CONFIG_SECURITY_LOCKDOWN_LSM, | ||
16 | which means that in some configurations we can get out of sync with | ||
17 | the include and the callsite. | ||
18 | |||
19 | If we protect the include and the callsite with the same #ifdef, we can | ||
20 | be sure that they will be consistent. | ||
21 | |||
22 | Upstream-status: Inappropriate (kernel-devsrc specific) | ||
23 | |||
24 | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> | ||
25 | --- | ||
26 | runtime/transport/transport.c | 2 +- | ||
27 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
28 | |||
29 | diff --git a/runtime/transport/transport.c b/runtime/transport/transport.c | ||
30 | index bb4a98bd3..88e20ea28 100644 | ||
31 | --- a/runtime/transport/transport.c | ||
32 | +++ b/runtime/transport/transport.c | ||
33 | @@ -21,7 +21,7 @@ | ||
34 | #include <linux/namei.h> | ||
35 | #include <linux/delay.h> | ||
36 | #include <linux/mutex.h> | ||
37 | -#ifdef CONFIG_SECURITY_LOCKDOWN_LSM | ||
38 | +#ifdef STAPCONF_LOCKDOWN_DEBUGFS | ||
39 | #include <linux/security.h> | ||
40 | #endif | ||
41 | #include "../uidgid_compatibility.h" | ||
42 | -- | ||
43 | 2.19.1 | ||
44 | |||
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.bb b/meta/recipes-kernel/systemtap/systemtap_git.bb index c4a6eef59a..68f5c76428 100644 --- a/meta/recipes-kernel/systemtap/systemtap_git.bb +++ b/meta/recipes-kernel/systemtap/systemtap_git.bb | |||
@@ -6,7 +6,10 @@ HOMEPAGE = "https://sourceware.org/systemtap/" | |||
6 | 6 | ||
7 | require systemtap_git.inc | 7 | require systemtap_git.inc |
8 | 8 | ||
9 | SRC_URI += "file://0001-improve-reproducibility-for-c-compiling.patch" | 9 | SRC_URI += " \ |
10 | file://0001-improve-reproducibility-for-c-compiling.patch \ | ||
11 | file://0001-staprun-address-ncurses-6.3-failures.patch \ | ||
12 | " | ||
10 | 13 | ||
11 | DEPENDS = "elfutils" | 14 | DEPENDS = "elfutils" |
12 | 15 | ||
@@ -21,58 +24,62 @@ STAP_DOCS ?= "--disable-docs --disable-publican --disable-refdocs" | |||
21 | 24 | ||
22 | EXTRA_OECONF += "${STAP_DOCS} " | 25 | EXTRA_OECONF += "${STAP_DOCS} " |
23 | 26 | ||
24 | PACKAGECONFIG ??= "translator sqlite monitor python3-probes" | 27 | PACKAGECONFIG ??= "translator sqlite monitor python3-probes ${@bb.utils.filter('DISTRO_FEATURES', 'debuginfod', d)}" |
25 | PACKAGECONFIG[translator] = "--enable-translator,--disable-translator,boost,bash" | 28 | PACKAGECONFIG[translator] = "--enable-translator,--disable-translator,boost,bash" |
26 | PACKAGECONFIG[libvirt] = "--enable-libvirt,--disable-libvirt,libvirt" | 29 | PACKAGECONFIG[libvirt] = "--enable-libvirt,--disable-libvirt,libvirt" |
27 | PACKAGECONFIG[sqlite] = "--enable-sqlite,--disable-sqlite,sqlite3" | 30 | PACKAGECONFIG[sqlite] = "--enable-sqlite,--disable-sqlite,sqlite3" |
28 | PACKAGECONFIG[monitor] = "--enable-monitor,--disable-monitor,ncurses json-c" | 31 | PACKAGECONFIG[monitor] = "--enable-monitor,--disable-monitor,ncurses json-c" |
29 | PACKAGECONFIG[python3-probes] = "--with-python3-probes,--without-python3-probes,python3-setuptools-native" | 32 | PACKAGECONFIG[python3-probes] = "--with-python3-probes,--without-python3-probes,python3-setuptools-native" |
33 | PACKAGECONFIG[debuginfod] = "--with-debuginfod, --without-debuginfod" | ||
30 | 34 | ||
31 | inherit autotools gettext pkgconfig systemd | 35 | inherit autotools gettext pkgconfig systemd |
32 | inherit ${@bb.utils.contains('PACKAGECONFIG', 'python3-probes', 'distutils3-base', '', d)} | 36 | inherit_defer ${@bb.utils.contains('PACKAGECONFIG', 'python3-probes', 'setuptools3-base', '', d)} |
37 | |||
38 | # | ../git/elaborate.cxx:2601:21: error: storing the address of local variable 'sym' in '*s.systemtap_session::symbol_resolver' [-Werror=dangling-pointer=] | ||
39 | CXXFLAGS += "-Wno-dangling-pointer" | ||
33 | 40 | ||
34 | # exporter comes with python3-probes | 41 | # exporter comes with python3-probes |
35 | PACKAGES =+ "${PN}-exporter" | 42 | PACKAGES =+ "${PN}-exporter" |
36 | FILES_${PN}-exporter = "${sysconfdir}/stap-exporter/* \ | 43 | FILES:${PN}-exporter = "${sysconfdir}/stap-exporter/* \ |
37 | ${sysconfdir}/sysconfig/stap-exporter \ | 44 | ${sysconfdir}/sysconfig/stap-exporter \ |
38 | ${systemd_unitdir}/system/stap-exporter.service \ | 45 | ${systemd_system_unitdir}/stap-exporter.service \ |
39 | ${sbindir}/stap-exporter" | 46 | ${sbindir}/stap-exporter" |
40 | RDEPENDS_${PN}-exporter = "${PN} python3-core python3-netclient" | 47 | RDEPENDS:${PN}-exporter = "${PN} python3-core python3-netclient" |
41 | SYSTEMD_SERVICE_${PN}-exporter = "stap-exporter.service" | 48 | SYSTEMD_SERVICE:${PN}-exporter = "stap-exporter.service" |
42 | 49 | ||
43 | PACKAGES =+ "${PN}-runtime" | 50 | PACKAGES =+ "${PN}-runtime" |
44 | FILES_${PN}-runtime = "\ | 51 | FILES:${PN}-runtime = "\ |
45 | ${bindir}/staprun \ | 52 | ${bindir}/staprun \ |
46 | ${bindir}/stap-merge \ | 53 | ${bindir}/stap-merge \ |
47 | ${bindir}/stapsh \ | 54 | ${bindir}/stapsh \ |
48 | ${libexecdir}/${BPN}/stapio \ | 55 | ${libexecdir}/${BPN}/stapio \ |
49 | " | 56 | " |
50 | RDEPENDS_${PN}_class-target += "${PN}-runtime" | 57 | RDEPENDS:${PN}:class-target += "${PN}-runtime" |
51 | 58 | ||
52 | PACKAGES =+ "${PN}-examples" | 59 | PACKAGES =+ "${PN}-examples" |
53 | FILES_${PN}-examples = "${datadir}/${BPN}/examples/" | 60 | FILES:${PN}-examples = "${datadir}/${BPN}/examples/" |
54 | RDEPENDS_${PN}-examples += "${PN}" | 61 | RDEPENDS:${PN}-examples += "${PN}" |
55 | 62 | ||
56 | # don't complain that some examples involve bash, perl, php... | 63 | # don't complain that some examples involve bash, perl, php... |
57 | INSANE_SKIP_${PN}-examples += "file-rdeps" | 64 | INSANE_SKIP:${PN}-examples += "file-rdeps" |
58 | 65 | ||
59 | PACKAGES =+ "${PN}-python" | 66 | PACKAGES =+ "${PN}-python" |
60 | FILES_${PN}-python += "\ | 67 | FILES:${PN}-python += "\ |
61 | ${bindir}/dtrace \ | 68 | ${bindir}/dtrace \ |
62 | ${libdir}/python*/ \ | 69 | ${libdir}/python*/ \ |
63 | ${libexecdir}/${BPN}/python/ \ | 70 | ${libexecdir}/${BPN}/python/ \ |
64 | " | 71 | " |
65 | # python material requires sdt headers | 72 | # python material requires sdt headers |
66 | RDEPENDS_${PN}-python += "${PN}-dev python3-core" | 73 | RDEPENDS:${PN}-python += "${PN}-dev python3-core" |
67 | INSANE_SKIP_${PN}-python += "dev-deps" | 74 | INSANE_SKIP:${PN}-python += "dev-deps" |
68 | 75 | ||
69 | do_configure_prepend () { | 76 | do_configure:prepend () { |
70 | # Improve reproducibility for c++ object files | 77 | # Improve reproducibility for c++ object files |
71 | reltivepath="${@os.path.relpath(d.getVar('STAGING_INCDIR'), d.getVar('S'))}" | 78 | reltivepath="${@os.path.relpath(d.getVar('STAGING_INCDIR'), d.getVar('S'))}" |
72 | sed -i "s:@RELATIVE_STAGING_INCDIR@:$reltivepath:g" ${S}/stringtable.h | 79 | sed -i "s:@RELATIVE_STAGING_INCDIR@:$reltivepath:g" ${S}/stringtable.h |
73 | } | 80 | } |
74 | 81 | ||
75 | do_install_append () { | 82 | do_install:append () { |
76 | if [ ! -f ${D}${bindir}/stap ]; then | 83 | if [ ! -f ${D}${bindir}/stap ]; then |
77 | # translator disabled case, need to leave only minimal runtime | 84 | # translator disabled case, need to leave only minimal runtime |
78 | rm -rf ${D}${datadir}/${PN} | 85 | rm -rf ${D}${datadir}/${PN} |
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.inc b/meta/recipes-kernel/systemtap/systemtap_git.inc index 016b423847..c574bcb2ba 100644 --- a/meta/recipes-kernel/systemtap/systemtap_git.inc +++ b/meta/recipes-kernel/systemtap/systemtap_git.inc | |||
@@ -1,17 +1,21 @@ | |||
1 | LICENSE = "GPLv2" | 1 | LICENSE = "GPL-2.0-only" |
2 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | 2 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" |
3 | SRCREV = "988f439af39a359b4387963ca4633649866d8275" | 3 | SRCREV = "e72dc118e563c645d93a1a2d771e8d90e8fec1ae" |
4 | PV = "4.4" | 4 | PV = "5.0" |
5 | 5 | ||
6 | SRC_URI = "git://sourceware.org/git/systemtap.git \ | 6 | SRC_URI = "git://sourceware.org/git/systemtap.git;branch=master;protocol=https \ |
7 | file://0001-Do-not-let-configure-write-a-python-location-into-th.patch \ | 7 | file://0001-Do-not-let-configure-write-a-python-location-into-th.patch \ |
8 | file://0001-Install-python-modules-to-correct-library-dir.patch \ | 8 | file://0001-Install-python-modules-to-correct-library-dir.patch \ |
9 | file://0001-staprun-stapbpf-don-t-support-installing-a-non-root.patch \ | 9 | file://0001-staprun-stapbpf-don-t-support-installing-a-non-root.patch \ |
10 | file://0001-transport-protect-include-and-callsite-with-same-con.patch \ | 10 | file://0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch \ |
11 | file://0001-prerelease-datestamp-fixes.patch \ | ||
12 | file://0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch \ | ||
13 | file://0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch \ | ||
14 | file://0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch \ | ||
11 | " | 15 | " |
12 | 16 | ||
13 | COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64|microblazeel|mips).*-linux' | 17 | COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64|microblazeel|mips|riscv64).*-linux' |
14 | COMPATIBLE_HOST_libc-musl = 'null' | 18 | COMPATIBLE_HOST:libc-musl = 'null' |
15 | 19 | ||
16 | S = "${WORKDIR}/git" | 20 | S = "${WORKDIR}/git" |
17 | 21 | ||
diff --git a/meta/recipes-kernel/wireless-regdb/wireless-regdb_2020.11.20.bb b/meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.01.23.bb index b3567bca95..8fde236ab4 100644 --- a/meta/recipes-kernel/wireless-regdb/wireless-regdb_2020.11.20.bb +++ b/meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.01.23.bb | |||
@@ -5,7 +5,7 @@ LICENSE = "ISC" | |||
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=07c4f6dea3845b02a18dc00c8c87699c" | 5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=07c4f6dea3845b02a18dc00c8c87699c" |
6 | 6 | ||
7 | SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz" | 7 | SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz" |
8 | SRC_URI[sha256sum] = "b4164490d82ff7b0086e812ac42ab27baf57be24324d4c0ee1c5dd6ba27f2a52" | 8 | SRC_URI[sha256sum] = "c8a61c9acf76fa7eb4239e89f640dee3e87098d9f69b4d3518c9c60fc6d20c55" |
9 | 9 | ||
10 | inherit bin_package allarch | 10 | inherit bin_package allarch |
11 | 11 | ||
@@ -13,7 +13,7 @@ do_install() { | |||
13 | install -d -m0755 ${D}${nonarch_libdir}/crda | 13 | install -d -m0755 ${D}${nonarch_libdir}/crda |
14 | install -d -m0755 ${D}${sysconfdir}/wireless-regdb/pubkeys | 14 | install -d -m0755 ${D}${sysconfdir}/wireless-regdb/pubkeys |
15 | install -m 0644 regulatory.bin ${D}${nonarch_libdir}/crda/regulatory.bin | 15 | install -m 0644 regulatory.bin ${D}${nonarch_libdir}/crda/regulatory.bin |
16 | install -m 0644 sforshee.key.pub.pem ${D}${sysconfdir}/wireless-regdb/pubkeys/sforshee.key.pub.pem | 16 | install -m 0644 wens.key.pub.pem ${D}${sysconfdir}/wireless-regdb/pubkeys/wens.key.pub.pem |
17 | 17 | ||
18 | install -m 0644 -D regulatory.db ${D}${nonarch_base_libdir}/firmware/regulatory.db | 18 | install -m 0644 -D regulatory.db ${D}${nonarch_base_libdir}/firmware/regulatory.db |
19 | install -m 0644 regulatory.db.p7s ${D}${nonarch_base_libdir}/firmware/regulatory.db.p7s | 19 | install -m 0644 regulatory.db.p7s ${D}${nonarch_base_libdir}/firmware/regulatory.db.p7s |
@@ -24,9 +24,9 @@ do_install() { | |||
24 | # For kernel <= v4.14, inherit the kernel_wireless_regdb.bbclass | 24 | # For kernel <= v4.14, inherit the kernel_wireless_regdb.bbclass |
25 | # (in meta-networking) in kernel's recipe. | 25 | # (in meta-networking) in kernel's recipe. |
26 | PACKAGES = "${PN}-static ${PN}" | 26 | PACKAGES = "${PN}-static ${PN}" |
27 | RCONFLICTS_${PN} = "${PN}-static" | 27 | RCONFLICTS:${PN} = "${PN}-static" |
28 | 28 | ||
29 | FILES_${PN}-static = " \ | 29 | FILES:${PN}-static = " \ |
30 | ${nonarch_base_libdir}/firmware/regulatory.db \ | 30 | ${nonarch_base_libdir}/firmware/regulatory.db \ |
31 | ${nonarch_base_libdir}/firmware/regulatory.db.p7s \ | 31 | ${nonarch_base_libdir}/firmware/regulatory.db.p7s \ |
32 | " | 32 | " |
@@ -34,10 +34,10 @@ FILES_${PN}-static = " \ | |||
34 | # Native users might want to use the source of regulatory DB. | 34 | # Native users might want to use the source of regulatory DB. |
35 | # This is for example used by Linux kernel <= v4.14 and | 35 | # This is for example used by Linux kernel <= v4.14 and |
36 | # kernel_wireless_regdb.bbclass in meta-networking. | 36 | # kernel_wireless_regdb.bbclass in meta-networking. |
37 | do_install_append_class-native() { | 37 | do_install:append:class-native() { |
38 | install -m 0644 -D db.txt ${D}${libdir}/crda/db.txt | 38 | install -m 0644 -D db.txt ${D}${libdir}/crda/db.txt |
39 | } | 39 | } |
40 | 40 | ||
41 | RSUGGESTS_${PN} = "crda" | 41 | RSUGGESTS:${PN} = "crda" |
42 | 42 | ||
43 | BBCLASSEXTEND = "native" | 43 | BBCLASSEXTEND = "native" |