Re: [PATCH] 8250: Fix oops from setserial

Andrew Morton
2009-05-30T08:43:55Z

On Sat, 30 May 2009 09:25:57 +0100 Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:

> >
> > > static void set_io_from_upio(struct uart_port *p)
> > > {
> > > + struct uart_8250_port *up = (struct uart_8250_port *)p;
> >
> > container_of() is nicer, IMO. It's clearer, and doesn't require that
> > the uart_port be the fist member.
>
> See the rest of the driver - it was written that way years ago and this
> is just following the existing design.

Sure, huge numbers of drivers use the cast.

But I've never seen past sinnings as being a reason to continue sinning.
Doing new code the right way doesn't result in worse code, and reduces
the chances of someone copying and pasting the wrong way.