Access the x86 debug registers.

id:"20110821231730.GF6004@type.famille.thibault.fr", hurd/gnumach.git commit d14e4924c55e3016d1ddf7a38a7e93460ca10ac8.

For example, used by GDB for implementing hardware watchpoints.

Open Issues

  • Continuing on id:"87iokondoc.fsf@schwinge.name", do we need to sanitize some of the values? Is user space allowed to set DR7's GD flag as well as DR7's reserved flags, or should these flags be masked out? Anything else?

  • If KDB is using hardware watchpoints, those set by user space applications will be ignored. This is because KDB and the user-space application are competing for the x86 debug registers, and KDB wins.