[SCSI] fcoe: Round-robin based selection of CPU for post-processing of incoming commands
authorKiran Patil <kiran.patil@intel.com>
Mon, 20 Jun 2011 23:59:20 +0000 (16:59 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Wed, 29 Jun 2011 21:29:36 +0000 (16:29 -0500)
commit064287eee372e8a2effe77fb909a40da9e7a1fd7
tree0cfda86145d0bae9dedc70206c1ff1f4bb773480
parent1ff9918b625457ce20d450d00f9ed0a12ba191b7
[SCSI] fcoe: Round-robin based selection of CPU for post-processing of incoming commands

Problem: Earlier mechanism of selection of CPU was, to select the same CPU
which has received incoming request. Hence in case of rx_id = 0xFFFF,
request was always posted to same NetRx queue, hence only 1 CPU is utilized
for handling the command. It was also causing problem of "running out of
exchanges from per CPU pool of exchanges (in case of DDP offload)

Fix: Implemented new algo. to select CPU for post-processing of
incoming commands when rx_id is unknown. This is simple Round robin
algo. for CPU selection.

Notes/Dependencies: N/A

Signed-off-by: Kiran Patil <kiran.patil@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/fcoe/fcoe.c