Whamcloud - gitweb
fs/lustre-release.git
12 years agoLU-73 kernel: remove wrong jbd2 commit timer patch
Andreas Dilger [Fri, 17 Jun 2011 18:36:23 +0000 (12:36 -0600)]
LU-73 kernel: remove wrong jbd2 commit timer patch

The bug that this patch was originally fixing (incorrectly rounding
down the jiffies timer, which might cause it to be skipped) was
fixed in the upstream kernel by using round_jiffies_up(), which
always moves the timer into the future.

Remove this patch entirely, since it is no longer needed.

Change-Id: I3b4f30e0565cf64b95fc87babf1f54a9ab190754
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/961
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-528 Update RHEL5 kernel to 2.6.18-238.19.1 security update
yangsheng [Fri, 22 Jul 2011 18:47:43 +0000 (02:47 +0800)]
LU-528  Update RHEL5 kernel to 2.6.18-238.19.1 security update

Change-Id: I13974999954ae1806c48f75fa6d35f4e98cf2a75
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1134
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-278 build: Only warn for tag/version mismatch
Andreas Dilger [Thu, 14 Jul 2011 19:07:29 +0000 (13:07 -0600)]
LU-278 build: Only warn for tag/version mismatch

The configure process should NOT abort just because the most
recent tag is not of the form that upstream uses to tag Lustre.
Downstream developers may use their own tags, or just add
extensions to upsteam's version tags.

Change-Id: I9a98bfd4475d3df2694f536ba0352779a62650c7
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/510
Tested-by: Hudson
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-411 Kernel panic when running conf-sanity on RHEL5/i686
yangsheng [Tue, 14 Jun 2011 20:12:06 +0000 (04:12 +0800)]
LU-411 Kernel panic when running conf-sanity on RHEL5/i686

Reduce stack usage to avoid stack overflow on
RHEL5/i686 patchless client.

Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I54d3a19734ab089f44f43943b80a2e7ad1f3335f
Reviewed-on: http://review.whamcloud.com/950
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-372 add $TMP/mgsactive to indicate the active combined MGS/MDS node
Yu Jian [Wed, 8 Jun 2011 13:23:32 +0000 (21:23 +0800)]
LU-372 add $TMP/mgsactive to indicate the active combined MGS/MDS node

The current test-framework could not figure out the active MGS node
correctly while the MGS and MDS nodes are combined under a failover
configuration. We need add a $TMP/mgsactive file to indicate the
active MGS node like what we did for the MDS node.

Signed-off-by: Yu Jian <yujian@whamcloud.com>
Change-Id: I74bbf9293f9a290573c4b9fcbf9fea0fcc0aad95
Reviewed-on: http://review.whamcloud.com/913
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
Reviewed-by: Chris Gearing <chris@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-221 don't use a/c/m time for newly allocated object in OST
hongchao.zhang [Sat, 16 Jul 2011 22:16:55 +0000 (06:16 +0800)]
LU-221 don't use a/c/m time for newly allocated object in OST

in OST, the a/c/m time is unusable for newly allocated object for
it has not gotten valid time info from clients. by setting the a/c/m
time as LONG_MIN at creation will make the clients ignore the time.

Change-Id: I0d6094e4257626ffd1128b3540837deaf230e056
Signed-off-by: Hongchao Zhang <hongchao.zhang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1084
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-394: LND failure casued by discontiguous KIOV
Jinshan Xiong [Tue, 26 Jul 2011 23:42:34 +0000 (16:42 -0700)]
LU-394: LND failure casued by discontiguous KIOV

Fix the problem of assigning starting_offset twice. This is imported
in combining patchset of lu-394 and lu-523.

Change-Id: Ia4ea205f211c70965101507906b02799a65694be
Signed-off-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1146
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-502 don't allow to kill service threads by OOM killer.
Alexey Lyashkov [Wed, 13 Jul 2011 03:16:12 +0000 (07:16 +0400)]
LU-502 don't allow to kill service threads by OOM killer.

OOM can produce a many issues like requests processing counter.

Change-Id: I8d417d148b589ea6de84c5d16bc2607a59852564
Signed-off-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Reviewed-on: http://review.whamcloud.com/1088
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoNew version 2.0.66 2.0.66.0 v2_0_66_0
Oleg Drokin [Tue, 26 Jul 2011 15:50:15 +0000 (11:50 -0400)]
New version 2.0.66

Change-Id: Ic2aa5252ec569efefd00255440c5465cae633e1c
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-394: LND failure casued by discontiguous KIOV
Jinshan Xiong [Tue, 12 Jul 2011 17:55:19 +0000 (10:55 -0700)]
LU-394: LND failure casued by discontiguous KIOV

This issue was imported by bug 18881 where I moved the urgent
pages to front of lop_pending to fix a deadlock issue.
I reverted bug 18881 in this patch and came up with a new solution:
cl_page_gang_lookup() only blocks on the first page. This is also
for deadlock avoid since we should never grab multiple pages' lock
without try method.

Change-Id: I5dce35e3929e4f79a350e56ddc9e752269db060e
Signed-off-by: Jinshan Xiong <jay@whamcloud.com>
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/911

12 years agoLU-523: No prepare_write for lockless IO
Jinshan Xiong [Sat, 23 Jul 2011 03:52:46 +0000 (20:52 -0700)]
LU-523: No prepare_write for lockless IO

For page unaligned write, CLIO does prepare_write even for lockless IO
and then write full page back, this will cause data corruption since
data is not covered by lock.

In this patch, we don't do prepare_write for lockless IO, and then submit
exact bytes in the page to OST.

Change-Id: I4aa5afeb82cb717de499c8a8c004078b279302c7
Signed-off-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1130
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-456 Force commit to reuse the just-deleted blocks
Niu Yawei [Mon, 27 Jun 2011 10:55:10 +0000 (03:55 -0700)]
LU-456 Force commit to reuse the just-deleted blocks

In ext4 non-writeback journal mode, the just-deleted blocks are not
useable until the transaction committed, this could cause filter
return -ENOSPC mistakenly when the just-deleted blocks are not committed.

Whenever block allocation fails for -ENOSPC on filter, we should wait
for the previous deleted blocks committed, then retry the allocation.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: I678b05ae9aa1b9e9d0aa29f48279bc7daedebbb2
Reviewed-on: http://review.whamcloud.com/1022
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-507 check_write_rcs() return -EPROTO instead of -ENOSPC
Johann Lombardi [Tue, 19 Jul 2011 12:15:58 +0000 (14:15 +0200)]
LU-507 check_write_rcs() return -EPROTO instead of -ENOSPC

remote_rcs[i] is an unsigned value so the check remote_rcs[i] < 0 is
always false.

Change-Id: I5468d9185e4c8de819f58693375e9d96722b9fbb
Signed-off-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1115
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-476 Run run-llog.sh on MGS in sanity 60a
Li Wei [Tue, 5 Jul 2011 08:44:36 +0000 (16:44 +0800)]
LU-476 Run run-llog.sh on MGS in sanity 60a

sanity 60a had been effectively skipped during lab testing, in which the
MGS is not running on the host where sanity.sh is executed.  This patch
fixes the subtest by requesting run-llog.sh to be run on the MGS
explicitly.

Change-Id: I9dc47d856cd42bfe0cd5b5b71e3fd7d4f7c0e561
Signed-off-by: Li Wei <liwei@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1050
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-16 Allow objects larger than 2TB in size
Bobi Jam [Tue, 22 Mar 2011 04:41:17 +0000 (12:41 +0800)]
LU-16 Allow objects larger than 2TB in size

Use OST superblock sb->s_maxbytes telling LOV the maxmimum object size
it supports, and LOV records the minimum of the per-OSC maxbytes values
to determine the lov_stripe_md.lsm_maxbytes.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Ice920dc59f5cc5855393bb7031fa089757b3314d
Bugzilla: 20128
Reviewed-on: http://review.whamcloud.com/241
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-477 allocate memory for s_group_desc and s_group_info by vmalloc()
Yu Jian [Thu, 14 Jul 2011 06:32:14 +0000 (14:32 +0800)]
LU-477 allocate memory for s_group_desc and s_group_info by vmalloc()

Add the patch to the RHEL6 ldiskfs patch series.

Large kmalloc() for sbi->s_group_desc and sbi->s_group_info can fail
for large filesystems, which will cause the "not enough memory" error
while mounting. This patch makes it fall back to vmalloc() if the
kmalloc() failed, as what was done for sbi->s_flex_groups.

To avoid colliding with an valid on-disk inode number, EXT4_BAD_INO
is used as the number of the buddy cache inode.

The patch also incorporates the following upstream kernel fix:

commit 32a9bb57d7c1fd04ae0f72b8f671501f000a0e9f
ext4: fix missing iput of root inode for some mount error paths
https://bugzilla.kernel.org/show_bug.cgi?id=26752

Signed-off-by: Yu Jian <yujian@whamcloud.com>
Change-Id: Ia263c90759e96710702e4afff3ba19e77455386f
Reviewed-on: http://review.whamcloud.com/1095
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-121 Fixup yaml.sh and test-framework.sh so that it only ever uses the first
Chris [Thu, 10 Mar 2011 11:05:37 +0000 (11:05 +0000)]
LU-121 Fixup yaml.sh and test-framework.sh so that it only ever uses the first
part of the host name for log files.
This means stripping of everything off the name after and including the first .

This change is only designed to make the .yml files consistent. The log files
will append the fully qualified name and appear to do this consitantly.

We can create a jira to make the log and yml files consistant, but the reality
is that the yml files have a short life and are only used to send to Maloo.

This change will allow automated posting of results and automated testing to
begin.

1. Carries out the above using hostname -s [Thanks Andreas]
2. Adds in a quick change so that LUSTRE_BUILD in yaml.sh can be a reference to
the source rather than just the lustre version string which is recorded and
written to the yaml anyway as LUSTER_VERSION

Additionally a couple of other changes sneaked in.

1. Allows the review information to be applied to the yaml output file
by way of exporting the variable CODE_REVIEW_YAML to be a yaml description
for maloo

2. The addition of a couple of fixes to make the permissions for yaml
files be allow-all. This permissions are bracketed and so do not change any
other parts of the code.

Change-Id: Ied9a2117cd1b68e048bbc2bf1bffe782485c6150
Signed-off-by: Chris Gearing <chris@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/312
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
12 years agoLU-484 Don't do error cleanup in ext4_add_dot_dotdot()
Niu Yawei [Mon, 11 Jul 2011 06:50:15 +0000 (23:50 -0700)]
LU-484 Don't do error cleanup in ext4_add_dot_dotdot()

The ext4_add_dot_dotdot() will do cleanup work (zeroing i_nlink, iput)
when ext4_bread() fails, that will mess up the i_nlink and i_count if
the ext4_add_dot_dotdot() is called from lustre.

The error cleanup work should be moved from ext4_add_dot_dotdot() to
it's caller: ext4_mkdir().

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: I8e8a328c26bf5d603ca26c94a5a04cf8bd1c7b4f
Reviewed-on: http://review.whamcloud.com/1079
Tested-by: Hudson
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-85 build: update main bug report URL
Andreas Dilger [Sun, 19 Jun 2011 06:39:16 +0000 (00:39 -0600)]
LU-85 build: update main bug report URL

Update bug reporting URL in autoconf and other documentation
to reflect source of release.

Change-Id: I7a4017bd55e9e3f8de6adca0e9a030c94f0db9ec
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/971
Tested-by: Hudson
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-464 obdfilter-survey test 2a ASSERT(imp->imp_sec == NULL)
Lai Siyao [Wed, 13 Jul 2011 08:00:40 +0000 (16:00 +0800)]
LU-464 obdfilter-survey test 2a ASSERT(imp->imp_sec == NULL)

There is a race in echo client:
1. `lctl --device $echo_client_dev detach`
     -> class_detach() puts last refcount of export
       -> obd_zombie_add_export() adds this export in zombie list, and
            wake up zombie thread.
2. zombie thread culls this export:
     class_destroy_export() put last refcount of echo_client_dev
       -> obd_cleanup()
         -> echo_device_free()
           -> echo_client_cleanup()
             -> osc_disconnect()
               -> client_disconnect_export() will clear cli->cl_import
3. `lctl --device $osc_dev cleanup`
     -> osc_precleanup() find scli->cl_import is not NULL (this means
          import is never connected, but it's not true here)
       -> class_destroy_import()
         -> class_import_put()
           -> LASSERT(imp->imp_sec == NULL) fails

It's expected that step 2 is done before step 3, but this can't be
guaranteed currently. To ensure this, osc_precleanup() calls
obd_zombie_barrier() to ensure step 2 is finished.

Change-Id: I2d044c3ac45a72d305a369a1f31c315f36a7ce02
Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1093
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Mikhail Pershin <tappro@whamcloud.com>
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-387 Minor fix for mmp.sh test_9
Niu Yawei [Wed, 22 Jun 2011 02:18:26 +0000 (19:18 -0700)]
LU-387 Minor fix for mmp.sh test_9

Remove the redundant "kill -9 $debugfspid" in test_9

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: I72d64f28212bb9706ca3249bac2c39a329a13f5a
Reviewed-on: http://review.whamcloud.com/992
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
12 years agoLU-470 remove 24-bits mask for logic block number of IAM dir
Liang Zhen [Tue, 28 Jun 2011 04:17:35 +0000 (12:17 +0800)]
LU-470 remove 24-bits mask for logic block number of IAM dir

dx_get_block() will mask logic block number to 24-bits, which means we
can only have 16-M blocks and a few giga FIDs, this is not enough
because we have one single IAM container to save all (fids, ino) for MDT

Change-Id: I188efc65ed68caf12149f03c431481cd603effc1
Signed-off-by: Liang Zhen <liang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1024
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
12 years agoLU-5 readdir read multiple pages per rpc
Lai Siyao [Thu, 26 May 2011 13:44:47 +0000 (06:44 -0700)]
LU-5 readdir read multiple pages per rpc

add support for readdir to read multiple pages per rpc:
* because client has no idea how many directory pages it can read, it
  tries to read maximum pages each time, but will only store pages
  read from mds into page cache.
* add a flag LDF_COLLIDE to mark a dir page hash collides with the
  next page, and client will remove this page from page cache after
  processing.
* upon readpage bulk io failure, client won't be evicted, and client
  will resend the bulk request.
* support large page size on client: MDS_READPAGE RPC will fill reply
  with page size LU_PAGE_SIZE(4k), and if client page is bigger than
  LU_PAGE_SIZE, several pages will be integrated into one dir page with
  CFS_PAGE_SIZE.

Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Change-Id: Id6bc36fbcec79993d49bbe9a535851e5e3ebd876
Reviewed-on: http://review.whamcloud.com/604
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
12 years agoLU-498 pass oap instead of cookie to osc_teardown_async_page/osc_queue_async_io
Johann Lombardi [Tue, 5 Jul 2011 18:29:35 +0000 (20:29 +0200)]
LU-498 pass oap instead of cookie to osc_teardown_async_page/osc_queue_async_io

Now that queue_async_io & teardown_async_page are not obd operations any
more, we don't need to use a cookie and can just pass the correct type.

Change-Id: Iaf2ddf48bfee5c386064bb30e5392345c074c827
Signed-off-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1081
Tested-by: Hudson
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-471 fix mkfs.lustre to avoid creating duplicate options
Bobi Jam [Wed, 29 Jun 2011 08:31:27 +0000 (16:31 +0800)]
LU-471 fix mkfs.lustre to avoid creating duplicate options

Also make user specified options overwrite default internal default
options.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Ic946b4bc93b2941bd05761a6783f01cf94fb1431
Reviewed-on: http://review.whamcloud.com/1035
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-426 Server failover never finishes
Bobi Jam [Tue, 21 Jun 2011 04:34:55 +0000 (12:34 +0800)]
LU-426 Server failover never finishes

Make sure obd_zomebie_impexp_thread get zombie add notification.
It is possible this signal is only get by obd_zombie_barrier, and
barrier gulps this notification and sleeps away and hangs ensues.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Ic4a7b9de19aa5e6a9aaa8fb54e7083629b88119b
Reviewed-on: http://review.whamcloud.com/986
Tested-by: Hudson
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Mikhail Pershin <tappro@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-369 assert(t_watchdog) failed in quota_chk_acq_common()
Niu Yawei [Mon, 30 May 2011 06:30:06 +0000 (23:30 -0700)]
LU-369 assert(t_watchdog) failed in quota_chk_acq_common()

Remove the incorrect assert(t_watchdog) in quota_chk_acq_common()
and schedule_dqacq(), since they might be called from recovery
thread, which doesn't have t_watchdog attached.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: I22e65c66827811309e43910e9a4d34251aad99c3
Reviewed-on: http://review.whamcloud.com/870
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-113: make lustre_{idl,user}.h nice to userspace
Andreas Dilger [Mon, 16 May 2011 06:07:54 +0000 (00:07 -0600)]
LU-113: make lustre_{idl,user}.h nice to userspace

Remove uses of LASSERT() inside lustre_user.h, since it should be
directly usable by userspace (e.g. lfsck).

Don't include <libcfs/libcfs.h> into lustre_idl.h if the needed
helper macros are already availables, so that lustre_idl.h can
be more userspace friendly.

Change-Id: I4da00758ec8625f3040f5dc0d78c423a9f59793d
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/909
Tested-by: Hudson
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-196 set debug_mb size for every node
Yu Jian [Tue, 24 May 2011 08:51:03 +0000 (16:51 +0800)]
LU-196 set debug_mb size for every node

commit 01e1bdcec4af985791b40e1fbfaa77a2d5427fce
Date: Mon Feb 14 20:25:35 2011 +0300

b=19944 adjust debug size to be -gt num_possible_cpus()

a=Landen <zhiyong.tian@oracle.com>
i=Elena.Gryaznova

Change-Id: Idc8c3d2db243c5ddd0ba95ef1be4680c4af9c411
Signed-off-by: YangSheng <ys@whamcloud.com>
Signed-off-by: Yu Jian <yujian@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/407
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-346 "kill -s SIGTERM" does not work on some system
Bobi Jam [Sat, 9 Jul 2011 04:59:54 +0000 (12:59 +0800)]
LU-346 "kill -s SIGTERM" does not work on some system

Change it to "kill -s TERM".

Change-Id: Ib5f5a3042d082a5b82018078b17ca82a269b4592
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1076
Tested-by: Hudson
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-481 Don't store 'transient' page in radix tree
Niu Yawei [Fri, 8 Jul 2011 06:44:00 +0000 (23:44 -0700)]
LU-481 Don't store 'transient' page in radix tree

- We currently store both 'transient' page and inode page in the
  same radix tree, which will cause trouble for the race handling
  of concurrent dio and buffered read, imagine the following case:

  dio created a 'transient' page for a given file offset in the
  radix tree, while a concurrent buffered read on the same offset
  happened, the reader will try to find the exsting cached page by
  searching the radix tree, however, the 'transient' page is found,
  and the read will fail for -EBUSY at the end.

  To make the situation worse, there are two level of radix trees for
  a give file page (object and sub-object), above race can happen
  in both levels and we have to make sure page type consistence
  between these two levels.

  Actually, it doesn't make sense to store these disposable 'transient'
  page in the radix tree, so we just remove them in this patch.

- In cl_page_alloc(), if the coo_page_init() fails, we should call
  cl_page_delete0() to break the linkage between vmpage and cl_page
  before calling cl_page_free().

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: If2fa85495e6e78b330571b3348ac55a7796a4a9f
Reviewed-on: http://review.whamcloud.com/1072
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoNew version 2.0.65 2.0.65.0 v2_0_65_0
Oleg Drokin [Fri, 8 Jul 2011 21:30:01 +0000 (17:30 -0400)]
New version 2.0.65

Change-Id: Iab44e6d976cf13d12d525d16c8aeaf2c4bc2d423
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-469 Build with lustre own kernel config file.
yangsheng [Tue, 28 Jun 2011 19:39:47 +0000 (03:39 +0800)]
LU-469 Build with lustre own kernel config file.

-- Use lustre own rhel6 kernel config files in lbuild.
-- Rebase config files in latest vendor update.
-- Correct config file diff output.

Change-Id: I9ee5115009de5bcb00084dcac2e204774178a8c1
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1034
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-479 sanity 124a failed
Lai Siyao [Tue, 5 Jul 2011 16:13:39 +0000 (09:13 -0700)]
LU-479 sanity 124a failed

add message to help debug.

Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Change-Id: I4e675ed3eeb509c9ba4f1c25420596c0d5357459
Reviewed-on: http://review.whamcloud.com/1052
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
12 years agoLU-136 change "force_over_16tb" mount option to "force_over_128tb"
Yu Jian [Fri, 8 Jul 2011 08:11:18 +0000 (16:11 +0800)]
LU-136 change "force_over_16tb" mount option to "force_over_128tb"

Change the "force_over_16tb" mount option to "force_over_128tb" and
rename the ext4-force_over_16tb-*.patch to ext4-force_over_128tb-*.patch
after testing and validating the 128TB LUN.

Signed-off-by: Yu Jian <yujian@whamcloud.com>
Change-Id: I19c73280cf2934112aefab8976d7eac18915529a
Reviewed-on: http://review.whamcloud.com/1073
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-477 allocate memory for s_group_desc and s_group_info by vmalloc()
Yu Jian [Thu, 7 Jul 2011 12:55:51 +0000 (20:55 +0800)]
LU-477 allocate memory for s_group_desc and s_group_info by vmalloc()

Large kmalloc() for sbi->s_group_desc and sbi->s_group_info can fail
for large filesystems, which will cause the "not enough memory" error
while mounting. This patch makes it fall back to vmalloc() if the
kmalloc() failed, as what was done for sbi->s_flex_groups.

To avoid colliding with an valid on-disk inode number, EXT4_BAD_INO
is used as the number of the buddy cache inode.

The patch also incorporates the following upstream kernel fix:

commit 32a9bb57d7c1fd04ae0f72b8f671501f000a0e9f
ext4: fix missing iput of root inode for some mount error paths
https://bugzilla.kernel.org/show_bug.cgi?id=26752

Signed-off-by: Yu Jian <yujian@whamcloud.com>
Change-Id: I3950425835ea7f2968ceb2edbc622e3ff3ed8545
Reviewed-on: http://review.whamcloud.com/1071
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-168 Fix schedule race in sanityn PDO lock tests
nasf [Fri, 8 Jul 2011 16:20:56 +0000 (00:20 +0800)]
LU-168 Fix schedule race in sanityn PDO lock tests

In sanityn PDO lock tests, even if the second operation is blocked by
the first one on server-side, after the blocking, the second one may
be finished earlier than the first one because of client-side schedule
order. So sleep a sec before check_pdo_conflict() to ensure the first
operation is finished after OBD_FAIL_MDS_PDO_LOCK barriers.

Change-Id: I62412d74e17be012ee6660179ad77375c196671d
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1030
Tested-by: Hudson
Reviewed-by: Mikhail Pershin <tappro@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-492 fix sanity-quota test_29
Bobi Jam [Thu, 7 Jul 2011 06:32:45 +0000 (14:32 +0800)]
LU-492 fix sanity-quota test_29

* Send a RPC to MDS to confine at_current time of MDS service time
* Sleep enough seconds

Change-Id: I09ed7aa5a2103ef3a3a03c72d5c09e6769bf9248
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1069
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoNew tag 2.0.64 2.0.64.0 v2_0_64_0
Oleg Drokin [Thu, 7 Jul 2011 22:38:36 +0000 (18:38 -0400)]
New tag 2.0.64

Change-Id: Id7a958a1b543adcbffca5f5b6bd8dcce6b2ce22d
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-467 Not reinitialize "cl_io" in "llu_file_prwv()"
nasf [Wed, 29 Jun 2011 06:46:48 +0000 (14:46 +0800)]
LU-467 Not reinitialize "cl_io" in "llu_file_prwv()"

In "llu_file_prwv()", the calling "ccc_env_thread_io(env)" will
erases all valid values assigned before into "llu_file_prwv()",
then the "io->ci_obj" and "io->ci_lockreq" become unspecified,
and then causes subsequent "cl_object_top()" to access NULL pointer
and triggers "slp_io_rw_lock()" assertion.

Change-Id: I0e878c39d6fb21c5f4d93d037763ae68ee8f102e
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1031
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: wangdi <di.wang@whamcloud.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-346 fix conf-sanity test_23a
Bobi Jam [Tue, 5 Jul 2011 09:19:40 +0000 (17:19 +0800)]
LU-346 fix conf-sanity test_23a

ctrl-c sends SIGINT signal, and the SIGINT will be delivered to the
process tree, but it does not work on non-job-controlled (usually in
script) child process.

SIGTERM works on child process, but it does not spread offspring
processes, so we send it to all lustre mount processes.

excerpt from bash manpage:

set [--abefhkmnptuvxBCEHPT] [-o option-name] [arg ...]
set [+abefhkmnptuvxBCEHPT] [+o option-name] [arg ...]
 -m      Monitor mode. Job control is enabled. This option is on by
         default for interactive shells on systems that support it.
Non-builtin  commands run by bash have signal handlers set to the
values inherited by the shell from its parent.  When job control is
not in effect, asynchronous commands ignore SIGINT and SIGQUIT in
addition to these inherited handlers.

Change-Id: I099fe53373470ad2182f7bd20ff88cb896b1f955
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1049
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-491 conf-sanity/50g fails on a local setup
Bobi Jam [Wed, 6 Jul 2011 11:00:45 +0000 (19:00 +0800)]
LU-491 conf-sanity/50g fails on a local setup

get_clientosc_proc_path() should exclude MDT device's osc entry.

Change-Id: Ia62397aaab830b9f1318a200db660f541fc87104
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1064
Tested-by: Hudson
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-386 fix replay_single test_65a
Bobi Jam [Tue, 28 Jun 2011 04:15:22 +0000 (12:15 +0800)]
LU-386 fix replay_single test_65a

Set debug level as concise as possible, too many log messages will wrap
around log buffer and overwrite what we need.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I08bfbe6c77d87afd13f46966c2ae8a3fffe2e19e
Reviewed-on: http://review.whamcloud.com/1025
Tested-by: Hudson
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-478 Set tunables on lvm device
Niu Yawei [Mon, 4 Jul 2011 09:37:43 +0000 (02:37 -0700)]
LU-478 Set tunables on lvm device

- The set_blockdev_tunables() shouldn't chop the tail digit on
  the /dev/mapper/xxx device.
- Sometimes, the /sys/block/dm-x doesn't have the max_[hw]_sectors_kb,
  such errors should be tolerated.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: I54c0e427772d8a1066a37d011d4cfd18240374b5
Reviewed-on: http://review.whamcloud.com/1046
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-413 limit used inodes for performance tests
Andreas Dilger [Tue, 14 Jun 2011 21:53:14 +0000 (15:53 -0600)]
LU-413 limit used inodes for performance tests

If doing wide stripe mdsrate tests, don't try to consume all of
the inodes on the OSTs.  The MDS does not consume inodes on OSTs
completely uniformly, and this only introduces spurious failures
when the inodes run out unevenly.

Change-Id: I74adf5ba6add7024ce7973d2850c3cb13f4da0cb
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/941
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-435 Add VM_FAULT_RETRY handling
Bobi Jam [Wed, 22 Jun 2011 04:14:15 +0000 (12:14 +0800)]
LU-435 Add VM_FAULT_RETRY handling

2.6.32 kernel add VM_FAULT_RETRY option in handle page fault, we
need handle it as well.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I71d1c51bc297d1e0e8cc38e11b8a724edf9d1ae7
Reviewed-on: http://review.whamcloud.com/997
Tested-by: Hudson
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-442 assert failed in osc_set_lock_data_with_check()
Niu Yawei [Wed, 22 Jun 2011 04:27:42 +0000 (21:27 -0700)]
LU-442 assert failed in osc_set_lock_data_with_check()

In osc_enqueue_base(), the checking to l_ast_data of dlm lock isn't
protected by proper lock, which might cause assertion failure in
following osc_set_lock_data_with_check() when there are cocurrent
callers.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: Idb2312003e93f4ab0687ed5b7e932de77b23efb7
Reviewed-on: http://review.whamcloud.com/993
Tested-by: Hudson
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-419 mkfs: fix default ext4 filesystem tuneables
Andreas Dilger [Wed, 22 Jun 2011 04:21:28 +0000 (22:21 -0600)]
LU-419 mkfs: fix default ext4 filesystem tuneables

Enable the "64bit" feature flag for filesystems over 16TB (2^32
blocks, really).  Otherwise, the user needs to specify "-t ext4"
explicitly for such filesystems, or otherwise specify all of the
mke2fs features explicitly to format huge filesystems.

Porting the LU-255 patch to b1_8, I also wanted to make sure that
the new default inode ratio for OSTs was not too aggressive.  While
Lustre filesystems generally have average file sizes over 1MB, in
some limited number of cases the user filesystem statistics sent to
lustre-discuss had filesystems with an ratio of 600kB/inode region.

While the average FILE size may be > 1MB/file, if the default LOV
striping is 2 or 4 stripes/file then there may be a large number of
zero-length inodes on the OST that will be allocated and need space.

Reduce the default inode ratio to previously changed in commit
eb012d4a10208b26c2d3e795a90f1bb07dde6d91 from 1MB/inode down to
512kB/inode for filesystems between 4TB and 16TB, and only go up to
1MB/inode for filesystems over 16TB.  Since there are no existing
filesystems that large, there is no firm expectation for how many
inodes should be created for such filesystems, so this is safer.

Change-Id: I92139755468c5f58830849ebd44171951f8460e4
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/996
Tested-by: Hudson
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoRevert "LU-15 shrink the cache to alleviate OST memory pressure"
Oleg Drokin [Mon, 27 Jun 2011 22:22:52 +0000 (18:22 -0400)]
Revert "LU-15 shrink the cache to alleviate OST memory pressure"

This introduced a significant performance problem on DDN hardware,
so reverting.

This reverts commit 491a448008d8f8a4dc61789c14bd96de205f856e.

Change-Id: Id19d9735ddc5daa852e4a388974f9a8f11208d05
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-371 call OBD_ALLOC_LARGE to allocate epp_pools
Liang Zhen [Sun, 29 May 2011 04:04:22 +0000 (12:04 +0800)]
LU-371 call OBD_ALLOC_LARGE to allocate epp_pools

enc_pools_alloc is using OBD_ALLOC to allocate memory, which can fail on
some systems and return ENOMEM, so we should replace it with
OBD_ALLOC_LARGE.

Change-Id: I90cfe8c03e6db013818553f34463ecd0edf566ab
Signed-off-by: Liang Zhen <liang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/869
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-432 multiop test needs $(PTHREAD_LIBS)
yangsheng [Wed, 22 Jun 2011 08:29:25 +0000 (16:29 +0800)]
LU-432 multiop test needs $(PTHREAD_LIBS)

Added $(PTHREAD_LIBS) to multiop_LDADD for multiop test.

Signed-off-by: Christos Triantafyllidis <ctria@grid.auth.gr>
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: Ibc41b2fdcc79ddadeaae8e4bde5c4cd4d1bb7b7d
Reviewed-on: http://review.whamcloud.com/994
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-409: only load llite_lloop module if kernel < 2.6.32 or LOAD_LLOOP
Richard Henwood [Wed, 22 Jun 2011 23:34:41 +0000 (19:34 -0400)]
LU-409: only load llite_lloop module if kernel < 2.6.32 or LOAD_LLOOP

A bug was introduced with change: I63ebc7a8e0a8de6d34ffce5fd625df6db7216d32
This fixes it.

Change-Id: I001d348dd3233977a4e972ccf01ac51bc3bcbae9
Signed-off-by: Richard Henwood <rhenwood@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1002
Reviewed-by: wangdi <di.wang@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-434 Add comment for $SHARED_DIRECTORY variable
Prakash Surya [Tue, 14 Jun 2011 21:33:52 +0000 (14:33 -0700)]
LU-434 Add comment for $SHARED_DIRECTORY variable

To try and avoid confusion, a comment was added to better explain how the
$SHARED_DIRECTORY variable is intended to be used. The explanation was taken
from the Lustre mailing list. Specifically, from this message by Andreas:
http://lists.lustre.org/pipermail/lustre-discuss/2011-June/015682.html

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Change-Id: I594283a5963a0ac83bbe88ce8258e361408ec57a
Reviewed-on: http://review.whamcloud.com/940
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Hudson
12 years agoLU-421 include lustre/BUIDING in dist tarball
Brian J. Murrell [Thu, 16 Jun 2011 11:25:38 +0000 (07:25 -0400)]
LU-421 include lustre/BUIDING in dist tarball

lustre/BUILDING is not currently included in the dist tarball.

Signed-off-by: Brian J. Murrell <brian@whamcloud.com>
Change-Id: Ief40fab4bb80d9fe9967e433f2602f73880871ab
Reviewed-on: http://review.whamcloud.com/982
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-409: only load llite_lloop module if kernel < 2.6.32 or LOAD_LLOOP
Richard Henwood [Wed, 22 Jun 2011 02:38:28 +0000 (22:38 -0400)]
LU-409: only load llite_lloop module if kernel < 2.6.32 or LOAD_LLOOP

The change of block device interface in kernel 2.6.32-131 caused
the llite_lloop module to fail. llite_lloop module is currently
unsupported. This change introduces a test for kernel version
to prohibit loading a module with a kernel >= 2.6.32. A LOAD_LLOOP
flag (default false) is provided to ignore the kernel test and force
loading of llite_lloop if desired.

A related version of this change for b1_8 is:
http://review.whamcloud.com/954

Change-Id: I63ebc7a8e0a8de6d34ffce5fd625df6db7216d32
Signed-off-by: Richard Henwood <rhenwood@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/956
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoNew tag 2.0.63 2.0.63.0 v2_0_63_0
Oleg Drokin [Wed, 22 Jun 2011 13:13:13 +0000 (09:13 -0400)]
New tag 2.0.63

Change-Id: I0c70ee5096c9ccbb5e3518004a086c805f9fcf09
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-388 modify kernel-ib spec file for openib RPM
Brian J. Murrell [Fri, 3 Jun 2011 20:25:45 +0000 (16:25 -0400)]
LU-388 modify kernel-ib spec file for openib RPM

The kernel-ib RPM from OFED 1.5.3.1 conflicts with RHEL5's
openib package.  Consider RHEL5's userspace as canonical and
Remove the conflicting portions from the kernel-ib RPM.

Signed-off-by: Brian J. Murrell <brian@whamcloud.com>
Change-Id: I9f6a768bc5ac30fdab589c1bdbc3154fa31c1405
Reviewed-on: http://review.whamcloud.com/981
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Michael MacDonald <mjmac@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-387 mmp.sh test_9 failed
Niu Yawei [Mon, 20 Jun 2011 02:38:32 +0000 (19:38 -0700)]
LU-387 mmp.sh test_9 failed

The mmp.sh test_9 often fail for the script killing the e2fsck process
on wrong timing, so we use some tricky way to make sure the MMP block
stay in 'e2fsck' state before mounting the device.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: Id8b13b67d6f0f1f0198b13bca55356ab95af1059
Reviewed-on: http://review.whamcloud.com/979
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-405 Don't assert on multiple disconnected dentries case
Oleg Drokin [Thu, 9 Jun 2011 16:00:25 +0000 (12:00 -0400)]
LU-405 Don't assert on multiple disconnected dentries case

NFS has a valid case for multiple disconnected dentries on the same
inode so we must not assert there as a workaround.
The proper fix is to adopt using of d_splice_alias eventually.

Change-Id: I28f7385d95523adf949a4e3b8887d79cdc4f2e37
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/923
Tested-by: Hudson
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-395: obd_zombie_barrier is not barrier actually
Jinshan Xiong [Thu, 16 Jun 2011 05:30:27 +0000 (22:30 -0700)]
LU-395: obd_zombie_barrier is not barrier actually

a hotfix for avoiding deadlock:
sys_umount -> class_detach -> obd_zombie_impexp_cull -> filter_cleanup
-> obd_zombie_barrier, but the zombies_count will only be decreased after
obd_zombie_impexp_cull, so this process is waiting for itself, this is a
deadlock.

Signed-off-by: Jinshan Xiong <jay@whamcloud.com>
Change-Id: Id29deab4c85a7570ec59b2a20f70ccfae9440f01
Reviewed-on: http://review.whamcloud.com/945
Reviewed-by: Mikhail Pershin <tappro@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-304 Remove Cray-specific LICENSE files.
Christopher J. Morrone [Tue, 10 May 2011 23:38:59 +0000 (16:38 -0700)]
LU-304 Remove Cray-specific LICENSE files.

This reverts commit cbb0d69e53c0f928c5f43eeb125ba87283fe561b.

Change-Id: I8aa6a03dc78eeaffad64d5509c3ddab1cb4e56ee
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/529
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Cory Spitz <spitzcor@cray.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-404 bind umount /sbin/mount.lustre only if necessary
Bobi Jam [Thu, 9 Jun 2011 08:50:04 +0000 (16:50 +0800)]
LU-404 bind umount /sbin/mount.lustre only if necessary

On lustre release installed system, /sbin/mount.lustre will not
bind mount upon $LUSTRE/utils/mount.lustre, so don't need bind
umount it.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I49e671f0acf991a54a01c4f2bb1e82c2db93aa3e
Reviewed-on: http://review.whamcloud.com/918
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
12 years agoLU-381 add in RHEL6 value for CONFIG_SECURITY_DMESG_RESTRICT
Richard Henwood [Thu, 2 Jun 2011 19:45:29 +0000 (15:45 -0400)]
LU-381 add in RHEL6 value for CONFIG_SECURITY_DMESG_RESTRICT

This silences interactive prompt during make oldconfig.

Change-Id: I9e555ece1d6acb7b793cf9eec5deb6d7fc2ab2af
Signed-off-by: Richard Henwood <rhenwood@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/876
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-163 update ChangeLog for LU-163 patches
nasf [Thu, 9 Jun 2011 14:44:53 +0000 (22:44 +0800)]
LU-163 update ChangeLog for LU-163 patches

For lustre re-export through NFSv4, should specify the mount option of
"-o 32bitapi" on lustre client.

Change-Id: Ie5bcd8373c22fd0e9eaec27e7e60c2f6f4080018
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/920
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-403 Add support for RHEL5 kernel 2.6.18-238.12.1.el5
Oleg Drokin [Thu, 9 Jun 2011 22:59:27 +0000 (18:59 -0400)]
LU-403 Add support for RHEL5 kernel 2.6.18-238.12.1.el5

Change-Id: I0fcf8f9158659bbb8a9c53d7b0f22bcabc84ed66
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/931
Tested-by: Hudson
Reviewed-by: Yang Sheng <ys@whamcloud.com>
12 years agoLU-397 Set 'lsr_flags' as 'LU_SEQ_RANGE_MDT' for old 2.0 client
nasf [Tue, 7 Jun 2011 03:41:24 +0000 (11:41 +0800)]
LU-397 Set 'lsr_flags' as 'LU_SEQ_RANGE_MDT' for old 2.0 client

Lustre 2.x introduces server identifier into lu_seq_range to distinguish
MDT and OST fids. But for old 2.0 client, it does not specify such
identifier/flags. So use 'OBD_CONNECT_SEQ_RANGE' to distinguish whether
it is old 2.0 client or not. For old 2.0 client, set the 'lsr_flags' as
'LU_SEQ_RANGE_MDT' by default.

Change-Id: I652caa637959268e1da499370a0efd356ff98bbe
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/902
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-395 Fix obd_zombie_barrier()
Mikhail Pershin [Mon, 6 Jun 2011 19:12:25 +0000 (23:12 +0400)]
LU-395 Fix obd_zombie_barrier()

The obd_zombie_barrier() is waiting for obd_zombie_export list is empty
and exit, but export may be not yet destroyed. This produces race between export
destroying and other cleanups like lut_fini()

The patch introduces zombies_in_destroy variable which is counter, and
obd_zombie_barrier is checking it.

Change-Id: I0fd4a1023efade1cb40d4c36e59169a25a525ed1
Signed-off-by: Mikhail Pershin <tappro@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/899
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-313 re-enable lfsck test to run by default
Andreas Dilger [Mon, 16 May 2011 06:21:43 +0000 (00:21 -0600)]
LU-313 re-enable lfsck test to run by default

Due to bug 13698, the lfsck part of the lfsck.sh test script was
disabled by default.   After the fixes in LU-113 were landed, lfsck
should work again.  Remove LFSCK_SKIP checks so lfsck.sh actually runs
lfsck instead of silently skipping it unless LFSCK_SKIP=no is set.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Idf7f0606c3937b0311db998032d58475076ab1a8
Reviewed-on: http://review.whamcloud.com/552
Tested-by: Hudson
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Chris Gearing <chris@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-399 do not use mke2fs -E resize for large LUNs
Andreas Dilger [Wed, 8 Jun 2011 08:34:44 +0000 (02:34 -0600)]
LU-399 do not use mke2fs -E resize for large LUNs

The mo_device_size variable is in units of kB, so take this into
account correctly when computing the filesystem block count.
The "-E resize" option is being used to align metadata on 1MB IO
boundaries, but it does not work for devices larger than 2^32 blocks.

A better long-term solution is to fix mke2fs so that it does this
alignment itself based on the s_raid_stride value.

Change-Id: I2e4104b8ad490076bfaa6a49842124d79e3bf880
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/912
Tested-by: Hudson
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Tested-by: Yu Jian <yujian@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-64 define LOV default layout as FID_SEQ value
Andreas Dilger [Mon, 16 May 2011 06:02:24 +0000 (00:02 -0600)]
LU-64 define LOV default layout as FID_SEQ value

For directories without any default striping information the MDS
sends a magic LOV_OBJECT_GROUP_DEFAULT value for the lmm_seq field.
Since this is really a magic FID_SEQ value, define it in the same
place as other FID_SEQ values as FID_SEQ_LOV_DEFAULT so that it is
visible.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I0ae9dc993d15aedb38ab79e40c67a687d956a6c4
Reviewed-on: http://review.whamcloud.com/910
Reviewed-by: Prakash Surya <surya1@llnl.gov>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-329 fix missing ost_lock_put() calls
Lai Siyao [Tue, 17 May 2011 05:39:49 +0000 (22:39 -0700)]
LU-329 fix missing ost_lock_put() calls

* The taken ost lock may be no put in some error cases.
* typo in ost_blocking_ost: oa --> oinfo.

Change-Id: I021494fcf901d2daeeb97f60e23562bcc88d990a
Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/554
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: wangdi <di.wang@whamcloud.com>
12 years agoLU-275 I/O errors when lustre uses multipath devices
Bobi Jam [Fri, 6 May 2011 05:07:25 +0000 (13:07 +0800)]
LU-275 I/O errors when lustre uses multipath devices

Change set_blockdev_tunables() routines to make it support multipath
device case.

Author: Gregoire Pichon <gregoire.pichon@bull.net>
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: If7a7d4a1788bb5c5139d5a5b229272dc2f294713
Reviewed-on: http://review.whamcloud.com/504
Tested-by: Hudson
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-342 add test for lfs to check missing OST
hongchao.zhang [Tue, 17 May 2011 07:48:17 +0000 (15:48 +0800)]
LU-342 add test for lfs to check missing OST

add test_90 in replay-single.sh to check whether "lfs find --obd"
and "lfs getstripe -r --obd" can deal with the case of some OST missed

Change-Id: I17ff9197051a035b726fd6e817adc145ea116292
Signed-off-by: Hongchao Zhang <hongchao.zhang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/562
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-402 Update to rhel6.1 kernel 2.6.32-131.2.1.el6
Oleg Drokin [Wed, 8 Jun 2011 23:19:10 +0000 (19:19 -0400)]
LU-402 Update to rhel6.1 kernel 2.6.32-131.2.1.el6

Signed-off-by: Oleg Drokin <green@whamcloud.com>
Change-Id: I84a8536a46d1d7f28ac3eaef30ee8c3c7f0d0342
Reviewed-on: http://review.whamcloud.com/914
Tested-by: Hudson
12 years agoLU-163 Input valid 'mnt' parameter for 'dentry_open()'
nasf [Fri, 3 Jun 2011 16:55:27 +0000 (00:55 +0800)]
LU-163 Input valid 'mnt' parameter for 'dentry_open()'

It is required by new kernel (rhel6) for 'get_name()'
when re-export lustre through NFS.

Change-Id: I732ba2a91b6e1420e8e46910fddca67d04cedcde
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/892
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
12 years agoLU-307 Send parent FID from client to MDS on NFS open for striping info
nasf [Tue, 17 May 2011 11:32:09 +0000 (19:32 +0800)]
LU-307 Send parent FID from client to MDS on NFS open for striping info

Which is useful for delay created cases. and it is mainly for Lustre re-export
through NFS. If client does not give such hint, MDS will try to find parent by
the first fid in the link EA. Another fixes are about the protection of delay
creating OSTs objects concurrently.

Change-Id: I5dd72e0452303ca5ab7bff035ff85f83b5862d66
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/557
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: wangdi <di.wang@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-376 Positive LL_DIR_END_OFF to indicate the tail of dir hash/offset
nasf [Thu, 2 Jun 2011 06:44:32 +0000 (14:44 +0800)]
LU-376 Positive LL_DIR_END_OFF to indicate the tail of dir hash/offset

1) Keep 'MDS_DIR_END_OFF' unchanged (0xfffffffffffffffeULL) to simplify
   dir hash/offset related interoperability issues.
2) Introduce positive "LL_DIR_END_OFF" (0x7fffffffffffffffULL) on client
   to indicate the tail of dir hash/offset for up layer callers, like
   llseek(), readdir(), and so on.
3) Support new 2.x client to talk with old 2.0 server with 32bit hash.

Change-Id: I74c148482f91ed91dfffd608f98971566f1257ad
Signed-off-by: nasf <yong.fan@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/886
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoNew version 2.0.62 2.0.62.0 v2_0_62_0
Oleg Drokin [Tue, 7 Jun 2011 13:33:30 +0000 (09:33 -0400)]
New version 2.0.62

Change-Id: Ib5cd2b133bae72d8c2d8a52c35b3a734cae3ff69
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-64 Modify the behavior of ioctl on directories without EA set.
Prakash Surya [Wed, 27 Apr 2011 18:03:32 +0000 (11:03 -0700)]
LU-64 Modify the behavior of ioctl on directories without EA set.

This patch introduces the following functionality:

1. If an ioctl is performed to obtain the stripe attributes for a
   directory, then the following 3 possibilities can occur:
   a. If the directory in question DOES have it's EA set, then these
      EA values are returned to userspace.
   b. If the directory in question DOES NOT have it's EA set, AND it
      IS the root directory of the filesystem, then the filesystem's
      default EA values are returned to userspace.
   c. If the directory in question DOES NOT have it's EA set, AND it
      IS NOT the root directory of the filesystem, then no EA values
      are returned to userspace. Rather, an error is returned from
      the ioctl and errno is set to ENODATA.
2. lfs getstripe was updated to reflect this change in the ioctl
   interface.
   a. If lfs getstipe --raw is called on a directory other than the
      root directory of the filesystem, and this directory does not
      have any EA set, the filesystem's default values will not be
      printed. Rather, the raw values which mean "use the default"
      will be printed (e.g. stripe count: 0, stripe size: 0, stripe
      offset: -1).

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Change-Id: Ieaaeaf54cce88f406008af4a926fac561900afc9
Reviewed-on: http://review.whamcloud.com/576
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-64 Make "lfs getstripe" directory output consistent.
Prakash Surya [Mon, 4 Apr 2011 20:45:34 +0000 (13:45 -0700)]
LU-64 Make "lfs getstripe" directory output consistent.

"lfs getstripe" should report the global default for any fields with
a value that means "use the default". This patch introduces the
following functionality:

1. If "lfs getstripe" is called on a directory and finds that striping
   EA is not set, the filesystem's defaults are looked up and printed.
2. If the striping EA is set, but the striping count and/or striping
   size has a value that means "use the default" (count = 0 and/or
   size = 0), the filesystem's default for that specific striping
   attribute is looked up and printed.
3. A new option to "lfs getstripe" is introduced; the "--raw" or
   "-R" option. If this option is specified, the previous two checks
   are skipped. In other words, if the striping EA is not set, 0, 0,
   -1, will be printed for the striping count, size, and offset
   respectively. Also, if the striping EA is set, the values will be
   printed without first converting them into their respective
   defaults.

This patch relies on the /proc filesystem to determine each
filesystem's default striping attributes, and a cache is maintained
which holds the default values for the last filesystem queried.

See Also:
Bugzilla #23802, https://bugzilla.lustre.org/show_bug.cgi?id=23802

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Change-Id: I9bf033f91411d2a6a55c3d4becb971ba20bb3c4b
Reviewed-on: http://review.whamcloud.com/577
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-337 Fix alloc flags in alloc_qinfo()
Christopher J. Morrone [Fri, 20 May 2011 02:51:29 +0000 (19:51 -0700)]
LU-337 Fix alloc flags in alloc_qinfo()

CFS_ALLOC_STD allows a hang when the alloc_qinfo() results
in a cache_alloc_refill, and kicks off the ldlm shrinker.
The shrinker may hang in sync_page() on the same page on
which we already hold the lock.

Change-Id: I9d7ccfcd5258c537af4d4f1d0bf2a190f4fc89c7
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/880
Reviewed-by: Bobi Jam <bobijam@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-165: Support privileged ports in the o2iblnd driver.
Christopher J. Morrone [Fri, 11 Feb 2011 04:39:28 +0000 (20:39 -0800)]
LU-165: Support privileged ports in the o2iblnd driver.

It is highly recommended that you have a version of the
IB verbs driver that provides the rdma_set_reuseaddr() function.
Otherwise you may run out of privileged ports.

In this version of the patch, one may separately decide whether
privileged ports will be required for passively accepted connections
(require_privileged_port) and whether privileged ports will be used
for activitely initiated connections (use_privileged_port).

Original patch by Ira Weiny.

Change-Id: Id3600094b08784be6e82b224cf510460f69d4dd6
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/366
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-245 too many default ACLs break directory access on new directories
Bobi Jam [Thu, 28 Apr 2011 07:17:49 +0000 (15:17 +0800)]
LU-245 too many default ACLs break directory access on new directories

The attached patch was a result of the discussion with Andreas Dilger
on lustre discuss starting here:
http://lists.lustre.org/pipermail/lustre-discuss/2010-May/013177.html

Change-Id: I0f66d3587d25f0c9c3862498326a2c26acc57b3e
Bugzilla: 22820
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/471
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-351 RHEL6 U1 support.
Alexey Lyashkov [Fri, 3 Jun 2011 16:34:50 +0000 (20:34 +0400)]
LU-351 RHEL6 U1 support.

that patch adds support for 2.6.32-131 kernel.

Change-Id: I5c0f72a4a84d120b1820a038be82dedf806e2da1
Signed-off-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Reviewed-on: http://review.whamcloud.com/584
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-264 Integrate upstream ext4 MMP chnages
Niu Yawei [Fri, 27 May 2011 14:27:20 +0000 (07:27 -0700)]
LU-264 Integrate upstream ext4 MMP chnages

Integrate the changes made to the MMP patch when it was submitted upstream
for the 2.6.40 kernel.  Mostly cosmetic changes were done (improved comments, etc),
along with moving the MMP functionality into a separate mmp.c file in order to
avoid increasing the size of super.c too much.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Change-Id: I6909f3e44b077d65d653994ed1ac3ee11fcacb7f
Reviewed-on: http://review.whamcloud.com/865
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-118: clear_inode: BUG_ON(inode->i_data.nrpages)
Jinshan Xiong [Fri, 3 Jun 2011 22:12:33 +0000 (15:12 -0700)]
LU-118: clear_inode: BUG_ON(inode->i_data.nrpages)

This is a workaround patch to fix the problem. This patch should be gone
after there is a fix appearing in mainstream kernel.

Change-Id: I5a78ecae626e5d82cd9eac5dc2c2b849d4afd368
Signed-off-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/879
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-64 Alphabetized lfs's sub-commands' options
Prakash Surya [Wed, 27 Apr 2011 23:58:37 +0000 (16:58 -0700)]
LU-64 Alphabetized lfs's sub-commands' options

Arranged lfs's sub-commands' options in alphabetical order by the
short option letter (lower-case followed by upper case, if both are
present).

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Change-Id: I5c3865d06de11674e7e3b8d764307e5402aeaaa1
Reviewed-on: http://review.whamcloud.com/500
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-288 adjust PATH order in test framework
Bobi Jam [Tue, 10 May 2011 07:07:05 +0000 (15:07 +0800)]
LU-288 adjust PATH order in test framework

* Test scripts use lustre build tree binaries other than installed ones.
* Bind mount mount.lustre in the lustre build tree other than copying to /sbin/

Change-Id: I32468fa608b32a7ef097db531cdd45b68088af50
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/525
Tested-by: Hudson
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-by: Prakash Surya <surya1@llnl.gov>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
12 years agoLU-336 Tighten matching criteria in module_loaded
Prakash Surya [Thu, 21 Apr 2011 18:10:20 +0000 (11:10 -0700)]
LU-336 Tighten matching criteria in module_loaded

The function module_loaded can easily produce false positives because
of it's lenient way of grep'ing the output of lsmod. Tightening up the
criteria upon which it uses to determine if a module is loaded, reduces
the risk of returning these false positives.

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Change-Id: Id8a20bf568be275eeb3ef466cb3fd051f8389b44
Reviewed-on: http://review.whamcloud.com/558
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
12 years agoLU-328 unlock fo_llog_list_lock before allocating memory
hongchao.zhang [Sun, 8 May 2011 06:34:45 +0000 (14:34 +0800)]
LU-328 unlock fo_llog_list_lock before allocating memory

in filter_find_create_olg in filter.c, the spinlock filter->fo_llog_list_lock
is held during allocating a new obd_llog_group, which cause system hang

Change-Id: I1b95387fbaf6f9a7080073b8ee7918e46263f1f0
Signed-off-by: Hongchao Zhang <hongchao.zhang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/556
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
12 years agoLU-8 dynamically grow/shrink socklnd connd threads
Liang Zhen [Fri, 1 Apr 2011 07:16:33 +0000 (15:16 +0800)]
LU-8 dynamically grow/shrink socklnd connd threads

if multiple nodes are down, all socklnd connds could be blocked for a
long while, we can workaround this by increase default nconnds but it
always requires to have unnecessary number of threads.This patch can
support dynamically grow/shrink connd threads pool, it
can create new thread if there's pending active connecting, it will
kill some threads if there are too many idle connds.

Change-Id: Icbb52e8029d7c4c85d87be69e0a5b440832b01ba
Signed-off-by: Liang Zhen <liang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/390
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-246 Add a barrier for recovery completion for conf-sanity
Bobi Jam [Fri, 29 Apr 2011 03:48:41 +0000 (11:48 +0800)]
LU-246 Add a barrier for recovery completion for conf-sanity

* Make sure client connection finished before each conf-sanity test
* Put test_58 ahead of test_59
* Properly finalize some tests with 'writeconf'

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Ie2592954b54c3d5fbb275b38ad61c6986032fc5b
Bugzilla: 18779
Reviewed-on: http://review.whamcloud.com/476
Tested-by: Hudson
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-57 Allow OSTs to be created with no primary node
Bobi Jam [Thu, 31 Mar 2011 06:55:10 +0000 (14:55 +0800)]
LU-57 Allow OSTs to be created with no primary node

Add a --servicenode parameter for mkfs.lustre to treat all service
nodes equally.

Bugzilla: 19064
Change-Id: I15fc50ec7b808fac03dab92b8c0702a0d054b559
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/378
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Mikhail Pershin <tappro@whamcloud.com>
Tested-by: Liang Zhen <liang@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoRevert "LU-147 avoid 8k obd device amount limit"
Oleg Drokin [Fri, 3 Jun 2011 20:57:13 +0000 (16:57 -0400)]
Revert "LU-147 avoid 8k obd device amount limit"

Uncovered multiple races on cleanup leading to use after free

This reverts commit 7d818af6449c9005b2dd7cb213d38d6ad61bf178.

Change-Id: If5c72f365f849ac888fe90ea732908fa447347d6
Signed-off-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-216 Protect extent tree during fsfilt_ldiskfs_ext_walk_space()
Bobi Jam [Thu, 19 May 2011 10:34:24 +0000 (18:34 +0800)]
LU-216 Protect extent tree during fsfilt_ldiskfs_ext_walk_space()

Need guarantee the validity of the extent path passed in
ldiskfs_ext_new_extent_cb().

Change-Id: I2f583ce7cc663e600504a457d0c6fc3461afbad4
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/491
Tested-by: Hudson
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-272 LBUG in replay-single test_74
Lai Siyao [Thu, 5 May 2011 10:30:08 +0000 (03:30 -0700)]
LU-272 LBUG in replay-single test_74

Upon filter proc entry creation failure, return error instead
of continue silently.

Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Change-Id: I0c5376b2dd8a88d5f950dd2165b3ab28c54e309b
Reviewed-on: http://review.whamcloud.com/497
Tested-by: Hudson
Reviewed-by: Bobi Jam <bobijam@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-244 Cray portals compile fixes for Lustre 2.X
James Simmons [Wed, 27 Apr 2011 12:32:19 +0000 (08:32 -0400)]
LU-244 Cray portals compile fixes for Lustre 2.X

While moving the lustre client on cray sea star systems I ran it the
compile issues with the portals klnd driver. The reason being is the
lag of the driver to the api changes in the lnet layer. This patch
brings the lnet portals driver up to date.

Change-Id: I9e81cc11e25be7c5c548fdfd3cc7e596107fc0ef
Signed-off-by:James Simmons <uja.ornl@gmail.com>
Reviewed-on: http://review.whamcloud.com/469
Reviewed-by: Liang Zhen <liang@whamcloud.com>
Reviewed-by: Cory Spitz <spitzcor@cray.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Hudson
12 years agoLU-356 adding verbose option in test-framework
hongchao.zhang [Wed, 11 May 2011 06:54:48 +0000 (14:54 +0800)]
LU-356 adding verbose option in test-framework

in test-framework.sh, using the VERBOSE value if it's set by user,
in do_node and do_nodes, fixing the problem of only printing part of
the command during using "lctl mark" to print debug info.

Change-Id: If6444b322849d5f11a8c1f678de0eb7b80398480
Signed-off-by: Hongchao Zhang <hongchao.zhang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/862
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Tested-by: Hudson
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
12 years agoLU-326 make sure df send statfs request
hongchao.zhang [Sat, 30 Apr 2011 02:13:45 +0000 (10:13 +0800)]
LU-326 make sure df send statfs request

in test_18c of recovery_small.sh, it uses df to send a statfs request
to OST to detect the disconnection stat, but it will fail to send
the request if there is a cache of statfs in client node.
the patch adds a "sleep 1" to make sure the cache of statfs expires
before df sends statfs request.

Change-Id: Ia1f56b8160e77827d5249656488734d7defd6c81
Signed-off-by: Hongchao Zhang <hongchao.zhang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/551
Tested-by: Hudson
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
12 years agoLU-349 set LC_ALL explicitly in obdfilter-survey
hongchao.zhang [Sun, 8 May 2011 06:43:51 +0000 (14:43 +0800)]
LU-349 set LC_ALL explicitly in obdfilter-survey

in lustre-iokit/obdfilter-survey/obdfilter-survery, different locales will
cause the "awk" to fail, setting LC_ALL=POSIX explicitly to avoid the issue.

Change-Id: I9a84f9c93a9911f3a84c33429ba5cc9981913995
Signed-off-by: Hongchao Zhang <hongchao.zhang@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/594
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>