lkml.org 
[lkml]   [2008]   [Sep]   [7]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSun, 07 Sep 2008 15:20:41 +0400
FromSergei Shtylyov <>
SubjectRe: [PATCH] Fix pointer arithmetic in hpt3xx driver code (3rd try)
Hello, I wrote:
>> diff --git a/drivers/ide/pci/hpt366.c b/drivers/ide/pci/hpt366.c
>> index eb107ee..4eae284 100644
>> --- a/drivers/ide/pci/hpt366.c
>> +++ b/drivers/ide/pci/hpt366.c
>> @@ -613,6 +613,14 @@ static int check_in_drive_list(ide_drive_t 
>> *drive, const char **list)
>>      return 0;
>>  }
>> 
>> +static struct hpt_info *hpt3xx_get_info(struct device *dev)
>> +{
>> +    struct ide_host *host    = pci_get_drvdata(to_pci_dev(pci_dev));
>> 
>
>   Oops, this just won't compile. :-/

   BTW, there's no need to invoke to_pci_dev() at all since 
pci_get_drvdata(dev) boils down to dev_get_drvdata(&dev->dev) call. So, 
in order not to waste time on useless pointer tricks, we should just 
invoke the latter here.

>   And please re-consider passing 'struct pci_dev *' to this function 
> since it's pre-calculated by the callers and is used by them otherwise 
> in 5 (not even 4) cases out of 7.
>

   Well, since to_pci_dev() is unnecessary here, I'm taking my request 
back. :-)

MBR, Sergei




\
 
 \ /
  Last update: 2008-09-07 13:23    [from the cache]
©2003-2008