diff options
| author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2008-10-06 11:29:43 -0400 |
|---|---|---|
| committer | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2008-10-06 11:29:43 -0400 |
| commit | 51905871ddafdeb1f06236b8bef37f04c5acca8f (patch) | |
| tree | 118254d31e5e43a38b8727b22583135009c23571 /include | |
| parent | aeb7a10b15401c80fc1c5ecf93b1e22240f046e6 (diff) | |
ftdev: provide a callback to test whether a device can be opened
This is useful to deny opening per-cpu buffers if a CPU is not online.
Diffstat (limited to 'include')
| -rw-r--r-- | include/litmus/ftdev.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/litmus/ftdev.h b/include/litmus/ftdev.h index 8df916d1fc..7697b46166 100644 --- a/include/litmus/ftdev.h +++ b/include/litmus/ftdev.h | |||
| @@ -13,9 +13,13 @@ | |||
| 13 | 13 | ||
| 14 | struct ftdev; | 14 | struct ftdev; |
| 15 | 15 | ||
| 16 | /* return 0 if buffer can be opened, otherwise -$REASON */ | ||
| 17 | typedef int (*ftdev_can_open_t)(struct ftdev* dev, unsigned int buf_no); | ||
| 18 | /* return 0 on success, otherwise -$REASON */ | ||
| 16 | typedef int (*ftdev_alloc_t)(struct ftdev* dev, unsigned int buf_no); | 19 | typedef int (*ftdev_alloc_t)(struct ftdev* dev, unsigned int buf_no); |
| 17 | typedef void (*ftdev_free_t)(struct ftdev* dev, unsigned int buf_no); | 20 | typedef void (*ftdev_free_t)(struct ftdev* dev, unsigned int buf_no); |
| 18 | 21 | ||
| 22 | |||
| 19 | struct ftdev_event; | 23 | struct ftdev_event; |
| 20 | 24 | ||
| 21 | struct ftdev_minor { | 25 | struct ftdev_minor { |
| @@ -33,6 +37,7 @@ struct ftdev { | |||
| 33 | unsigned int minor_cnt; | 37 | unsigned int minor_cnt; |
| 34 | ftdev_alloc_t alloc; | 38 | ftdev_alloc_t alloc; |
| 35 | ftdev_free_t free; | 39 | ftdev_free_t free; |
| 40 | ftdev_can_open_t can_open; | ||
| 36 | }; | 41 | }; |
| 37 | 42 | ||
| 38 | struct ft_buffer* alloc_ft_buffer(unsigned int count, size_t size); | 43 | struct ft_buffer* alloc_ft_buffer(unsigned int count, size_t size); |
