rpms/kernel/devel kernel.spec, 1.387, 1.388 linux-2.6-ext4-jbd2-patch-queue.patch, 1.3, 1.4 linux-2.6-ext4-jbd2-support-patch-queue.patch, 1.2, 1.3

Eric Sandeen (sandeen) fedora-extras-commits at redhat.com
Mon Jan 28 18:58:48 UTC 2008


Author: sandeen

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv31603

Modified Files:
	kernel.spec linux-2.6-ext4-jbd2-patch-queue.patch 
	linux-2.6-ext4-jbd2-support-patch-queue.patch 
Log Message:
* Mon Jan 28 2008 Eric Sandeen <sandeen at redhat.com>
- Update ext4 patch to latest stable patch queue



Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.387
retrieving revision 1.388
diff -u -r1.387 -r1.388
--- kernel.spec	25 Jan 2008 18:07:30 -0000	1.387
+++ kernel.spec	28 Jan 2008 18:58:11 -0000	1.388
@@ -1761,6 +1761,9 @@
 %kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL} -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf %{with_xen} xen
 
 %changelog
+* Mon Jan 28 2008 Eric Sandeen <sandeen at redhat.com>
+- Update ext4 patch to latest stable patch queue
+
 * Fri Jan 25 2008 Jarod Wilson <jwilson at redhat.com>
 - Try login to firewire-sbp2 devices using device-provided timeout
 

linux-2.6-ext4-jbd2-patch-queue.patch:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.3 -r 1.4 linux-2.6-ext4-jbd2-patch-queue.patch
Index: linux-2.6-ext4-jbd2-patch-queue.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-ext4-jbd2-patch-queue.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- linux-2.6-ext4-jbd2-patch-queue.patch	21 Jan 2008 18:45:09 -0000	1.3
+++ linux-2.6-ext4-jbd2-patch-queue.patch	28 Jan 2008 18:58:11 -0000	1.4
@@ -1,7 +1,5 @@
-Index: linux-2.6.23.noarch/fs/ext4/super.c
-===================================================================
---- linux-2.6.23.noarch.orig/fs/ext4/super.c
-+++ linux-2.6.23.noarch/fs/ext4/super.c
+--- linux-2.6.24-rc6-mm1.orig/fs/ext4/super.c
++++ linux-2.6.24-rc6-mm1/fs/ext4/super.c
 @@ -373,6 +373,66 @@ void ext4_update_dynamic_rev(struct supe
  	 */
  }
@@ -166,7 +164,7 @@
  		seq_puts(seq, ",acl");
  	if (!test_opt(sb, POSIX_ACL) && (def_mount_opts & EXT4_DEFM_ACL))
  		seq_puts(seq, ",noacl");
-@@ -672,7 +736,15 @@ static int ext4_show_options(struct seq_
+@@ -672,7 +736,17 @@ static int ext4_show_options(struct seq_
  		seq_puts(seq, ",nobh");
  	if (!test_opt(sb, EXTENTS))
  		seq_puts(seq, ",noextents");
@@ -175,6 +173,8 @@
 +	if (test_opt(sb, I_VERSION))
 +		seq_puts(seq, ",i_version");
  
++	if (sbi->s_stripe)
++		seq_printf(seq, ",stripe=%lu", sbi->s_stripe);
 +	/*
 +	 * journal mode get enabled in different ways
 +	 * So just print the value even if we didn't specify it
@@ -182,7 +182,7 @@
  	if (test_opt(sb, DATA_FLAGS) == EXT4_MOUNT_JOURNAL_DATA)
  		seq_puts(seq, ",data=journal");
  	else if (test_opt(sb, DATA_FLAGS) == EXT4_MOUNT_ORDERED_DATA)
-@@ -681,7 +753,6 @@ static int ext4_show_options(struct seq_
+@@ -681,7 +755,6 @@ static int ext4_show_options(struct seq_
  		seq_puts(seq, ",data=writeback");
  
  	ext4_show_quota_options(seq, sb);
@@ -190,7 +190,7 @@
  	return 0;
  }
  
-@@ -809,11 +880,13 @@ enum {
+@@ -809,11 +882,13 @@ enum {
  	Opt_user_xattr, Opt_nouser_xattr, Opt_acl, Opt_noacl,
  	Opt_reservation, Opt_noreservation, Opt_noload, Opt_nobh, Opt_bh,
  	Opt_commit, Opt_journal_update, Opt_journal_inum, Opt_journal_dev,
@@ -205,7 +205,7 @@
  };
  
  static match_table_t tokens = {
-@@ -848,6 +921,8 @@ static match_table_t tokens = {
+@@ -848,6 +923,8 @@ static match_table_t tokens = {
  	{Opt_journal_update, "journal=update"},
  	{Opt_journal_inum, "journal=%u"},
  	{Opt_journal_dev, "journal_dev=%u"},
@@ -214,7 +214,7 @@
  	{Opt_abort, "abort"},
  	{Opt_data_journal, "data=journal"},
  	{Opt_data_ordered, "data=ordered"},
-@@ -865,6 +940,10 @@ static match_table_t tokens = {
+@@ -865,6 +942,10 @@ static match_table_t tokens = {
  	{Opt_barrier, "barrier=%u"},
  	{Opt_extents, "extents"},
  	{Opt_noextents, "noextents"},
@@ -225,7 +225,7 @@
  	{Opt_err, NULL},
  	{Opt_resize, "resize"},
  };
-@@ -1035,6 +1114,13 @@ static int parse_options (char *options,
+@@ -1035,6 +1116,13 @@ static int parse_options (char *options,
  				return 0;
  			*journal_devnum = option;
  			break;
@@ -239,7 +239,7 @@
  		case Opt_noload:
  			set_opt (sbi->s_mount_opt, NOLOAD);
  			break;
-@@ -1203,6 +1289,23 @@ clear_qf_name:
+@@ -1203,6 +1291,23 @@ clear_qf_name:
  		case Opt_noextents:
  			clear_opt (sbi->s_mount_opt, EXTENTS);
  			break;
@@ -263,7 +263,7 @@
  		default:
  			printk (KERN_ERR
  				"EXT4-fs: Unrecognized mount option \"%s\" "
-@@ -1364,7 +1467,7 @@ static int ext4_check_descriptors (struc
+@@ -1364,7 +1469,7 @@ static int ext4_check_descriptors (struc
  	struct ext4_group_desc * gdp = NULL;
  	int desc_block = 0;
  	int flexbg_flag = 0;
@@ -272,7 +272,7 @@
  
  	if (EXT4_HAS_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_FLEX_BG))
  		flexbg_flag = 1;
-@@ -1386,7 +1489,7 @@ static int ext4_check_descriptors (struc
+@@ -1386,7 +1491,7 @@ static int ext4_check_descriptors (struc
  		if (block_bitmap < first_block || block_bitmap > last_block)
  		{
  			ext4_error (sb, "ext4_check_descriptors",
@@ -281,7 +281,7 @@
  				    " not in group (block %llu)!",
  				    i, block_bitmap);
  			return 0;
-@@ -1395,7 +1498,7 @@ static int ext4_check_descriptors (struc
+@@ -1395,7 +1500,7 @@ static int ext4_check_descriptors (struc
  		if (inode_bitmap < first_block || inode_bitmap > last_block)
  		{
  			ext4_error (sb, "ext4_check_descriptors",
@@ -290,7 +290,7 @@
  				    " not in group (block %llu)!",
  				    i, inode_bitmap);
  			return 0;
-@@ -1405,17 +1508,16 @@ static int ext4_check_descriptors (struc
+@@ -1405,17 +1510,16 @@ static int ext4_check_descriptors (struc
  		    inode_table + sbi->s_itb_per_group - 1 > last_block)
  		{
  			ext4_error (sb, "ext4_check_descriptors",
@@ -312,7 +312,7 @@
  			return 0;
  		}
  		if (!flexbg_flag)
-@@ -1429,7 +1531,6 @@ static int ext4_check_descriptors (struc
+@@ -1429,7 +1533,6 @@ static int ext4_check_descriptors (struc
  	return 1;
  }
  
@@ -320,7 +320,7 @@
  /* ext4_orphan_cleanup() walks a singly-linked list of inodes (starting at
   * the superblock) which were deleted from all directories, but held open by
   * a process at the time of a crash.  We walk the list and try to delete these
-@@ -1542,20 +1643,95 @@ static void ext4_orphan_cleanup (struct 
+@@ -1542,20 +1645,95 @@ static void ext4_orphan_cleanup (struct 
  #endif
  	sb->s_flags = s_flags; /* Restore MS_RDONLY status */
  }
@@ -424,7 +424,7 @@
  
  	res += 1LL << (bits-2);
  	res += 1LL << (2*(bits-2));
-@@ -1563,6 +1739,10 @@ static loff_t ext4_max_size(int bits)
+@@ -1563,6 +1741,10 @@ static loff_t ext4_max_size(int bits)
  	res <<= bits;
  	if (res > upper_limit)
  		res = upper_limit;
@@ -435,7 +435,7 @@
  	return res;
  }
  
-@@ -1570,7 +1750,7 @@ static ext4_fsblk_t descriptor_loc(struc
+@@ -1570,7 +1752,7 @@ static ext4_fsblk_t descriptor_loc(struc
  				ext4_fsblk_t logical_sb_block, int nr)
  {
  	struct ext4_sb_info *sbi = EXT4_SB(sb);
@@ -444,7 +444,7 @@
  	int has_super = 0;
  
  	first_meta_bg = le32_to_cpu(sbi->s_es->s_first_meta_bg);
-@@ -1584,8 +1764,38 @@ static ext4_fsblk_t descriptor_loc(struc
+@@ -1584,8 +1766,39 @@ static ext4_fsblk_t descriptor_loc(struc
  	return (has_super + ext4_group_first_block_no(sb, bg));
  }
  
@@ -465,13 +465,14 @@
 +	unsigned long stripe_width =
 +			le32_to_cpu(sbi->s_es->s_raid_stripe_width);
 +
-+	if (sbi->s_stripe && sbi->s_stripe <= sbi->s_blocks_per_group) {
++	if (sbi->s_stripe && sbi->s_stripe <= sbi->s_blocks_per_group)
 +		return sbi->s_stripe;
-+	} else if (stripe_width <= sbi->s_blocks_per_group) {
++
++	if (stripe_width <= sbi->s_blocks_per_group)
 +		return stripe_width;
-+	} else if (stride <= sbi->s_blocks_per_group) {
++
++	if (stride <= sbi->s_blocks_per_group)
 +		return stride;
-+	}
 +
 +	return 0;
 +}
@@ -483,7 +484,7 @@
  {
  	struct buffer_head * bh;
  	struct ext4_super_block *es = NULL;
-@@ -1599,7 +1809,6 @@ static int ext4_fill_super (struct super
+@@ -1599,7 +1812,6 @@ static int ext4_fill_super (struct super
  	unsigned long def_mount_opts;
  	struct inode *root;
  	int blocksize;
@@ -491,7 +492,7 @@
[...1723 lines suppressed...]
 +	}
 +
@@ -10569,13 +10543,13 @@
 +			ext4_mb_release_inode_pa(&e4b, bitmap_bh, pa);
 +
 +		list_del(&pa->u.pa_tmp_list);
-+		mb_call_rcu(pa);
++		call_rcu(&(pa)->u.pa_rcu, ext4_mb_pa_callback);
 +	}
 +
 +out:
 +	ext4_unlock_group(sb, group);
 +	ext4_mb_release_desc(&e4b);
-+	brelse(bitmap_bh);
++	put_bh(bitmap_bh);
 +	return free;
 +}
 +
@@ -10622,9 +10596,8 @@
 +			spin_unlock(&pa->pa_lock);
 +			spin_unlock(&ei->i_prealloc_lock);
 +			printk(KERN_ERR "uh-oh! used pa while discarding\n");
-+			dump_stack();
-+			current->state = TASK_UNINTERRUPTIBLE;
-+			schedule_timeout(HZ);
++			WARN_ON(1);
++			schedule_timeout_uninterruptible(HZ);
 +			goto repeat;
 +
 +		}
@@ -10652,8 +10625,7 @@
 +		 * add a flag to force wait only in case
 +		 * of ->clear_inode(), but not in case of
 +		 * regular truncate */
-+		current->state = TASK_UNINTERRUPTIBLE;
-+		schedule_timeout(HZ);
++		schedule_timeout_uninterruptible(HZ);
 +		goto repeat;
 +	}
 +	spin_unlock(&ei->i_prealloc_lock);
@@ -10673,15 +10645,15 @@
 +		}
 +
 +		ext4_lock_group(sb, group);
-+		list_del_rcu(&pa->pa_group_list);
++		list_del(&pa->pa_group_list);
 +		ext4_mb_release_inode_pa(&e4b, bitmap_bh, pa);
 +		ext4_unlock_group(sb, group);
 +
 +		ext4_mb_release_desc(&e4b);
-+		brelse(bitmap_bh);
++		put_bh(bitmap_bh);
 +
 +		list_del(&pa->u.pa_tmp_list);
-+		mb_call_rcu(pa);
++		call_rcu(&(pa)->u.pa_rcu, ext4_mb_pa_callback);
 +	}
 +}
 +
@@ -10731,7 +10703,8 @@
 +		struct ext4_prealloc_space *pa;
 +		ext4_grpblk_t start;
 +		struct list_head *cur;
-+		list_for_each_rcu(cur, &grp->bb_prealloc_list) {
++		ext4_lock_group(sb, i);
++		list_for_each(cur, &grp->bb_prealloc_list) {
 +			pa = list_entry(cur, struct ext4_prealloc_space,
 +					pa_group_list);
 +			spin_lock(&pa->pa_lock);
@@ -10741,6 +10714,7 @@
 +			printk(KERN_ERR "PA:%lu:%d:%u \n", i,
 +							start, pa->pa_len);
 +		}
++		ext4_lock_group(sb, i);
 +
 +		if (grp->bb_free == 0)
 +			continue;
@@ -10750,7 +10724,10 @@
 +	printk(KERN_ERR "\n");
 +}
 +#else
-+#define ext4_mb_show_ac(x)
++static inline void ext4_mb_show_ac(struct ext4_allocation_context *ac)
++{
++	return;
++}
 +#endif
 +
 +/*
@@ -10771,8 +10748,7 @@
 +
 +	size = ac->ac_o_ex.fe_logical + ac->ac_o_ex.fe_len;
 +	isize = i_size_read(ac->ac_inode) >> bsbits;
-+	if (size < isize)
-+		size = isize;
++	size = max(size, isize);
 +
 +	/* don't use group allocation for large files */
 +	if (size >= sbi->s_mb_stream_request)
@@ -10782,6 +10758,11 @@
 +		return;
 +
 +	BUG_ON(ac->ac_lg != NULL);
++	/*
++	 * locality group prealloc space are per cpu. The reason for having
++	 * per cpu locality group is to reduce the contention between block
++	 * request from multiple CPUs.
++	 */
 +	ac->ac_lg = &sbi->s_locality_groups[get_cpu()];
 +	put_cpu();
 +
@@ -10789,7 +10770,7 @@
 +	ac->ac_flags |= EXT4_MB_HINT_GROUP_ALLOC;
 +
 +	/* serialize all allocations in the group */
-+	down(&ac->ac_lg->lg_sem);
++	mutex_lock(&ac->ac_lg->lg_mutex);
 +}
 +
 +static int ext4_mb_initialize_context(struct ext4_allocation_context *ac,
@@ -10882,7 +10863,7 @@
 +	if (ac->ac_buddy_page)
 +		page_cache_release(ac->ac_buddy_page);
 +	if (ac->ac_flags & EXT4_MB_HINT_GROUP_ALLOC)
-+		up(&ac->ac_lg->lg_sem);
++		mutex_unlock(&ac->ac_lg->lg_mutex);
 +	ext4_mb_collect_stats(ac);
 +	return 0;
 +}
@@ -10985,8 +10966,6 @@
 +
 +	return block;
 +}
-+EXPORT_SYMBOL(ext4_mb_new_blocks);
-+
 +static void ext4_mb_poll_new_transaction(struct super_block *sb,
 +						handle_t *handle)
 +{
@@ -11040,7 +11019,7 @@
 +
 +		if (md == NULL) {
 +			ext4_unlock_group(sb, group);
-+			md = kmalloc(sizeof(*md), GFP_KERNEL);
++			md = kmalloc(sizeof(*md), GFP_NOFS);
 +			if (md == NULL)
 +				return -ENOMEM;
 +			md->num = 0;
@@ -11086,7 +11065,7 @@
 +			unsigned long block, unsigned long count,
 +			int metadata, unsigned long *freed)
 +{
-+	struct buffer_head *bitmap_bh = NULL;
++	struct buffer_head *bitmap_bh;
 +	struct super_block *sb = inode->i_sb;
 +	struct ext4_allocation_context ac;
 +	struct ext4_group_desc *gdp;
@@ -11133,7 +11112,6 @@
 +		overflow = bit + count - EXT4_BLOCKS_PER_GROUP(sb);
 +		count -= overflow;
 +	}
-+	brelse(bitmap_bh);
 +	bitmap_bh = read_block_bitmap(sb, block_group);
 +	if (!bitmap_bh)
 +		goto error_return;
@@ -11223,18 +11201,17 @@
 +	if (overflow && !err) {
 +		block += count;
 +		count = overflow;
++		put_bh(bitmap_bh);
 +		goto do_more;
 +	}
 +	sb->s_dirt = 1;
 +error_return:
-+	brelse(bitmap_bh);
++	put_bh(bitmap_bh);
 +	ext4_std_error(sb, err);
 +	return;
 +}
-Index: linux-2.6.23.noarch/fs/ext4/xattr.c
-===================================================================
---- linux-2.6.23.noarch.orig/fs/ext4/xattr.c
-+++ linux-2.6.23.noarch/fs/ext4/xattr.c
+--- linux-2.6.24-rc6-mm1.orig/fs/ext4/xattr.c
++++ linux-2.6.24-rc6-mm1/fs/ext4/xattr.c
 @@ -480,7 +480,7 @@ ext4_xattr_release_block(handle_t *handl
  		ea_bdebug(bh, "refcount now=0; freeing");
  		if (ce)
@@ -11253,10 +11230,8 @@
  				error = -EIO;
  				goto cleanup;
  			}
-Index: linux-2.6.23.noarch/fs/jbd2/revoke.c
-===================================================================
---- linux-2.6.23.noarch.orig/fs/jbd2/revoke.c
-+++ linux-2.6.23.noarch/fs/jbd2/revoke.c
+--- linux-2.6.24-rc6-mm1.orig/fs/jbd2/revoke.c
++++ linux-2.6.24-rc6-mm1/fs/jbd2/revoke.c
 @@ -171,13 +171,15 @@ int __init jbd2_journal_init_revoke_cach
  {
  	jbd2_revoke_record_cache = kmem_cache_create("jbd2_revoke_record",

linux-2.6-ext4-jbd2-support-patch-queue.patch:

Index: linux-2.6-ext4-jbd2-support-patch-queue.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-ext4-jbd2-support-patch-queue.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- linux-2.6-ext4-jbd2-support-patch-queue.patch	21 Jan 2008 18:45:09 -0000	1.2
+++ linux-2.6-ext4-jbd2-support-patch-queue.patch	28 Jan 2008 18:58:11 -0000	1.3
@@ -1,8 +1,8 @@
-Index: linux-2.6.23.noarch/fs/read_write.c
+Index: linux-2.6.24-rc6-mm1/fs/read_write.c
 ===================================================================
---- linux-2.6.23.noarch.orig/fs/read_write.c
-+++ linux-2.6.23.noarch/fs/read_write.c
-@@ -451,6 +451,7 @@ unsigned long iov_shorten(struct iovec *
+--- linux-2.6.24-rc6-mm1.orig/fs/read_write.c
++++ linux-2.6.24-rc6-mm1/fs/read_write.c
+@@ -450,6 +450,7 @@ unsigned long iov_shorten(struct iovec *
  	}
  	return seg;
  }
@@ -10,11 +10,11 @@
  
  ssize_t do_sync_readv_writev(struct file *filp, const struct iovec *iov,
  		unsigned long nr_segs, size_t len, loff_t *ppos, iov_fn_t fn)
-Index: linux-2.6.23.noarch/fs/buffer.c
+Index: linux-2.6.24-rc6-mm1/fs/buffer.c
 ===================================================================
---- linux-2.6.23.noarch.orig/fs/buffer.c
-+++ linux-2.6.23.noarch/fs/buffer.c
-@@ -3213,6 +3213,47 @@ static int buffer_cpu_notify(struct noti
+--- linux-2.6.24-rc6-mm1.orig/fs/buffer.c
++++ linux-2.6.24-rc6-mm1/fs/buffer.c
+@@ -3213,6 +3213,50 @@ static int buffer_cpu_notify(struct noti
  	return NOTIFY_OK;
  }
  
@@ -36,19 +36,21 @@
 +	return 1;
 +}
 +EXPORT_SYMBOL(bh_uptodate_or_lock);
++
 +/**
 + * bh_submit_read: Submit a locked buffer for reading
 + * @bh: struct buffer_head
 + *
-+ * Returns a negative error
++ * Returns zero on success and -EIO on error.
 + */
 +int bh_submit_read(struct buffer_head *bh)
 +{
-+	if (!buffer_locked(bh))
-+		lock_buffer(bh);
++	BUG_ON(!buffer_locked(bh));
 +
-+	if (buffer_uptodate(bh))
++	if (buffer_uptodate(bh)) {
++		unlock_buffer(bh);
 +		return 0;
++	}
 +
 +	get_bh(bh);
 +	bh->b_end_io = end_buffer_read_sync;
@@ -59,13 +61,14 @@
 +	return -EIO;
 +}
 +EXPORT_SYMBOL(bh_submit_read);
++
  void __init buffer_init(void)
  {
  	int nrpages;
-Index: linux-2.6.23.noarch/include/linux/buffer_head.h
+Index: linux-2.6.24-rc6-mm1/include/linux/buffer_head.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/linux/buffer_head.h
-+++ linux-2.6.23.noarch/include/linux/buffer_head.h
+--- linux-2.6.24-rc6-mm1.orig/include/linux/buffer_head.h
++++ linux-2.6.24-rc6-mm1/include/linux/buffer_head.h
 @@ -192,6 +192,8 @@ int sync_dirty_buffer(struct buffer_head
  int submit_bh(int, struct buffer_head *);
  void write_boundary_block(struct block_device *bdev,
@@ -75,10 +78,10 @@
  
  extern int buffer_heads_over_limit;
  
-Index: linux-2.6.23.noarch/fs/Kconfig
+Index: linux-2.6.24-rc6-mm1/fs/Kconfig
 ===================================================================
---- linux-2.6.23.noarch.orig/fs/Kconfig
-+++ linux-2.6.23.noarch/fs/Kconfig
+--- linux-2.6.24-rc6-mm1.orig/fs/Kconfig
++++ linux-2.6.24-rc6-mm1/fs/Kconfig
 @@ -236,6 +236,7 @@ config JBD_DEBUG
  
  config JBD2
@@ -87,11 +90,56 @@
  	help
  	  This is a generic journaling layer for block devices that support
  	  both 32-bit and 64-bit block numbers.  It is currently used by
-Index: linux-2.6.23.noarch/fs/inode.c
+Index: linux-2.6.24-rc6-mm1/fs/afs/dir.c
+===================================================================
+--- linux-2.6.24-rc6-mm1.orig/fs/afs/dir.c
++++ linux-2.6.24-rc6-mm1/fs/afs/dir.c
+@@ -546,11 +546,11 @@ static struct dentry *afs_lookup(struct 
+ 	dentry->d_op = &afs_fs_dentry_operations;
+ 
+ 	d_add(dentry, inode);
+-	_leave(" = 0 { vn=%u u=%u } -> { ino=%lu v=%lu }",
++	_leave(" = 0 { vn=%u u=%u } -> { ino=%lu v=%llu }",
+ 	       fid.vnode,
+ 	       fid.unique,
+ 	       dentry->d_inode->i_ino,
+-	       dentry->d_inode->i_version);
++	       (unsigned long long)dentry->d_inode->i_version);
+ 
+ 	return NULL;
+ }
+@@ -630,9 +630,10 @@ static int afs_d_revalidate(struct dentr
+ 		 * been deleted and replaced, and the original vnode ID has
+ 		 * been reused */
+ 		if (fid.unique != vnode->fid.unique) {
+-			_debug("%s: file deleted (uq %u -> %u I:%lu)",
++			_debug("%s: file deleted (uq %u -> %u I:%llu)",
+ 			       dentry->d_name.name, fid.unique,
+-			       vnode->fid.unique, dentry->d_inode->i_version);
++			       vnode->fid.unique,
++			       (unsigned long long)dentry->d_inode->i_version);
+ 			spin_lock(&vnode->lock);
+ 			set_bit(AFS_VNODE_DELETED, &vnode->flags);
+ 			spin_unlock(&vnode->lock);
+Index: linux-2.6.24-rc6-mm1/fs/afs/inode.c
+===================================================================
+--- linux-2.6.24-rc6-mm1.orig/fs/afs/inode.c
++++ linux-2.6.24-rc6-mm1/fs/afs/inode.c
+@@ -301,7 +301,8 @@ int afs_getattr(struct vfsmount *mnt, st
+ 
+ 	inode = dentry->d_inode;
+ 
+-	_enter("{ ino=%lu v=%lu }", inode->i_ino, inode->i_version);
++	_enter("{ ino=%lu v=%llu }", inode->i_ino,
++		(unsigned long long)inode->i_version);
+ 
+ 	generic_fillattr(inode, stat);
+ 	return 0;
+Index: linux-2.6.24-rc6-mm1/fs/inode.c
 ===================================================================
---- linux-2.6.23.noarch.orig/fs/inode.c
-+++ linux-2.6.23.noarch/fs/inode.c
-@@ -1303,6 +1303,11 @@ void file_update_time(struct file *file)
+--- linux-2.6.24-rc6-mm1.orig/fs/inode.c
++++ linux-2.6.24-rc6-mm1/fs/inode.c
+@@ -1276,6 +1276,11 @@ void file_update_time(struct file *file)
  		sync_it = 1;
  	}
  
@@ -103,10 +151,10 @@
  	if (sync_it)
  		mark_inode_dirty_sync(inode);
  }
-Index: linux-2.6.23.noarch/include/linux/fs.h
+Index: linux-2.6.24-rc6-mm1/include/linux/fs.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/linux/fs.h
-+++ linux-2.6.23.noarch/include/linux/fs.h
+--- linux-2.6.24-rc6-mm1.orig/include/linux/fs.h
++++ linux-2.6.24-rc6-mm1/include/linux/fs.h
 @@ -124,6 +124,7 @@ extern int dir_notify_enable;
  #define MS_SHARED	(1<<20)	/* change to shared */
  #define MS_RELATIME	(1<<21)	/* Update atime relative to mtime/ctime. */
@@ -154,55 +202,10 @@
  extern void touch_atime(struct vfsmount *mnt, struct dentry *dentry);
  static inline void file_accessed(struct file *file)
  {
-Index: linux-2.6.23.noarch/fs/afs/dir.c
-===================================================================
---- linux-2.6.23.noarch.orig/fs/afs/dir.c
-+++ linux-2.6.23.noarch/fs/afs/dir.c
-@@ -546,11 +546,11 @@ static struct dentry *afs_lookup(struct 
- 	dentry->d_op = &afs_fs_dentry_operations;
- 
- 	d_add(dentry, inode);
--	_leave(" = 0 { vn=%u u=%u } -> { ino=%lu v=%lu }",
-+	_leave(" = 0 { vn=%u u=%u } -> { ino=%lu v=%llu }",
- 	       fid.vnode,
- 	       fid.unique,
- 	       dentry->d_inode->i_ino,
--	       dentry->d_inode->i_version);
-+	       (unsigned long long)dentry->d_inode->i_version);
- 
- 	return NULL;
- }
-@@ -630,9 +630,10 @@ static int afs_d_revalidate(struct dentr
- 		 * been deleted and replaced, and the original vnode ID has
- 		 * been reused */
- 		if (fid.unique != vnode->fid.unique) {
--			_debug("%s: file deleted (uq %u -> %u I:%lu)",
-+			_debug("%s: file deleted (uq %u -> %u I:%llu)",
- 			       dentry->d_name.name, fid.unique,
--			       vnode->fid.unique, dentry->d_inode->i_version);
-+			       vnode->fid.unique,
-+			       (unsigned long long)dentry->d_inode->i_version);
- 			spin_lock(&vnode->lock);
- 			set_bit(AFS_VNODE_DELETED, &vnode->flags);
- 			spin_unlock(&vnode->lock);
-Index: linux-2.6.23.noarch/fs/afs/inode.c
-===================================================================
---- linux-2.6.23.noarch.orig/fs/afs/inode.c
-+++ linux-2.6.23.noarch/fs/afs/inode.c
-@@ -301,7 +301,8 @@ int afs_getattr(struct vfsmount *mnt, st
- 
- 	inode = dentry->d_inode;
- 
--	_enter("{ ino=%lu v=%lu }", inode->i_ino, inode->i_version);
-+	_enter("{ ino=%lu v=%llu }", inode->i_ino,
-+		(unsigned long long)inode->i_version);
- 
- 	generic_fillattr(inode, stat);
- 	return 0;
-Index: linux-2.6.23.noarch/include/asm-arm/bitops.h
+Index: linux-2.6.24-rc6-mm1/include/asm-arm/bitops.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-arm/bitops.h
-+++ linux-2.6.23.noarch/include/asm-arm/bitops.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-arm/bitops.h
++++ linux-2.6.24-rc6-mm1/include/asm-arm/bitops.h
 @@ -310,6 +310,8 @@ static inline int constant_fls(int x)
  		_find_first_zero_bit_le(p,sz)
  #define ext2_find_next_zero_bit(p,sz,off)	\
@@ -212,10 +215,10 @@
  
  /*
   * Minix is defined to use little-endian byte ordering.
-Index: linux-2.6.23.noarch/include/asm-generic/bitops/ext2-non-atomic.h
+Index: linux-2.6.24-rc6-mm1/include/asm-generic/bitops/ext2-non-atomic.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-generic/bitops/ext2-non-atomic.h
-+++ linux-2.6.23.noarch/include/asm-generic/bitops/ext2-non-atomic.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-generic/bitops/ext2-non-atomic.h
++++ linux-2.6.24-rc6-mm1/include/asm-generic/bitops/ext2-non-atomic.h
 @@ -14,5 +14,7 @@
  	generic_find_first_zero_le_bit((unsigned long *)(addr), (size))
  #define ext2_find_next_zero_bit(addr, size, off) \
@@ -224,10 +227,10 @@
 +	generic_find_next_le_bit((unsigned long *)(addr), (size), (off))
  
  #endif /* _ASM_GENERIC_BITOPS_EXT2_NON_ATOMIC_H_ */
-Index: linux-2.6.23.noarch/include/asm-generic/bitops/le.h
+Index: linux-2.6.24-rc6-mm1/include/asm-generic/bitops/le.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-generic/bitops/le.h
-+++ linux-2.6.23.noarch/include/asm-generic/bitops/le.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-generic/bitops/le.h
++++ linux-2.6.24-rc6-mm1/include/asm-generic/bitops/le.h
 @@ -20,6 +20,8 @@
  #define generic___test_and_clear_le_bit(nr, addr) __test_and_clear_bit(nr, addr)
  
@@ -246,10 +249,10 @@
  
  #else
  #error "Please fix <asm/byteorder.h>"
-Index: linux-2.6.23.noarch/include/asm-m68k/bitops.h
+Index: linux-2.6.24-rc6-mm1/include/asm-m68k/bitops.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-m68k/bitops.h
-+++ linux-2.6.23.noarch/include/asm-m68k/bitops.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-m68k/bitops.h
++++ linux-2.6.24-rc6-mm1/include/asm-m68k/bitops.h
 @@ -410,6 +410,8 @@ static inline int ext2_find_next_zero_bi
  	res = ext2_find_first_zero_bit (p, size - 32 * (p - addr));
  	return (p - addr) * 32 + res;
@@ -259,10 +262,10 @@
  
  #endif /* __KERNEL__ */
  
-Index: linux-2.6.23.noarch/include/asm-m68knommu/bitops.h
+Index: linux-2.6.24-rc6-mm1/include/asm-m68knommu/bitops.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-m68knommu/bitops.h
-+++ linux-2.6.23.noarch/include/asm-m68knommu/bitops.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-m68knommu/bitops.h
++++ linux-2.6.24-rc6-mm1/include/asm-m68knommu/bitops.h
 @@ -294,6 +294,8 @@ found_middle:
  	return result + ffz(__swab32(tmp));
  }
@@ -272,10 +275,10 @@
  #include <asm-generic/bitops/minix.h>
  
  #endif /* __KERNEL__ */
-Index: linux-2.6.23.noarch/include/asm-powerpc/bitops.h
+Index: linux-2.6.24-rc6-mm1/include/asm-powerpc/bitops.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-powerpc/bitops.h
-+++ linux-2.6.23.noarch/include/asm-powerpc/bitops.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-powerpc/bitops.h
++++ linux-2.6.24-rc6-mm1/include/asm-powerpc/bitops.h
 @@ -359,6 +359,8 @@ static __inline__ int test_le_bit(unsign
  unsigned long generic_find_next_zero_le_bit(const unsigned long *addr,
  				    unsigned long size, unsigned long offset);
@@ -294,10 +297,10 @@
  /* Bitmap functions for the minix filesystem.  */
  
  #define minix_test_and_set_bit(nr,addr) \
-Index: linux-2.6.23.noarch/include/asm-s390/bitops.h
+Index: linux-2.6.24-rc6-mm1/include/asm-s390/bitops.h
 ===================================================================
---- linux-2.6.23.noarch.orig/include/asm-s390/bitops.h
-+++ linux-2.6.23.noarch/include/asm-s390/bitops.h
+--- linux-2.6.24-rc6-mm1.orig/include/asm-s390/bitops.h
++++ linux-2.6.24-rc6-mm1/include/asm-s390/bitops.h
 @@ -772,6 +772,8 @@ static inline int sched_find_first_bit(u
  	test_and_clear_bit((nr)^(__BITOPS_WORDSIZE - 8), (unsigned long *)addr)
  #define ext2_test_bit(nr, addr)      \
@@ -307,10 +310,10 @@
  
  #ifndef __s390x__
  
-Index: linux-2.6.23.noarch/lib/find_next_bit.c
+Index: linux-2.6.24-rc6-mm1/lib/find_next_bit.c
 ===================================================================
---- linux-2.6.23.noarch.orig/lib/find_next_bit.c
-+++ linux-2.6.23.noarch/lib/find_next_bit.c
+--- linux-2.6.24-rc6-mm1.orig/lib/find_next_bit.c
++++ linux-2.6.24-rc6-mm1/lib/find_next_bit.c
 @@ -178,4 +178,47 @@ found_middle_swap:
  
  EXPORT_SYMBOL(generic_find_next_zero_le_bit);




More information about the fedora-extras-commits mailing list