Re: [v6 PATCH 00/21] x86: Enable User-Mode Instruction Prevention

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



11.03.2017 02:59, Ricardo Neri пишет:
On Fri, 2017-03-10 at 14:33 +0300, Stas Sergeev wrote:

Why would you need one?
Or do you really want to allow these instructions
in v86 by the means of emulation? If so - this wasn't
clearly stated in the patch description, neither it was
properly discussed, it seems.
It str and sldt can be emulated in vm86 but as Andy mention, the
behavior sould be the same with and without emulation.
Why would you do that?
I looked up the dosemu2 CPU simulator code that
is used under x86-64. It says this:
---
                                    CODE_FLUSH();
                                    if (REALMODE()) goto illegal_op;
                                    PC += ModRMSim(PC+1, mode) + 1;
                                    error("SLDT not implemented\n");
                                    break;
                                case 1: /* STR */
                                    /* Store Task Register */
                                    CODE_FLUSH();
                                    if (REALMODE()) goto illegal_op;
                                    PC += ModRMSim(PC+1, mode) + 1;
                                    error("STR not implemented\n");
                                    break;
...
                                case 0: /* SGDT */
/* Store Global Descriptor Table Register */ PC++; PC += ModRM(opc, PC, mode|DATA16|MSTORE);
                                    error("SGDT not implemented\n");
                                    break;
                                case 1: /* SIDT */
/* Store Interrupt Descriptor Table Register */ PC++; PC += ModRM(opc, PC, mode|DATA16|MSTORE);
                                    error("SIDT not implemented\n");
                                    break;
---

It only implements smsw.
So maybe you can make your code much
simpler and remove the unneeded emulation?
Same is for prot mode. You know the wine's
requirements now - they are very small. And
dosemu doesn't need anything at all but smsw.
And even smsw is very rare.
--
To unsubscribe from this list: send the line "unsubscribe linux-msdos" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Console]     [Linux Audio]     [Linux for Hams]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite Camping]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Samba]     [Linux Media]     [Fedora Users]

  Powered by Linux