Re: [PATCH v2 1/3] x86/uprobes: Fix not using prefixes.nbytes for loop over prefixes.bytes

From: Borislav Petkov
Date: Thu Dec 03 2020 - 12:02:39 EST


On Thu, Dec 03, 2020 at 05:54:20PM +0100, Borislav Petkov wrote:
> On Thu, Dec 03, 2020 at 10:45:48AM -0600, Tom Lendacky wrote:
> > Since this is based on the array size, can
> >
> > idx < NUM_LEGACY_PREFIXES
> >
> > be replaced with:
> >
> > idx < ARRAY_SIZE(insn->prefixes.bytes)
>
> Actually, this needs another change:
>
> struct insn_field {
> union {
> insn_value_t value;
> insn_byte_t bytes[NUM_LEGACY_PREFIXES];

Blergh, spoke too soon. All those struct insn members are struct
insn_field.

insn.prefixes should probably be a separate array of explicit size
NUM_LEGACY_PREFIXES, not that insn_byte_t bytes[] gets enlarged in the
future for whatever reason, while the max legacy prefixes count will
remain 4.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette