Revision 616eb002
b/xseg/sys/kernel/segdev.c | ||
---|---|---|
117 | 117 |
goto out_unlock; |
118 | 118 |
|
119 | 119 |
clear_bit(SEGDEV_READY, &dev->flags); |
120 |
XSEGLOG("Usercount: %d", atomic_read(&dev->usercount)); |
|
121 | 120 |
ret = wait_event_interruptible(dev->wq, atomic_read(&dev->usercount) <= 1); |
122 | 121 |
if (ret) |
123 | 122 |
goto out_unlock; |
... | ... | |
144 | 143 |
|
145 | 144 |
dev = &segdev; |
146 | 145 |
atomic_inc(&dev->usercount); |
147 |
XSEGLOG("Usercount: %d", atomic_read(&dev->usercount)); |
|
148 | 146 |
if (!test_bit(SEGDEV_READY, &dev->flags)) |
149 | 147 |
goto fail_busy; |
150 | 148 |
out: |
... | ... | |
161 | 159 |
void segdev_put(struct segdev *dev) |
162 | 160 |
{ |
163 | 161 |
atomic_dec(&dev->usercount); |
164 |
XSEGLOG("Usercount: %d", atomic_read(&dev->usercount)); |
|
165 | 162 |
wake_up(&dev->wq); |
166 | 163 |
/* ain't all this too heavy ? */ |
167 | 164 |
} |
Also available in: Unified diff