Ran into this a little while back, and wanted to make sure to share with the group.
We do a great job of keeping our vmkernel logs clean, so when we started seeing a bunch of spam in there we dug in to figure it out. What we were seeing was the following entries over and over:
ScsiScan: 839: Path 'vmhba2:C0:T1:L0': Vendor: 'Vendor' Model: 'Model' Rev: '0000'
ScsiScan: 842: Path 'vmhba2:C0:T1:L0': Type: 0x0, ANSI rev: 5, TPGS: 0 (none)
ScsiScan: 105: Path 'vmhba2:C0:T1:L0': Peripheral qualifier 0x1 not supported
When there isn’t a LUN0 masked to an initiator port (an ESX host port), some arrays will present a “management” LUN 0. The purpose of this LUN is to facilitate communication between the target and the initiator. For example, a host may support 255 LUNs on each target interface. Many would argue that it would be unreasonable for the initiator to poll all 255 LUN addresses so management LUN 0 is presented. The host only needs to issue a REPORT LUNs command to LUN 0 of any target interface to receive a list of LUNs it has access to.
The VMware recommendation is that to prevent the log spam you should present a LUN 0 to the host, and then the log entries stop. Here’s a link to the VMware knowledgebase: