CVS log for xfs-linux-nodel/linux-2.6/xfs_ioctl32.c

[BACK] Up to [Development] / xfs-linux-nodel / linux-2.6

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.24 / (download) - annotate - [select for diffs], Mon Nov 19 14:46:07 2007 UTC (9 years, 11 months ago) by lachlan.longdrop.melbourne.sgi.com
Branch: MAIN
CVS Tags: HEAD
Changes since 1.23: +3 -0 lines
Diff to previous 1.23 (colored)

Undoes mod:     xfs-linux-melb:xfs-kern:29840a
Various fixups for xfs_bulkstat().

- sanity check for NULL user buffer in xfs_ioc_bulkstat[_compat]()

- remove the special case for XFS_IOC_FSBULKSTAT with count == 1.  This special
  case causes bulkstat to fail because the special case uses xfs_bulkstat_single()
  instead of xfs_bulkstat() and the two functions have different semantics.
  xfs_bulkstat() will return the next inode after the one supplied while skipping
  internal inodes (ie quota inodes).  xfs_bulkstate_single() will only lookup the
  inode supplied and return an error if it is an internal inode.

- in xfs_bulkstat(), need to initialise 'lastino' to the inode supplied so in cases
  were we return without examining any inodes the scan wont restart back at zero.

- sanity check for valid *ubcountp values.  Cannot sanity check for valid ubuffer
  here because some users of xfs_bulkstat() don't supply a buffer.

- checks against 'ubleft' (the space left in the user's buffer) should be against
  'statstruct_size' which is the supplied minimum object size.  The mixture of
  checks against statstruct_size and 0 was one of the reasons we were skipping
  inodes.

- if the formatter function returns BULKSTAT_RV_NOTHING and an error and the error
  is not ENOENT or EINVAL then we need to abort the scan.  ENOENT is for inodes that
  are no longer valid and we just skip them.  EINVAL is returned if we try to lookup
  an internal inode so we skip them too.  For a DMF scan if the inode and DMF
  attribute cannot fit into the space left in the user's buffer it would return
  ERANGE.  We didn't handle this error and skipped the inode.  We would continue to
  skip inodes until one fitted into the user's buffer or we completed the scan.

- put back the recalculation of agino (that got removed with the last fix) at the
  end of the while loop.  This is because the code at the start of the loop expects
  agino to be the last inode examined if it is non-zero.

- if we found some inodes but then encountered an error, return success this time
  and the error next time.  If the formatter aborted with ENOMEM we will now return
  this error but only if we couldn't read any inodes.  Previously if we encountered
  ENOMEM without reading any inodes we returned a zero count and no error which
  falsely indicated the scan was complete.
Merge of xfs-linux-melb:xfs-kern:30089a by kenmcd.

Revision 1.23 / (download) - annotate - [select for diffs], Fri Nov 2 03:09:06 2007 UTC (9 years, 11 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.22: +1 -0 lines
Diff to previous 1.22 (colored)

Fix up sparse warnings.

These are mostly locking annotations, marking things static,
casts where needed and declaring stuff in header files.
Merge of xfs-linux-melb:xfs-kern:30002a by kenmcd.

  Fix up sparse warnings.

Revision 1.22 / (download) - annotate - [select for diffs], Mon Oct 8 15:44:50 2007 UTC (10 years ago) by lachlan.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.21: +5 -3 lines
Diff to previous 1.21 (colored)

fix 32-bit compat ioctls for GETXFLAGS, SETXFLAGS, GETVERSION

XFS_IOC_GETVERSION, XFS_IOC_GETXFLAGS and XFS_IOC_SETXFLAGS all
take a "long" which changes size between 32 and 64 bit platforms.

So, the ioctl cmds that come in from a 32-bit app aren't as expected,
for example on GETXFLAGS,

        unknown cmd fd(3) cmd(80046601){t:'f';sz:4}

due to the size mismatch.

So, use instead the 32-bit version of the commands for compat ioctls,
and other than that it doesn't take any more manipulation.

Also, for both native and compat versions, just define them to
the values as defined in fs.h

Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Merge of xfs-linux-melb:xfs-kern:29849a by kenmcd.

  fix 32-bit compat ioctls for GETXFLAGS, SETXFLAGS, GETVERSION

Revision 1.21 / (download) - annotate - [select for diffs], Wed Sep 12 04:04:58 2007 UTC (10 years, 1 month ago) by tes.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)

Update 2.6.x-xfs to 2.6.23-rc4.

Also update fs/xfs with external mainline changes.
There were 12 such missing commits that I detected:

--------
commit ad690ef9e690f6c31f7d310b09ef1314bcec9033
Author: Al Viro <viro@ftp.linux.org.uk>
    xfs ioctl __user annotations

commit 20c2df83d25c6a95affe6157a4c9cac4cf5ffaac
Author: Paul Mundt <lethal@linux-sh.org>
    mm: Remove slab destructors from kmem_cache_create().

commit d0217ac04ca6591841e5665f518e38064f4e65bd
Author: Nick Piggin <npiggin@suse.de>
    mm: fault feedback #1

commit 54cb8821de07f2ffcd28c380ce9b93d5784b40d7
Author: Nick Piggin <npiggin@suse.de>
    mm: merge populate and nopage into fault (fixes nonlinear)

commit d00806b183152af6d24f46f0c33f14162ca1262a
Author: Nick Piggin <npiggin@suse.de>
    mm: fix fault vs invalidate race for linear mappings

commit a569425512253992cc64ebf8b6d00a62f986db3e
Author: Christoph Hellwig <hch@infradead.org>
    knfsd: exportfs: add exportfs.h header

commit 831441862956fffa17b9801db37e6ea1650b0f69
Author: Rafael J. Wysocki <rjw@sisk.pl>
    Freezer: make kernel threads nonfreezable by default

commit 8e1f936b73150f5095448a0fee6d4f30a1f9001d
Author: Rusty Russell <rusty@rustcorp.com.au>
    mm: clean up and kernelify shrinker registration

commit 5ffc4ef45b3b0a57872f631b4e4ceb8ace0d7496
Author: Jens Axboe <jens.axboe@oracle.com>
    sendfile: remove .sendfile from filesystems that use generic_file_sendfile()

commit 8bb7844286fb8c9fce6f65d8288aeb09d03a5e0d
Author: Rafael J. Wysocki <rjw@sisk.pl>
    Add suspend-related notifications for CPU hotplug

commit 59c51591a0ac7568824f541f57de967e88adaa07
Author: Michael Opdenacker <michael@free-electrons.com>
    Fix occurrences of "the the "

commit 0ceb331433e8aad9c5f441a965d7c681f8b9046f
Author: Dmitriy Monakhov <dmonakhov@openvz.org>
    mm: move common segment checks to separate helper function
--------
Merge of xfs-linux-melb:xfs-kern:29656a by kenmcd.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Aug 24 16:06:08 2007 UTC (10 years, 2 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.19: +1 -2 lines
Diff to previous 1.19 (colored)

kill the v_flag member in struct bhv_vnode

All flags previous handled at the vnode level are not in the xfs_inode
where we already have a flags mechanisms and free bits for flags
previously in the vnode.


Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:29495a by kenmcd.

  move vnode flags to xfs inode.

Revision 1.19 / (download) - annotate - [select for diffs], Fri Aug 24 16:04:16 2007 UTC (10 years, 2 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.18: +3 -2 lines
Diff to previous 1.18 (colored)

call common xfs vnode-level helpers directly and remove vnode operations

Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:29493a by kenmcd.

  remove vnode operations.

Revision 1.18 / (download) - annotate - [select for diffs], Mon Jul 9 15:45:29 2007 UTC (10 years, 3 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.17: +201 -23 lines
Diff to previous 1.17 (colored)

Fix XFS_IOC_FSBULKSTAT{,_SINGLE} and XFS_IOC_FSINUMBERS in compat mode

* 32bit struct xfs_fsop_bulkreq has different size and layout of
  members, no matter the alignment. Move the code out of the #else
  branch (why was it there in the first place?). Define _32 variants of
  the ioctl constants.
* 32bit struct xfs_bstat is different because of time_t and on
  i386 because of different padding. Make xfs_bulkstat_one() accept a
  custom "output formatter" in the private_data argument which takes care
  of the xfs_bulkstat_one_compat() that takes care of the different
  layout in the compat case.
* i386 struct xfs_inogrp has different padding. Add a similar "output
  formatter" mecanism to xfs_inumbers().

Signed-Off-By: Michal Marek <mmarek@suse.cz>
Merge of xfs-linux-melb:xfs-kern:29102a by kenmcd.

  Fix XFS_IOC_FSBULKSTAT{,_SINGLE} and XFS_IOC_FSINUMBERS in compat mode

Revision 1.17 / (download) - annotate - [select for diffs], Mon Jul 9 15:44:42 2007 UTC (10 years, 3 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.16: +52 -5 lines
Diff to previous 1.16 (colored)

Compat ioctl handler for handle operations

32bit struct xfs_fsop_handlereq has different size and offsets (due to
pointers). TODO: case XFS_IOC_{FSSETDM,ATTRLIST,ATTRMULTI}_BY_HANDLE
still not handled.

Signed-Off-By: Michal Marek <mmarek@suse.cz>
Merge of xfs-linux-melb:xfs-kern:29101a by kenmcd.

  Compat ioctl handlers for several by-handle ioctls.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Jul 9 15:43:57 2007 UTC (10 years, 3 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.15: +41 -1 lines
Diff to previous 1.15 (colored)

Compat ioctl handler for XFS_IOC_FSGEOMETRY_V1.

i386 struct xfs_fsop_geom_v1 has no padding after the last
member, so the size is different.

Signed-Off-By: Michal Marek <mmarek@suse.cz>
Merge of xfs-linux-melb:xfs-kern:29100a by kenmcd.

  Compat ioctl handler for XFS_IOC_FSGEOMETRY_V1.

Revision 1.15 / (download) - annotate - [select for diffs], Fri Jan 12 15:07:09 2007 UTC (10 years, 9 months ago) by donaldd.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.14: +1 -1 lines
Diff to previous 1.14 (colored)

Merge up to 2.6.20-rc4
Merge of xfs-linux-melb:xfs-kern:27915a by kenmcd.

Revision 1.14 / (download) - annotate - [select for diffs], Fri Oct 13 16:13:54 2006 UTC (11 years ago) by tes.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.13: +0 -1 lines
Diff to previous 1.13 (colored)

Merge up to 2.6.18
Merge of xfs-linux-melb:xfs-kern:27192a by kenmcd.

Revision 1.13 / (download) - annotate - [select for diffs], Tue May 30 15:56:57 2006 UTC (11 years, 4 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

Resolve a namespace collision on vnode/vnodeops for FreeBSD porters.
Merge of xfs-linux-melb:xfs-kern:26107a by kenmcd.

Revision 1.12 / (download) - annotate - [select for diffs], Wed Mar 29 00:08:44 2006 UTC (11 years, 6 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.11: +13 -9 lines
Diff to previous 1.11 (colored)

Fix compiler warning and small code inconsistencies in compat ioctl32 land.
Merge of xfs-linux-melb:xfs-kern:25590a by kenmcd.

Revision 1.11 / (download) - annotate - [select for diffs], Fri Mar 17 14:28:04 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.10: +1 -1 lines
Diff to previous 1.10 (colored)

Complete transition away from linvfs naming convention, finally.
Merge of xfs-linux-melb:xfs-kern:25474a by kenmcd.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Mar 6 14:21:40 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.9: +5 -5 lines
Diff to previous 1.9 (colored)

Switch over from linvfs names for sb/quotactl operations for consistent naming.
Merge of xfs-linux-melb:xfs-kern:25382a by kenmcd.

Revision 1.9 / (download) - annotate - [select for diffs], Wed Jan 25 00:34:27 2006 UTC (11 years, 9 months ago) by cattelan
Branch: MAIN
Changes since 1.8: +0 -1 lines
Diff to previous 1.8 (colored)

Bring the XFS code in sync with the changed from 2.6.16-rc1

Revision 1.8 / (download) - annotate - [select for diffs], Fri Sep 23 03:51:28 2005 UTC (12 years, 1 month ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.7: +12 -28 lines
Diff to previous 1.7 (colored)

Update license/copyright notices to match the prefered SGI boilerplate.
Merge of xfs-linux-melb:xfs-kern:23903a by kenmcd.

Revision 1.7 / (download) - annotate - [select for diffs], Mon Aug 15 18:18:30 2005 UTC (12 years, 2 months ago) by sandeen
Branch: MAIN
Changes since 1.6: +62 -3 lines
Diff to previous 1.6 (colored)

add handlers to fix xfs_flock_t alignment issues in compat ioctls
add handlers to fix xfs_flock_t alignment issues in compat ioctls

Revision 1.6 / (download) - annotate - [select for diffs], Mon Jun 20 03:43:15 2005 UTC (12 years, 4 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.5: +0 -2 lines
Diff to previous 1.5 (colored)

Makes more sense to use the fsxattr interface instead of adding new ioctls for project IDs.
Merge of xfs-linux-melb:xfs-kern:22899a by kenmcd.

Revision 1.5 / (download) - annotate - [select for diffs], Thu Mar 24 05:02:44 2005 UTC (12 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.4: +2 -0 lines
Diff to previous 1.4 (colored)

Add a get/set interface for XFS project identifiers.
Merge of xfs-linux-melb:xfs-kern:21938a by kenmcd.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Mar 11 13:52:58 2005 UTC (12 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.3: +19 -10 lines
Diff to previous 1.3 (colored)

Fix directory inodes ioctl compat code, minor code consistency cleanups.
Merge of xfs-linux-melb:xfs-kern:21810a by kenmcd.

Revision 1.3 / (download) - annotate - [select for diffs], Thu Mar 10 14:02:40 2005 UTC (12 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.2: +76 -75 lines
Diff to previous 1.2 (colored)

Compat/non-BKL ioctl transition, merged back via mainline from ak@suse.de.
Merge of xfs-linux-melb:xfs-kern:21800a by kenmcd.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Aug 27 07:23:31 2004 UTC (13 years, 2 months ago) by nathans
Branch: MAIN
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored)

Fix compiler warnings on IA64 builds in ioctl compat code.

Revision 1.1 / (download) - annotate - [select for diffs], Mon Aug 16 16:43:08 2004 UTC (13 years, 2 months ago) by hch
Branch: MAIN

Add 32bit ioctl translation
Add 32bit ioctl translation

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>