drivers/char/synclink_gt.c: chars don't have more than 8 bits

From: Adrian Bunk
Date: Fri Aug 25 2006 - 21:58:38 EST


The GNU C compiler (SVN version) spotted the following buggy code in
drivers/char/synclink_gt.c:

<-- snip -->

...
static void rx_async(struct slgt_info *info)
{
...
unsigned char *p;
unsigned char status;
...
if ((status = *(p+1) & (BIT9 + BIT8))) {
if (status & BIT9)
icount->parity++;
else if (status & BIT8)
icount->frame++;
/* discard char if tty control flags say so */
if (status & info->ignore_status_mask)
continue;
if (status & BIT9)
stat = TTY_PARITY;
else if (status & BIT8)
stat = TTY_FRAME;
}
...

<-- snip -->

Since there are no bits 8 or 9 in a char this code is currently
dead code.

cu
Adrian

--

Gentoo kernels are 42 times more popular than SUSE kernels among
KLive users (a service by SUSE contractor Andrea Arcangeli that
gathers data about kernels from many users worldwide).

There are three kinds of lies: Lies, Damn Lies, and Statistics.
Benjamin Disraeli

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/