[Lustre-discuss] Facing issues in applying zero copy patch on rhel6.

aayush agrawal aayush.agrawal at calsoftinc.com
Mon Apr 7 05:16:03 PDT 2014


Hi,

Following are few questions which still remain unanswered:

 1. I am seeing that zero copy patch existed in lustre-2.1.2, In
    lustre/kernel-patches/patches directory for rhel5. But it has been
    removed in latest lustre 2.5.0. Is there any specific reason to
    remove it?
 2. If I am correct this code gets invoked from following location from
    obdfilter(correct me if I am wrong):
     1. lustre/obdfilter/filter_io_26.c line no:367 <snip>

                         /* I only set the page to be constant only if it
                          * is mapped to a contiguous underlying disk 
block(s).
                          * It will then make sure the corresponding device
                          * cache of raid5 will be overwritten by this page.
                          * - jay */
                         if ((rw == OBD_BRW_WRITE) &&
                             (nblocks == blocks_per_page) &&
mapping_cap_page_constant_write(inode->i_mapping))
                                SetPageConstant(page);

                     </snip>

 1. I want to use this zero copy patch in latest lustre 2.5.0(With
    kernel linux-2.6.32-358.18.1.el6). I could port patch to this latest
    kernel. But it looks like obdfilter module has been replaced in
    latest kernel which used to invoke zero copy changes as mentioned in
    point 2. I think its ofd module with which it got replaced(??). So
    latest lustre is not able to invoke zero copy changes(for eg:
    setting/clearing PG_constant etc.). Is there any different patch
    available for invoking these zero copy changes?
 2. Can you also suggest which newly added module in lustre-2.5.0 would
    require these changes?


Thanks,
Aayush

On 4/7/2014 4:50 PM, aayush agrawal wrote:
> Hi,
>
> I got both the errors resolved. Looks like there was some issue with 
> my lustre build process itself.
> So I think along with raid5-zerocopy-rhel6.patch, 
> raid5-stats-rhel6.patch was the only additional patch required.
>
> Thanks,
> Aayush
>
> On 3/24/2014 8:40 PM, aayush agrawal wrote:
>> Hi,
>>
>> I wanted to apply zero copy patch on rhel6 so I followed below steps:
>>
>>  1. Downloaded lustre-2.1.2 and corresponding kernel
>>     rpm(linux-2.6.32-220.17.1.el6). The OS I am using is CentOS 6.4.
>>  2. Applied kernel patches from lustre source code to kernel.
>>  3. Downloaded a zero copy patch for rhel6 from:
>>     https://github.com/Xyratex/lustre-stable/blob/b_neo_1.4.0/lustre/kernel_patches/patches/raid5-zerocopy-rhel6.patch
>>  4. Applied this patch to above kernel.
>>  5. Then I tried to compile this kernel but it gives undefined symbol
>>     errors for writes_zcopy and PageConstant.
>>      1. For writes_zcopy I found another patch on the same git hub
>>         link:
>>         https://github.com/Xyratex/lustre-stable/blob/b_neo_1.4.0/lustre/kernel_patches/patches/raid5-stats-rhel6.patch.
>>      2. For PageConstant I couldn't find any patch to rectify this
>>         error. Even I do not see usage of PG_Constant/SetPageConstant
>>         etc. in raid5-zerocopy-rhel6.patch which I think is essential.
>>  6. So my questions are:
>>      1. I think few patches are missing here. As mentioned above one
>>         of them would be raid5-stats-rhel6.patch please confirm.
>>      2. if confirmed, still there has to be at least one patch
>>         missing (to include PageConstant use). Are there any other
>>         patches to be applied before I apply raid5-stats-rhel6.patch
>>         and raid5-zerocopy-rhel6.patch.
>>      3. I am seeing that this zero copy patch existed in
>>         lustre-2.1.2, In lustre/kernel-patches/patches directory for
>>         rhel5. But it has been removed in latest lustre 2.5.0. Is
>>         there any specific reason to remove it.
>>
>> Thanks,
>> Aayush
>>
>>
>>
>>
>>
>>
>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lustre.org/pipermail/lustre-discuss-lustre.org/attachments/20140407/862e39ba/attachment.htm>


More information about the lustre-discuss mailing list