<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in decodecode</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>d738bced - scripts/decodecode: add support for LoongArch</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#d738bced</link>
        <description>scripts/decodecode: add support for LoongArchAn example how to invoke decodecode for loongarch64:$ echo &apos;Code: 380839f6  380831f9  28412bae  &lt;24000ca6&gt;  004081ad  0014cb50  004083e8  02bff34c  58008e91&apos; | \  ARCH=loongarch CROSS_COMPILE=loongarch64-linux-gnu- \  ./scripts/decodecodeCode: 380839f6 380831f9 28412bae &lt;24000ca6&gt; 004081ad 0014cb50 004083e8 02bff34c 58008e91All code========   0:	380839f6 	ldx.w       	$fp, $t3, $t2   4:	380831f9 	ldx.w       	$s2, $t3, $t0   8:	28412bae 	ld.h        	$t2, $s6, 74(0x4a)   c:*	24000ca6 	ldptr.w     	$a2, $a1, 12(0xc)		&lt;-- trapping instruction  10:	004081ad 	slli.w      	$t1, $t1, 0x0  14:	0014cb50 	and         	$t4, $s3, $t6  18:	004083e8 	slli.w      	$a4, $s8, 0x0  1c:	02bff34c 	addi.w      	$t0, $s3, -4(0xffc)  20:	58008e91 	beq         	$t8, $t5, 140(0x8c)	# 0xacCode starting with the faulting instruction===========================================   0:	24000ca6 	ldptr.w     	$a2, $a1, 12(0xc)   4:	004081ad 	slli.w      	$t1, $t1, 0x0   8:	0014cb50 	and         	$t4, $s3, $t6   c:	004083e8 	slli.w      	$a4, $s8, 0x0  10:	02bff34c 	addi.w      	$t0, $s3, -4(0xffc)  14:	58008e91 	beq         	$t8, $t5, 140(0x8c)	# 0xa0Link: https://lkml.kernel.org/r/MW4PR84MB3145B99B9677BB7887BB26CD8192A@MW4PR84MB3145.NAMPRD84.PROD.OUTLOOK.COMSigned-off-by: Youling Tang &lt;tangyouling@kylinos.cn&gt;Acked-by: Huacai Chen &lt;chenhuacai@loongson.cn&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Sat, 16 Dec 2023 06:51:28 +0000</pubDate>
        <dc:creator>Youling Tang &lt;tangyouling@kylinos.cn&gt;</dc:creator>
    </item>
<item>
        <title>00b24250 - scripts/decodecode: Add support for RISC-V</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#00b24250</link>
        <description>scripts/decodecode: Add support for RISC-VRISC-V has some GNU disassembly quirks, e.g. it requires &apos;-D&apos; toproperly disassemble .2byte directives similar to Arm [1]. Further,GNU objdump groups RISC-V instruction by 2 or 4 byte chunks, insteaddoing byte-for-byte.Add the required switches, and translate from short/word to bytes whenARCH is &quot;riscv&quot;.An example how to invoke decodecode for RISC-V:  $ echo &apos;Code: bf45 f793 1007 f7d9 50ef 37af d541 b7d9 7097 00c8 (80e7)  6140&apos; | AFLAGS=&quot;-march=rv64imac_zicbom_zihintpause&quot;  \  ARCH=riscv CROSS_COMPILE=riscv64-linux-gnu- ./scripts/decodecode  Code: bf45 f793 1007 f7d9 50ef 37af d541 b7d9 7097 00c8 (80e7) 6140  All code  ========     0:   bf45                    c.j     0xffffffffffffffb0     2:   1007f793                andi    a5,a5,256     6:   f7d9                    c.bnez  a5,0xffffffffffffff94     8:   37af50ef                jal     ra,0xf5382     c:   d541                    c.beqz  a0,0xffffffffffffff94     e:   b7d9                    c.j     0xffffffffffffffd4    10:   00c87097                auipc   ra,0xc87    14:*  614080e7                jalr    ra,1556(ra) # 0xc87624          &lt;-- trapping instruction  Code starting with the faulting instruction  ===========================================     0:   614080e7                jalr    ra,1556(ra)[1] https://sourceware.org/bugzilla/show_bug.cgi?id=10263Signed-off-by: Bj&#246;rn T&#246;pel &lt;bjorn@rivosinc.com&gt;Tested-by: Alexandre Ghiti &lt;alexghiti@rivosinc.com&gt;Link: https://lore.kernel.org/r/20230119074738.708301-3-bjorn@kernel.orgSigned-off-by: Palmer Dabbelt &lt;palmer@rivosinc.com&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Thu, 19 Jan 2023 07:47:38 +0000</pubDate>
        <dc:creator>Bj&#246;rn T&#246;pel &lt;bjorn@rivosinc.com&gt;</dc:creator>
    </item>
<item>
        <title>765f2bf0 - scripts/decodecode: improve faulting line determination</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#765f2bf0</link>
        <description>scripts/decodecode: improve faulting line determinationThere are cases where the IP pointer in a Code: line in an oops doesn&apos;tpoint at the beginning of an instruction:Code: 0f bd c2 e9 a0 cd b5 e4 48 0f bd c2 e9 97 cd b5 e4 0f 1f 80 00 00 00 00 \	  e9 8b cd b5 e4 0f 1f 00 66 0f a3 d0 e9 7f cd b5 e4 0f 1f &lt;80&gt; 00 00 00 \	  00 0f a3 d0 e9 70 cd b5 e4 48 0f a3 d0 e9 67 cd b5  e9 7f cd b5 e4          jmp    0xffffffffe4b5cda8  0f 1f 80 00 00 00 00    nopl   0x0(%rax)	^^and the current way of determining the faulting instruction line doesn&apos;twork because disassembled instructions are counted from the IP byte tothe end and when that thing points in the middle, the trailing bytes canbe interpreted as different insns:  Code starting with the faulting instruction  ===========================================     0:   80 00 00                addb   $0x0,(%rax)     3:   00 00                   add    %al,(%rax)whereas, this is part of0f 1f 80 00 00 00 00    nopl   0x0(%rax)     5:   0f a3 d0                bt     %edx,%eax     ...leading to:  1d:   0f 1f 00                nopl   (%rax)  20:   66 0f a3 d0             bt     %dx,%ax  24:*  e9 7f cd b5 e4          jmp    0xffffffffe4b5cda8               &lt;-- trapping instruction  29:   0f 1f 80 00 00 00 00    nopl   0x0(%rax)  30:   0f a3 d0                bt     %edx,%eaxwhich is the wrong faulting instruction.Change the way the faulting line number is determined by matching theopcode bytes from the beginning, leading to correct output:  1d:   0f 1f 00                nopl   (%rax)  20:   66 0f a3 d0             bt     %dx,%ax  24:   e9 7f cd b5 e4          jmp    0xffffffffe4b5cda8  29:*  0f 1f 80 00 00 00 00    nopl   0x0(%rax)                &lt;-- trapping instruction  30:   0f a3 d0                bt     %edx,%eaxWhile at it, make decodecode use bash as the interpreter - that thingshould be present on everything by now. It simplifies the code a lottoo.Link: https://lkml.kernel.org/r/20220808085928.29840-1-bp@alien8.deSigned-off-by: Borislav Petkov &lt;bp@suse.de&gt;Cc: Marc Zyngier &lt;maz@kernel.org&gt;Cc: Will Deacon &lt;will@kernel.org&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Mon, 08 Aug 2022 08:59:28 +0000</pubDate>
        <dc:creator>Borislav Petkov &lt;bp@suse.de&gt;</dc:creator>
    </item>
<item>
        <title>75e2f715 - scripts/decodecode: fix faulting instruction no print when opps.file is DOS format</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#75e2f715</link>
        <description>scripts/decodecode: fix faulting instruction no print when opps.file is DOS formatIf opps.file is in DOS format, faulting instruction cannot be printed:  / # ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-  / # ./scripts/decodecode &lt; oops.file  [ 0.734345] Code: d0002881 912f9c21 94067e68 d2800001 (b900003f)  aarch64-linux-gnu-strip: &apos;/tmp/tmp.5Y9eybnnSi.o&apos;: No such file  aarch64-linux-gnu-objdump: &apos;/tmp/tmp.5Y9eybnnSi.o&apos;: No such file  All code  ========     0:   d0002881        adrp    x1, 0x512000     4:   912f9c21        add     x1, x1, #0xbe7     8:   94067e68        bl      0x19f9a8     c:   d2800001        mov     x1, #0x0                        // #0    10:   b900003f        str     wzr, [x1]  Code starting with the faulting instruction  ===========================================Background: The compilation environment is Ubuntu, and the testenvironment is Windows.  Most logs are generated in the Windowsenvironment.  In this way, CR (carriage return) will inevitably appear,which will affect the use of decodecode in the Ubuntu environment.The repaired effect is as follows:  / # ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-  / # ./scripts/decodecode &lt; oops.file  [ 0.734345] Code: d0002881 912f9c21 94067e68 d2800001 (b900003f)  All code  ========     0:   d0002881        adrp    x1, 0x512000     4:   912f9c21        add     x1, x1, #0xbe7     8:   94067e68        bl      0x19f9a8     c:   d2800001        mov     x1, #0x0                        // #0    10:*  b900003f        str     wzr, [x1]               &lt;-- trapping instruction  Code starting with the faulting instruction  ===========================================     0:   b900003f        str     wzr, [x1]Link: https://lkml.kernel.org/r/20211008064712.926-1-weidonghui@allwinnertech.comSigned-off-by: weidonghui &lt;weidonghui@allwinnertech.com&gt;Acked-by: Borislav Petkov &lt;bp@suse.de&gt;Cc: Marc Zyngier &lt;maz@misterjones.org&gt;Cc: Will Deacon &lt;will@kernel.org&gt;Cc: Rabin Vincent &lt;rabin@rab.in&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Fri, 05 Nov 2021 20:34:42 +0000</pubDate>
        <dc:creator>weidonghui &lt;weidonghui@allwinnertech.com&gt;</dc:creator>
    </item>
<item>
        <title>d72e720a - scripts/decodecode: add the capability to supply the program counter</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#d72e720a</link>
        <description>scripts/decodecode: add the capability to supply the program counterSo that comparing with objdump output from vmlinux can ease pinpointingwhere the trapping instruction actually is.  An example is better than athousand words:  $ PC=0xffffffff8329a927 ./scripts/decodecode &lt; ~/tmp/syz/gfs2.splat  [ 477.379104][T23917] Code: 48 83 ec 28 48 89 3c 24 48 89 54 24 08 e8 c1 b4 4a fe 48 8d bb 00 01 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 &lt;80&gt; 3c 02 00 0f 85 97 05 00 00 48 8b 9b 00 01 00 00 48 85 db 0f 84  All code  ========  ffffffff8329a8fd:       48 83 ec 28             sub    $0x28,%rsp  ffffffff8329a901:       48 89 3c 24             mov    %rdi,(%rsp)  ffffffff8329a905:       48 89 54 24 08          mov    %rdx,0x8(%rsp)  ffffffff8329a90a:       e8 c1 b4 4a fe          callq  0xffffffff81745dd0  ffffffff8329a90f:       48 8d bb 00 01 00 00    lea    0x100(%rbx),%rdi  ffffffff8329a916:       48 b8 00 00 00 00 00    movabs $0xdffffc0000000000,%rax  ffffffff8329a91d:       fc ff df  ffffffff8329a920:       48 89 fa                mov    %rdi,%rdx  ffffffff8329a923:       48 c1 ea 03             shr    $0x3,%rdx  ffffffff8329a927:*      80 3c 02 00             cmpb   $0x0,(%rdx,%rax,1)               &lt;-- trapping instruction  ffffffff8329a92b:       0f 85 97 05 00 00       jne    0xffffffff8329aec8  ffffffff8329a931:       48 8b 9b 00 01 00 00    mov    0x100(%rbx),%rbx  ffffffff8329a938:       48 85 db                test   %rbx,%rbx  ffffffff8329a93b:       0f                      .byte 0xf  ffffffff8329a93c:       84                      .byte 0x84Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Cc: Marc Zyngier &lt;maz@misterjones.org&gt;Cc: Will Deacon &lt;will@kernel.org&gt;Cc: Rabin Vincent &lt;rabin@rab.in&gt;Link: https://lkml.kernel.org/r/20200930111416.GF6810@zn.tnicLink: https://lkml.kernel.org/r/20200929113238.GC21110@zn.tnicSigned-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Tue, 13 Oct 2020 23:48:14 +0000</pubDate>
        <dc:creator>Borislav Petkov &lt;bp@suse.de&gt;</dc:creator>
    </item>
<item>
        <title>e08df079 - scripts/decodecode: fix trapping instruction formatting</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#e08df079</link>
        <description>scripts/decodecode: fix trapping instruction formattingIf the trapping instruction contains a &apos;:&apos;, for a memory access throughsegment registers for example, the sed substitution will insert the &apos;*&apos;marker in the middle of the instruction instead of the line address:	2b:   65 48 0f c7 0f          cmpxchg16b %gs:*(%rdi)          &lt;-- trapping instructionI started to think I had forgotten some quirk of the assembly syntaxbefore noticing that it was actually coming from the script.  Fix it toadd the address marker at the right place for these instructions:	28:   49 8b 06                mov    (%r14),%rax	2b:*  65 48 0f c7 0f          cmpxchg16b %gs:(%rdi)           &lt;-- trapping instruction	30:   0f 94 c0                sete   %alFixes: 18ff44b189e2 (&quot;scripts/decodecode: make faulting insn ptr more robust&quot;)Signed-off-by: Ivan Delalande &lt;colona@arista.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Reviewed-by: Borislav Petkov &lt;bp@suse.de&gt;Link: http://lkml.kernel.org/r/20200419223653.GA31248@visorSigned-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Fri, 08 May 2020 01:35:53 +0000</pubDate>
        <dc:creator>Ivan Delalande &lt;colona@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>c5cfb62f - scripts/decodecode: set ARCH when running natively on arm/arm64</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#c5cfb62f</link>
        <description>scripts/decodecode: set ARCH when running natively on arm/arm64When running decodecode natively on arm64, ARCH is likely not to be set,and we end-up with .4byte instead of .inst when generating thedisassembly.Similar effects would occur if running natively on a 32bit ARM platform,although that&apos;s even less popular.A simple workaround is to populate ARCH when it is not set and that we&apos;rerunning on an arm/arm64 system.Link: http://lkml.kernel.org/r/20181210174659.31054-2-marc.zyngier@arm.comSigned-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;Acked-by: Will Deacon &lt;will.deacon@arm.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Fri, 28 Dec 2018 08:31:21 +0000</pubDate>
        <dc:creator>Marc Zyngier &lt;marc.zyngier@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>7e68b361 - scripts/decodecode: make it take multiline Code line</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#7e68b361</link>
        <description>scripts/decodecode: make it take multiline Code lineIn case of running scripts/decodecode without any parameters in order togive a copy&apos;n&apos;pasted Code line from, for example, email it would parseonly first line of it, while in emails it&apos;s split to few.ie, when you have a file out of oops the Code line looks like  Code: hh hh ... &lt;hh&gt; ... hh\nWhen copy&apos;n&apos;paste from, for example, email where sender or some middleMTA split it, the line looks like:  Code: hh hh ... hh\n  hh ... &lt;hh&gt; ... hh\n  hh hh ... hh\nThe Code line followed by another oops line usually contains charactersout of hex digit + space + &lt; + &gt; set.So add logic to join this split back if and only if the following lineshave hex digits, or spaces, or &apos;&lt;&apos;, or &apos;&gt;&apos; characters.  It will be quiteunlikely to have a broken input in well formed Oops or dmesg, thus asimple regex is being used.Link: http://lkml.kernel.org/r/20171212100323.33201-1-andriy.shevchenko@linux.intel.comSigned-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;Cc: Will Deacon &lt;will.deacon@arm.com&gt;Cc: Dave Martin &lt;Dave.Martin@arm.com&gt;Cc: Philippe Ombredanne &lt;pombredanne@nexb.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Thu, 01 Feb 2018 00:14:10 +0000</pubDate>
        <dc:creator>Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;</dc:creator>
    </item>
<item>
        <title>be9fa663 - scripts/decodecode: fix decoding for AArch64 (arm64) instructions</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#be9fa663</link>
        <description>scripts/decodecode: fix decoding for AArch64 (arm64) instructionsThere are a couple of problems with the decodecode script and arm64:1. AArch64 objdump refuses to disassemble .4byte directives as instructions,   insisting that they are data values and displaying them as:	a94153f3	.word	0xa94153f3		&lt;-- trapping instruction   This is resolved by using the .inst directive instead.2. Disassembly of branch instructions attempts to provide the target as   an offset from a symbol, e.g.:   0:	34000082	cbz	w2, 10 &lt;.text+0x10&gt;  however this falls foul of the grep -v, which matches lines containing  &quot;.text&quot; and ends up removing all branch instructions from the dump.This patch resolves both issues by using the .inst directive for 4-bytequantities on arm64 and stripping the resulting binaries (as is done onarm already) to remove the mapping symbols.Link: http://lkml.kernel.org/r/1506596147-23630-1-git-send-email-will.deacon@arm.comSigned-off-by: Will Deacon &lt;will.deacon@arm.com&gt;Reviewed-by: Dave Martin &lt;Dave.Martin@arm.com&gt;Cc: Michal Marek &lt;mmarek@suse.cz&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Fri, 19 Jan 2018 00:33:57 +0000</pubDate>
        <dc:creator>Will Deacon &lt;will.deacon@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>b2441318 - License cleanup: add SPDX GPL-2.0 license identifier to files with no license</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#b2441318</link>
        <description>License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseMany source files in the tree are missing licensing information, whichmakes it harder for compliance tools to determine the correct license.By default all files without license information are under the defaultlicense of the kernel, which is GPL version 2.Update the files which contain no license information with the &apos;GPL-2.0&apos;SPDX license identifier.  The SPDX identifier is a legally bindingshorthand, which can be used instead of the full boiler plate text.This patch is based on work done by Thomas Gleixner and Kate Stewart andPhilippe Ombredanne.How this work was done:Patches were generated and checked against linux-4.14-rc6 for a subset ofthe use cases: - file had no licensing information it it. - file was a */uapi/* one with no licensing information in it, - file was a */uapi/* one with existing licensing information,Further patches will be generated in subsequent months to fix up caseswhere non-standard license headers were used, and references to licensehad to be inferred by heuristics based on keywords.The analysis to determine which SPDX License Identifier to be applied toa file was done in a spreadsheet of side by side results from of theoutput of two independent scanners (ScanCode &amp; Windriver) producing SPDXtag:value files created by Philippe Ombredanne.  Philippe prepared thebase worksheet, and did an initial spot review of a few 1000 files.The 4.13 kernel was the starting point of the analysis with 60,537 filesassessed.  Kate Stewart did a file by file comparison of the scannerresults in the spreadsheet to determine which SPDX license identifier(s)to be applied to the file. She confirmed any determination that was notimmediately clear with lawyers working with the Linux Foundation.Criteria used to select files for SPDX license identifier tagging was: - Files considered eligible had to be source code files. - Make and config files were included as candidates if they contained &gt;5   lines of source - File already had some variant of a license header in it (even if &lt;5   lines).All documentation files were explicitly excluded.The following heuristics were used to determine which SPDX licenseidentifiers to apply. - when both scanners couldn&apos;t find any license traces, file was   considered to have no license information in it, and the top level   COPYING file license applied.   For non */uapi/* files that summary was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0                                              11139   and resulted in the first patch in this series.   If that file was a */uapi/* path one, it was &quot;GPL-2.0 WITH   Linux-syscall-note&quot; otherwise it was &quot;GPL-2.0&quot;.  Results of that was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0 WITH Linux-syscall-note                        930   and resulted in the second patch in this series. - if a file had some form of licensing information in it, and was one   of the */uapi/* ones, it was denoted with the Linux-syscall-note if   any GPL family license was found in the file or had no licensing in   it (per prior point).  Results summary:   SPDX license identifier                            # files   ---------------------------------------------------|------   GPL-2.0 WITH Linux-syscall-note                       270   GPL-2.0+ WITH Linux-syscall-note                      169   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause)    21   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)    17   LGPL-2.1+ WITH Linux-syscall-note                      15   GPL-1.0+ WITH Linux-syscall-note                       14   ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause)    5   LGPL-2.0+ WITH Linux-syscall-note                       4   LGPL-2.1 WITH Linux-syscall-note                        3   ((GPL-2.0 WITH Linux-syscall-note) OR MIT)              3   ((GPL-2.0 WITH Linux-syscall-note) AND MIT)             1   and that resulted in the third patch in this series. - when the two scanners agreed on the detected license(s), that became   the concluded license(s). - when there was disagreement between the two scanners (one detected a   license but the other didn&apos;t, or they both detected different   licenses) a manual inspection of the file occurred. - In most cases a manual inspection of the information in the file   resulted in a clear resolution of the license that should apply (and   which scanner probably needed to revisit its heuristics). - When it was not immediately clear, the license identifier was   confirmed with lawyers working with the Linux Foundation. - If there was any question as to the appropriate license identifier,   the file was flagged for further research and to be revisited later   in time.In total, over 70 hours of logged manual review was done on thespreadsheet to determine the SPDX license identifiers to apply to thesource files by Kate, Philippe, Thomas and, in some cases, confirmationby lawyers working with the Linux Foundation.Kate also obtained a third independent scan of the 4.13 code base fromFOSSology, and compared selected files where the other two scannersdisagreed against that SPDX file, to see if there was new insights.  TheWindriver scanner is based on an older version of FOSSology in part, sothey are related.Thomas did random spot checks in about 500 files from the spreadsheetsfor the uapi headers and agreed with SPDX license identifier in thefiles he inspected. For the non-uapi files Thomas did random spot checksin about 15000 files.In initial set of patches against 4.14-rc6, 3 files were found to havecopy/paste license identifier errors, and have been fixed to reflect thecorrect identifier.Additionally Philippe spent 10 hours this week doing a detailed manualinspection and review of the 12,461 patched files from the initial patchversion early this week with: - a full scancode scan run, collecting the matched texts, detected   license ids and scores - reviewing anything where there was a license detected (about 500+   files) to ensure that the applied SPDX license was correct - reviewing anything where there was no detection but the patch license   was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied   SPDX license was correctThis produced a worksheet with 20 files needing minor correction.  Thisworksheet was then exported into 3 different .csv files for thedifferent types of files to be modified.These .csv files were then reviewed by Greg.  Thomas wrote a script toparse the csv files and add the proper SPDX tag to the file, in theformat that the file expected.  This script was further refined by Gregbased on the output to detect more types of files automatically and todistinguish between header and source .c files (which need differentcomment types.)  Finally Greg ran the script using the .csv files togenerate the patches.Reviewed-by: Kate Stewart &lt;kstewart@linuxfoundation.org&gt;Reviewed-by: Philippe Ombredanne &lt;pombredanne@nexb.com&gt;Reviewed-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Wed, 01 Nov 2017 14:07:57 +0000</pubDate>
        <dc:creator>Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;</dc:creator>
    </item>
<item>
        <title>18ff44b1 - scripts/decodecode: make faulting insn ptr more robust</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#18ff44b1</link>
        <description>scripts/decodecode: make faulting insn ptr more robustIt can accidentally happen that the faulting insn (the exact instructionbytes) is repeated a little further on in the trace.  This causes thatsame instruction to be tagged twice, see example below.What we want to do, however, is to track back from the end of the wholedisassembly so many lines as the slice which starts with the faultinginstruction is long.  This leads us to the actual faulting instructionand *then* we tag it.While we&apos;re at it, we can drop the sed &quot;g&quot; flag because we address onlythis one line.Also, if we point to an instruction which changes decoding depending onthe slice being objdumped, like a Jcc insn, for example, we do not eventag it as a faulting instruction because the instruction decode changesin the second slice but we use that second format as a regex on thefsrst disassembled buffer and more often than not that instructiondoesn&apos;t match.Again, simply tag the line which is deduced from the original &quot;&lt;&gt;&quot;marking we&apos;ve received from the kernel.This also solves the pathologic issue of multiple tagging like this:  29:*  0f 0b                   ud2         &lt;-- trapping instruction  2b:*  0f 0b                   ud2         &lt;-- trapping instruction  2d:*  0f 0b                   ud2         &lt;-- trapping instructionDouble tagging example:Code: 34 dd 40 30 ad 81 48 c7 c0 80 f6 00 00 48 8b 3c 30 48 01 c6 b8 ff ff ff ff 48 8d 57 f0 48 39 f7 74 2f 49 8b 4c 24 08 48 8b 47 f0 &lt;48&gt; 39 48 08 75 0e eb 2a 66 90 48 8b 40 f0 48 39 48 08 74 1e 48All code========   0:   34 dd                   xor    $0xdd,%al   2:   40 30 ad 81 48 c7 c0    xor    %bpl,-0x3f38b77f(%rbp)   9:   80 f6 00                xor    $0x0,%dh   c:   00 48 8b                add    %cl,-0x75(%rax)   f:   3c 30                   cmp    $0x30,%al  11:   48 01 c6                add    %rax,%rsi  14:   b8 ff ff ff ff          mov    $0xffffffff,%eax  19:   48 8d 57 f0             lea    -0x10(%rdi),%rdx  1d:   48 39 f7                cmp    %rsi,%rdi  20:   74 2f                   je     0x51  22:   49 8b 4c 24 08          mov    0x8(%r12),%rcx  27:   48 8b 47 f0             mov    -0x10(%rdi),%rax  2b:*  48 39 48 08             cmp    %rcx,0x8(%rax)     &lt;-- trapping instruction  2f:   75 0e                   jne    0x3f  31:   eb 2a                   jmp    0x5d  33:   66 90                   xchg   %ax,%ax  35:   48 8b 40 f0             mov    -0x10(%rax),%rax  39:*  48 39 48 08             cmp    %rcx,0x8(%rax)     &lt;-- trapping instruction  3d:   74 1e                   je     0x5d  3f:   48                      rex.WSigned-off-by: Borislav Petkov &lt;bp@suse.de&gt;Cc: &quot;H. Peter Anvin&quot; &lt;hpa@zytor.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Mon, 29 Apr 2013 22:05:54 +0000</pubDate>
        <dc:creator>Borislav Petkov &lt;bp@suse.de&gt;</dc:creator>
    </item>
<item>
        <title>2a95e37c - scripts/decodecode: Fixup trapping instruction marker</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#2a95e37c</link>
        <description>scripts/decodecode: Fixup trapping instruction markerWhen dumping &quot;Code: &quot; sections from an oops, the trapping instruction%rip points to can be a string copy  2b:*  f3 a5                   rep movsl %ds:(%rsi),%es:(%rdi)and the line contain a bunch of &quot;:&quot;.  Current &quot;cut&quot; selects only the andthe second field output looks funnily overlaid this:  2b:*  f3 a5                   rep movsl %ds     &lt;-- trapping instruction:(%rsi),%es:(%rdiFix this by selecting the remaining fields too.Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;Cc: linux-kbuild@vger.kernel.orgSigned-off-by: Borislav Petkov &lt;borislav.petkov@amd.com&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Wed, 15 Aug 2012 11:00:51 +0000</pubDate>
        <dc:creator>Borislav Petkov &lt;borislav.petkov@amd.com&gt;</dc:creator>
    </item>
<item>
        <title>b396aa03 - scripts: decodecode: remove bashisms</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#b396aa03</link>
        <description>scripts: decodecode: remove bashismsRemove bashisms to make scripts/decodecode work with other shells.Signed-off-by: Rabin Vincent &lt;rabin@rab.in&gt;Reviewed-by: WANG Cong &lt;xiyou.wangcong@gmail.com&gt;Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Thu, 03 Jun 2010 17:18:12 +0000</pubDate>
        <dc:creator>Rabin Vincent &lt;rabin@rab.in&gt;</dc:creator>
    </item>
<item>
        <title>5358db0b - scripts: add ARM support to decodecode</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#5358db0b</link>
        <description>scripts: add ARM support to decodecodeThis patch adds support for decoding ARM oopses to scripts/decodecode.The following things are handled: - ARCH and CROSS_COMPILE environment variables are respected. - The Code: in x86 oopses is in bytes, while it is in either words (4   bytes) or halfwords for ARM. - Some versions of ARM objdump refuse to disassemble instructions   generated by literal constants (&quot;.word 0x...&quot;).  The workaround is to   strip the object file first. - The faulting instruction is marked (liked so) in ARM, but &lt;like so&gt;   in x86. - ARM mnemonics may include characters such as [] which need to be   escaped before being passed to sed for the &quot;&lt;- trapping instruction&quot;   substitution.Signed-off-by: Rabin Vincent &lt;rabin@rab.in&gt;Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Tue, 05 Jan 2010 14:57:58 +0000</pubDate>
        <dc:creator>Rabin Vincent &lt;rabin@rab.in&gt;</dc:creator>
    </item>
<item>
        <title>846442c8 - scripts: improve the decodecode script</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#846442c8</link>
        <description>scripts: improve the decodecode scriptkerneloops.org has been using an improved &quot;decodecode&quot; script,specifically it has a special marker that shows which line in the assemblythe oops happened at, like this:  20:	83 e0 03             	and    $0x3,%eax  23:	09 d8                	or     %ebx,%eax  25:	85 db                	test   %ebx,%ebx  27:	89 02                	mov    %eax,(%edx)  29:	74 0f                	je     0x3a  2b:*	3b 73 04             	cmp    0x4(%ebx),%esi     &lt;-- trapping instruction  2e:	75 05                	jne    0x35  30:	89 53 04             	mov    %edx,0x4(%ebx)  33:	eb 07                	jmp    0x3c  35:	89 53 08             	mov    %edx,0x8(%ebx)this patch updates the kernel copy to also have this functionality.Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;Reviewed-by: WANG Cong &lt;wangcong@zeuux.org&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Mon, 01 Dec 2008 22:21:06 +0000</pubDate>
        <dc:creator>Arjan van de Ven &lt;arjan@linux.intel.com&gt;</dc:creator>
    </item>
<item>
        <title>14d03fd9 - Mark &apos;scripts/decodecode&apos; executable</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#14d03fd9</link>
        <description>Mark &apos;scripts/decodecode&apos; executable.. because it is.Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Fri, 30 May 2008 21:02:21 +0000</pubDate>
        <dc:creator>Linus Torvalds &lt;torvalds@linux-foundation.org&gt;</dc:creator>
    </item>
<item>
        <title>fa220d89 - kbuild: minor scripts/decodecode update</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#fa220d89</link>
        <description>kbuild: minor scripts/decodecode updateRemove the tmp file when exiting.  Noticed by Arjan van de Ven.Catch mktemp failure and exit with message.Trap kill or other signals and exit cleanly.Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Mon, 14 Jan 2008 23:18:31 +0000</pubDate>
        <dc:creator>Randy Dunlap &lt;randy.dunlap@oracle.com&gt;</dc:creator>
    </item>
<item>
        <title>dcecc6c7 - doc/oops-tracing: add Code: decode info</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/decodecode#dcecc6c7</link>
        <description>doc/oops-tracing: add Code: decode infoAdd info that the Code: bytes line contains &lt;xy&gt; or (wxyz) in somearchitecture oops reports and what that means.Add a script by Andi Kleen that reads the Code: line from an Oops reportfile and generates assembly code from the hex bytes.Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;Cc: Andi Kleen &lt;ak@suse.de&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/scripts/decodecode</description>
        <pubDate>Mon, 16 Jul 2007 06:41:15 +0000</pubDate>
        <dc:creator>Randy Dunlap &lt;randy.dunlap@oracle.com&gt;</dc:creator>
    </item>
</channel>
</rss>
