/* returns start sector */
function __bio_start_sect:long(bio:long)
%{ /* pure */
- struct bio *bio = (struct bio *)(long)THIS->bio;
- struct block_device *bi_bdev = bio? kread(&(bio->bi_bdev)) : NULL;
- struct hd_struct *bd_part = bi_bdev? kread(&(bi_bdev->bd_part)) : NULL;
+ struct bio *bio;
+ struct block_device *bi_bdev;
+ struct hd_struct *bd_part;
+ bio = (struct bio *)(long)THIS->bio;
+ bi_bdev = bio? kread(&(bio->bi_bdev)) : NULL;
+ bd_part = bi_bdev? kread(&(bi_bdev->bd_part)) : NULL;
if (bd_part == NULL)
THIS->__retvalue = -1;
else
1:get proto
*/
function __i2n_ip_proto :long(dir:long,index:long) %{ /* pure */
- int index = (int) (THIS->index);
- struct inode * dir = (struct inode *)(uintptr_t)(THIS->dir);
- struct rpc_clnt * clnt = NFS_CLIENT(dir); /* FIXME: deref hazard! */
- struct rpc_xprt * cl_xprt = kread(&(clnt->cl_xprt));
+ int index;
+ struct inode * dir;
+ struct rpc_clnt * clnt;
+ struct rpc_xprt * cl_xprt;
+ struct sockaddr_in *addr;
+
+ index = (int) (THIS->index);
+ dir = (struct inode *)(uintptr_t)(THIS->dir);
+ clnt = NFS_CLIENT(dir); /* FIXME: deref hazard! */
+ cl_xprt = kread(&(clnt->cl_xprt));
/* sockaddr_storage is used since 2.6.19. Need cast*/
- struct sockaddr_in *addr = (struct sockaddr_in *)&(cl_xprt->addr);
+ addr = (struct sockaddr_in *)&(cl_xprt->addr);
if(index == 0) {
if (kread(&(addr->sin_family)) == AF_INET) {
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
THIS->__retvalue = timer_pending(&cmd->eh_timeout); /* FIXME: deref hazard! */
#else
- struct request *req = (struct request *)kread(&cmd->request);
- struct request_queue *rq = (struct request_queue *)kread(&req->q);
+ struct request *req;
+ struct request_queue *rq;
+ req = (struct request *)kread(&cmd->request);
+ rq = (struct request_queue *)kread(&req->q);
THIS->__retvalue = timer_pending(&rq->timeout); /* FIXME: deref hazard! */
CATCH_DEREF_FAULT();
#endif
function task_open_file_handles:long (task:long)
%( kernel_v >= "2.6.15" %?
%{ /* pure */
- struct task_struct *t = (struct task_struct *)(long)THIS->task;
- struct files_struct *fs = kread(&(t->files));
- struct fdtable *f = kread(&(fs->fdt));
unsigned int count=0, fd, max;
+ struct task_struct *t;
+ struct files_struct *fs;
+ struct fdtable *f;
+ t = (struct task_struct *)(long)THIS->task;
+ fs = kread(&(t->files));
+ f = kread(&(fs->fdt));
rcu_read_lock();
max = kread(&(f->max_fds));
for (fd = 0; fd < max; fd++) {
%}
%:
%{ /* pure */
- struct task_struct *t = (struct task_struct *)(long)THIS->task;
- struct files_struct *f = kread(&(t->files));
unsigned int count=0, fd, max;
+ struct task_struct *t;
+ struct files_struct *f;
+ t = (struct task_struct *)(long)THIS->task;
+ f = kread(&(t->files));
rcu_read_lock();
max = kread(&(f->max_fds));
for (fd = 0; fd < max; fd++) {
function task_max_file_handles:long (task:long)
%( kernel_v >= "2.6.15" %?
%{ /* pure */
- struct task_struct *t = (struct task_struct *)(long)THIS->task;
- struct files_struct *fs = kread (&(t->files));
- struct fdtable *f = kread(&(fs->fdt));
+ struct task_struct *t;
+ struct files_struct *fs;
+ struct fdtable *f;
+ t = (struct task_struct *)(long)THIS->task;
+ fs = kread (&(t->files));
+ f = kread(&(fs->fdt));
rcu_read_lock();
THIS->__retvalue = kread(&(f->max_fds));
rcu_read_unlock();
%}
%:
%{ /* pure */
- struct task_struct *t = (struct task_struct *)(long)THIS->task;
- struct files_struct *f = kread(&(t->files));
+ struct task_struct *t;
+ struct files_struct *f;
+ t = (struct task_struct *)(long)THIS->task;
+ f = kread(&(t->files));
rcu_read_lock();
THIS->__retvalue = kread(&(f->max_fds));
rcu_read_unlock();