All of lore.kernel.org
 help / color / mirror / Atom feed
From: Max <relf@unn.ac.ru>
To: linux-fsdevel@vger.kernel.org
Subject: [patch] fs/hpfs/*: fix HPFS support under 64-bit kernel
Date: Sat, 19 Mar 2005 17:52:12 -0800	[thread overview]
Message-ID: <423CD74C.8020509@unn.ac.ru> (raw)

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

The following patch fixes HPFS filesystem support under 64-bit Linux kernel and closes the bugreport http://bugme.osdl.org/show_bug.cgi?id=4333
The problem is in 'time_t' size which is 8 bytes on 64-bit systems (comparing to 4 bytes on 32-bit systems). The patch introduces local 'time32_t' type of the fixed size 4 and uses it where required.

Regards,
Max


[-- Attachment #2: hpfs_fix.diff --]
[-- Type: text/x-patch, Size: 2309 bytes --]

diff -u old/fs/hpfs/hpfs_fn.h fs/hpfs/hpfs_fn.h
--- old/fs/hpfs/hpfs_fn.h	2005-03-04 09:26:36.000000000 -0800
+++ fs/hpfs/hpfs_fn.h	2005-03-14 09:10:16.040399536 -0800
@@ -329,13 +329,13 @@
  * local time (HPFS) to GMT (Unix)
  */
 
-static inline time_t local_to_gmt(struct super_block *s, time_t t)
+static inline time_t local_to_gmt(struct super_block *s, time32_t t)
 {
 	extern struct timezone sys_tz;
 	return t + sys_tz.tz_minuteswest * 60 + hpfs_sb(s)->sb_timeshift;
 }
 
-static inline time_t gmt_to_local(struct super_block *s, time_t t)
+static inline time32_t gmt_to_local(struct super_block *s, time_t t)
 {
 	extern struct timezone sys_tz;
 	return t - sys_tz.tz_minuteswest * 60 - hpfs_sb(s)->sb_timeshift;
diff -u old/fs/hpfs/hpfs.h fs/hpfs/hpfs.h
--- old/fs/hpfs/hpfs.h	2005-03-04 09:26:46.000000000 -0800
+++ fs/hpfs/hpfs.h	2005-03-14 09:11:59.884612816 -0800
@@ -27,6 +27,8 @@
 typedef secno fnode_secno;		/* sector number of an fnode */
 typedef secno anode_secno;		/* sector number of an anode */
 
+typedef unsigned time32_t;		/* 32-bit time_t type */
+
 /* sector 0 */
 
 /* The boot block is very like a FAT boot block, except that the
@@ -84,9 +86,9 @@
   unsigned zero1;			/* 0 */
   secno badblocks;			/* bad block list */
   unsigned zero3;			/* 0 */
-  time_t last_chkdsk;			/* date last checked, 0 if never */
+  time32_t last_chkdsk;			/* date last checked, 0 if never */
   /*unsigned zero4;*/			/* 0 */
-  time_t last_optimize;			/* date last optimized, 0 if never */
+  time32_t last_optimize;			/* date last optimized, 0 if never */
   secno n_dir_band;			/* number of sectors in dir band */
   secno dir_band_start;			/* first sector in dir band */
   secno dir_band_end;			/* last sector in dir band */
@@ -287,10 +289,10 @@
   unsigned not_8x3: 1;			/* name is not 8.3 */
   unsigned flag15: 1;
   fnode_secno fnode;			/* fnode giving allocation info */
-  time_t write_date;			/* mtime */
+  time32_t write_date;			/* mtime */
   unsigned file_size;			/* file length, bytes */
-  time_t read_date;			/* atime */
-  time_t creation_date;			/* ctime */
+  time32_t read_date;			/* atime */
+  time32_t creation_date;			/* ctime */
   unsigned ea_size;			/* total EA length, bytes */
   unsigned char no_of_acls : 3;		/* number of ACL's */
   unsigned char reserver : 5;



             reply	other threads:[~2005-03-20  1:52 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-20  1:52 Max [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-03-20  5:11 [patch] fs/hpfs/*: fix HPFS support under 64-bit kernel Stephen Rothwell
2005-03-20  5:24 ` Max

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=423CD74C.8020509@unn.ac.ru \
    --to=relf@unn.ac.ru \
    --cc=linux-fsdevel@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 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.