Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[SCSI] mac_esp: remove redundant mutual exclusion

Mutual exclusion is redundant here because all the paths in the call graph
leading to esp_driver_ops.send_dma_cmd() happen under spin_lock_irqsave/
spin_lock_irqrestore. Remove it.

Tested on a Mac Quadra 660av and a Mac LC 630.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>

authored by

Finn Thain and committed by
James Bottomley
e544d704 0599f8f3

-9
-9
drivers/scsi/mac_esp.c
··· 230 230 u32 dma_count, int write, u8 cmd) 231 231 { 232 232 struct mac_esp_priv *mep = MAC_ESP_GET_PRIV(esp); 233 - unsigned long flags; 234 - 235 - local_irq_save(flags); 236 233 237 234 mep->error = 0; 238 235 ··· 267 270 esp_count = n; 268 271 } 269 272 } while (esp_count); 270 - 271 - local_irq_restore(flags); 272 273 } 273 274 274 275 /* ··· 348 353 struct mac_esp_priv *mep = MAC_ESP_GET_PRIV(esp); 349 354 u8 *fifo = esp->regs + ESP_FDATA * 16; 350 355 351 - disable_irq(esp->host->irq); 352 - 353 356 cmd &= ~ESP_CMD_DMA; 354 357 mep->error = 0; 355 358 ··· 424 431 scsi_esp_cmd(esp, ESP_CMD_TI); 425 432 } 426 433 } 427 - 428 - enable_irq(esp->host->irq); 429 434 } 430 435 431 436 static int mac_esp_irq_pending(struct esp *esp)