Author Topic: Not showing all references...  (Read 2969 times)

joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Not showing all references...
« on: November 10, 2017, 06:26:10 PM »
In some cases, when I show references, not all references are shown...

attached screenshots show that only one reference is shown (the definition of the struct member)...

the attached screen video (look carefully) shows that it actually finds more references but changes its mind.

« Last Edit: November 10, 2017, 09:44:22 PM by joecar »

joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Re: Not showing all references...
« Reply #1 on: November 10, 2017, 06:29:13 PM »
source code files involved are attached (it's open source code, available at www.kernel.org).

joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Re: Not showing all references...
« Reply #2 on: November 10, 2017, 07:15:34 PM »
This is with Find References Incrementally enabled, see screenshot...

qla_init.c::qla81xx_nvram_config() should display 4 references to nv->login_retry_count (see screenshot of search in post#1 above).

joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Re: Not showing all references...
« Reply #3 on: November 13, 2017, 07:00:43 PM »
See first attached search image...

when I rename the nv->login_retry_count instances in context qla24xx_nvram_config() (i.e. so that they do not match the reference/search) then the references correctly show up for qla81xx_nvram_config(), see second attached image.


joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Re: Not showing all references...
« Reply #4 on: November 13, 2017, 07:15:51 PM »
it somehow looks like the context's of struct nvram_24xx and struct nvram_81xx interfere with each other.

int
qla24xx_nvram_config(scsi_qla_host_t *vha)
{
   . . .
   struct nvram_24xx *nv;
   . . .
}

int
qla81xx_nvram_config(scsi_qla_host_t *vha)
{
   . . .
   struct nvram_81xx *nv;
   . . .
}


joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Re: Not showing all references...
« Reply #5 on: November 13, 2017, 07:22:07 PM »
Also, with source code back to original (see reply#3 above):
when I find references of login_retry_count from struct nvram_24xx, it finds all of them and all of those from struct mvram_81xx... see attached pic.
« Last Edit: November 14, 2017, 06:17:06 PM by joecar »

joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
update for hotfix 11...
« Reply #6 on: November 17, 2017, 06:05:23 PM »
hotfix 11:
- search with Current Procedure context now limits the match to current procedure.
- find references still behaves the same (struct nvram_24xx and struct nvram_81xx interefere with each other).

Dennis

  • Senior Community Member
  • Posts: 3954
  • Hero Points: 515
Re: Not showing all references...
« Reply #7 on: December 08, 2017, 08:38:34 PM »
Thanks for the detailed report.  This will be fixed in the upcoming 22.0.1 release.

joecar

  • Senior Community Member
  • Posts: 420
  • Hero Points: 9
  • engineer/gearhead
Re: Not showing all references...
« Reply #8 on: December 09, 2017, 02:55:11 AM »
Thanks.