lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220321160627.6003e4e7@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date:   Mon, 21 Mar 2022 16:06:27 -0700
From:   Jakub Kicinski <kuba@...nel.org>
To:     Arnd Bergmann <arnd@...nel.org>
Cc:     Krzysztof HaƂasa <khalasa@...p.pl>,
        Andrew Stanley-Jones <asj@...n.com>,
        Rob Braun <bbraun@....com>, Michael Graff <explorer@....com>,
        Matt Thomas <matt@...-software.com>,
        Krzysztof Halasa <khc@...waw.pl>,
        "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: Is drivers/net/wan/lmc dead?

On Mon, 21 Mar 2022 23:10:32 +0100 Arnd Bergmann wrote:
> On Mon, Mar 21, 2022 at 10:40 PM Jakub Kicinski <kuba@...nel.org> wrote:
> > The driver for LAN Media WAN interfaces spews build warnings on
> > microblaze.
> >
> > CCing usual suspects and people mentioned as authors in the source code.
> >
> > As far as I can tell it has no maintainer.
> >
> > It has also received not received a single functional change that'd
> > indicate someone owns this HW since the beginning of the git era.
> >
> > Can we remove this driver or should we invest effort into fixing it?  
> 
> I have not seen the exact error, but I suspect the problem is that
> microblaze selects CONFIG_VIRT_TO_BUS without actually
> providing those interfaces. The easy workaround would be to
> have microblaze not select that symbol.

FWIW the warning is that virt_to_bus() discards the __iomem qualifier.
I think it's a macro on most platforms but not microblaze.
Anyway, some approximation of "VIRT_TO_BUS on mircoblaze is broken"
sounds right.

> Drivers using virt_to_bus() are inherently nonportable because
> they don't work on architectures that use an IOMMU or swiotlb,
> or that require cache maintenance for DMA operations.
> 
> $ git grep -wl virt_to_bus drivers/
> drivers/atm/ambassador.c
> drivers/atm/firestream.c
> drivers/atm/horizon.c
> drivers/atm/zatm.c
> drivers/block/swim3.c
> drivers/gpu/drm/mga/mga_dma.c
> drivers/net/appletalk/ltpc.c
> drivers/net/ethernet/amd/au1000_eth.c
> drivers/net/ethernet/amd/ni65.c
> drivers/net/ethernet/apple/bmac.c
> drivers/net/ethernet/apple/mace.c
> drivers/net/ethernet/dec/tulip/de4x5.c
> drivers/net/ethernet/i825xx/82596.c
> drivers/net/ethernet/i825xx/lasi_82596.c
> drivers/net/ethernet/i825xx/lib82596.c
> drivers/net/hamradio/dmascc.c
> drivers/net/wan/cosa.c
> drivers/net/wan/lmc/lmc_main.c
> drivers/net/wan/z85230.c
> drivers/scsi/3w-xxxx.c
> drivers/scsi/a2091.c
> drivers/scsi/a3000.c
> drivers/scsi/dpt_i2o.c
> drivers/scsi/gvp11.c
> drivers/scsi/mvme147.c
> drivers/scsi/qla1280.c
> drivers/tty/serial/cpm_uart/cpm_uart_cpm2.c
> drivers/vme/bridges/vme_ca91cx42.c
> 
> Among the drivers/net/wan/ drivers, I think lmc is actually
> one of the newer pieces of hardware, most of the other ones
> appear to even predate PCI.

You know what's even newer than lmc?  Me :S  This HW is so old
many of us have never interacted with these technologies directly.

How do we start getting rid of this stuff? Should we send out patches
to delete anything that's using virt_to_bus() under net|atm and see
which ones don't get shot down?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ