DiscoveryString in GPNP profile.xml is basically used by clusterware to scan all disks header which match the pattern in order to identify Voting Disks and Disk containing ASM SPFILE because it is required before to start ASM instance.
ASM_DISKSTRING in ASM Parameter file is used to scan all disks header which match the pattern for mounting the diskgroup.
Good question. I also wonder for the asmlib created disks, by setting asm_diskstring='ORCL:*', will the asm instance probe all the disks in general or just scan the disks under /dev/oracleasm/disks and verify if their heads contains the 'ORCL' like strings.
Is this a very trivial question or no one is sure about that exactly the process involved?
From my understanding all disk you see in /dev/oracleasm/disks are the disks in your system that been discovered by asmlib at discovery stage.
Currently, due to bug 13465545, ASM instance will discover disks from both locations, ASM_DISKSTRING and gpnp profile, which can cause some mess in disk representation for asm. You can check the settings using asmcmd command: dsget, and set to be the same using dsset.
I think its more secure to set ASM_DISKSTRING to only the disks used by asm instance.