• Stephen Boyd's avatar
    tty: hvc_dcc: Fix duplicate character inputs · c2a3e84f
    Stephen Boyd authored
    Reading from the DCC grabs a character from the buffer and
    clears the status bit. Since this is a context-changing
    operation, instructions following the character read that rely on
    the status bit being accurate need to be synchronized with an
    ISB.
    
    In this case, the status bit check needs to execute after the
    character read otherwise we run the risk of reading the character
    and checking the status bit before the read can clear the status
    bit in the first place. When this happens, the user will see the
    same character they typed twice, instead of once.
    
    Add an ISB after the read and the write, so that the status check
    is synchronized with the read/write operations.
    Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    c2a3e84f
hvc_dcc.c 2.29 KB