Coder Social home page Coder Social logo

mruijter / btier-2.x Goto Github PK

View Code? Open in Web Editor NEW
8.0 8.0 2.0 125 KB

btier-2.X - A data tiering block device. The 2.X code only supports BLOCKIO however the code outperforms btier-1.X.

License: GNU General Public License v2.0

Makefile 1.20% C 77.78% Shell 4.03% Python 16.99%

btier-2.x's People

Contributors

markruijter avatar mruijter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

btier-2.x's Issues

Another mainline backporting issue (bio_clone_fast)

Hi,

Redhat backported another mainline kernel change from Feb 4th, 2022 that changed how bio_clone_fast behaves in RHEL 8. The mainline commit is here:

torvalds/linux@56b4b5a

I'm not sure what to use/set for the gfp_t allocation flags but I will try and look further when I have time. Any assistance would be appreciated.

Hal

required kernel release

In Readme it says
"IMPORTANT: BTIER-2.X works / is supported with a very recent kernel!!!
Use at least 3.14 or higher."

But I get the error below on kernel 4.15. What I found at the link https://www.kernel.org/doc/html/ the function "blk_queue_flag_clear" is available from release 4.17.

Which is the lowest required kernel release for the btier 2.2.1 /master?

btier-2.X-2.2.0/kernel/btier/btier_sysfs.c:199:4: error: implicit declaration of function ‘blk_queue_flag_clear’; did you mean ‘queue_flag_clear’? [-Werror=implicit-function-declaration]
blk_queue_flag_clear(QUEUE_FLAG_DISCARD,
^~~~~~~~~~~~~~~~~~~~
queue_flag_clear
xxxx/btier-2.X-2.2.0/kernel/btier/btier_sysfs.c:211:4: error: implicit declaration of function ‘blk_queue_flag_set’; did you mean ‘queue_flag_set’? [-Werror=implicit-function-declaration]
blk_queue_flag_set(QUEUE_FLAG_DISCARD,
^~~~~~~~~~~~~~~~~~
queue_flag_set

Problems compiling on Alma Linux 8.6 (RHEL 8 clone)

Hi Mark,

I'm having problems trying to compile this on a fresh Alma Linux 8.6 install. I get the error when it hits part_stat_lock:

CC [M] /root/btier-2.X/kernel/btier/btier_request.o
In file included from ././include/linux/compiler_types.h:58,
from :
/root/btier-2.X/kernel/btier/btier_request.c: In function 'tier_make_request':
./include/linux/compiler-gcc.h:16:19: error: expected expression before 'asm'
#define barrier() asm volatile("": : :"memory")
^~~~~~~
./include/linux/preempt.h:246:29: note: in expansion of macro 'barrier'
#define preempt_disable() barrier()
^~~~~~~
./include/linux/genhd.h:323:26: note: in expansion of macro 'preempt_disable'
#define part_stat_lock() preempt_disable()
^~~~~~~~~~~~~~~
/root/btier-2.X/kernel/btier/btier_request.c:746:8: note: in expansion of macro 'part_stat_lock'
cpu = part_stat_lock();
^~~~~~~~~~~~~~

I'm not sure what is wrong since that code has been around more or less since btier 1.3.11 and that its basically a linux header macro so it should be fine with the gcc version installed.

The kernel is 4.18.0-372.16.1.el8_6.x86_64 - but it seems to have a lot of 5.x features as well. I had to edit reactivate_disk to be reactivate_disk_size for example.

This also happens with 1.3.11 as well at the same spot. Any help would be greatly appreciated. Thanks!

Hal

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.