Distributed Replicated Block Device (DRBD) development
 help / color / mirror / Atom feed
From: Lars Ellenberg <Lars.Ellenberg@linbit.com>
To: drbd-dev@lists.linbit.com
Subject: [Drbd-dev] Re: DRBD-filesystem interaction
Date: Fri, 25 Aug 2006 07:57:22 +0200	[thread overview]
Message-ID: <20060825055722.GC8443@soda.linbit> (raw)
In-Reply-To: <1156443913.44edef0904c2c@mail.cs.umass.edu>

/ 2006-08-24 14:25:13 -0400
\ gniv@cs.umass.edu:
> Hi,
> 
> I am a student who is looking to understand how DRBD interacts with
> the file system for a project.

it does not. the file system interacts with us...
we are a block device, we don't know nothing about file systems.
"something" submits a block request (generic_make_request, submit_bio
and the like in the generic kernel code), which ends up in
drbd_make_request_*, where we do the housekeeping and send the data to
our peer, and submit it locally to the layers below us and so on.

but we don't care at all about what is being written,
and whether it is a file system or anything else that is writing to us.

> I have looked through the code, but could use some help (maybe a basic
> overview) figuring out the flow of operations from the time the
> operating system opens a file and writes to it, to DRBD performing
> replication; i.e. how DRBD listens to/intercepts system calls.

it does not.
we are a block device driver, we register as such (register_blkdev).
any block device has a request queue, and we register our custom
make_request_fn on it: blk_queue_make_request(q, drbd_make_request_26);

that is all there is to it to get requests delivered to us.

-- 
: Lars Ellenberg                                  Tel +43-1-8178292-55 :
: LINBIT Information Technologies GmbH            Fax +43-1-8178292-82 :
: Schoenbrunner Str. 244, A-1120 Vienna/Europe   http://www.linbit.com :

      reply	other threads:[~2006-08-25  5:57 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-24 18:25 [Drbd-dev] DRBD-filesystem interaction gniv
2006-08-25  5:57 ` Lars Ellenberg [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060825055722.GC8443@soda.linbit \
    --to=lars.ellenberg@linbit.com \
    --cc=drbd-dev@lists.linbit.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox