public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Cc: linux-kernel@vger.kernel.org, Christoph Hellwig <hch@lst.de>
Subject: Re: [PATCH 17/25] vfat: move ioctl32 code to fs/fat/dir.c
Date: Mon, 7 Nov 2005 11:41:33 +0100	[thread overview]
Message-ID: <200511071141.34147.arnd@arndb.de> (raw)
In-Reply-To: <87pspernfe.fsf@devron.myhome.or.jp>

On Sünndag 06 November 2005 13:05, OGAWA Hirofumi wrote:
> Arnd Bergmann <arnd@arndb.de> writes:
> 
> > +#ifdef CONFIG_COMPAT
> > +/* vfat */
> > +#define	VFAT_IOCTL_READDIR_BOTH32	_IOR('r', 1, struct compat_dirent[2])
> > +#define	VFAT_IOCTL_READDIR_SHORT32	_IOR('r', 2, struct compat_dirent[2])
>           ^^^^^^
> 
> Please use a SPACE after #define, and kill a useless "/* vfat */".

ok.

> > +static long
> > +put_dirent32(struct dirent *d, struct compat_dirent __user * d32)
> > +{
> > +	if (!access_ok(VERIFY_WRITE, d32, sizeof(struct compat_dirent)))
> > +		return -EFAULT;
> > +
> > +	__put_user(d->d_ino, &d32->d_ino);
> > +	__put_user(d->d_off, &d32->d_off);
> > +	__put_user(d->d_reclen, &d32->d_reclen);
> > +	if (__copy_to_user(d32->d_name, d->d_name, d->d_reclen))
> > +		return -EFAULT;
> 
> Why don't we need to check the return value of __put_user()?

This is a bug in the code that I copied over, and it needs to be fixed,
thanks.

> > +	set_fs(KERNEL_DS);
> > +	ret = fat_dir_ioctl(file->f_dentry->d_inode, file, cmd, (unsigned long) &d);
> > +	set_fs(oldfs);
> > +	if (ret >= 0) {
> > +		ret |= put_dirent32(&d[0], p);
> > +		ret |= put_dirent32(&d[1], p + 1);
> 
> If "ret" is not 0, we can't use "|=" here?
> 
> This patch seems to have bugs, although original one too.

Right. In my patches I tried to change as little as possible to avoid
introducing new bugs, but this one is already so broken, that it's better
to do a clean implementation from scratch.

	Arnd <><

  reply	other threads:[~2005-11-07 10:39 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20051105162650.620266000@b551138y.boeblingen.de.ibm.com>
2005-11-05 16:26 ` [PATCH 01/25] compat: Remove leftovers from register_ioctl32_conversion Arnd Bergmann
2005-11-05 16:44   ` Al Viro
2005-11-05 17:04   ` Andi Kleen
2005-11-05 16:26 ` [PATCH 02/25] net: move socket ioctl32 to net/compat.c Arnd Bergmann
2005-11-05 16:26 ` [PATCH 03/25] net: improve ioctl32 dev_ioctl handling Arnd Bergmann
2005-11-05 16:26 ` [PATCH 04/25] net: move atm ioctl32 to net/atm/ioctl.c Arnd Bergmann
2005-11-05 16:26 ` [PATCH 05/25] net: move ppp specific ioctl32 handlers Arnd Bergmann
2005-11-05 16:26 ` [PATCH 06/25] mtd: move ioctl32 code to mtdchar.c Arnd Bergmann
2005-11-08 10:59   ` Jörn Engel
2005-11-08 18:10     ` Eric W. Biederman
2005-11-08 18:33       ` Jörn Engel
2005-11-08 18:45         ` Josh Boyer
2005-11-08 18:57         ` Thomas Gleixner
2005-11-08 22:21           ` Jörn Engel
2005-11-09  0:04             ` Thomas Gleixner
2005-11-08 19:03         ` David Woodhouse
2005-11-09 15:37         ` Eric W. Biederman
2005-11-09 15:48           ` Jörn Engel
2005-11-05 16:26 ` [PATCH 07/25] block: move ioctl32 code to drivers/block/ioctl.c Arnd Bergmann
2005-11-05 16:26 ` [PATCH 08/25] tty: move ioctl32 code over to vt_ioctl.c and tty_io.c Arnd Bergmann
2005-11-05 16:26 ` [PATCH 09/25] v4l: move ioctl32 handlers to drivers/media/ Arnd Bergmann
2005-11-06  4:13   ` Mauro Carvalho Chehab
2005-11-07 10:17     ` Arnd Bergmann
2005-11-12 14:35       ` Mauro Carvalho Chehab
2005-11-05 16:27 ` [PATCH 10/25] fs: move ext2 ioctl32 handlers into file systems Arnd Bergmann
2005-11-06  4:39   ` Christoph Hellwig
2005-11-07 10:24     ` Arnd Bergmann
2005-11-05 16:27 ` [PATCH 11/25] framebuffer: move ioctl32 code to fbmem.c Arnd Bergmann
2005-11-06  0:16   ` Antonino A. Daplas
2005-11-05 16:27 ` [PATCH 12/25] scsi: move SG_IO ioctl32 code to sg.c Arnd Bergmann
2005-11-05 16:44   ` James Bottomley
2005-11-05 19:19     ` Arnd Bergmann
2005-11-05 16:27 ` [PATCH 13/25] loop: move ioctl32 code to loop.c Arnd Bergmann
2005-11-07  3:33   ` Christoph Hellwig
2005-11-05 16:27 ` [PATCH 14/25] smbfs: simplify compat_ioctl handling Arnd Bergmann
2005-11-05 16:27 ` [PATCH 15/25] autofs: move ioctl32 to autofs{,4}/root.c Arnd Bergmann
2005-11-06  6:22   ` Ian Kent
2005-11-07 10:36     ` Arnd Bergmann
2005-11-07 16:02       ` Ian Kent
2005-11-08 16:23         ` Ian Kent
2005-11-05 16:27 ` [PATCH 16/25] ncpfs: move ioctl32 code to fs/ncpfs/ioctl.c Arnd Bergmann
2005-11-05 16:27 ` [PATCH 17/25] vfat: move ioctl32 code to fs/fat/dir.c Arnd Bergmann
2005-11-06 12:05   ` OGAWA Hirofumi
2005-11-07 10:41     ` Arnd Bergmann [this message]
2005-11-07  3:37   ` Christoph Hellwig
2005-11-07 10:42     ` Arnd Bergmann
2005-11-05 16:27 ` [PATCH 18/25] raw: move ioctl32 code to raw.c Arnd Bergmann
2005-11-06 13:59   ` Adrian Bunk
2005-11-07 10:43     ` Arnd Bergmann
2005-11-05 16:27 ` [PATCH 19/25] usbdevfs: move ioctl32 into devio.c Arnd Bergmann
2005-11-05 16:27 ` [PATCH 20/25] i2c: move ioctl32 code to i2c-dev.c Arnd Bergmann
2005-11-05 16:27 ` [PATCH 21/25] reiserfs: remove ioctl conversion code Arnd Bergmann
2005-11-05 16:27 ` [PATCH 22/25] serial: move ioctl32 code to tty_io.c Arnd Bergmann
2005-11-05 16:27 ` [PATCH 23/25] cdrom: move ioctl32 code to drivers/cdrom/compat.c Arnd Bergmann
2005-11-05 16:27 ` [PATCH 24/25] tape: move mtio ioctl32 code to driver/char/compat_mtio.c Arnd Bergmann
2005-11-05 16:27 ` [PATCH 25/25] bluetooth: integrate ioctl32 handling Arnd Bergmann

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=200511071141.34147.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=hch@lst.de \
    --cc=hirofumi@mail.parknet.co.jp \
    --cc=linux-kernel@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