xref: /linux/tools/objtool/tests/generic/test-missing-checksum.sh (revision 5b6dca02b3e2254d2fd5706d76d7ab4610a67296)
1*1ecf1153SPuranjay Mohan#!/bin/bash
2*1ecf1153SPuranjay Mohan# SPDX-License-Identifier: GPL-2.0
3*1ecf1153SPuranjay Mohan#
4*1ecf1153SPuranjay Mohan# Without .discard.sym_checksum there is nothing to compare; concluding that
5*1ecf1153SPuranjay Mohan# nothing changed would be worse than failing.
6*1ecf1153SPuranjay Mohan
7*1ecf1153SPuranjay Mohan. "$(dirname "$0")/../lib.sh"
8*1ecf1153SPuranjay Mohan
9*1ecf1153SPuranjay Mohansetup
10*1ecf1153SPuranjay Mohanbuild_pair basic.c
11*1ecf1153SPuranjay Mohan
12*1ecf1153SPuranjay Mohan( cd "$workdir" && "$OBJTOOL" klp diff orig.o patched.o out.o ) \
13*1ecf1153SPuranjay Mohan	> "$workdir/diff.log" 2>&1 && fail "klp diff accepted an unchecksummed object"
14*1ecf1153SPuranjay Mohan
15*1ecf1153SPuranjay Mohangrep -q 'sym_checksum' "$workdir/diff.log" ||
16*1ecf1153SPuranjay Mohan	fail "expected a complaint about the checksum section, got: $(tail -1 "$workdir/diff.log")"
17*1ecf1153SPuranjay Mohan
18*1ecf1153SPuranjay Mohanpass "unchecksummed input rejected"
19