diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2006-10-01 02:28:00 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-01 03:39:23 -0400 |
commit | 74ae3221818eaf3884ceac931ba3cd2c00045483 (patch) | |
tree | 2ccffd76721979ff314ea40471e509b236c13a21 | |
parent | df10f4edd5f097251c62f1d4a3adea778100b4a8 (diff) |
[PATCH] cardbus: switch to ref counting/hotplug safe API
Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/pcmcia/cardbus.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pcmcia/cardbus.c b/drivers/pcmcia/cardbus.c index 3f6d51d11374..2d7effe7990d 100644 --- a/drivers/pcmcia/cardbus.c +++ b/drivers/pcmcia/cardbus.c | |||
@@ -138,7 +138,7 @@ int read_cb_mem(struct pcmcia_socket * s, int space, u_int addr, u_int len, void | |||
138 | 138 | ||
139 | cs_dbg(s, 3, "read_cb_mem(%d, %#x, %u)\n", space, addr, len); | 139 | cs_dbg(s, 3, "read_cb_mem(%d, %#x, %u)\n", space, addr, len); |
140 | 140 | ||
141 | dev = pci_find_slot(s->cb_dev->subordinate->number, 0); | 141 | dev = pci_get_slot(s->cb_dev->subordinate, 0); |
142 | if (!dev) | 142 | if (!dev) |
143 | goto fail; | 143 | goto fail; |
144 | 144 | ||
@@ -152,6 +152,9 @@ int read_cb_mem(struct pcmcia_socket * s, int space, u_int addr, u_int len, void | |||
152 | } | 152 | } |
153 | 153 | ||
154 | res = dev->resource + space - 1; | 154 | res = dev->resource + space - 1; |
155 | |||
156 | pci_dev_put(dev); | ||
157 | |||
155 | if (!res->flags) | 158 | if (!res->flags) |
156 | goto fail; | 159 | goto fail; |
157 | 160 | ||