All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
To: <jack@suse.com>
Cc: <linux-fsdevel@vger.kernel.org>, <linux-mtd@lists.infradead.org>,
	Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
Subject: Re: [RFC PATCH 00/25] Add quota supporting in ubifs
Date: Wed, 22 Jul 2015 19:23:54 +0800	[thread overview]
Message-ID: <55AF7D4A.2070706@cn.fujitsu.com> (raw)
In-Reply-To: <1437467876-22106-1-git-send-email-yangds.fnst@cn.fujitsu.com>

Hi Jan,
	I met an error message in my testing:
[104236.956171] __quota_error: 3600 callbacks suppressed
[104236.958772] Quota error (device ubifs): free_dqentry: Quota 
structure has offset to other block (0) than it should (5)

What does that mean? What's the kind of error? Could you give me
a clue for it?

Thanx a lot
Yang


On 07/21/2015 04:37 PM, Dongsheng Yang wrote:
> Hi Atem, Richard and others,
> 	This is a patchset to add quota supporting in ubifs.
> [1/25] - [7/25] are working to make quotactl to support filesystems
> which are running on char device.
>
> Others are about making ubifs to support quota
> Please help to review or test it. Any comment is welcome :).
>
> Hi Jan Kara,
> 	I am not sure I am using the quota APIs correctly, please
> help to correct me if I am wrong.
>
> Also you can get the code from:
> https://github.com/yangdongsheng/linux.git  ubifs_quota_v1
>
> 	My simple testing is shown as below:
> [root@atest-guest linux_compile]# mount -t ubifs -o usrquota,grpquota /dev/ubi0_0 /mnt/ubifs/
> [root@atest-guest linux_compile]# quotacheck -ug /mnt/ubifs
> [root@atest-guest linux_compile]# quotaon /mnt/ubifs
> [root@atest-guest linux_compile]# repquota /mnt/ubifs
> *** Report for user quotas on device /dev/ubi0_0
> Block grace time: 7days; Inode grace time: 7days
>                          Block limits                File limits
> User            used    soft    hard  grace    used  soft  hard  grace
> ----------------------------------------------------------------------
> root      --       0       0       0              1     0     0
> [root@atest-guest linux_compile]# setquota root 10 10 3 3 /mnt/ubifs
> [root@atest-guest linux_compile]# repquota /mnt/ubifs
> *** Report for user quotas on device /dev/ubi0_0
> Block grace time: 7days; Inode grace time: 7days
>                          Block limits                File limits
> User            used    soft    hard  grace    used  soft  hard  grace
> ----------------------------------------------------------------------
> root      --       0      10      10              1     3     3
> [root@atest-guest linux_compile]# touch /mnt/ubifs/{1,11,111}
> ubifs: warning, user file quota exceeded.
> [root@atest-guest linux_compile]# repquota /mnt/ubifs
> *** Report for user quotas on device /dev/ubi0_0
> Block grace time: 7days; Inode grace time: 7days
>                          Block limits                File limits
> User            used    soft    hard  grace    used  soft  hard  grace
> ----------------------------------------------------------------------
> root      -+       0      10      10              4     3     3  7days
> [root@atest-guest linux_compile]# rm -rf /mnt/ubifs/1*
> [root@atest-guest linux_compile]# repquota /mnt/ubifs
> *** Report for user quotas on device /dev/ubi0_0
> Block grace time: 7days; Inode grace time: 7days
>                          Block limits                File limits
> User            used    soft    hard  grace    used  soft  hard  grace
> ----------------------------------------------------------------------
> root      --       0      10      10              1     3     3
> [root@atest-guest linux_compile]# dd if=/dev/urandom of=/mnt/ubifs/data bs=1K count=11
> ubifs: warning, user block quota exceeded.
> 11+0 records in
> 11+0 records out
> 11264 bytes (11 kB) copied, 0.216498 s, 52.0 kB/s
> [root@atest-guest linux_compile]# repquota /mnt/ubifs
> *** Report for user quotas on device /dev/ubi0_0
> Block grace time: 7days; Inode grace time: 7days
>                          Block limits                File limits
> User            used    soft    hard  grace    used  soft  hard  grace
> ----------------------------------------------------------------------
> root      +-      11      10      10  7days       2     3     3
> [root@atest-guest linux_compile]# rm -rf /mnt/ubifs/data
> [root@atest-guest linux_compile]# repquota /mnt/ubifs
> *** Report for user quotas on device /dev/ubi0_0
> Block grace time: 7days; Inode grace time: 7days
>                          Block limits                File limits
> User            used    soft    hard  grace    used  soft  hard  grace
> ----------------------------------------------------------------------
> root      --       0      10      10              1     3     3
>
>
> Dongsheng Yang (25):
>    fs: introduce a ->s_cdev field into struct super_block
>    ubi: introduce a interface to get cdev in ubi_volume
>    ubifs: fill sb->s_cdev in ubifs_fill_super()
>    fs: super: introduce the functions to get super by cdev reference
>    fs: char_dev: introduce lookup_cdev function to find cdev by name
>    fs: dquot: skip invalidate_bdev if bdev is NULL
>    fs: quota: make quota support fs which is running on char dev
>    ubifs: fix a typo in comment of ubifs_budget_req
>    ubifs: extend budget for blocks
>    ubifs: fill ->s_dev in ubifs_fill_super
>    ubifs: export read_block() from file.c
>    ubifs: introduce quota related mount options
>    ubifs: introduce a field named as budgeted to ubifs_inode
>    ubifs: implement IO functions for quota files
>    ubifs: disable quota in ubifs_put_super
>    ubifs: write quota back in ubifs_sync
>    ubifs: suspend & resume quota properly in ubifs_remount
>    ubifs: record quota information about inode in ubifs_new_inode
>    ubifs: free quota inode information in ubifs_evict_inode
>    ubifs: alloc quota space in ubifs_write_begin
>    ubifs: free quota space in do_truncation and unlink
>    ubifs: adapt quota space informatin in do_setattr
>    ubifs: transfer quota information in changing owner or group
>    ubifs: implement ubifs_qctl_operations for quotactl
>    ubifs: make ubifs to support quota
>
>   drivers/mtd/ubi/kapi.c  |   6 +
>   fs/char_dev.c           |  72 ++++++++++
>   fs/quota/dquot.c        |   3 +-
>   fs/quota/quota.c        |  30 +++--
>   fs/super.c              |  45 +++++++
>   fs/ubifs/budget.c       |   4 +
>   fs/ubifs/debug.c        |   2 +
>   fs/ubifs/dir.c          |  24 +++-
>   fs/ubifs/file.c         |  56 +++++++-
>   fs/ubifs/ioctl.c        |   1 +
>   fs/ubifs/super.c        | 352 +++++++++++++++++++++++++++++++++++++++++++++++-
>   fs/ubifs/ubifs.h        |  19 ++-
>   include/linux/fs.h      |   5 +
>   include/linux/mtd/ubi.h |   1 +
>   14 files changed, 597 insertions(+), 23 deletions(-)
>

  parent reply	other threads:[~2015-07-22 11:29 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-21  8:37 [RFC PATCH 00/25] Add quota supporting in ubifs Dongsheng Yang
2015-07-21  8:37 ` [PATCH 01/25] fs: introduce a ->s_cdev field into struct super_block Dongsheng Yang
2015-07-21  8:37 ` [PATCH 02/25] ubi: introduce a interface to get cdev in ubi_volume Dongsheng Yang
2015-07-21  8:37 ` [PATCH 03/25] ubifs: fill sb->s_cdev in ubifs_fill_super() Dongsheng Yang
2015-07-21  8:37 ` [PATCH 04/25] fs: super: introduce the functions to get super by cdev reference Dongsheng Yang
2015-07-21  9:04   ` Jan Kara
2015-07-22  0:37     ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 05/25] fs: char_dev: introduce lookup_cdev function to find cdev by name Dongsheng Yang
2015-07-21  9:20   ` Jan Kara
2015-07-21  8:37 ` [PATCH 06/25] fs: dquot: skip invalidate_bdev if bdev is NULL Dongsheng Yang
2015-07-21  8:37 ` [PATCH 07/25] fs: quota: make quota support fs which is running on char dev Dongsheng Yang
2015-07-21  8:37   ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 08/25] ubifs: fix a typo in comment of ubifs_budget_req Dongsheng Yang
2015-07-21  8:37   ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 09/25] ubifs: extend budget for blocks Dongsheng Yang
2015-07-21  8:37   ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 10/25] ubifs: fill ->s_dev in ubifs_fill_super Dongsheng Yang
2015-07-21  8:37 ` [PATCH 11/25] ubifs: export read_block() from file.c Dongsheng Yang
2015-07-21 20:36   ` Richard Weinberger
2015-07-22  0:41     ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 12/25] ubifs: introduce quota related mount options Dongsheng Yang
2015-07-21 20:39   ` Richard Weinberger
2015-07-22  0:41     ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 13/25] ubifs: introduce a field named as budgeted to ubifs_inode Dongsheng Yang
2015-07-21  8:37   ` Dongsheng Yang
2015-07-21 20:47   ` Richard Weinberger
2015-07-22  0:56     ` Dongsheng Yang
2015-07-22  6:22       ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 14/25] ubifs: implement IO functions for quota files Dongsheng Yang
2015-07-21  8:37 ` [PATCH 15/25] ubifs: disable quota in ubifs_put_super Dongsheng Yang
2015-07-21  8:37 ` [PATCH 16/25] ubifs: write quota back in ubifs_sync Dongsheng Yang
2015-07-21  8:37 ` [PATCH 17/25] ubifs: suspend & resume quota properly in ubifs_remount Dongsheng Yang
2015-07-21  8:37   ` Dongsheng Yang
2015-07-21  8:37 ` [PATCH 18/25] ubifs: record quota information about inode in ubifs_new_inode Dongsheng Yang
2015-07-21  8:37 ` [PATCH 19/25] ubifs: free quota inode information in ubifs_evict_inode Dongsheng Yang
2015-07-21  8:37 ` [PATCH 20/25] ubifs: alloc quota space in ubifs_write_begin Dongsheng Yang
2015-07-21  8:37 ` [PATCH 21/25] ubifs: free quota space in do_truncation and unlink Dongsheng Yang
2015-07-21  8:37 ` [PATCH 22/25] ubifs: adapt quota space informatin in do_setattr Dongsheng Yang
2015-07-21  8:37 ` [PATCH 23/25] ubifs: transfer quota information in changing owner or group Dongsheng Yang
2015-07-21  8:37 ` [PATCH 24/25] ubifs: implement ubifs_qctl_operations for quotactl Dongsheng Yang
2015-07-21  8:37 ` [PATCH 25/25] ubifs: make ubifs to support quota Dongsheng Yang
2015-07-21  8:58 ` [RFC PATCH 00/25] Add quota supporting in ubifs Jan Kara
2015-07-22  0:56   ` Dongsheng Yang
2015-07-21 20:50 ` Richard Weinberger
2015-07-22  1:11   ` Dongsheng Yang
2015-07-21 21:01 ` Richard Weinberger
2015-07-22  0:58   ` Dongsheng Yang
2015-07-21 21:15 ` Richard Weinberger
2015-07-22  0:58   ` Dongsheng Yang
2015-07-22  6:58     ` Richard Weinberger
2015-07-22 11:23 ` Dongsheng Yang [this message]
2015-07-22 14:13   ` Jan Kara

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=55AF7D4A.2070706@cn.fujitsu.com \
    --to=yangds.fnst@cn.fujitsu.com \
    --cc=jack@suse.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.