aboutsummaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorBehan Webster <behanw@converseincode.com>2014-09-23 22:43:16 -0700
committerSumit Semwal <sumit.semwal@linaro.org>2016-12-20 22:17:06 +0530
commitd3a599224627b97d3b17c4231117adf944db514a (patch)
tree7005460fad2a2fc2e42634d6c9636a3f5c94b756 /fs
parentf73496e5494fc5aa55fc4a403c23b1e7b3370e49 (diff)
exofs, LLVMLinux: Remove VLAIS from exofs
Signed-off-by: Behan Webster <behanw@converseincode.com> Suggested-by: Arnd Bergmann <arnd@arndb.de> Cc: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'fs')
-rw-r--r--fs/exofs/Kconfig2
-rw-r--r--fs/exofs/common.h2
-rw-r--r--fs/exofs/super.c21
3 files changed, 11 insertions, 14 deletions
diff --git a/fs/exofs/Kconfig b/fs/exofs/Kconfig
index 86194b2f799d..492746f9e61b 100644
--- a/fs/exofs/Kconfig
+++ b/fs/exofs/Kconfig
@@ -1,6 +1,6 @@
config EXOFS_FS
tristate "exofs: OSD based file system support"
- depends on SCSI_OSD_ULD
+ depends on SCSI_OSD_ULD && BROKEN
help
EXOFS is a file system that uses an OSD storage device,
as its backing storage.
diff --git a/fs/exofs/common.h b/fs/exofs/common.h
index 7d88ef566213..9fdf02333c20 100644
--- a/fs/exofs/common.h
+++ b/fs/exofs/common.h
@@ -183,7 +183,7 @@ struct exofs_fcb {
#define EXOFS_INO_ATTR_SIZE sizeof(struct exofs_fcb)
/* This is the Attribute the fcb is stored in */
-static const struct __weak osd_attr g_attr_inode_data = ATTR_DEF(
+static const struct osd_attr g_attr_inode_data __maybe_unused = ATTR_DEF(
EXOFS_APAGE_FS_DATA,
EXOFS_ATTR_INODE_DATA,
EXOFS_INO_ATTR_SIZE);
diff --git a/fs/exofs/super.c b/fs/exofs/super.c
index b795c567b5e1..92771b9abffc 100644
--- a/fs/exofs/super.c
+++ b/fs/exofs/super.c
@@ -546,27 +546,24 @@ static int exofs_devs_2_odi(struct exofs_dt_device_info *dt_dev,
static int __alloc_dev_table(struct exofs_sb_info *sbi, unsigned numdevs,
struct exofs_dev **peds)
{
- struct __alloc_ore_devs_and_exofs_devs {
- /* Twice bigger table: See exofs_init_comps() and comment at
- * exofs_read_lookup_dev_table()
- */
- struct ore_dev *oreds[numdevs * 2 - 1];
- struct exofs_dev eds[numdevs];
- } *aoded;
struct exofs_dev *eds;
unsigned i;
- aoded = kzalloc(sizeof(*aoded), GFP_KERNEL);
- if (unlikely(!aoded)) {
+ /* Twice bigger table: See exofs_init_comps() and comment at
+ * exofs_read_lookup_dev_table()
+ * XXX: why -1?
+ */
+ sbi->oc.ods = kzalloc(sizeof(struct ore_dev) * (numdevs * 2 - 1) +
+ sizeof(struct exofs_dev) * numdevs, GFP_KERNEL);
+ if (unlikely(!sbi->oc.ods)) {
EXOFS_ERR("ERROR: failed allocating Device array[%d]\n",
numdevs);
return -ENOMEM;
}
- sbi->oc.ods = aoded->oreds;
- *peds = eds = aoded->eds;
+ *peds = eds = (void *)sbi->oc.ods[numdevs * 2 - 1];
for (i = 0; i < numdevs; ++i)
- aoded->oreds[i] = &eds[i].ored;
+ sbi->oc.ods[i] = &eds[i].ored;
return 0;
}