On 20.12.2015 20:46, John David Anglin wrote: > On 2015-12-20, at 2:32 PM, Helge Deller wrote: > >>> in a LDO "copy" instruction. >> >> Actually it's the "OR,cond r1,r2,t" instruction. >> https://parisc.wiki.kernel.org/images-parisc/6/68/Pa11_acd.pdf >> page 5-105 >> >> if ((opcode & 0xff00ffff) == 0x08000254) >> >> The mask should be 0xffe0ffff, so that some bits of r2 (which needs to be 0) are not missed. This is actually not the full truth. I missed the point, that "r2" is a register and not an immediate value. My code just checks that "r2" means %r0, while it could be any other register as well, which either has a null-value, or even worse, if someone decides to "calculate" the syscall number. > There are multiple instructions that could be used. The PA 2.0 arch says LDO on page 7-83. True. But luckily it seems gas converts "copy" to the "or" syntax mentioned above. In any case, keeping my kernel patch will report any cases (which might by mistake get added) in the future so that we can fix userspace then (or enhance the kernel workaround). Helge -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html