From: Kai Bankett <chaosman@ontika.net>
To: linux-fsdevel@vger.kernel.org
Subject: QNX EFS Driver
Date: Thu, 22 Mar 2012 19:24:35 +0100 [thread overview]
Message-ID: <4F6B6E63.8060200@ontika.net> (raw)
Hi together,
I did not lazily put my legs up ... (in case someone got that impression)
Had to reverse engineer another QNX filesystem first. (for what I want
to achieve with all that QNX stuff)
However, at that stage I greatly could need some inspiration by you on
how to improve driver quality. (not the nicest peace of code I ever
wrote ...)
The QNX EFS Filesystem is used in flash devices and created during the
build process. The EFS file is the flashed onto the flash chips in
embedded designs.
Due to the fact that the QNX EFS Filesystem is not using any fixed
blocks and just some fixed structures, I started fighting against the
buffer head blocksize.
I think I could pretty up the code a lot if there's any way to read N
Bytes from a device at position X.
Already started to look around, but could not really find something
giving me direct position access to a device.
Well, maybe there's a even better way to solve things? (so feedback
very, very welcome)
But first here's the patch (as it currently is):
http://a6.ontika.net/patches/efs-patch-v3.gz
At least I would be extremly thankful if someone could point me some
direction on how to better solve the chunkreading in qnxefs_file_read().
It's currently buffer_head based with a blocksize of 512kb. The QNX EFS
- at least the files I got hold of - uses 16384 byte Blocks in 262144
byte logical units.
So a file is split into chunks of up to 0x4000 size, but that chunks can
vary in size. (in case of the end of a logical unit, file end etc.)
Hope I am not boring you too much with all my QNX stuff ;)
Thanks,
Kai
next reply other threads:[~2012-03-22 18:24 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-22 18:24 Kai Bankett [this message]
2012-03-23 13:28 ` QNX EFS Driver Matthew Wilcox
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=4F6B6E63.8060200@ontika.net \
--to=chaosman@ontika.net \
--cc=linux-fsdevel@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).