| .. | .. |
|---|
| 171 | 171 | vma->vm_private_data = info; |
|---|
| 172 | 172 | return 0; |
|---|
| 173 | 173 | } |
|---|
| 174 | | -EXPORT_SYMBOL(fb_deferred_io_mmap); |
|---|
| 175 | 174 | |
|---|
| 176 | 175 | /* workqueue callback */ |
|---|
| 177 | 176 | static void fb_deferred_io_work(struct work_struct *work) |
|---|
| .. | .. |
|---|
| 206 | 205 | |
|---|
| 207 | 206 | BUG_ON(!fbdefio); |
|---|
| 208 | 207 | mutex_init(&fbdefio->lock); |
|---|
| 209 | | - info->fbops->fb_mmap = fb_deferred_io_mmap; |
|---|
| 210 | 208 | INIT_DELAYED_WORK(&info->deferred_work, fb_deferred_io_work); |
|---|
| 211 | 209 | INIT_LIST_HEAD(&fbdefio->pagelist); |
|---|
| 212 | 210 | if (fbdefio->delay == 0) /* set a default of 1 s */ |
|---|
| .. | .. |
|---|
| 237 | 235 | page->mapping = NULL; |
|---|
| 238 | 236 | } |
|---|
| 239 | 237 | |
|---|
| 240 | | - info->fbops->fb_mmap = NULL; |
|---|
| 241 | 238 | mutex_destroy(&fbdefio->lock); |
|---|
| 242 | 239 | } |
|---|
| 243 | 240 | EXPORT_SYMBOL_GPL(fb_deferred_io_cleanup); |
|---|