All of lore.kernel.org
 help / color / mirror / Atom feed
From: Karim Yaghmour <karim@opersys.com>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel <linux-kernel@vger.kernel.org>,
	LTT-Dev <ltt-dev@shafik.org>
Subject: [PATCH 4/8 ] ltt for 2.6.10 : fs/ events
Date: Fri, 14 Jan 2005 01:11:20 -0500	[thread overview]
Message-ID: <41E76288.2080004@opersys.com> (raw)


signed-off-by: Karim Yaghmour (karim@opersys.com)

--- linux-2.6.10-relayfs/fs/buffer.c	2004-12-24 16:34:58.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/buffer.c	2005-01-13 22:21:51.000000000 -0500
@@ -39,6 +39,7 @@
 #include <linux/notifier.h>
 #include <linux/cpu.h>
 #include <linux/bitops.h>
+#include <linux/ltt-events.h>

 static int fsync_buffers_list(spinlock_t *lock, struct list_head *list);
 static void invalidate_bh_lrus(void);
@@ -87,7 +88,9 @@ void fastcall unlock_buffer(struct buffe
  */
 void __wait_on_buffer(struct buffer_head * bh)
 {
+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_BUF_WAIT_START, 0, 0, NULL);
 	wait_on_bit(&bh->b_state, BH_Lock, sync_buffer, TASK_UNINTERRUPTIBLE);
+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_BUF_WAIT_END, 0, 0, NULL);
 }

 static void
--- linux-2.6.10-relayfs/fs/exec.c	2004-12-24 16:34:31.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/exec.c	2005-01-13 23:37:48.000000000 -0500
@@ -47,6 +47,7 @@
 #include <linux/security.h>
 #include <linux/syscalls.h>
 #include <linux/rmap.h>
+#include <linux/ltt-events.h>

 #include <asm/uaccess.h>
 #include <asm/mmu_context.h>
@@ -1105,6 +1106,9 @@ int do_execve(char * filename,
 	if (IS_ERR(file))
 		goto out_kfree;

+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_EXEC, 0,
+			file->f_dentry->d_name.len, file->f_dentry->d_name.name);
+
 	sched_exec();

 	bprm->p = PAGE_SIZE*MAX_ARG_PAGES-sizeof(void *);
--- linux-2.6.10-relayfs/fs/ioctl.c	2004-12-24 16:34:26.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/ioctl.c	2005-01-13 22:35:41.000000000 -0500
@@ -11,6 +11,7 @@
 #include <linux/file.h>
 #include <linux/fs.h>
 #include <linux/security.h>
+#include <linux/ltt-events.h>
 #include <linux/module.h>

 #include <asm/uaccess.h>
@@ -68,6 +69,8 @@ asmlinkage long sys_ioctl(unsigned int f
                 goto out;
         }

+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_IOCTL, fd, cmd, NULL);
+
 	lock_kernel();
 	switch (cmd) {
 		case FIOCLEX:
--- linux-2.6.10-relayfs/fs/open.c	2004-12-24 16:33:50.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/open.c	2005-01-13 23:38:31.000000000 -0500
@@ -19,6 +19,8 @@
 #include <linux/security.h>
 #include <linux/mount.h>
 #include <linux/vfs.h>
+#include <linux/ltt-events.h>
+
 #include <asm/uaccess.h>
 #include <linux/fs.h>
 #include <linux/pagemap.h>
@@ -956,6 +958,8 @@ asmlinkage long sys_open(const char __us
 			error = PTR_ERR(f);
 			if (IS_ERR(f))
 				goto out_error;
+			ltt_ev_file_system(LTT_EV_FILE_SYSTEM_OPEN, fd,
+					f->f_dentry->d_name.len, f->f_dentry->d_name.name);
 			fd_install(fd, f);
 		}
 out:
@@ -1031,6 +1035,7 @@ asmlinkage long sys_close(unsigned int f
 	filp = files->fd[fd];
 	if (!filp)
 		goto out_unlock;
+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_CLOSE, fd, 0, NULL);
 	files->fd[fd] = NULL;
 	FD_CLR(fd, files->close_on_exec);
 	__put_unused_fd(files, fd);
--- linux-2.6.10-relayfs/fs/read_write.c	2004-12-24 16:35:00.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/read_write.c	2005-01-13 23:39:41.000000000 -0500
@@ -14,6 +14,7 @@
 #include <linux/security.h>
 #include <linux/module.h>
 #include <linux/syscalls.h>
+#include <linux/ltt-events.h>

 #include <asm/uaccess.h>
 #include <asm/unistd.h>
@@ -142,6 +143,9 @@ asmlinkage off_t sys_lseek(unsigned int
 		if (res != (loff_t)retval)
 			retval = -EOVERFLOW;	/* LFS: should only happen on 32 bit platforms */
 	}
+
+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_SEEK, fd, offset, NULL);
+
 	fput_light(file, fput_needed);
 bad:
 	return retval;
@@ -169,6 +173,8 @@ asmlinkage long sys_llseek(unsigned int
 	offset = vfs_llseek(file, ((loff_t) offset_high << 32) | offset_low,
 			origin);

+	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_SEEK, fd, offset, NULL);
+
 	retval = (int)offset;
 	if (offset >= 0) {
 		retval = -EFAULT;
@@ -289,6 +295,7 @@ asmlinkage ssize_t sys_read(unsigned int
 	file = fget_light(fd, &fput_needed);
 	if (file) {
 		loff_t pos = file_pos_read(file);
+ 	 	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_READ, fd, count, NULL);
 		ret = vfs_read(file, buf, count, &pos);
 		file_pos_write(file, pos);
 		fput_light(file, fput_needed);
@@ -307,6 +314,7 @@ asmlinkage ssize_t sys_write(unsigned in
 	file = fget_light(fd, &fput_needed);
 	if (file) {
 		loff_t pos = file_pos_read(file);
+		ltt_ev_file_system(LTT_EV_FILE_SYSTEM_WRITE, fd, count, NULL);
 		ret = vfs_write(file, buf, count, &pos);
 		file_pos_write(file, pos);
 		fput_light(file, fput_needed);
@@ -328,8 +336,11 @@ asmlinkage ssize_t sys_pread64(unsigned
 	file = fget_light(fd, &fput_needed);
 	if (file) {
 		ret = -ESPIPE;
-		if (file->f_mode & FMODE_PREAD)
+		if (file->f_mode & FMODE_PREAD) {
+ 	 		ltt_ev_file_system(LTT_EV_FILE_SYSTEM_READ, fd, count, NULL);
 			ret = vfs_read(file, buf, count, &pos);
+		}
+
 		fput_light(file, fput_needed);
 	}

@@ -349,8 +360,10 @@ asmlinkage ssize_t sys_pwrite64(unsigned
 	file = fget_light(fd, &fput_needed);
 	if (file) {
 		ret = -ESPIPE;
-		if (file->f_mode & FMODE_PWRITE)
+ 		if (file->f_mode & FMODE_PWRITE) {
+  			ltt_ev_file_system(LTT_EV_FILE_SYSTEM_WRITE, fd, count, NULL);
 			ret = vfs_write(file, buf, count, &pos);
+		}
 		fput_light(file, fput_needed);
 	}

@@ -535,6 +548,7 @@ sys_readv(unsigned long fd, const struct
 	file = fget_light(fd, &fput_needed);
 	if (file) {
 		loff_t pos = file_pos_read(file);
+ 		ltt_ev_file_system(LTT_EV_FILE_SYSTEM_READ, fd, vlen, NULL);
 		ret = vfs_readv(file, vec, vlen, &pos);
 		file_pos_write(file, pos);
 		fput_light(file, fput_needed);
@@ -553,6 +567,7 @@ sys_writev(unsigned long fd, const struc
 	file = fget_light(fd, &fput_needed);
 	if (file) {
 		loff_t pos = file_pos_read(file);
+	 	ltt_ev_file_system(LTT_EV_FILE_SYSTEM_WRITE, fd, vlen, NULL);
 		ret = vfs_writev(file, vec, vlen, &pos);
 		file_pos_write(file, pos);
 		fput_light(file, fput_needed);
--- linux-2.6.10-relayfs/fs/relayfs/relay.c	2005-01-13 22:16:35.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/relayfs/relay.c	2005-01-14 00:12:06.000000000 -0500
@@ -406,8 +406,7 @@ relay_mmap_region(struct vm_area_struct

 	while (size > 0) {
 		page = kvirt_to_pa(pos);
-		if (remap_pfn_range(vma, start, page >> PAGE_SHIFT,
-					PAGE_SIZE, PAGE_SHARED))
+		if (remap_pfn_range(vma, start, page >> PAGE_SHIFT, PAGE_SIZE, PAGE_SHARED))
 			return -EAGAIN;
 		start += PAGE_SIZE;
 		pos += PAGE_SIZE;
--- linux-2.6.10-relayfs/fs/select.c	2004-12-24 16:33:49.000000000 -0500
+++ linux-2.6.10-relayfs-ltt/fs/select.c	2005-01-13 23:39:55.000000000 -0500
@@ -22,6 +22,7 @@
 #include <linux/personality.h> /* for STICKY_TIMEOUTS */
 #include <linux/file.h>
 #include <linux/fs.h>
+#include <linux/ltt-events.h>

 #include <asm/uaccess.h>

@@ -223,6 +224,8 @@ int do_select(int n, fd_set_bits *fds, l
 				file = fget(i);
 				if (file) {
 					f_op = file->f_op;
+					ltt_ev_file_system(LTT_EV_FILE_SYSTEM_SELECT, i /*  The fd*/,
+							__timeout, NULL);
 					mask = DEFAULT_POLLMASK;
 					if (f_op && f_op->poll)
 						mask = (*f_op->poll)(file, retval ? NULL : wait);
@@ -408,6 +411,7 @@ static void do_pollfd(unsigned int num,
 			struct file * file = fget(fd);
 			mask = POLLNVAL;
 			if (file != NULL) {
+			        ltt_ev_file_system(LTT_EV_FILE_SYSTEM_POLL, fd, 0, NULL);
 				mask = DEFAULT_POLLMASK;
 				if (file->f_op && file->f_op->poll)
 					mask = file->f_op->poll(file, *pwait);



             reply	other threads:[~2005-01-14  6:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-14  6:11 Karim Yaghmour [this message]
2005-01-14 20:49 ` [PATCH 4/8 ] ltt for 2.6.10 : fs/ events Sam Ravnborg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=41E76288.2080004@opersys.com \
    --to=karim@opersys.com \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ltt-dev@shafik.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.