Subject: [PATCH v12 05/10] arm64: Kprobes with single stepping support

From: [email-masked] (David Long)
Date: Wed, 1 Jun 2016 01:15:41 -0400

On 05/17/2016 05:10 AM, Huang Shijie wrote:
> On Wed, Apr 27, 2016 at 02:53:00PM -0400, David Long wrote:
>> From: Sandeepa Prabhu <[email-masked]>
>> +
>> +static bool __kprobes aarch64_insn_is_steppable(u32 insn)
>
> Could we add more comment for this function? In the comment, we can tell
> that which type of instructions are steppable, which are not.
>
>> +{
>> +	if (aarch64_get_insn_class(insn) == AARCH64_INSN_CLS_BR_SYS) {
>> +		if (aarch64_insn_is_branch(insn) ||
>> +		    aarch64_insn_is_msr_imm(insn) ||
>> +		    aarch64_insn_is_msr_reg(insn) ||
>> +		    aarch64_insn_is_exception(insn))
>> +			return false;
>> +
>> +		if (aarch64_insn_is_mrs(insn))
>> +			return aarch64_insn_extract_system_reg(insn)
>> +			     != AARCH64_INSN_SPCLREG_DAIF;
>> +
>> +		if (aarch64_insn_is_hint(insn))
>> +			return aarch64_insn_is_nop(insn);
>> +
>> +		return true;
>> +	}
>> +
>> +	if (aarch64_insn_uses_literal(insn) ||
>> +	    aarch64_insn_is_exclusive(insn))
>> +		return false;
>> +
>> +	return true;
>
> Thanks
> Huang Shijie
>

I did add a comment to this for the next version of the patch.

-dl