• Matteo Croce's avatar
    checkpatch.pl: warn on invalid commit id · a8dd86bf
    Matteo Croce authored
    It can happen that a commit message refers to an invalid commit id,
    because the referenced hash changed following a rebase, or simply by
    mistake.  Add a check in checkpatch.pl which checks that an hash
    referenced by a Fixes tag, or just cited in the commit message, is a valid
    commit id.
    
        $ scripts/checkpatch.pl <<'EOF'
        Subject: [PATCH] test commit
    
        Sample test commit to test checkpatch.pl
        Commit 1da177e4 ("Linux-2.6.12-rc2") really exists,
        commit 0bba044c4ce7 ("tree") is valid but not a commit,
        while commit b4cc0b1c0cca ("unknown") is invalid.
    
        Fixes: f0cacc14cade ("unknown")
        Fixes: 1da177e4 ("Linux-2.6.12-rc2")
        EOF
        WARNING: Unknown commit id '0bba044c4ce7', maybe rebased or not pulled?
        #8:
        commit 0bba044c4ce7 ("tree") is valid but not a commit,
    
        WARNING: Unknown commit id 'b4cc0b1c0cca', maybe rebased or not pulled?
        #9:
        while commit b4cc0b1c0cca ("unknown") is invalid.
    
        WARNING: Unknown commit id 'f0cacc14cade', maybe rebased or not pulled?
        #11:
        Fixes: f0cacc14cade ("unknown")
    
        total: 0 errors, 3 warnings, 4 lines checked
    
    Link: http://lkml.kernel.org/r/20190711001640.13398-1-mcroce@redhat.comSigned-off-by: default avatarMatteo Croce <mcroce@redhat.com>
    Cc: Joe Perches <joe@perches.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    a8dd86bf
checkpatch.pl 199 KB