~ubuntu-branches/ubuntu/lucid/linux-rt/lucid

« back to all changes in this revision

Viewing changes to include/linux/blktrace_api.h

  • Committer: Bazaar Package Importer
  • Author(s): Luke Yelavich
  • Date: 2009-08-05 23:00:52 UTC
  • Revision ID: james.westby@ubuntu.com-20090805230052-7xedvqcyk9dnnxb2
Tags: 2.6.31-1.1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
116
116
 * The remap event
117
117
 */
118
118
struct blk_io_trace_remap {
119
 
        __be32 device;
120
119
        __be32 device_from;
121
 
        __be64 sector;
 
120
        __be32 device_to;
 
121
        __be64 sector_from;
122
122
};
123
123
 
124
124
enum {
144
144
 
145
145
#ifdef __KERNEL__
146
146
#if defined(CONFIG_BLK_DEV_IO_TRACE)
 
147
 
 
148
#include <linux/sysfs.h>
 
149
 
147
150
struct blk_trace {
148
151
        int trace_state;
149
152
        struct rchan *rchan;
162
165
 
163
166
extern int blk_trace_ioctl(struct block_device *, unsigned, char __user *);
164
167
extern void blk_trace_shutdown(struct request_queue *);
165
 
extern int do_blk_trace_setup(struct request_queue *q,
166
 
        char *name, dev_t dev, struct blk_user_trace_setup *buts);
 
168
extern int do_blk_trace_setup(struct request_queue *q, char *name,
 
169
                              dev_t dev, struct block_device *bdev,
 
170
                              struct blk_user_trace_setup *buts);
167
171
extern void __trace_note_message(struct blk_trace *, const char *fmt, ...);
168
172
 
169
173
/**
190
194
extern void blk_add_driver_data(struct request_queue *q, struct request *rq,
191
195
                                void *data, size_t len);
192
196
extern int blk_trace_setup(struct request_queue *q, char *name, dev_t dev,
 
197
                           struct block_device *bdev,
193
198
                           char __user *arg);
194
199
extern int blk_trace_startstop(struct request_queue *q, int start);
195
200
extern int blk_trace_remove(struct request_queue *q);
 
201
extern int blk_trace_init_sysfs(struct device *dev);
 
202
 
 
203
extern struct attribute_group blk_trace_attr_group;
196
204
 
197
205
#else /* !CONFIG_BLK_DEV_IO_TRACE */
198
 
#define blk_trace_ioctl(bdev, cmd, arg)         (-ENOTTY)
199
 
#define blk_trace_shutdown(q)                   do { } while (0)
200
 
#define do_blk_trace_setup(q, name, dev, buts)  (-ENOTTY)
201
 
#define blk_add_driver_data(q, rq, data, len)   do {} while (0)
202
 
#define blk_trace_setup(q, name, dev, arg)      (-ENOTTY)
203
 
#define blk_trace_startstop(q, start)           (-ENOTTY)
204
 
#define blk_trace_remove(q)                     (-ENOTTY)
205
 
#define blk_add_trace_msg(q, fmt, ...)          do { } while (0)
 
206
# define blk_trace_ioctl(bdev, cmd, arg)                (-ENOTTY)
 
207
# define blk_trace_shutdown(q)                          do { } while (0)
 
208
# define do_blk_trace_setup(q, name, dev, bdev, buts)   (-ENOTTY)
 
209
# define blk_add_driver_data(q, rq, data, len)          do {} while (0)
 
210
# define blk_trace_setup(q, name, dev, bdev, arg)       (-ENOTTY)
 
211
# define blk_trace_startstop(q, start)                  (-ENOTTY)
 
212
# define blk_trace_remove(q)                            (-ENOTTY)
 
213
# define blk_add_trace_msg(q, fmt, ...)                 do { } while (0)
 
214
static inline int blk_trace_init_sysfs(struct device *dev)
 
215
{
 
216
        return 0;
 
217
}
206
218
 
207
219
#endif /* CONFIG_BLK_DEV_IO_TRACE */
 
220
 
 
221
#if defined(CONFIG_EVENT_TRACING) && defined(CONFIG_BLOCK)
 
222
 
 
223
static inline int blk_cmd_buf_len(struct request *rq)
 
224
{
 
225
        return blk_pc_request(rq) ? rq->cmd_len * 3 : 1;
 
226
}
 
227
 
 
228
extern void blk_dump_cmd(char *buf, struct request *rq);
 
229
extern void blk_fill_rwbs(char *rwbs, u32 rw, int bytes);
 
230
extern void blk_fill_rwbs_rq(char *rwbs, struct request *rq);
 
231
 
 
232
#endif /* CONFIG_EVENT_TRACING && CONFIG_BLOCK */
 
233
 
208
234
#endif /* __KERNEL__ */
209
235
#endif