[Pkg-lustre-svn-commit] r332 - in /trunk/debian: changelog patches/00list patches/bug12704-fix-2tb-ost-corruption.dpatch
pwinnertz-guest at users.alioth.debian.org
pwinnertz-guest at users.alioth.debian.org
Wed Sep 19 09:01:52 UTC 2007
Author: pwinnertz-guest
Date: Wed Sep 19 09:01:51 2007
New Revision: 332
URL: http://svn.debian.org/wsvn/pkg-lustre/?sc=1&rev=332
Log:
Added fix for file corruption on 32 bit systems
Added:
trunk/debian/patches/bug12704-fix-2tb-ost-corruption.dpatch
Modified:
trunk/debian/changelog
trunk/debian/patches/00list
Modified: trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-lustre/trunk/debian/changelog?rev=332&op=diff
==============================================================================
--- trunk/debian/changelog (original)
+++ trunk/debian/changelog Wed Sep 19 09:01:51 2007
@@ -2,6 +2,8 @@
* Added several patches from upstream bugzilla to fix some
smaller bugs.
+ * Added patch to fix file system corruption on large 32bit
+ OST nodes. (large = bigger than 2TB)
* Added 2.6.23 to the list of supported kernels
+ FIXME: ldiskfs doesn't build & both are not yet tested
Modified: trunk/debian/patches/00list
URL: http://svn.debian.org/wsvn/pkg-lustre/trunk/debian/patches/00list?rev=332&op=diff
==============================================================================
--- trunk/debian/patches/00list (original)
+++ trunk/debian/patches/00list Wed Sep 19 09:01:51 2007
@@ -20,6 +20,7 @@
2.6.21-sysctl.dpatch
bug12691-fixtypos.dpatch
bug12567-fix-ldlm_cli_enqueue-errormsg.dpatch
+bug12704-fix-2tb-ost-corruption.dpatch
# Debian patches
autogen-run.dpatch
Added: trunk/debian/patches/bug12704-fix-2tb-ost-corruption.dpatch
URL: http://svn.debian.org/wsvn/pkg-lustre/trunk/debian/patches/bug12704-fix-2tb-ost-corruption.dpatch?rev=332&op=file
==============================================================================
--- trunk/debian/patches/bug12704-fix-2tb-ost-corruption.dpatch (added)
+++ trunk/debian/patches/bug12704-fix-2tb-ost-corruption.dpatch Wed Sep 19 09:01:51 2007
@@ -1,0 +1,48 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Patch from upstream bts to fix file corruption on osts with > 2TB
+## DP: fs on 32bit systems
+
+ at DPATCH@
+diff -u -p -r1.176.2.168 ChangeLog
+--- ./lustre/ChangeLog 12 Sep 2007 16:42:12 -0000 1.176.2.168
++++ ./lustre/ChangeLog 12 Sep 2007 20:35:22 -0000
+@@ -14,6 +14,17 @@ tbd Cluster File Systems, Inc. <
+ to the value of /sys/block/{dev}/queue/max_hw_sectors_kb
+ in mount_lustre.
+
++Severity : critical
++Frequency : Always for filesystems larger than 2TB on 32-bit systems.
++Bugzilla : 13547, 13627
++Description: Data corruption for OSTs that are formatted larger than 2TB
++ on 32-bit servers.
++Details : When generating the bio request for lustre file writes the
++ sector number would overflow a temporary variable before being
++ used for the IO. The data reads correctly from Lustre (which
++ will overflow in a similar manner) but other file data or
++ filesystem metadata may be corrupted in some cases.
++
+ --------------------------------------------------------------------------------
+
+ 2007-09-27 Cluster File Systems, Inc. <info at clusterfs.com>
+diff -u -p -r1.41.12.8 filter_io_26.c
+--- ./lustre/obdfilter/filter_io_26.c 3 Sep 2007 06:05:48 -0000 1.41.12.8
++++ ./lustre/obdfilter/filter_io_26.c 12 Sep 2007 20:35:22 -0000
+@@ -297,12 +297,13 @@ int filter_do_bio(struct obd_export *exp
+ continue;
+ }
+
+- sector = blocks[block_idx + i] << sector_bits;
++ sector = (sector_t)blocks[block_idx + i] << sector_bits;
+
+ /* Additional contiguous file blocks? */
+ while (i + nblocks < blocks_per_page &&
+- (sector + nblocks*(blocksize>>9)) ==
+- (blocks[block_idx + i + nblocks] << sector_bits))
++ (sector + (nblocks << sector_bits)) ==
++ ((sector_t)blocks[block_idx + i + nblocks] <<
++ sector_bits))
+ nblocks++;
+
+ #ifdef HAVE_PAGE_CONSTANT
More information about the Pkg-lustre-svn-commit
mailing list