Pull objtool fixes from Ingo Molnar: "Two fixes: fix an off-by-one bug, and fix 32-bit builds on 64-bit systems" * tag 'objtool-urgent-2020-04-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: objtool: Fix off-by-one in symbol_by_offset() objtool: Fix 32bit cross builds
Unified · Split
| @@ -105,7 +105,7 @@ static int symbol_by_offset(const void *key, const struct rb_node *node) · 104 unmodified lines | |||
| 105 | 105 | ||
| 106 | if (*o < s->offset) | 106 | if (*o < s->offset) |
| 107 | return -1; | 107 | return -1; |
| 108 | if (*o > s->offset + s->len) | 108 | if (*o >= s->offset + s->len) |
| 109 | return 1; | 109 | return 1; |
| 110 | 110 | ||
| 111 | return 0; | 111 | return 0; |
| @@ -99,7 +99,7 @@ static inline u32 sec_offset_hash(struct section *sec, unsigned long offset) · 98 unmodified lines | |||
| 99 | offset &= OFFSET_STRIDE_MASK; | 99 | offset &= OFFSET_STRIDE_MASK; |
| 100 | 100 | ||
| 101 | ol = offset; | 101 | ol = offset; |
| 102 | oh = offset >> 32; | 102 | oh = (offset >> 16) >> 16; |
| 103 | 103 | ||
| 104 | __jhash_mix(ol, oh, idx); | 104 | __jhash_mix(ol, oh, idx); |
| 105 | 105 | ||