fi
fi
fi
- if [ -n "$OFED_VERSION" ] && \
+ if [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" ] && \
[ ! -r "$KERNELTREE/../OFED-${OFED_VERSION}.tgz" ] ; then
if (( $DOWNLOAD )) ; then
local location="http://downloads.lustre.org/public/OFED/"
dstdir="${dstdir%.rpm}"
[ -d "$dstdir" ] && rm -rf "$dstdir"
mv "${builddir}" "$dstdir" || return 255
- if [ -n "$OFED_VERSION" ]; then
+ if [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" ]; then
# move the OFED kernel-ib-devel tree as well
mv "${builddir%/*}/kernel-ib-devel/usr/src/ofa_kernel" "${dstdir%/*}" || return 255
fi
else
[ -f "RPMS/${TARGET_ARCH}/${kernelrpmname}" ] && cp -f "RPMS/${TARGET_ARCH}/${kernelrpmname}" "${REUSEBUILD}/${TIMESTAMP}/"
fi
- if [ -n "$OFED_VERSION" ]; then
+ if [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" ]; then
# store kernel-ib RPMs
local rpmname
for rpmname in "kernel-ib" "kernel-ib-devel"; do
[ -d SOURCES ] || mkdir SOURCES
# first build kernel-ib
- if [ -n "$OFED_VERSION" ]; then
+ if [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" ]; then
$rpmfound && build_kernel_ib
fi
( $rpmfound ) && build_lustre && buildsuccess=true && find_linux_source_rpm
local reusedkernelsourcerpm=
local reusedkernelibrpm=
[ -d "$curdir" ] || continue
- [ -n "$OFED_VERSION" -a ! -d "${curdir%/*}/ofa_kernel" ] && continue
+ [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" -a
+ ! -d "${curdir%/*}/ofa_kernel" ] && continue
local reusedkernelprefix="kernel-lustre-"
( $PATCHLESS ) && reusedkernelprefix=
[ -f ${curdir}/../${reusedkernelprefix}${REUSEDKERNELMASK}.rpm ] && \
reusedkernelprefix="kernel-lustre-source-"
[ -f ${curdir}/../${reusedkernelprefix}${REUSEDKERNELMASKnew}.rpm ] && \
reusedkernelsourcerpm=$(ls ${curdir}/../${reusedkernelprefix}${REUSEDKERNELMASKnew}.rpm | head -1 )
- if [ -n "$OFED_VERSION" ]; then
+ if [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" ]; then
gen_lustre_version
reusedkernelprefix="kernel-ib-"
[ -f ${curdir}/../${reusedkernelprefix}${OFED_VERSION}-${LUSTRE_EXTRA_VERSION}.${TARGET_ARCH}.rpm ] && \
continue
fi
if [ -n "$OFED_VERSION" ]; then
+ if [ "$OFED_VERSION" != "inkernel" ]; then
if ! ( $NORPM ) && [ ! -f "$reusedkernelibrpm" -o ! -f "$reusedkernelibdevelrpm"]; then #kernel-ib{,-devel} rpm not found. Build all
continue
fi
CONFIGURE_FLAGS="--with-o2ib=${curdir%/*}/ofa_kernel ${CONFIGURE_FLAGS}"
+ else
+ CONFIGURE_FLAGS="--with-o2ib=yes ${CONFIGURE_FLAGS}"
+ fi
fi
LINUX="$curdir"
build_lustre || continue
load_target
EXTRA_VERSION_DELIMITER=${EXTRA_VERSION_DELIMITER:-"-"}
-if [ -n "$OFED_VERSION" ]; then
+if [ -n "$OFED_VERSION" -a "$OFED_VERSION" != "inkernel" ]; then
unpack_ofed
fi
depth = ext3_block_to_path(inode,iblock,offsets,&blocks_to_boundary);
@@ -984,12 +983,10 @@ static int ext3_get_block(struct inode *
+ started = 1;
+ }
- get_block:
- if (ret == 0) {
-- ret = ext3_get_blocks_handle(handle, inode, iblock,
-+ ret = ext3_get_blocks_wrap(handle, inode, iblock,
+- ret = ext3_get_blocks_handle(handle, inode, iblock,
++ ret = ext3_get_blocks_wrap(handle, inode, iblock,
max_blocks, bh_result, create, 0);
-- if (ret > 0) {
-- bh_result->b_size = (ret << inode->i_blkbits);
-+ if (ret > 0)
- ret = 0;
-- }
- }
- return ret;
- }
+- if (ret > 0) {
+- bh_result->b_size = (ret << inode->i_blkbits);
++ if (ret > 0)
+ ret = 0;
+- }
+ if (started)
+ ext3_journal_stop(handle);
+ out:
@@ -1008,7 +1005,7 @@ struct buffer_head *ext3_getblk(handle_t
dummy.b_state = 0;
dummy.b_blocknr = -1000;
-}
-
-/*
- * Set up the block and inode bitmaps, and the inode table for the new group.
- * This doesn't need to be part of the main transaction, since we are only
- * changing blocks outside the actual filesystem. We still do journaling to
+ * If we have fewer than thresh credits, extend by EXT3_MAX_TRANS_DATA.
+ * If that fails, restart the transaction & regain write access for the
+ * buffer head which is used for block_bitmap modifications.
@@ -834,6 +816,7 @@ int ext3_group_add(struct super_block *s
gdp->bg_inode_table = cpu_to_le32(input->inode_table);
gdp->bg_free_blocks_count = cpu_to_le16(input->free_blocks_count);