public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Holger Waechtler <holger@convergence.de>
To: Adrian Bunk <bunk@fs.tum.de>
Cc: Andi Kleen <ak@muc.de>, linux-kernel@vger.kernel.org
Subject: Re: [2.5 patch] fix compile breakage in fs/ after nanosecond stat timefields patch
Date: Mon, 18 Nov 2002 15:50:44 +0100	[thread overview]
Message-ID: <3DD8FE44.4080607@convergence.de> (raw)
In-Reply-To: 20021118112108.GA5420@fs.tum.de

[-- Attachment #1: Type: text/plain, Size: 3274 bytes --]

Hi all,

below a patch for fs/devfs/base.c in order to follow the time convention 
changes.

Holger




Adrian Bunk wrote:
> Hi Andi,
> 
> the patch below fixes the following compile errors in 2.5.48:
> 
> <--  snip  -->
> 
> ..
>   gcc -Wp,-MD,fs/adfs/.inode.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iarch/i386/mach-generic -nostdinc -iwithprefix include    -DKBUILD_BASENAME=inode -DKBUILD_MODNAME=adfs   -c -o fs/adfs/inode.o fs/adfs/inode.c
> fs/adfs/inode.c: In function `adfs_adfs2unix_time':
> fs/adfs/inode.c:188: incompatible types in return
> make[2]: *** [fs/adfs/inode.o] Error 1
> ...
>   gcc -Wp,-MD,fs/afs/.vlclient.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iarch/i386/mach-generic -nostdinc -iwithprefix include    -DKBUILD_BASENAME=vlclient -DKBUILD_MODNAME=kafs   -c -o fs/afs/vlclient.o fs/afs/vlclient.c
> fs/afs/vlclient.c: In function `afs_rxvl_get_entry_by_id_async2':
> fs/afs/vlclient.c:587: incompatible types in assignment
> make[2]: *** [fs/afs/vlclient.o] Error 1
> ...
>   gcc -Wp,-MD,fs/jffs2/.fs.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iarch/i386/mach-generic -nostdinc -iwithprefix include    -DKBUILD_BASENAME=fs -DKBUILD_MODNAME=jffs2   -c -o fs/jffs2/fs.o fs/jffs2/fs.c
> fs/jffs2/fs.c: In function `jffs2_new_inode':
> fs/jffs2/fs.c:257: incompatible types in assignment
> make[2]: *** [fs/jffs2/fs.o] Error 1
> 
> <--  snip  -->
> 
> 
> Please check whether the patch is correct.
> 
> TIA
> Adrian
> 
> 
> --- linux-2.5.48/fs/adfs/inode.c.old	2002-11-18 11:29:15.000000000 +0100
> +++ linux-2.5.48/fs/adfs/inode.c	2002-11-18 11:30:43.000000000 +0100
> @@ -185,7 +185,7 @@
>  	unsigned int high, low;
>  
>  	if (ADFS_I(inode)->stamped == 0)
> -		return CURRENT_TIME;
> +		return get_seconds();
>  
>  	high = ADFS_I(inode)->loadaddr << 24;
>  	low  = ADFS_I(inode)->execaddr;
> --- linux-2.5.48/fs/afs/vlclient.c.old	2002-11-18 11:36:13.000000000 +0100
> +++ linux-2.5.48/fs/afs/vlclient.c	2002-11-18 11:37:41.000000000 +0100
> @@ -584,7 +584,7 @@
>  #endif
>  
>  		/* success */
> -		entry->ctime = CURRENT_TIME;
> +		entry->ctime = get_seconds();
>  		ret = 0;
>  		goto done;
>  	}
> --- linux-2.5.48/fs/jffs2/fs.c.old	2002-11-18 11:49:23.000000000 +0100
> +++ linux-2.5.48/fs/jffs2/fs.c	2002-11-18 11:55:43.000000000 +0100
> @@ -253,7 +253,8 @@
>  	inode->i_mode = ri->mode;
>  	inode->i_gid = ri->gid;
>  	inode->i_uid = ri->uid;
> -	inode->i_atime = inode->i_ctime = inode->i_mtime = 
> +	inode->i_atime.tv_sec = inode->i_ctime.tv_sec =
> +		inode->i_mtime.tv_sec = 
>  		ri->atime = ri->mtime = ri->ctime = get_seconds();
>  	inode->i_blksize = PAGE_SIZE;
>  	inode->i_blocks = 0;
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

[-- Attachment #2: devfs-timepatch.diff --]
[-- Type: text/plain, Size: 2196 bytes --]

--- fs/devfs/base.c-orig	2002-11-18 05:29:26.000000000 +0100
+++ fs/devfs/base.c	2002-11-18 15:35:45.000000000 +0100
@@ -799,9 +799,9 @@ struct symlink_type
 struct devfs_inode     /*  This structure is for "persistent" inode storage  */
 {
     struct dentry *dentry;
-    time_t atime;
-    time_t mtime;
-    time_t ctime;
+    struct timespec atime;
+    struct timespec mtime;
+    struct timespec ctime;
     unsigned int ino;            /*  Inode number as seen in the VFS         */
     uid_t uid;
     gid_t gid;
@@ -2509,9 +2509,12 @@ static int devfs_notify_change (struct d
     de->mode = inode->i_mode;
     de->inode.uid = inode->i_uid;
     de->inode.gid = inode->i_gid;
-    de->inode.atime = inode->i_atime.tv_sec;
-    de->inode.mtime = inode->i_mtime.tv_sec;
-    de->inode.ctime = inode->i_ctime.tv_sec;
+    de->inode.atime.tv_sec = inode->i_atime.tv_sec;
+    de->inode.atime.tv_nsec = inode->i_atime.tv_nsec;
+    de->inode.mtime.tv_sec = inode->i_mtime.tv_sec;
+    de->inode.mtime.tv_nsec = inode->i_mtime.tv_nsec;
+    de->inode.ctime.tv_sec = inode->i_ctime.tv_sec;
+    de->inode.ctime.tv_nsec = inode->i_ctime.tv_nsec;
     if ( ( iattr->ia_valid & (ATTR_MODE | ATTR_UID | ATTR_GID) ) &&
 	 !is_devfsd_or_child (fs_info) )
 	devfsd_notify_de (de, DEVFSD_NOTIFY_CHANGE, inode->i_mode,
@@ -2610,12 +2613,12 @@ static struct inode *_devfs_get_vfs_inod
     inode->i_mode = de->mode;
     inode->i_uid = de->inode.uid;
     inode->i_gid = de->inode.gid;
-    inode->i_atime.tv_sec = de->inode.atime;
-    inode->i_mtime.tv_sec = de->inode.mtime;
-    inode->i_ctime.tv_sec = de->inode.ctime;
-    inode->i_atime.tv_nsec = 0;
-    inode->i_mtime.tv_nsec = 0;
-    inode->i_ctime.tv_nsec = 0;
+    inode->i_atime.tv_sec = de->inode.atime.tv_sec;
+    inode->i_atime.tv_nsec = de->inode.atime.tv_nsec;
+    inode->i_mtime.tv_sec = de->inode.mtime.tv_sec;
+    inode->i_mtime.tv_nsec = de->inode.mtime.tv_nsec;
+    inode->i_ctime.tv_sec = de->inode.ctime.tv_sec;
+    inode->i_ctime.tv_nsec = de->inode.ctime.tv_nsec;
     DPRINTK (DEBUG_I_GET, "():   mode: 0%o  uid: %d  gid: %d\n",
 	     (int) inode->i_mode, (int) inode->i_uid, (int) inode->i_gid);
     return inode;

      parent reply	other threads:[~2002-11-18 14:43 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-18 11:21 [2.5 patch] fix compile breakage in fs/ after nanosecond stat timefields patch Adrian Bunk
2002-11-18 13:58 ` Andi Kleen
2002-11-18 14:50 ` Holger Waechtler [this message]

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=3DD8FE44.4080607@convergence.de \
    --to=holger@convergence.de \
    --cc=ak@muc.de \
    --cc=bunk@fs.tum.de \
    --cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox