mbox series

[v2,00/10] fs: NTFS read-write driver GPL implementation by Paragon Software.

Message ID 904d985365a34f0787a4511435417ab3@paragon-software.com (mailing list archive)
Headers show
Series fs: NTFS read-write driver GPL implementation by Paragon Software. | expand

Message

Konstantin Komarov Aug. 21, 2020, 4:24 p.m. UTC
This patch adds NTFS Read-Write driver to fs/ntfs3.

Having decades of expertise in commercial file systems development and huge
test coverage, we at Paragon Software GmbH want to make our contribution to
the Open Source Community by providing implementation of NTFS Read-Write
driver for the Linux Kernel.

This is fully functional NTFS Read-Write driver. Current version works with
NTFS(including v3.1) and normal/compressed/sparse files and supports journal replaying.

We plan to support this version after the codebase once merged, and add new
features and fix bugs. For example, full journaling support over JBD will be
added in later updates.

v2:
 - patch splitted to chunks (file-wise)
 - build issues fixed
 - sparse and checkpatch.pl errors fixed
 - NULL pointer dereference on mkfs.ntfs-formatted volume mount fixed 
 - cosmetics + code cleanup

Konstantin Komarov (10):
  fs/ntfs3: Add headers and misc files
  fs/ntfs3: Add initialization of super block
  fs/ntfs3: Add bitmap
  fs/ntfs3: Add file operations and implementation
  fs/ntfs3: Add attrib operations
  fs/ntfs3: Add compression
  fs/ntfs3: Add NTFS journal
  fs/ntfs3: Add Kconfig, Makefile and doc
  fs/ntfs3: Add NTFS3 in fs/Kconfig and fs/Makefile
  fs/ntfs3: Add MAINTAINERS

 Documentation/filesystems/ntfs3.rst |   93 +
 MAINTAINERS                         |    7 +
 fs/Kconfig                          |    1 +
 fs/Makefile                         |    1 +
 fs/ntfs3/Kconfig                    |   23 +
 fs/ntfs3/Makefile                   |   11 +
 fs/ntfs3/attrib.c                   | 1285 +++++++
 fs/ntfs3/attrlist.c                 |  455 +++
 fs/ntfs3/bitfunc.c                  |  144 +
 fs/ntfs3/bitmap.c                   | 1545 ++++++++
 fs/ntfs3/debug.h                    |   77 +
 fs/ntfs3/dir.c                      |  529 +++
 fs/ntfs3/file.c                     | 1179 ++++++
 fs/ntfs3/frecord.c                  | 2179 +++++++++++
 fs/ntfs3/fslog.c                    | 5217 +++++++++++++++++++++++++++
 fs/ntfs3/fsntfs.c                   | 2196 +++++++++++
 fs/ntfs3/index.c                    | 2640 ++++++++++++++
 fs/ntfs3/inode.c                    | 2068 +++++++++++
 fs/ntfs3/lznt.c                     |  449 +++
 fs/ntfs3/namei.c                    |  566 +++
 fs/ntfs3/ntfs.h                     | 1253 +++++++
 fs/ntfs3/ntfs_fs.h                  |  965 +++++
 fs/ntfs3/record.c                   |  612 ++++
 fs/ntfs3/run.c                      | 1188 ++++++
 fs/ntfs3/super.c                    | 1409 ++++++++
 fs/ntfs3/upcase.c                   |   78 +
 fs/ntfs3/xattr.c                    |  968 +++++
 27 files changed, 27138 insertions(+)
 create mode 100644 Documentation/filesystems/ntfs3.rst
 create mode 100644 fs/ntfs3/Kconfig
 create mode 100644 fs/ntfs3/Makefile
 create mode 100644 fs/ntfs3/attrib.c
 create mode 100644 fs/ntfs3/attrlist.c
 create mode 100644 fs/ntfs3/bitfunc.c
 create mode 100644 fs/ntfs3/bitmap.c
 create mode 100644 fs/ntfs3/debug.h
 create mode 100644 fs/ntfs3/dir.c
 create mode 100644 fs/ntfs3/file.c
 create mode 100644 fs/ntfs3/frecord.c
 create mode 100644 fs/ntfs3/fslog.c
 create mode 100644 fs/ntfs3/fsntfs.c
 create mode 100644 fs/ntfs3/index.c
 create mode 100644 fs/ntfs3/inode.c
 create mode 100644 fs/ntfs3/lznt.c
 create mode 100644 fs/ntfs3/namei.c
 create mode 100644 fs/ntfs3/ntfs.h
 create mode 100644 fs/ntfs3/ntfs_fs.h
 create mode 100644 fs/ntfs3/record.c
 create mode 100644 fs/ntfs3/run.c
 create mode 100644 fs/ntfs3/super.c
 create mode 100644 fs/ntfs3/upcase.c
 create mode 100644 fs/ntfs3/xattr.c

Comments

Joe Perches Aug. 21, 2020, 7:21 p.m. UTC | #1
On Fri, 2020-08-21 at 16:24 +0000, Konstantin Komarov wrote:
> This patch adds NTFS Read-Write driver to fs/ntfs3.

Thanks.
Proper ntfs read/write support will be great addition.

Trivia:

If this patchset is submitted again with a new version,
please use something like "git format-patch --cover-letter"
and "git send-email" so all parts of the patches and replies
have the a single message thread to follow.

That will add an "in-reply-to" header of the 0/m patch
message-id to all n/m parts.

One style oddity I noticed is the use of goto labels in
favor of if block indentation.  It's not terrible style,
just unusual for kernel code.
Konstantin Komarov Aug. 27, 2020, 4:12 p.m. UTC | #2
From: Joe Perches <joe@perches.com>
Sent: Friday, August 21, 2020 10:21 PM
> 
> On Fri, 2020-08-21 at 16:24 +0000, Konstantin Komarov wrote:
> > This patch adds NTFS Read-Write driver to fs/ntfs3.
> 
> Thanks.
> Proper ntfs read/write support will be great addition.
> 
> Trivia:
> 
> If this patchset is submitted again with a new version,
> please use something like "git format-patch --cover-letter"
> and "git send-email" so all parts of the patches and replies
> have the a single message thread to follow.
> 
> That will add an "in-reply-to" header of the 0/m patch
> message-id to all n/m parts.
> 

Hi Joe! Thanks a lot. Will use git send-email for V3. format-patch and --cover-letter have been already used for v2.

> One style oddity I noticed is the use of goto labels in
> favor of if block indentation.  It's not terrible style,
> just unusual for kernel code.
> 

AFAIK goto's are being quite widely used in kernel code as well. However V3 will introduce several goto's replacements with if blocks.

Thanks!