Skip to content

Commit

Permalink
ore: Make ore its own module
Browse files Browse the repository at this point in the history
Export everything from ore need exporting. Change Kbuild and Kconfig
to build ore.ko as an independent module. Import ore from exofs

Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
  • Loading branch information
Boaz Harrosh committed Aug 7, 2011
1 parent 8ff660a commit cf283ad
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 1 deletion.
5 changes: 4 additions & 1 deletion fs/exofs/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,8 @@
# Kbuild - Gets included from the Kernels Makefile and build system
#

exofs-y := ore.o inode.o file.o symlink.o namei.o dir.o super.o
# ore module library
obj-$(CONFIG_ORE) += ore.o

exofs-y := inode.o file.o symlink.o namei.o dir.o super.o
obj-$(CONFIG_EXOFS_FS) += exofs.o
4 changes: 4 additions & 0 deletions fs/exofs/Kconfig
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
config ORE
tristate

config EXOFS_FS
tristate "exofs: OSD based file system support"
depends on SCSI_OSD_ULD
select ORE
help
EXOFS is a file system that uses an OSD storage device,
as its backing storage.
Expand Down
15 changes: 15 additions & 0 deletions fs/exofs/ore.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@
#define ORE_DBGMSG2(M...) do {} while (0)
/* #define ORE_DBGMSG2 ORE_DBGMSG */

MODULE_AUTHOR("Boaz Harrosh <bharrosh@panasas.com>");
MODULE_DESCRIPTION("Objects Raid Engine ore.ko");
MODULE_LICENSE("GPL");

static u8 *_ios_cred(struct ore_io_state *ios, unsigned index)
{
return ios->comps->comps[index & ios->comps->single_comp].cred;
Expand Down Expand Up @@ -84,12 +88,14 @@ int ore_get_rw_state(struct ore_layout *layout, struct ore_components *comps,
*pios = ios;
return 0;
}
EXPORT_SYMBOL(ore_get_rw_state);

int ore_get_io_state(struct ore_layout *layout, struct ore_components *comps,
struct ore_io_state **ios)
{
return ore_get_rw_state(layout, comps, true, 0, 0, ios);
}
EXPORT_SYMBOL(ore_get_io_state);

void ore_put_io_state(struct ore_io_state *ios)
{
Expand All @@ -108,6 +114,7 @@ void ore_put_io_state(struct ore_io_state *ios)
kfree(ios);
}
}
EXPORT_SYMBOL(ore_put_io_state);

static void _sync_done(struct ore_io_state *ios, void *p)
{
Expand Down Expand Up @@ -236,6 +243,7 @@ int ore_check_io(struct ore_io_state *ios, u64 *resid)

return acumulated_lin_err;
}
EXPORT_SYMBOL(ore_check_io);

/*
* L - logical offset into the file
Expand Down Expand Up @@ -487,6 +495,7 @@ int ore_create(struct ore_io_state *ios)
out:
return ret;
}
EXPORT_SYMBOL(ore_create);

int ore_remove(struct ore_io_state *ios)
{
Expand All @@ -511,6 +520,7 @@ int ore_remove(struct ore_io_state *ios)
out:
return ret;
}
EXPORT_SYMBOL(ore_remove);

static int _write_mirror(struct ore_io_state *ios, int cur_comp)
{
Expand Down Expand Up @@ -617,6 +627,7 @@ int ore_write(struct ore_io_state *ios)
ret = ore_io_execute(ios);
return ret;
}
EXPORT_SYMBOL(ore_write);

static int _read_mirror(struct ore_io_state *ios, unsigned cur_comp)
{
Expand Down Expand Up @@ -685,6 +696,7 @@ int ore_read(struct ore_io_state *ios)
ret = ore_io_execute(ios);
return ret;
}
EXPORT_SYMBOL(ore_read);

int extract_attr_from_ios(struct ore_io_state *ios, struct osd_attr *attr)
{
Expand All @@ -706,6 +718,7 @@ int extract_attr_from_ios(struct ore_io_state *ios, struct osd_attr *attr)

return -EIO;
}
EXPORT_SYMBOL(extract_attr_from_ios);

static int _truncate_mirrors(struct ore_io_state *ios, unsigned cur_comp,
struct osd_attr *attr)
Expand Down Expand Up @@ -815,6 +828,8 @@ int ore_truncate(struct ore_layout *layout, struct ore_components *comps,
ore_put_io_state(ios);
return ret;
}
EXPORT_SYMBOL(ore_truncate);

const struct osd_attr g_attr_logical_length = ATTR_DEF(
OSD_APAGE_OBJECT_INFORMATION, OSD_ATTR_OI_LOGICAL_LENGTH, 8);
EXPORT_SYMBOL(g_attr_logical_length);

0 comments on commit cf283ad

Please sign in to comment.