Thread (46 messages) 46 messages, 3 authors, 2021-04-17

Re: [PATCH V6 03/13] common/xfs: Add helper to obtain fsxattr field value

From: Chandan Babu R <hidden>
Date: 2021-03-11 02:55:31
Also in: fstests

On 10 Mar 2021 at 11:43, Allison Henderson wrote:
On 3/8/21 10:01 PM, Chandan Babu R wrote:
quoted
This commit adds a helper function to obtain the value of a particular field
of an inode's fsxattr fields.

Signed-off-by: Chandan Babu R <redacted>
---
  common/xfs | 9 +++++++++
  1 file changed, 9 insertions(+)
diff --git a/common/xfs b/common/xfs
index 26ae21b9..130b3232 100644
--- a/common/xfs
+++ b/common/xfs
@@ -194,6 +194,15 @@ _xfs_get_file_block_size()
  	$XFS_INFO_PROG "$path" | grep realtime | sed -e 's/^.*extsz=\([0-9]*\).*$/\1/g'
  }
  +_xfs_get_fsxattr()
+{
+	local field="$1"
+	local path="$2"
+
+	local value=$($XFS_IO_PROG -c "stat" "$path" | grep "$field")
+	echo ${value##fsxattr.${field} = }
+}
+
In fiddling with the commands here, I think I may have noticed a bug.
I think you want to grep whole words only, or you may mistakenly match
sub words. Example:

root@garnet:/home/achender/work_area# field="extsize "
root@garnet:/home/achender/work_area# xfs_io -c "stat"
/mnt/scratch/test | grep "$field"
fsxattr.extsize = 0
fsxattr.cowextsize = 0

I think if you add the -w to the grep that fixes it:
root@garnet:/home/achender/work_area# xfs_io -c "stat"
/mnt/scratch/test | grep -w "$field"
fsxattr.extsize = 0

I think that's what you meant to do right?
Yes, that was the intended behaviour. Thanks for catching the bug and
suggesting the appropriate solution.

I will fix this.

Also, Thanks for reviewing the entire patchset.

--
chandan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help