firewire: Use atomic_t's for serial numbers.

Signed-off-by: Kristian Høgsberg <krh@redhat.com>

Use atomic_inc_return.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
This commit is contained in:
Kristian Høgsberg 2007-02-06 14:49:38 -05:00 committed by Stefan Richter
parent 362c2c8ca4
commit bbf19db37e
2 changed files with 4 additions and 4 deletions

View File

@ -367,9 +367,9 @@ void
fw_card_initialize(struct fw_card *card, const struct fw_card_driver *driver,
struct device *device)
{
static int index;
static atomic_t index = ATOMIC_INIT(-1);
card->index = index++;
card->index = atomic_inc_return(&index);
card->driver = driver;
card->device = device;
card->current_tlabel = 0;

View File

@ -434,7 +434,7 @@ static void fw_device_shutdown(struct work_struct *work)
static void fw_device_init(struct work_struct *work)
{
static int serial;
static atomic_t serial = ATOMIC_INIT(-1);
struct fw_device *device =
container_of(work, struct fw_device, work.work);
@ -460,7 +460,7 @@ static void fw_device_init(struct work_struct *work)
device->device.release = fw_device_release;
device->device.parent = device->card->device;
snprintf(device->device.bus_id, sizeof device->device.bus_id,
"fw%d", serial++);
"fw%d", atomic_inc_return(&serial));
if (alloc_chrdev_region(&device->device.devt, 0, 1, "fw")) {
fw_error("Failed to register char device region.\n");