Re: Alpha Avanti broken by 9ce8654323d69273b4977f76f11c9e2d345ab130

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 19 Feb 2019, Mikulas Patocka wrote:

> The avanti platform is still broken in the kernel 5.0 and I tested that 
> this patch fixes it.
[...]
> > diff --git a/arch/alpha/kernel/io.c b/arch/alpha/kernel/io.c
> > index c025a3e5e357..604237fa821f 100644
> > --- a/arch/alpha/kernel/io.c
> > +++ b/arch/alpha/kernel/io.c
> > @@ -78,16 +78,19 @@ u32 inl(unsigned long port)
> >  void outb(u8 b, unsigned long port)
> >  {
> >         iowrite8(b, ioport_map(port, 1));
> > +       mb();
> >  }

-- etc.  Shouldn't the barrier be *in* `iowriteX' instead?  In 
Documentation/memory-barriers.txt we have:

 (*) ioreadX(), iowriteX()

     These will perform appropriately for the type of access they're actually
     doing, be it inX()/outX() or readX()/writeX().

and some drivers call `ioreadX'/`iowriteX' directly.

  Maciej



[Index of Archives]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux