[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3045fde1-2d5b-e731-ef18-6cf3f0987259@opensource.wdc.com>
Date: Wed, 13 Apr 2022 12:42:20 +0900
From: Damien Le Moal <damien.lemoal@...nsource.wdc.com>
To: Zheyu Ma <zheyuma97@...il.com>
Cc: Sergey Shtylyov <s.shtylyov@....ru>, linux-ide@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [BUG] ata: pata_marvell: Warning when probing the module
On 4/12/22 15:34, Zheyu Ma wrote:
> On Mon, Apr 11, 2022 at 7:53 AM Damien Le Moal
> <damien.lemoal@...nsource.wdc.com> wrote:
>>
>> On 4/10/22 15:30, Zheyu Ma wrote:
>>> Hello,
>>>
>>> I found a bug in the pata_marvell module.
>>> When probing the driver, it seems to trigger the error path and
>>> executes the function marvell_cable_detect(), but the
>>> 'ap->ioaddr.bmdma_addr' is not initialized, which causes a warning.
>>
>> I do not have this hardware so I cannot debug this. Please debug it and
>> send a patch. bmdma_addr is normally set in ata_pci_bmdma_init(), but some
>> drivers set it manually in their probe functions. No idea about the
>> marvell driver, I have not checked it.
>
> To be honest I don't have a good solution to this problem, because
> other drivers don't have similar behavior. The marvell driver doesn't
> even initialize 'bmdma_addr' before calling 'cable_detect'.
Then this is the bug that needs to be fixed, no ?
> So a simple idea I have is to check if 'bmdma_addr' is 0 before
> reading it and if so return the error code ATA_CBL_NONE.
And if indeed, even after it is initialized it is still 0, then yes, this
change seems sensible.
>
> Zheyu Ma
--
Damien Le Moal
Western Digital Research
Powered by blists - more mailing lists