Re: CEPH build
Hi, resending my letter. Thank you for the attention. Best regards, Vladislav Odintsov From: Sage Weil Sent: Monday, December 28, 2015 19:49 To: Odintsov Vladislav Subject: Re: CEPH build Can you resend this to ceph-devel, and copy ad...@redhat.com? On Fri, 25 Dec 2015, Odintsov Vladislav wrote: > > Hi, Sage! > > > I'm working at Cloud provider as a system engineer, and now > I'm trying to build different versions of CEPH (0.94, 9.2, 10.0) with libxio > enabled, and I've got a problem with understanding, how do ceph maintainers > create official tarballs and builds from git repo. > > I saw you as a maintainer of build related files in a repo, and thought you > can help me :) If I'm wrong, please, say me, who can do it. > > I've found very many information sources with different description of ceph > build process: > > - https://github.com/ceph/ceph-build > > - https://github.com/ceph/autobuild-ceph > > - documentation on ceph.docs. > > > But I'm unable to get the same tarball as > at http://download.ceph.com/tarballs/ > > for example for version v0.94.5. What else should I read? Or, maybe there is > some magic...) > > > Actually, I want understand how official builds are made (which tools), I'd > like to go through all build related steps by myself to understand the > upstream building process. > > > Thanks a lot for your help! > > > > Best regards, > > Vladislav Odintsov -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Ceph Build Using CMake Update
Ceph Community, Last November I presented a speed up of Ceph's build by switching from autotools to CMake. I have been able to build core ceph components and just updated my work. One problem I noticed in testing is that when the fastcgi and/or curl development libraries are not present, CMake runs sucessfully but has compiled errors when building it instead of print a warning or disable the rados gateway. Before you build please make sure all necessary build pre-requitsites are met. I would love feedback and input on future editions and problems! https://github.com/linuxbox2/linuxbox-ceph/tree/cmake -Ali -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 9/9] ceph: build osd request message later for writepages
Hold off building the osd request message in ceph_writepages_start() until just before it will be submitted to the osd client for execution. We'll still create the request and allocate the page pointer array after we learn we have at least one page to write. A local variable will be used to keep track of the allocated array of pages. Wait until just before submitting the request for assigning that page array pointer to the request message. Create ands use a new function osd_req_op_extent_update() whose purpose is to serve this one spot where the length value supplied when an osd request's op was initially formatted might need to get changed (reduced, never increased) before submitting the request. Previously, ceph_writepages_start() assigned the message header's data length because of this update. That's no longer necessary, because ceph_osdc_build_request() will recalculate the right value to use based on the content of the ops in the request. Signed-off-by: Alex Elder --- fs/ceph/addr.c | 59 ++- include/linux/ceph/osd_client.h |1 + net/ceph/osd_client.c | 13 + 3 files changed, 47 insertions(+), 26 deletions(-) diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c index 125d0a8..e0dd74c 100644 --- a/fs/ceph/addr.c +++ b/fs/ceph/addr.c @@ -737,10 +737,14 @@ retry: while (!done && index <= end) { struct ceph_osd_req_op ops[2]; + int num_ops = do_sync ? 2 : 1; + struct ceph_vino vino; unsigned i; int first; pgoff_t next; int pvec_pages, locked_pages; + struct page **pages = NULL; + mempool_t *pool = NULL; /* Becomes non-null if mempool used */ struct page *page; int want; u64 offset, len; @@ -824,16 +828,19 @@ get_more_pages: break; } - /* ok */ + /* +* We have something to write. If this is +* the first locked page this time through, +* allocate an osd request and a page array +* that it will use. +*/ if (locked_pages == 0) { - struct ceph_vino vino; - int num_ops = do_sync ? 2 : 1; size_t size; - struct page **pages; - mempool_t *pool = NULL; + + BUG_ON(pages); /* prepare async write request */ - offset = (u64) page_offset(page); + offset = (u64)page_offset(page); len = wsize; req = ceph_writepages_osd_request(inode, offset, &len, snapc, @@ -845,11 +852,6 @@ get_more_pages: break; } - vino = ceph_vino(inode); - ceph_osdc_build_request(req, offset, - num_ops, ops, snapc, vino.snap, - &inode->i_mtime); - req->r_callback = writepages_finish; req->r_inode = inode; @@ -858,16 +860,9 @@ get_more_pages: pages = kmalloc(size, GFP_NOFS); if (!pages) { pool = fsc->wb_pagevec_pool; - pages = mempool_alloc(pool, GFP_NOFS); - WARN_ON(!pages); + BUG_ON(!pages); } - - req->r_data_out.pages = pages; - req->r_data_out.pages_from_pool = !!pool; - req->r_data_out.type = CEPH_OSD_DATA_TYPE_PAGES; - req->r_data_out.length = len; - req->r_data_out.alignment = 0; } /* note position of first page in pvec */ @@ -885,7 +880,7 @@ get_more_pages: } set_page_writeback(page); - req->r_data_out.pages[locked_pages] = page; + pages[locked_pages] = page; locked_pages++; next = page->index + 1; } @@ -914,18 +909,30 @@ get_more_pages: pvec.nr -= i-first; } - /* submit the write */ - offset = page_offset(req->r
Re: ceph build error on leveldb
On Thu, Apr 5, 2012 at 10:58 AM, Feiyi Wang wrote: > hi all > > I am new to ceph and is trying to give it a spin for testing: > on both master or stable branch, the configure script gives the > WARNING (CentOS 6) > > > config.status: executing depfiles commands > config.status: executing libtool commands > === configuring in src/leveldb (/home/fwang2/ceph/src/leveldb) > configure: WARNING: no configuration information is in src/leveldb > > and the following make fails: After checking out the source tree, run: git submodule init git submodule update That should update the leveldb submodule. Yehuda -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
ceph build error on leveldb
hi all I am new to ceph and is trying to give it a spin for testing: on both master or stable branch, the configure script gives the WARNING (CentOS 6) config.status: executing depfiles commands config.status: executing libtool commands === configuring in src/leveldb (/home/fwang2/ceph/src/leveldb) configure: WARNING: no configuration information is in src/leveldb and the following make fails: Making all in leveldb make[3]: Entering directory `/mnt/hgfs/f7b/ceph/src/leveldb' make[3]: *** No rule to make target `all'. Stop I cannot find any hints from README on how leveldb is supposed to be configured or disabled ... I'd appreciate any help. thanks Feiyi -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
ceph build issues
Hi Stefan, Here's a quick summary of the issues right now with ceph rpm builds: - Inconsistent use of insserv vs pkgconfig throughout. I'm not sure if/when/where the init scripts should be configured. And the .spec file needs to do the right thing for non-suse dists as well. I've gotten mixed messages about what the right thing to do is here. - sles failes with -lcurses. The weird thing is that -lcurses isn't part of our Makefile. It's coming from a pkgconfig for something (i.e. the build environment). - The fedora environments in build.opensuse.org don't have the redhat-rpm-config installed... see http://www.spinics.net/lists/ceph-devel/msg03793.html There is a workaround/hack in the .spec file right now that should be removed at some point. - There are a zillion rpmlint errors on the packages that do build successfully. No idea how important those are. The build results are at https://build.opensuse.org/package/show?package=ceph&project=home%3Aliewegas if you haven't found them already. Also, I should also mention that most of the stuff in the build.opensuse has been pulled back into the ceph.spec.in in git, but not everything. Thanks! sage -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html