declance: Fix continuation with the adapter identification message
authorMaciej W. Rozycki <macro@linux-mips.org>
Tue, 2 Oct 2018 13:23:45 +0000 (14:23 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 4 Nov 2018 13:52:41 +0000 (14:52 +0100)
[ Upstream commit fe3a83af6a50199bf250fa331e94216912f79395 ]

Fix a commit 4bcc595ccd80 ("printk: reinstate KERN_CONT for printing
continuation lines") regression with the `declance' driver, which caused
the adapter identification message to be split between two lines, e.g.:

declance.c: v0.011 by Linux MIPS DECstation task force
tc6: PMAD-AA
, addr = 08:00:2b:1b:2a:6a, irq = 14
tc6: registered as eth0.

Address that properly, by printing identification with a single call,
making the messages now look like:

declance.c: v0.011 by Linux MIPS DECstation task force
tc6: PMAD-AA, addr = 08:00:2b:1b:2a:6a, irq = 14
tc6: registered as eth0.

Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Fixes: 4bcc595ccd80 ("printk: reinstate KERN_CONT for printing continuation lines")
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/amd/declance.c

index 82cc813..c7cde58 100644 (file)
@@ -1029,6 +1029,7 @@ static int dec_lance_probe(struct device *bdev, const int type)
        int i, ret;
        unsigned long esar_base;
        unsigned char *esar;
+       const char *desc;
 
        if (dec_lance_debug && version_printed++ == 0)
                printk(version);
@@ -1214,19 +1215,20 @@ static int dec_lance_probe(struct device *bdev, const int type)
         */
        switch (type) {
        case ASIC_LANCE:
-               printk("%s: IOASIC onboard LANCE", name);
+               desc = "IOASIC onboard LANCE";
                break;
        case PMAD_LANCE:
-               printk("%s: PMAD-AA", name);
+               desc = "PMAD-AA";
                break;
        case PMAX_LANCE:
-               printk("%s: PMAX onboard LANCE", name);
+               desc = "PMAX onboard LANCE";
                break;
        }
        for (i = 0; i < 6; i++)
                dev->dev_addr[i] = esar[i * 4];
 
-       printk(", addr = %pM, irq = %d\n", dev->dev_addr, dev->irq);
+       printk("%s: %s, addr = %pM, irq = %d\n",
+              name, desc, dev->dev_addr, dev->irq);
 
        dev->netdev_ops = &lance_netdev_ops;
        dev->watchdog_timeo = 5*HZ;