Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1295507

Re: [PATCH v5] Fix INT1 Recursion with unregistered breakpoints

From Jeff Merkey <linux.mdb@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH v5] Fix INT1 Recursion with unregistered breakpoints
Date 2015-12-20 04:20 +0100
Message-ID <qHCHn-3Bd-1@gated-at.bofh.it> (permalink)
References <qHCo2-39r-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


>  		/*
> +		 * Check if we got an execute breakpoint, if so
> +		 * set the resume flag to avoid int1 recursion.
> +		 */
> +		if ((dr7 & (DR_RW_MASK << ((i * DR_CONTROL_SIZE) +
> +			DR_CONTROL_SHIFT))) == DR_RW_EXECUTE)
> +			args->regs->flags |= X86_EFLAGS_RF;
> +
> +		/*

This patch is functionaly correct but I still need to make it perfect.
I more try and test run.
I tested this and it works, but I need to shift it the other way
(right) rather than (left) since DR_RW_EXECUTE is always 0 this will
always work but to be perfect I need to do:

if (((dr7 >> ((i * DR_CONTROL_SIZE) + DR_CONTROL_SHIFT)) & DR_RW_MASK)
== DR_RW_EXECUTE)

and that is perfect syntax.

Jeff
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH v5] Fix INT1 Recursion with unregistered breakpoints Jeff Merkey <linux.mdb@gmail.com> - 2015-12-20 04:00 +0100
  Re: [PATCH v5] Fix INT1 Recursion with unregistered breakpoints Jeff Merkey <linux.mdb@gmail.com> - 2015-12-20 04:20 +0100

csiph-web